Git Product home page Git Product logo

coverart-browser's People

Contributors

asermax avatar bryant1410 avatar dmo60 avatar dyson avatar fossfreedom avatar jrbastien avatar lannic avatar mateuswetah avatar reawebcrawlerplayer avatar welltoncosta avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

coverart-browser's Issues

Request to move Tracks and Covers tabs to the top of the pane

Would it be possible to move the Tracks and covers tabs to the top of the pane rather than on the right side? We are loosing the space of an entire column this way.

Especially with the translations. In French "Covers" gets translated by "Pochettes" which makes the tabs longer.

Correctly clean source resources when the plugin's do_deactivate method is called

Currently, the source doesn't make any cleaning when the plugin is being deactivated/the player is being closed. There are some signals and stuff that we should disconnect in those cases (e.g. the AlbumLoader connects itself to various RhythmDB signals). I don't think there's much resources that should be free, but we should make sure it does.

This is not high priority, so I'll assign it to a future milestone.

Idea: Consider option to merge albums

this is more of a wish probably because I cant be be bothered to manually change stuff.

I've got several albums listed in the music library displayed as slightly different names. This has an annoying side effect in that the coverart plugin shows multiple icons - often with different covers.

In fact these came from the same song folder but probably are slight incorrectly tagged.

Now I could go to each individual track - right click and select properties and change the album name so that the tracks amalgamate correctly. Strictly I should go back and change the mp3 tag but I cant be bothered....

Here is an idea to consider - add a preferences option to turn on "drag and drop album re-tagging".

As the name suggests - drag one album over another, and after a confirmation, change the album name for each track to the dropped onto album.

Logical? Think it may be worthy of discussion.

large collections show many album covers - no filter view available

The normal browse entry screens has a "filter" text box at the top-right of the page.

Could we/should we have something similar? Could help with those with large collections.

In terms of what could be filtered - maybe text entered in the field could be used to match against genre/album name/artist - would that be too confusing?

Anyway - needs further thought and discussion.

possible filter enhancements

Looking at rhythmarty you could filter on "all" - "albums" - "artist" - "titles"

Imgur

Maybe in v2/3/4 (!) this could be a "feature" to consider.

Adding French Canadian translation

Sorry for not knowing how to put code/fork and making pull request. If I have more time, I will try to do it the proper way but here is the fr_CA.po content.

French translations for PACKAGE package

Traductions françaises du paquet PACKAGE.

Copyright (C) 2012 ORGANIZATION

Automatically generated, 2012.

msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2012-09-20 21:19+BST\n"
"PO-Revision-Date: 2012-09-20 21:19+BST\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: pygettext.py 1.5\n"
"Language: fr_CA\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"

: coverart_browser.py:66

msgid "CoverArt"
msgstr "Pochettes"

: coverart_browser.ui.h:1

msgid "Search through your albums"
msgstr "Rechercher dans vos albums"

: coverart_browser.ui.h:2

msgid "Clear the search text"
msgstr "Effacer le texte de recherche"

: coverart_browser.ui.h:3

msgid "Search album"
msgstr "Rechercher"

: coverart_browser.ui.h:4

msgid "Stop coverart fetch."
msgstr "Arrêter de chercher les pochettes"

: coverart_browser.ui.h:5

msgid "Play this album"
msgstr "Jouer cet album"

: coverart_browser.ui.h:6

msgid "Play Album"
msgstr "Jouer l'album"

: coverart_browser.ui.h:7

msgid "Add this album to your playing queue"
msgstr "Ajouter cet album à votre liste d'attente"

: coverart_browser.ui.h:8

msgid "Queue Album"
msgstr "Mettre l'album en attente"

: coverart_browser.ui.h:9

msgid "Search for this album cover"
msgstr "Rechercher la pochette de cet album"

: coverart_browser.ui.h:10

msgid "Search for covers"
msgstr "Rechercher les pochettes"

: coverart_browser_source.py:299

msgid " has 1 track"
msgstr " a 1 piste"

: coverart_browser_source.py:301

msgid " has %d tracks"
msgstr " a %d pistes"

: coverart_browser_source.py:304

msgid " and a duration of 1 minute"
msgstr " et une durée de 1 minute"

: coverart_browser_source.py:306

msgid " and a duration of %d minutes"
msgstr " et une durée de %d minutes"

Integrate/Merge/Reimplement the Album Art Search plugin to our source

I was thinking that we could make some changes on the plugin or even merge it into ours to give it more visibility and make it easier to use with the cover view drag and drop capability.

