New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Feature request] loop/shuffle button #1992
Comments
As to me, it would be great to have "loop all/track" option in the program tray (since I have the main window closed most of the time). I use 0.7.2, and the "shuffle" option, unlike "loop" option, is already there. Quite frustrating, since I frequently use "loop", but never - "shuffle". |
Partly a "me too" to having indication of shuffle/loop status on the status bar but also to suggest possibly exposing the current status to a variable (title formatting)? I've made custom buttons for the various shuffle/loop options but have no way to know the current status of shuffle/loop. I could use a variable in the output of the "playback status" plugin. |
There is a plugin called "Playback order menu", it would be easy to extend it or make a new one to show the repeat status. |
@kpcee - thank you so much! I don't know how I missed that plugin. You say "easy" ;) ...I'll take a look and see if I can duplicate it for repeat status. |
That looks great, I'd love to test it. I only use Gtk2 myself (where possible). As for a name... "Shoop" ;) What about something along the lines of "(playback) control button(s)"/"playback button"? Just pick something you're happy with. |
Okay I just created a new repository deadbeef-playback-buttons. |
This is a slang word for "to have sex". Shloop/loosh? |
Apologies for the delay in getting back on this. It works great, many thanks! The only thing your missing is random album and random track from the shuffle button itself but the button does display the correct status when these are selected elsewhere (menu). Similarly, with the loop button, it doesn't go to "Loop Off" unless selected from the menu. Replacing the text (as you alluded to) at some point with a graphic would be ideal. I'm not keen on "Linear" as I'd prefer "Off". Also, could the button just display "Album" instead of "RND Album", for consistency? Minor niggles, that's all :) Great work, this has filled a gap for me. Deadbeef is almost perfect now :) EDIT: is there any difference between "Shuffle -> Tracks" and "Shuffle -> Random Tracks" ? |
Glad you like it :) The difference between Random and Shuffle is well explained in the foobar2000-FAQ. |
"Keep Artist" sounds interesting. I don't rate songs but other's do and this could be useful to a lot of people. It does what I need already so anything else is a bonus :)
Ah, it makes sense now, thanks. |
@kpcee deadbeef's shuffle works slightly differently though. There are possibly other differences too. |
Yes, e.g. songs that have already been played are ignored in the search, so the order is never identical if you always start the same track manually. |
Any news on implementing it in master branch? |
I have uploaded a new version of my plugin which has now three buttons, the new button adds new playback modes ("Keep Album", "Keep Artist", "Top Rated", "Selection", "Playlist" deactivates the plugin). It works internally with its own playlist and supports the suffle modes "Linear", "Shuffle" and "Random". |
My problem is that I am a noob. I have DeadBeef installed but I am unable to follow the instructions in the ReadMe, specifically: "To compile the plugin you need to copy the files deadbeef.h and gtkui_api.h from the deadbeef directory." - I don't think that copying files compiles anything. What am I supposed to do with the copied files? Copy them to where? and secondly: "Copy the compiled plugin to the plugin folder (~/.local/lib/deadbeef/) and restart DeadDBeeF, then add the plugin to the gui." - to this I ask:
Any direction would be much appreciated since I want the feature of your plugin and I also want to learn about my operating system. Deadbeef version: 1.8.8 |
@Storme9 this particular plugin requires a copy of some files from deadbeef source, in order to compile. |
@Storme9 Maybe I should also provide compiled versions. Did everything work now? |
As soon as I get a moment - I will try and do what you said and then let
you know how it worked out.
…On Sat, 30 Apr 2022 at 10:31, kpcee ***@***.***> wrote:
@Storme9 <https://github.com/Storme9> Maybe I should also provide
compiled versions. Did everything work now?
—
Reply to this email directly, view it on GitHub
<#1992 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AKRWEYGPKY3KF6FYEXY7YV3VHTVWJANCNFSM4EXWSEIA>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
So I am trying to figure out how to install your plugin.
I started by trying to locate the source files of my deadbeef install. I
did this with the following command: whereis deadbeef
It came up with 3 locations: /usr/bin/deadbeef /usr/lib/deadbeef
/usr/share/deadbeef
Note: deadbeef is not installed in the ~/.local/lib/deadbeef/ location as
you suggest.
listing all items in these directories resulted in zero files with the
names: deadbeef.h and gtkui_api.h
I am dead in the water...
Attached is a screenshot of the items in the directory: /usr/bin/deadbeef
I would really appreciate some help please.
On Sat, 30 Apr 2022 at 13:59, Ethan Storme Malan ***@***.***>
wrote:
… As soon as I get a moment - I will try and do what you said and then let
you know how it worked out.
On Sat, 30 Apr 2022 at 10:31, kpcee ***@***.***> wrote:
> @Storme9 <https://github.com/Storme9> Maybe I should also provide
> compiled versions. Did everything work now?
>
> —
> Reply to this email directly, view it on GitHub
> <#1992 (comment)>,
> or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AKRWEYGPKY3KF6FYEXY7YV3VHTVWJANCNFSM4EXWSEIA>
> .
> You are receiving this because you were mentioned.Message ID:
> ***@***.***>
>
|
You can get the files you need from this archive: |
So I have those files now and I have copied them to the folder containing
your plugin files. (please see screenshot)
Now I need to "compile" the plugin. I have never done this before. My plan
is to follow this guide:
https://www.howtogeek.com/105413/how-to-compile-and-install-from-source-on-ubuntu/
up until the end of the "compile" step. Is this okay?
And then finally your instructions say: "Copy the compiled plugin to the
plugin folder (`~/.local/lib/deadbeef/`) and restart DeadDBeeF, then add
the plugin to the gui." Where is the plugin folder?
…On Sun, 1 May 2022 at 21:46, Alexey Yakovenko ***@***.***> wrote:
You can get the files you need from this archive:
https://sourceforge.net/projects/deadbeef/files/staticdeps/ddb-headers-latest.tar.bz2/download
—
Reply to this email directly, view it on GitHub
<#1992 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AKRWEYDWJB4D3EKC7JHDHVTVH3NPZANCNFSM4EXWSEIA>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
for compiling the plugin, typically it's enough to just run to copy:
(change the .so file name to the name of compiled plugin) |
I'm assuming I need to install gtk2.0 - is this correct?
On Sun, 1 May 2022 at 22:06, Ethan Storme Malan ***@***.***>
wrote:
…
On Sun, 1 May 2022 at 22:01, Alexey Yakovenko ***@***.***>
wrote:
> for compiling the plugin, typically it's enough to just run make
>
> to copy:
>
> mkdir -p ~/.local/lib/deadbeef/
> cp "plugin_name.so" ~/.local/lib/deadbeef/
>
> (change the .so file name to the name of compiled plugin)
>
> —
> Reply to this email directly, view it on GitHub
> <#1992 (comment)>,
> or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AKRWEYAK5INAY72QBUT22YDVH3PLHANCNFSM4EXWSEIA>
> .
> You are receiving this because you were mentioned.Message ID:
> ***@***.***>
>
|
I seem to already have gtk2.0... Please see screenshot.
On Sun, 1 May 2022 at 22:07, Ethan Storme Malan ***@***.***>
wrote:
… I'm assuming I need to install gtk2.0 - is this correct?
On Sun, 1 May 2022 at 22:06, Ethan Storme Malan ***@***.***>
wrote:
>
>
> On Sun, 1 May 2022 at 22:01, Alexey Yakovenko ***@***.***>
> wrote:
>
>> for compiling the plugin, typically it's enough to just run make
>>
>> to copy:
>>
>> mkdir -p ~/.local/lib/deadbeef/
>> cp "plugin_name.so" ~/.local/lib/deadbeef/
>>
>> (change the .so file name to the name of compiled plugin)
>>
>> —
>> Reply to this email directly, view it on GitHub
>> <#1992 (comment)>,
>> or unsubscribe
>> <https://github.com/notifications/unsubscribe-auth/AKRWEYAK5INAY72QBUT22YDVH3PLHANCNFSM4EXWSEIA>
>> .
>> You are receiving this because you were mentioned.Message ID:
>> ***@***.***>
>>
>
|
There's no screenshot in your message. |
compilation complete.
I copied the gtk2 plugin (it's a .so file) to the directory you told me to
create.
Upon starting deadbeef I got an error even though deadbeef started.
I uninstalled and then reinstalled deadbeef only to be greeted by errors.
(please see attached screenshot.
Upon google searching the errors - I get back to a deadbeef thread: "If
you're sure the reason is deadbeef - make sure to delete all 3rd party
deadbeef plugin, and provide a gdb backtrace. Instruction how to do it can
be found here: https://github.com/Alexey-Yakovenko/deadbeef/wiki/GDB-HOWTO"
that link does not help...
I would appreciate another pointer please.
Would you suggest uninstalling all gtk packages and deadbeef and then
reinstalling?
…On Sun, 1 May 2022 at 22:16, Alexey Yakovenko ***@***.***> wrote:
There's no screenshot in your message.
And yes, for this plugin you need a "dev" package of GTK to be installed: sudo
apt install libgtk-3-dev
—
Reply to this email directly, view it on GitHub
<#1992 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AKRWEYFSEC4YITC24IFE2HTVH3RDFANCNFSM4EXWSEIA>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
there's no screenshot in your message. It seems like email replies discard the attachments |
The screenshot is in my message to you. I'm not sure why it is not showing.
Here is the output text from my terminal:
selected output plugin: ALSA output plugin
INFO: from file /home/storme/.config/deadbeef/playlists/0.dbpl
convgui: gtkui plugin not found
plugin Converter GTK3 UI failed to connect to dependencies, deactivated.
plugin Playlist browser GTK3 failed to connect to dependencies, deactivated.
shellexecui: can't find gtkui plugin
plugin Shellexec GTK3 UI failed to connect to dependencies, deactivated.
resume: track 0 pos 2.461293 playlist 0
gtkui plugin compiled for gtk version: 2.24.32
Gtk-Message: 09:43:02.896: Failed to load module "canberra-gtk-module"
(deadbeef:7307): Gdk-CRITICAL **: 09:43:03.052:
IA__gdk_window_get_position: assertion 'GDK_IS_WINDOW (window)' failed
(deadbeef:7307): Gdk-CRITICAL **: 09:43:03.052:
IA__gdk_window_get_position: assertion 'GDK_IS_WINDOW (window)' failed
(deadbeef:7307): Gdk-CRITICAL **: 09:43:03.052:
gdk_window_invalidate_maybe_recurse_full: assertion 'GDK_IS_WINDOW
(window)' failed
Any pointer would be much appreciated.
…On Mon, 2 May 2022 at 08:17, Alexey Yakovenko ***@***.***> wrote:
there's no screenshot in your message. It seems like email replies discard
the attachments
—
Reply to this email directly, view it on GitHub
<#1992 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AKRWEYCCPOLER2YH5BAQHCTVH5XOBANCNFSM4EXWSEIA>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
@Storme9 can you please remind what is the problem again / what do you need help with? This conversation happened over 5 months ago, and I lost track of what it was about. I don't see any screenshot in any of your messages, and I'm not sure what problem you're trying to solve. |
It seems you have added a repeat menu to the player which solves all issues. Thank you. |
Please add loop (shuffle) button. It would be nice to have some indication on the main window (or maybe tray area) when loop mode is enabled.
The text was updated successfully, but these errors were encountered: