After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 636071 - Banshee.PlayQueue doesn't support for enqueue non-library files
Banshee.PlayQueue doesn't support for enqueue non-library files
Status: RESOLVED FIXED
Product: banshee
Classification: Other
Component: general
1.8.0
Other Linux
: Normal normal
: 1.x
Assigned To: Banshee Maintainers
Banshee Maintainers
Depends on:
Blocks:
 
 
Reported: 2010-11-29 17:19 UTC by albyrock87
Modified: 2011-08-17 15:08 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Patch over opening uris method (1.95 KB, patch)
2011-05-06 22:23 UTC, chukysoria
committed Details | Review

Description albyrock87 2010-11-29 17:19:47 UTC
Using the DBus Interface:
/org/bansheeproject/Banshee/SourceManager/PlayQueue

Method:
enqueue_uri

If I use an Uri that is not in the database, the uri isn't added to the database and the file is not enqueued.

I need an easy way to enqueue >any< file to the current playlist.
Comment 1 albyrock87 2010-12-02 10:14:00 UTC
Also
- Open (uri) doesn't work properly (you can see in the video attached)

I tried also with Mpris interface, but I have the same issues.

Bug on launchpad with attached video: https://bugs.launchpad.net/banshee/+bug/683970
https://bugs.launchpad.net/banshee/+bug/683970/+attachment/1752376/+files/Buggy_Banshee_plugin.mp4
Comment 2 Bertrand Lorentz 2010-12-02 20:50:01 UTC
Thanks for the screencast !

The play queue is only designed to work with tracks from the library, and it's not supposed to import tracks in the library.
So you should probably only use Enqueue if you know that the track is in the library.

The PlayerEngineService and the Mpris interfaces are equivalent for playing tracks :
org.mpris.MediaPlayer2.Player.OpenUri(uri) just calls PlayerEngineService.Open(uri) and then PlayerEngineService.Play()

In this case, the file is always opened as an unknown track, even it is in the library.
The "All albums" cover art changing is probably caused by bug #620010. I don't see that with current git master.

So we should probably be smarter in PlayerEngineService.Open(string uri) and find if the uri is a track that is in the library and act accordingly.
Comment 3 albyrock87 2010-12-03 00:30:40 UTC
Thank you for the answer!

Now, if the EnqueueUri cannot import tracks, than I need a way to exchange information about the library, and maybe a way to insert a new track into the library :)
Comment 4 chukysoria 2011-05-06 22:23:21 UTC
Created attachment 187395 [details] [review]
Patch over opening uris method

I've modified the open uri method to identify if the file is already on the library. If it is not found on the library, then extract the available metadata on the file.
Comment 5 Bertrand Lorentz 2011-08-17 15:07:44 UTC
Comment on attachment 187395 [details] [review]
Patch over opening uris method

Thanks for the patch !
Sorry it took so long to process it.

I committed it with a fix for the typo that broke compilation (track_Id <-> trackId), along with a few small cosmetic changes.
Comment 6 Bertrand Lorentz 2011-08-17 15:08:11 UTC
This problem has been fixed in the development version. The fix will be available in the next major software release. Thank you for your bug report.