We should discuss further how this integration could be. Some thoughts:

  • Would be nice to call the album art search from the cover view, as an option to the current search method (that uses the built-in artsearch plugin).
  • Make the search pane more visible, maybe adding it to our source or making it occupy a different space on the screen (the current place is way to little in my opinion, and kinda cumbersome to use).
  • An option to the previous point could be to add the search pane and the entryview on a GtkNotebook inside the expander, relabeling it to be something like "More information". I'm pretty fond of this one, since it makes the best use of space in my opinion.

Idea: select the album under the mouse when right clicked

I think this would be for the best, since you could be able see the info on the status bar of the album you right clicked.
The current behavior can be a little misleading since there could be another album selected and that album info would be showed on the status, even when that's not the album you are working with.

Album Art Search - Save and Copy image options not working

Perhaps I don't understand correctly but there seems to be no option to update the cover from the album art search pane. If I right click on an image, it pops up a menu with the following options:

Open Image in a new window
Save Image as
Copy Image
Copy Image Address

If I right click outside the image, there is an option "Reload"

None of them work.

Is it implemented yet? If I may, I suggest that you implement an option to "Save Image as folder.jpg" in song folder as it is the only real working option in RB to have the image updated.

Notice that all these strings are untranlated but I will wait for the final version before submitting an issue.

Adding translations

Hi! Thank you very much for the plugin, I really missed this. Is there any possibility of adding translations for it? I can translate it for Brazilian Portuguese, but I'm not sure how to do it. Thanks anyway,

possibly allow a user to set their own default coversize

from issue #12

rhythmarty allows a user to set a custom cover size.

Currently hard-coded to 93 pixels - maybe a v2/3/4 (!) feature to have a slide-bar allowing a custom size.

as to where to put such a "slide bar" - maybe a horizonal bar in-place of the status-label.

As to how to invoke this - Now we have a right click option on the library source - could add this to there- "define cover size" etc etc.

Any - interesting - low-ish priority. Back to bug seeking and fixing mode!

Global install causes CoverSearchPane error

running:

  sudo make install

Activating the plugin gives the following error:

dad@dad-VirtualBox:~/.local/share/rhythmbox/coverart_browser$ rhythmbox
Traceback (most recent call last):
  File "/usr/lib/rhythmbox/plugins/coverart_browser/coverart_browser_source.py", line 117, in do_selected
    self.do_impl_activate()
  File "/usr/lib/rhythmbox/plugins/coverart_browser/coverart_browser_source.py", line 228, in do_impl_activate
    self.cover_search_pane = CoverSearchPane(self.plugin)
  File "/usr/lib/rhythmbox/plugins/coverart_browser/coverart_search.py", line 52, in __init__
    self.load_templates(plugin)
  File "/usr/lib/rhythmbox/plugins/coverart_browser/coverart_search.py", line 61, in load_templates
    self.template = Template(filename=path, module_directory='/tmp/')
  File "/usr/lib/python2.7/dist-packages/mako/template.py", line 227, in __init__
    "Template requires text or filename")
mako.exceptions.RuntimeException: Template requires text or filename

Strange error /tmp does exist and the account has full rights to create files in it.

Idea: add the option to show and modify the album info

Now that we have an entry view on our ui, we could implement a Properties item on the right click popup menu to show the info on the album and be able to modify it, using RBSongInfo.
It would be the equivalent to the Properties on the popup for the entry view (if we get to implement it) but for the whole album.

Some coverarts are never saved

Strangely, some coverart reverts to the default icon whenever exiting Rhythmbox. You have to play a song from the album to get it updated again but they get lost as soon as the application is closed.

Not sure if it is a RB 2.97 bug or even Ubuntu 12.04 or the coverart-browser plugin bug... Does this plugin uses its own cache? If yes, where is the file location saved?

Idea: change the current loading strategy for progressive one.

This is a long term idea that have been on my head for a while now.
The current loading strategy is quite slow on my collection + machine, and I suppose it may be the same for other people too (I would really love some feedback on that, lol).
It would take a big refactoring to change the current strategy, but it would be nice to use a more progressive (or is it preemptive?) strategy, that would load into the model just the needed covers.

To make the idea a little clearer, I'll give some examples:

  • At the beginning, set an initial loading cap, let's say 50 albums.
  • When the user scrolls down and gets closer to the last album loaded, load another group (through an idle call)
  • If the user inputs a search, use the same strategy as before, just show the first results and start adding more later.
  • The same can be aplied on reordering.

Problems:

  • Since the view is always sorted in some way, we should sort the albums manually, so the progressive loading makes sense. -> Maybe we should keep multiple lists with the differents orders and the current dict for lookup. This introduces another problem that is keeping the lists updated.
  • Find a suitable algorithm and parameters to make the user interact with the view without noticing the progressive loading.
  • If we want to implement this as an optional feature, it may be hard. Maybe we can transform the AlbumLoader into an interface and make two implementations, the current one for those who prefer the full loading and another one for those (like me) that have problems with the preformance of the plugin.

