Skip to content
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

Pianobar freezes after each song #654

Closed
Vi1i opened this issue Feb 21, 2018 · 8 comments
Closed

Pianobar freezes after each song #654

Vi1i opened this issue Feb 21, 2018 · 8 comments

Comments

@Vi1i
Copy link

Vi1i commented Feb 21, 2018

Starts just fine, but then freezes at the end of a song.

[USER:~/git/dotfiles] master(+59/-108) ± pianobar 
Welcome to pianobar (2017.08.30)! Press ? for a list of commands.
(i) Control fifo at /home/USER/.config/pianobar/ctl opened
(i) Login... Ok.
(i) Get stations... Ok.
|>  Station "L-Red Hot Chili Peppers" (1822073149661466621)
(i) Receiving new playlist... Ok.
|>  "Someday" by "The Strokes" on "Is This It"
#   -00:00/03:07

I couldn't get it to compile with symbols with make debug... But the below output is gdb and I let it sit waiting for a while before I interrupted it.

(gdb) run
Starting program: /home/USER/git/pianobar/pianobar 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
Welcome to pianobar (2017.08.30-dev)! Press ? for a list of commands.
(i) Control fifo at /home/USERN/.config/pianobar/ctl opened
(i) Login... [New Thread 0x7fffe3dff700 (LWP 6225)]
[Thread 0x7fffe3dff700 (LWP 6225) exited]
Ok.
(i) Get stations... [New Thread 0x7fffe3dff700 (LWP 6244)]
[Thread 0x7fffe3dff700 (LWP 6244) exited]
Ok.
|>  Station "L-Red Hot Chili Peppers" (1822073149661466621)
(i) Receiving new playlist... Ok.
|>  "Inside Out" by "Eve 6" on "Eve 6" <3
[New Thread 0x7fffe3dff700 (LWP 6263)]
[New Thread 0x7fffe2d67700 (LWP 6264)]
[New Thread 0x7fffe2566700 (LWP 6265)]
[New Thread 0x7fffe1d65700 (LWP 6266)]
[New Thread 0x7fffe1564700 (LWP 6267)]
[New Thread 0x7fffe0d63700 (LWP 6268)]
#   -00:00/03:39
Thread 1 "pianobar" received signal SIGINT, Interrupt.
0x00007ffff49ab7b3 in select () from /usr/lib/libc.so.6
(gdb)

Now without gdb, when I hit ^C, it jumps out of the freeze and goes to the next song.

I skimmed the issues and saw some like it, but I didn't really see a fix that I could do on my side. Though I could have missed it.

@PromyLOPh
Copy link
Owner

PromyLOPh commented Feb 24, 2018 via email

@Vi1i
Copy link
Author

Vi1i commented Feb 26, 2018

Yep, I tried this fix already, but this did not solve my issue. I had this issue before I installed pulseaudio onto my system, and had hoped pulseaudio would fix this.
As it did not, I am left with a very similar issues as the #623 has.
I am on Arch Linux, 4.15.5-1-ARCH x86_64 GNU/Linux. I am currently using plain old bash, usually gnome-terminal for my terminal emulator. I am using i3 for my window manager.
I have run from git repo and from the community Arch repo, they both have this issue.

@PromyLOPh
Copy link
Owner

PromyLOPh commented Feb 27, 2018 via email

@Vi1i
Copy link
Author

Vi1i commented Feb 27, 2018

When current song is playing:

  • Next: will play next song
  • Ban: will play next song
  • Tired: will play next song

When current song has reached frozen state:

  • Next: does nothing
  • Ban: echos out that the song is banned, but does not play next song
  • tired: echos out that the song is banned, but does not play next song

While I would like to have eventcmd set up, I have yet to take the step as I want to get pianobar working properly before I attempted to add more complexity. Though I do have a fifo file prepared, but nothing is using it.

Currently I am using pacman:

community/pianobar 2017.08.30-3 [installed]
    Console-based frontend for Pandora

When I compiled it myself from git I did not want to modify the, though with this last statment I did just that, so I added -g3 to the CFLAGS and got the symbols:

GNU gdb (GDB) 8.1
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from pianobar...done.
(gdb) run
Starting program: /home/USER/git/pianobar/pianobar 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
Welcome to pianobar (2017.08.30-dev)! Press ? for a list of commands.
(i) Control fifo at /home/USER/.fifo/pianobar opened
(i) Login... [New Thread 0x7fffe3dff700 (LWP 19734)]
[Thread 0x7fffe3dff700 (LWP 19734) exited]
Ok.
(i) Get stations... [New Thread 0x7fffe3dff700 (LWP 19735)]
[Thread 0x7fffe3dff700 (LWP 19735) exited]
Ok.
|>  Station "Classical Radio" (3901253271328215037)
(i) Receiving new playlist... Ok.
|>  "Piano Sonata No. 1 in C minor, Op. 4, CT. 201" by "Chopin, Fryderyk" on "Vladimir Ashkenazy, Chopin: Piano Sonatas; Etudes"
[New Thread 0x7fffe3dff700 (LWP 19814)]
[New Thread 0x7fffe2d67700 (LWP 19856)]
[New Thread 0x7fffe2566700 (LWP 19857)]
[New Thread 0x7fffe1d65700 (LWP 19858)]
[New Thread 0x7fffe1564700 (LWP 19859)]
[New Thread 0x7fffe0d63700 (LWP 19860)]
#   -00:00/04:03
Thread 1 "pianobar" received signal SIGINT, Interrupt.
0x00007ffff49ab7b3 in select () from /usr/lib/libc.so.6
(gdb) backtrace 
#0  0x00007ffff49ab7b3 in select () from /usr/lib/libc.so.6
#1  0x000055555555fb84 in BarReadline (buf=0x7fffffffe490 "", bufSize=2, mask=0x0, 
    input=0x555555767820 <app+736>, 
    flags=(BAR_RL_FULLRETURN | BAR_RL_NOECHO | BAR_RL_NOINT), timeout=<optimized out>)
    at src/ui_readline.c:88
