Closed LordMyschkin closed 5 years ago
Thanks for reporting. A few questions:
BTW could you open an other issue with artwork bug? Please include debug level logging of whatever comes before one of those log messages.
Had a look at it, and there was a bug in my recent commits. It would cause a deadlock on radio stream underrun, which might be what you experienced. It should be fixed now. Hope you can build with the above commit, hopefully it now works.
I am not sure when the error happened, I just noticed Radio was playing first und was not when I reentered the room. I will try to reproduce the artwork bug - I have no artwork with my files, so I did not mention it...
Today i recompiled, set loglevel to debug and started the webradio that was playing yesterday, no problem with the service dying; just that mc200Air stopped playing maybe related to the log below:
[2019-07-14 15:45:09] [DEBUG] db: Running query 'END TRANSACTION;' [2019-07-14 15:45:12] [DEBUG] raop: keep_alive: Sending OPTIONS to 'MC200Air' [2019-07-14 15:45:12] [DEBUG] raop: keep_alive: Sending OPTIONS to 'Samsung W_Audio E750_d1:e1:b5' [2019-07-14 15:45:20] [DEBUG] mpd: MPD message: status [2019-07-14 15:45:20] [DEBUG] player: Player status: playing [2019-07-14 15:45:20] [DEBUG] db: Running query 'SELECT value FROM admin a WHERE a.key = 'queue_version';' [2019-07-14 15:45:20] [DEBUG] db: Running query 'SELECT COUNT() FROM queue;' [2019-07-14 15:45:20] [DEBUG] db: Running query 'BEGIN TRANSACTION;' [2019-07-14 15:45:20] [DEBUG] db: Starting enum 'SELECT FROM queue f WHERE id = 4277 ORDER BY pos;' [2019-07-14 15:45:20] [DEBUG] db: Running query 'END TRANSACTION;' [2019-07-14 15:45:20] [DEBUG] db: Fetch by pos: pos (1) relative to item with id (4277) [2019-07-14 15:45:20] [DEBUG] db: Running query 'BEGIN TRANSACTION;' [2019-07-14 15:45:20] [DEBUG] db: Fetch by pos: pos (1) relative to item with id (4277) [2019-07-14 15:45:20] [DEBUG] db: Running query 'SELECT pos FROM queue WHERE id = 4277;' [2019-07-14 15:45:20] [DEBUG] db: Fetch by pos: item (4277) has absolute pos 1 [2019-07-14 15:45:20] [DEBUG] db: Starting enum 'SELECT FROM queue f WHERE pos = 2 ORDER BY pos;' [2019-07-14 15:45:20] [DEBUG] db: Fetch by pos: fetched item (id=4281, pos=2, file-id=2893) [2019-07-14 15:45:20] [DEBUG] db: Running query 'END TRANSACTION;' [2019-07-14 15:45:20] [DEBUG] db: Fetch by pos: fetched item (id=4281, pos=2, file-id=2893) [2019-07-14 15:45:20] [DEBUG] mpd: MPD message: currentsong [2019-07-14 15:45:20] [DEBUG] player: Player status: playing [2019-07-14 15:45:20] [DEBUG] db: Running query 'BEGIN TRANSACTION;' [2019-07-14 15:45:20] [DEBUG] db: Starting enum 'SELECT FROM queue f WHERE id = 4277 ORDER BY pos;' [2019-07-14 15:45:20] [DEBUG] db: Running query 'END TRANSACTION;' [2019-07-14 15:45:23] [ LOG] raop: Device 'MC200Air' closed RTSP connection [2019-07-14 15:45:23] [DEBUG] raop: Cleaning up failed session (deferred) on device 'MC200Air' [2019-07-14 15:45:23] [DEBUG] player: Callback request received, id is 1 [2019-07-14 15:45:23] [DEBUG] player: Making deferred callback to device_streaming_cb, id was 1 [2019-07-14 15:45:23] [DEBUG] player: Callback from AirPlay to device_streaming_cb (status -1) [2019-07-14 15:45:23] [ LOG] player: The AirPlay device 'MC200Air' FAILED
A minute after writing that lines, both activated speakers FAILED following this lines is this a second bug (for another issue) or the same one?
[2019-07-14 16:58:38] [ WARN] player: Output delay detected: player is 31 ticks behind, cat ching up [2019-07-14 16:58:39] [DEBUG] player: Player status: playing [2019-07-14 16:58:39] [ WARN] player: Output delay detected: player is 33 ticks behind, cat ching up [2019-07-14 16:58:39] [DEBUG] db: Running query 'BEGIN TRANSACTION;' [2019-07-14 16:58:39] [DEBUG] db: Starting enum 'SELECT * FROM queue f WHERE id = 4277 ORDER BY pos;' [2019-07-14 16:58:39] [DEBUG] db: Running query 'END TRANSACTION;' [2019-07-14 16:58:39] [ WARN] player: Output delay detected: player is 31 ticks behind, cat ching up [2019-07-14 16:58:39] [ WARN] player: Output delay detected: player is 28 ticks behind, cat ching up [2019-07-14 16:58:40] [ WARN] player: Output delay detected: player is 29 ticks behind, cat ching up [2019-07-14 16:58:40] [ WARN] player: Output delay detected: player is 25 ticks behind, cat ching up [2019-07-14 16:58:40] [ WARN] player: Output delay detected: player is 28 ticks behind, cat ching up [2019-07-14 16:58:40] [ WARN] player: Output delay detected: player is 22 ticks behind, cat ching up [2019-07-14 16:58:41] [ WARN] player: Output delay detected: player is 25 ticks behind, cat ching up [2019-07-14 16:58:41] [ WARN] player: Output delay detected: player is 25 ticks behind, cat ching up [2019-07-14 16:58:42] [ WARN] player: Output delay detected: player is 30 ticks behind, cat ching up [2019-07-14 16:58:42] [ WARN] player: Output delay detected: player is 25 ticks behind, cat ching up [2019-07-14 16:58:43] [ WARN] player: Output delay detected: player is 24 ticks behind, cat ching up [2019-07-14 16:58:45] [DEBUG] raop: keep_alive: Sending OPTIONS to 'MC200Air' [2019-07-14 16:58:45] [DEBUG] raop: keep_alive: Sending OPTIONS to 'Samsung WAudio E750 d1:e1:b5' [2019-07-14 16:58:47] [ WARN] player: Output delay detected: player is 43 ticks behind, cat ching up [2019-07-14 16:58:47] [ WARN] player: Output delay detected: player is 43 ticks behind, cat ching up [2019-07-14 16:58:48] [ WARN] player: Output delay detected: player is 52 ticks behind, cat ching up [2019-07-14 16:58:49] [DEBUG] mpd: MPD message: status [2019-07-14 16:58:49] [ WARN] player: Output delay detected: player is 124 ticks behind, ca tching up [2019-07-14 16:58:51] [DEBUG] player: Player status: playing [2019-07-14 16:58:51] [ LOG] player: Output delay detected (behind=229, max=150), resettin g all outputs [2019-07-14 16:58:51] [DEBUG] player: Removing callback to device_streaming_cb, id 1 [2019-07-14 16:58:51] [DEBUG] player: Registered callback to device_flush_cb with id 1 (dev ice 0x20805e0, MC200Air) [2019-07-14 16:58:51] [DEBUG] player: Number of active callbacks: 2 [2019-07-14 16:58:51] [DEBUG] raop: flush: Sending FLUSH to 'MC200Air' [2019-07-14 16:58:51] [DEBUG] player: Removing callback to device_streaming_cb, id 0 [2019-07-14 16:58:51] [DEBUG] player: Registered callback to device_flush_cb with id 0 (dev ice 0x2176530, Samsung W_Audio E750_d1:e1:b5) [2019-07-14 16:58:51] [DEBUG] player: Number of active callbacks: 2 [2019-07-14 16:58:51] [DEBUG] raop: flush: Sending FLUSH to 'Samsung W_Audio E750_d1:e1:b 5' [2019-07-14 16:58:51] [DEBUG] mpd: Asynchronous listener callback called with event type 1.
Well it seems the deadlock caused by underrun is solved, so I'm inclined to close this issue and track the Airplay device errors via #775.
for a few days, I noticed that forked-daapd repreatedly hangs after trying to connect to my Boston MC2000 Airplay speaker - this is also the speaker with the least stable connection (by WLAN as well as by LAN), meaning it disconnects often for a few seconds trying to re-synch. Im am using latest master on Raspbian strech Before having to restart the service, log tells