Idea: Entry view should respect the preferences columns to be displayed

You can define which columns are displayed in the default library browser view via rhythmbox preferences.

This is defined by the key org.gnome.rhythmbox.sources

default is ['track-number', 'artist', 'album', 'genre', 'duration', 'post-time']

The visible view is track, title, genre, artist, album, time - so the key itself does not necessarily respect the scheme key value order for these default columns.

Any additional columns beyond the default are added at the end.

Doesnt look too hard to implement (with the above caveats).

Also need to bind the key update so that our entry view is also updated.

Use Rhythmbox's status bar to show info about albums

The idea is to use the global status bar to show the info related to the selected album (name, artist, how many songs it haves and it's aprox duration).

In response to fossfreedom question:

That status-bar can be manually toggled off (view - status-bar).

If the user has toggled this off, will they just see the cancel button but no progress messages?

I wasn't thinking of also showing the progress when fetching coverarts in rhythmbox's statusbar, since we can't add buttons there, only text. When downloading covers, we should still use our source status bar.
I'll create a branch and implement this change so you can test it out.

Idea: Optionally display tracks in an entry view

This idea is useful (I think) - and should be easy to implement.

On right-click on an album icon/or multiselect albums have an GtkCheckMenuItem to display tracks.

Using the RBEntryView widget, display the widget between the icon-view and the status line.

Connect the widget to a RhythmDBQueryModel - but manually populate the model with the entries stored in the selected Album/Albums.

Thoughts on this?

Bug: When a folder is scanned by Rhythmbox, a new empty album is created with non-music files

I've been experiencing this problem lately. It seems like a bug upstream that for some reason includes ANY file in the folder as an entry, even if it's not. For example, I added a new folder with an album on my music directory, and rhythmbox also included it's cover as an entry.
Even if it's an upstream bug, I think we should make a workaround for it. What I was thinking is checking the track duration before adding an entry to our source (since this non-track files have a 0 duration).

resizing rhythmbox does not "resize" the thumbnail grid

if you change the rhythmbox window in coverart view then the art-grid does not resize.

note - album_loading branch seems to have lost scroll-bars

Investigate whether there is a GTK/GDK signal we can tap-into to refresh the cover_view

Idea: consider a refresh option

Following on from updating data such as artist name in other sources, maybe a generic "refresh" option is required.

For example - pop-up available when right-clicking the source to delete all current Albums held in AlbumLoader at self.covers_model and then reload.

double click album doesnt invoke queue and play

single click on an album.

click to another album.

click back to the original album and then double click - doesnt queue and play.

double click again - it correctly queues and play.

Issue raised to investigate

rhythmbox window resizes when downloading covers

low-priority:

Make rhythmbox window approx third of the screen so that albums are shown with scrollbars.

Have an album that is "various artists" i.e. multiple artists but with no cover.

Right-click source and select "download covers".

First observation - the status label updates with multiple artists.

Second observation - the whole rhythmbox window resizes to accommodate the large status label.

Idea: add favourite album tracks support

One of the reasons why I initially ported this plugin was that I'm a little old-fashioned - I play albums of songs - not "tracks" as per the music library source.

One longer term thought was the desire to double click an album (or queue groups of albums) and play only my favourite tracks from those albums. Some albums there are just dire songs I never want to hear - or only want to play occasionally.

If no favourites set up - then just play the album.

Need to investigate such a mechanism. Possibly allow users to highlight all favourite tracks in the album entry view - rightclick and "save favourites". This saves the highlighted album tracks to an external database.

Playlists seems a little cumbersome to me.

Possibly also look into using LastFMExtension / v2.98 Rhythmbox love/ban track buttons to do this automatically.

Question: coverart search adding "random" jpegs to song folders?

From this webupd8 comment:

http://www.webupd8.org/2012/09/coverart-browser-rhythmbox-plugin.html#comment-668710600

Not sure what the actual issue is here.

Does the OP use the inbuilt coverart search plugin? If he doesnt - need to double check our coverart search menu option - maybe it should be similarly disabled?

I didnt know about "ID3" coverart stored with the track (?) - it appears rhythmbox ignores this as well.

Longer term investigate - understand - and write a routine that scans a track for a "ID3" tag and stores the coverart in the rhythmbox database for us to pickup and display ... probably along this line

https://github.com/ergo/cover_grabber/blob/master/cover_grabber/mp3_handler.py

Idea: use the text or markup column on GtkIconView to show album's info instead of the status bar

After seing the screenshot of rhythmarty, I thought that putting the text below the cover image gives a better access to the album info, without having to click or hover it.
My idea is to change the plugin's behavior, using the GtkIconView text or markup column to show the album's name and artist. Other info could be added there or showed on the tooltip.
In the case we implement this and also the customizable pixbuf size, we should see how we could integrate both features: changing the size of the cover should also modify the size of the text accordingly (for what we should probably use Pango markup instead of plain text).

Of course, this is another idea for later implementation, once we have checked all the bugs and critical stuff d:

Plugin can not be loaded by rhythmbox under archlinux

Hi, when I run rhythmbox from terminal, there is error message related to coverart-browser plugin:

Traceback (most recent call last):
File "/usr/lib/rhythmbox/plugins/coverart_browser/coverart_browser.py", line 21, in
import rb
ImportError: No module named rb

Pakcages installed on my laptop:
rhythmbox 2.97
python2 2.7.3

Do you know how to work it around? Thank you.

Cover art is not updated when a new cover-art is found

Noticed the following - if the cover-art search plugin is enabled and it finds a new cover-art - it updates the database, but the coverart-browser plugin never gets updated until rhythmbox is restarted.

Possible resolution:

http://www.jetmore.org/john/misc/rb/rb297-python-bindings/RB.ExtDB-added.html

Looks like the "added" signal could be tapped for this - the plugin should connect to the signal on activation.

Then when coverart is updated, rhythmbox will call our plugin routine which should update the iconview for the requisite album.

Importing new music or changing the album/artist details does not update the plugin

I note that a new import of music doesnt update the covers shown.

Also - using the lastfm fingerprint plugin can change the artist and/or album name. Again the plugin isnt updated.

Don't know if there is a signal we can tap into to resolve this.

Maybe just a "refresh" option needs to be added somewhere when removes the current AlbumLoader and recreates it.

searching for art sometimes produces an error

sometimes get an error when right clicking an album and selecting "Search for covers":

Traceback (most recent call last):
File "/home/andrei/.local/share/rhythmbox/plugins/coverart_browser/coverart_album.py", line 73, in _albumart_added_callback
self.albums[album_name].update_cover(pixbuf)
KeyError: 'reload'

Its not consistent though.

Use RBSearchEntry instead of a custom GtkEntry

I just came around to using RBSearchEntry; it haves some bugs (you have to manually set the placeholder text and make it visible since it can't be done from the ui.file) but it haves some built-in functionality that seems helpful:

  • Haves a 'search' signal that makes the text directly available.
  • Haves a 'show_popup' signal that makes it easy to implement the popup.
  • Haves an icon to clean the text but it's a little more dynamic that the one we use. It hides when no text is present for example.
  • It haves a sweeeeet timeout between 'search' signals that makes the searching feature a lot smoother, since it only refilters the model a few times (mostly when you stop typing, that's when you really want an answer to your query)

The only problem I see is that it will affect the filter branch, but nothing really grave (just some methods renamed and minor stuff).
I just made a fast implementation using this widget, I'll create a branch and make it available for testing.

Idea: re-add double-click support

I've been playing with this -

its a little more reliable now - not 100% - but better than before.

At the same time I'll add double-click support for the entry-view.

I'll commit this when I've sorted out the entry-view double-click support

Make a fancier tooltip to show more info about the hovered album

This would just be some eye candy, to make the experience more enjoyable.
I was thinking that this tooltip could show a zommed cover (even if the cover size could be modified in the preferences), album artist, artists on a multi-artist album, a list of all or some of the tracks (there are size restrains), and any other useful info about the album.

Here are some guidelines of how we could achieve this: GtkTooltip

Untranslated strings

from issue #27

Wow, this is awesome! This will surely becomes the default RB view. Thank you very much for this.

I have started the translation and I have found a few issues:

1- The string for the the option "Automatically Start" and its tooltip are missing in the po file.

2- The string to translate the Title name by Artist Name under the cover does not seem to work. The "by" remains untranslated. I assume it is this one:

: coverart_browser_source.py:753

msgid "%s by %s"
msgstr "%s par %s"

3-The header of the grid for the track list does not translate (Track, Title, Genre, ...)

4-There is no translation for the tooltip "Select the Search Type".

5-The name "CoverArt" does not translate in the left pane. That issue was there in the previous release. I have used this string:

: coverart_browser.py:89

msgid "CoverArt"
msgstr "Pochettes"

Separately, I also had a few crashes that I will try to reproduce and document in separate issues later.

Thanks,

Jean-Rene

Idea: Add "drop" support to update the album cover

I've been thinking about adding "drag-drop" support to update an album cover.

For ubuntu 12.04 users they use v2.96 of rhythmbox which has no drop support unlike v2.97 users who can drop album art onto a playing song coverart icon.

This will make the albumart-search plugin more useful

https://github.com/luqmana/rhythmbox-plugins

Note - separately need to double check the drop-support from that plugin - there is certainly an icon displayed when you drag the coverart from the plugins rhythmbox side-pane.

Anyway - thoughts - issues?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.