#2  0x0000555555559a09 in BarMainHandleUserInput (app=0x555555767540 <app>)
    at src/main.c:203
#3  BarMainLoop (app=0x555555767540 <app>) at src/main.c:389
#4  main (argc=<optimized out>, argv=<optimized out>) at src/main.c:491
(gdb) 

@langner
Copy link

langner commented Feb 27, 2018

I get this when liking/banning a song as well. Haven't tried next song yet.

I checked, and next song works fine for me. But liking just says "Loving song...." and freezes (the current song continues until it's done. I can unblock with a Ctrl+C, though.

@PromyLOPh
Copy link
Owner

PromyLOPh commented Mar 2, 2018 via email

@Vi1i
Copy link
Author

Vi1i commented Mar 5, 2018

So I am still getting the same issue, I ran the debugger again, got the same output but this time I tried to force it to continue. Looks like it is getting caught up in a pthread_join()?
If you need me to do something more specific let me know, happy to help.

[USER:~/git/pianobar] master(+74/-41)* ± gdb pianobar 
GNU gdb (GDB) 8.1
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from pianobar...done.
(gdb) run
Starting program: /home/USER/git/pianobar/pianobar 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
Welcome to pianobar (2017.08.30-dev)! Press ? for a list of commands.
(i) Control fifo at /home/USER/.fifo/pianobar opened
(i) Login... [New Thread 0x7fffe3dff700 (LWP 5403)]
[Thread 0x7fffe3dff700 (LWP 5403) exited]
Ok.
(i) Get stations... [New Thread 0x7fffe3dff700 (LWP 5404)]
[Thread 0x7fffe3dff700 (LWP 5404) exited]
Ok.
|>  Station "Classical Radio" (3901253271328215037)
(i) Receiving new playlist... Ok.
|>  "Gymnopédies (3), For Piano (Also Orchestrated By Debussy)" by "Satie, Erik" on "Aldo Ciccolini, Satie: Piano Works (1983 Version)"
[New Thread 0x7fffe3dff700 (LWP 5489)]
[New Thread 0x7fffe2d67700 (LWP 5490)]
[New Thread 0x7fffe2566700 (LWP 5491)]
[New Thread 0x7fffe1d65700 (LWP 5492)]
[New Thread 0x7fffe1564700 (LWP 5493)]
[New Thread 0x7fffe0d63700 (LWP 5494)]
#   -00:00/03:08
Thread 1 "pianobar" received signal SIGINT, Interrupt.
0x00007ffff49ab7b3 in select () from /usr/lib/libc.so.6
(gdb) run
The program being debugged has been started already.
Start it from the beginning? (y or n) n
Program not restarted.
(gdb) con
condition  continue   
(gdb) continue 
Continuing.
#   -00:00/03:08
Thread 1 "pianobar" received signal SIGINT, Interrupt.
0x00007ffff49ab7b3 in select () from /usr/lib/libc.so.6
(gdb) continue
Continuing.
#   -00:00/03:08
Thread 1 "pianobar" received signal SIGINT, Interrupt.
0x00007ffff49ab7b3 in select () from /usr/lib/libc.so.6
(gdb) continue
Continuing.
#   -00:00/03:08
Thread 1 "pianobar" received signal SIGINT, Interrupt.
0x00007ffff49ab7b3 in select () from /usr/lib/libc.so.6
(gdb) step
Single stepping until exit from function select,
which has no line number information.
BarReadline (buf=0x7fffffffe430 "", bufSize=2, mask=0x0, input=0x555555767818 <app+728>, 
    flags=(BAR_RL_FULLRETURN | BAR_RL_NOECHO | BAR_RL_NOINT), timeout=<optimized out>)
    at src/ui_readline.c:91
91				bufLen = 0;
(gdb) continue
Continuing.
#   -00:00/03:08
Thread 1 "pianobar" received signal SIGINT, Interrupt.
0x00007ffff7bc245d in pthread_join () from /usr/lib/libpthread.so.0
(gdb) next
Single stepping until exit from function pthread_join,
which has no line number information.

Thread 1 "pianobar" received signal SIGINT, Interrupt.
0x00007ffff7bc245d in pthread_join () from /usr/lib/libpthread.so.0
(gdb) finish
Run till exit from #0  0x00007ffff7bc245d in pthread_join () from /usr/lib/libpthread.so.0

Thread 1 "pianobar" received signal SIGINT, Interrupt.
0x00007ffff7bc245d in pthread_join () from /usr/lib/libpthread.so.0
(gdb) continue
Continuing.

Thread 1 "pianobar" received signal SIGINT, Interrupt.
0x00007ffff7bc245d in pthread_join () from /usr/lib/libpthread.so.0
(gdb) step
Single stepping until exit from function pthread_join,
which has no line number information.

Thread 1 "pianobar" received signal SIGINT, Interrupt.
0x00007ffff7bc245d in pthread_join () from /usr/lib/libpthread.so.0
(gdb) continue
Continuing.

@PromyLOPh
Copy link
Owner

PromyLOPh commented Mar 6, 2018 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants