GNOME Bugzilla – Bug 524718
Visualizer support
Last modified: 2020-03-17 08:24:50 UTC
It'd be nice to implement visualization support into Banshee, since we have the cool new Now Playing source. At the moment, the code is already written, but there appears to be a few GStreamer-releated issues that appear to break Banshee for some users.
Assigning to myself. :)
Created attachment 108257 [details] [review] Original patch commited in r3523. Apparently this is the patch that caused issues. It needs a bit of review love before it should get committed again.
Maybe it would be more appropriate to call Bug 529479 a duplicate of this bug, but there is more activity going on at that one, so I think you might want to redirect this effort over there.
Agreed, marking this as a duplicate. I'll make a note of this patch over there, in case any work can be combined. *** This bug has been marked as a duplicate of 529479 ***
Wait, nope, I think this is a related but separate bug (see http://bugzilla.gnome.org/show_bug.cgi?id=529479#c11). Alex, my turn to misread descriptions. :P Does one of these depend on the other?
Sorry for confusing things. I guess this is all a little over my head. I thought that they were both trying to accomplish the same thing, but through different means. Perhaps I misunderstood.
This bug was originally kind of a tracker for myself. :) Basically, although both bugs attempt to implement a visualizer, they both go about it different ways. This one is for GStreamer visualizations (the ones you see in most other apps, such as GOOM, Monoscope, etc). Bug 529479 basically attempts to implement an interface between the GStreamer stuff and Banshee, so that you can write visualizations in C# (Chris had been working on one, which was the main reason his patch came about). What needs to be considered is how to display the different visualization options to the user between the two engines. Ideally, there'd be some sort of VisualizationEngine class that visualizations would register with (both Chris's extensions and another class that would load up all those from GStreamer) and display them in the UI. Probably, it should also implement telling each engine whether or not it's enabled (no point having both engines running at the same time if you can only see one!). The above patch probably needs a little bit of love to work in both trunk and get around the bugs that caused it to get reverted in the first place. I might do a bit of hacking today on it; we'll see.
Created attachment 116736 [details] [review] Basic support for GStreamer visualizations. Basic support for GStreamer visualizations and a UI. In essence, it's basically the old patch retrofitted for trunk. Really, the only thing missing is enabling the 'video' mode, so we have somewhere to draw the visualization. It may also benefit from another function to be able to add extra visualizations to the list (for example, so we can integrate Chris Howie's visualization stuff). If Gabriel or Aaron could take a look, fix those remaining issues, and commit, that'd be awesome!
Is there anything going on in this direction? I would love to see a visualization function in banshee and after some search I found this bug. When will we be able to see some fancy visualization stuff in banshee?
Hey Alex, sorry it took so long for me to review this. Do we really need the quality dropdown? Seems like a detail that would be nice to choose automatically and hide from the user, if we could make smart decisions about which to pick (based on Banshee's Window size, maybe?). Other than that, it'd be great if we already had NowPlaying easily extendable, with some button or dropdown based ui for switching between options. I started working on that, I'll let you know if I make any great progress. This uses the same video windowing stuff as the video playback, right?
Heh, no problem. :) Um, I suppose we don't. Or, optionally, we could move it into the Preferences dialog (probably better now that I think about it). It could be possible to determine the render resolution based on Banshee's window size, however, how would you want to communicate that to the extension? Also, performance-wise, the resolution depends more on the CPU speed and what graphics driver the user is using. Yes, they both use the same GdkWindow for playback; all this essentially does is provide a way to let Banshee know what visualization element the playbin should use. So, as long as we have the GdkWindow created, it should appear wherever it does.
*** Bug 583682 has been marked as a duplicate of this bug. ***
Bulk changing the assignee to banshee-maint@gnome.bugs to make it easier for people to get updated on all banshee bugs by following that address. It's usually quite apparent who is working on a given bug by the comments and/or patches attached.
Banshee is not under active development anymore and had its last code changes more than three years ago. Its codebase has been archived. Closing this report as WONTFIX as part of Bugzilla Housekeeping to reflect reality. Please feel free to reopen this ticket (or rather transfer the project to GNOME Gitlab, as GNOME Bugzilla is being shut down) if anyone takes the responsibility for active development again. See https://gitlab.gnome.org/Infrastructure/Infrastructure/issues/264 for more info.