Closed almostserious closed 3 years ago
Ok, so when I am running the snapdroid without a speaker connected to 3.5mm out and then while playing plugging in the 3.5mm plug the same happens. The Playback stops and can only be recovered by stopping and restarting.
Log Output:
06-26 10:59:41.297 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: MSG_RESIZED_REPORT: frame=(0,0,2560,1600) ci=(0,54,0,34) vi=(0,54,0,34) or=2
06-26 10:59:41.393 6784 6784 E ViewRootImpl@2c404dd[MainActivity]: Surface is not valid.
06-26 10:59:41.398 6784 6784 E ViewRootImpl@2c404dd[MainActivity]: Surface is not valid.
06-26 10:59:41.448 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: stopped(false) old=true
06-26 10:59:41.477 6784 18111 D OpenGLRenderer: destroyEglSurface : 0x7d0e577d00
06-26 10:59:41.481 6784 18111 D OpenGLRenderer: ~ReliableSurface : 0x7cb52d1800
06-26 10:59:41.487 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: Relayout returned: old=(0,0,2560,1600) new=(0,0,2560,1600) req=(2560,1600)0 dur=5 res=0x40001 s={true 535287267328} ch=true
06-26 10:59:41.487 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: RELAYOUT_RES_KEEP_ALIVE_SURFACE on 40001
06-26 10:59:41.487 6784 18111 D OpenGLRenderer: createReliableSurface : 0x7cb52d1800(0x7ca19b8000)
06-26 10:59:41.495 6784 18111 D OpenGLRenderer: makeCurrent EglSurface : 0x0 -> 0x7d0e577a80
06-26 10:59:41.496 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: stopped(false) old=false
06-26 10:59:41.497 6784 6784 D Main : lastRunVersion: 2000, version: 2000
06-26 10:59:41.526 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: Relayout returned: old=(0,0,2560,1600) new=(0,0,2560,1600) req=(2560,1600)0 dur=6 res=0x40001 s={true 535287267328} ch=false
06-26 10:59:41.546 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: MSG_WINDOW_FOCUS_CHANGED 1 1
06-26 10:59:41.546 6784 6784 D InputMethodManager: prepareNavigationBarInfo() DecorView@fb6098c[MainActivity]
06-26 10:59:41.546 6784 6784 D InputMethodManager: getNavigationBarColor() -855310
06-26 10:59:41.548 6784 6784 D InputMethodManager: prepareNavigationBarInfo() DecorView@fb6098c[MainActivity]
06-26 10:59:41.548 6784 6784 D InputMethodManager: getNavigationBarColor() -855310
06-26 10:59:41.548 6784 6784 V InputMethodManager: Starting input: tba=de.badaix.snapcast ic=null mNaviBarColor -855310 mIsGetNaviBarColorSuccess true , NavVisible : true , NavTrans : false
06-26 10:59:41.548 6784 6784 D InputMethodManager: startInputInner - Id : 0
06-26 10:59:41.548 6784 6784 I InputMethodManager: startInputInner - mService.startInputOrWindowGainedFocus
06-26 10:59:41.549 6784 6784 D InputTransport: Input channel destroyed: 'ClientS', fd=58
06-26 10:59:41.958 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: ViewPostIme pointer 0
06-26 10:59:41.994 6784 6784 D AbsListView: reportScrollStateChange() newState : 1
06-26 10:59:42.133 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: ViewPostIme pointer 1
06-26 10:59:42.133 6784 6784 D AbsListView: onTouchUp() mTouchMode : 3
06-26 10:59:42.133 6784 6784 D AbsListView: onTouchUp() TOUCH_MODE_SCROLL initialVelocity : 0
06-26 10:59:42.133 6784 6784 D AbsListView: reportScrollStateChange() newState : 0
06-26 10:59:46.652 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: ViewPostIme pointer 0
06-26 10:59:46.906 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: ViewPostIme pointer 1
06-26 10:59:46.908 6784 28819 D TCP : Sending: {"jsonrpc":"2.0","method":"Client.SetVolume","id":41,"params":{"id":"26c6d10e-cae9-44a1-ae47-0da4b7a36ea3","volume":{"percent":15,"muted":false}}}
06-26 10:59:46.912 6784 5303 D Main : [Info] (Controller) ServerSettings - buffer: 400, latency: -318, volume: 15, muted: 0
06-26 10:59:46.912 6784 28817 D TCP : Received Message: '{"id":41,"jsonrpc":"2.0","result":{"volume":{"muted":false,"percent":15}}}'
06-26 10:59:46.912 6784 28817 D RC : Response to: Client.SetVolume
06-26 10:59:48.493 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: ViewPostIme pointer 0
06-26 10:59:48.653 6784 6784 D AbsListView: reportScrollStateChange() newState : 1
06-26 10:59:48.837 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: ViewPostIme pointer 1
06-26 10:59:48.837 6784 6784 D AbsListView: onTouchUp() mTouchMode : 3
06-26 10:59:48.837 6784 6784 D AbsListView: onTouchUp() TOUCH_MODE_SCROLL initialVelocity : 288
06-26 10:59:48.837 6784 6784 D AbsListView: reportScrollStateChange() newState : 2
06-26 10:59:48.984 6784 6784 D AbsListView: reportScrollStateChange() newState : 0
06-26 10:59:49.184 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: ViewPostIme pointer 0
Log when i have it running with 3.5mm and remove the plug (also stops playback)
06-26 11:05:33.586 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: MSG_RESIZED_REPORT: frame=(0,0,2560,1600) ci=(0,54,0,34) vi=(0,54,0,34) or=2
06-26 11:05:33.594 6784 6784 E ViewRootImpl@2c404dd[MainActivity]: Surface is not valid.
06-26 11:05:33.603 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: stopped(false) old=true
06-26 11:05:33.657 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: stopped(false) old=false
06-26 11:05:33.661 6784 6784 D Main : lastRunVersion: 2000, version: 2000
06-26 11:05:33.664 6784 18111 D OpenGLRenderer: destroyEglSurface : 0x7d0e58d180
06-26 11:05:33.668 6784 18111 D OpenGLRenderer: ~ReliableSurface : 0x7cb52d1800
06-26 11:05:33.676 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: Relayout returned: old=(0,0,2560,1600) new=(0,0,2560,1600) req=(2560,1600)0 dur=8 res=0x40001 s={true 535408058368} ch=true
06-26 11:05:33.676 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: RELAYOUT_RES_KEEP_ALIVE_SURFACE on 40001
06-26 11:05:33.676 6784 18111 D OpenGLRenderer: createReliableSurface : 0x7cb52d1800(0x7ca8cea000)
06-26 11:05:33.680 6784 18111 D OpenGLRenderer: makeCurrent EglSurface : 0x0 -> 0x7d0e577d80
06-26 11:05:33.756 6784 6784 D ViewRootImpl@2c404dd[MainActivity]: MSG_WINDOW_FOCUS_CHANGED 1 1
06-26 11:05:33.756 6784 6784 D InputMethodManager: prepareNavigationBarInfo() DecorView@fb6098c[MainActivity]
06-26 11:05:33.756 6784 6784 D InputMethodManager: getNavigationBarColor() -855310
06-26 11:05:33.761 6784 6784 D InputMethodManager: prepareNavigationBarInfo() DecorView@fb6098c[MainActivity]
06-26 11:05:33.761 6784 6784 D InputMethodManager: getNavigationBarColor() -855310
06-26 11:05:33.761 6784 6784 V InputMethodManager: Starting input: tba=de.badaix.snapcast ic=null mNaviBarColor -855310 mIsGetNaviBarColorSuccess true , NavVisible : true , NavTrans : false
06-26 11:05:33.761 6784 6784 D InputMethodManager: startInputInner - Id : 0
06-26 11:05:33.761 6784 6784 I InputMethodManager: startInputInner - mService.startInputOrWindowGainedFocus
06-26 11:05:33.766 6784 6784 D InputTransport: Input channel destroyed: 'ClientS', fd=76
Looks like snapclient must listen to such events: https://github.com/google/oboe/blob/master/docs/notes/disconnect.md I will check next week when I'm back from my vacation.
Going back to 19.0.1 and manually choosing the OpenSL this does not happen. So the link above sounds correct. Only happens on AAudio. I can confirm the same behavior as well once more with a FireTV Device. Changing the source will stop the stream with no way to recover but to manually stop and restart the service if running on AAudio with 0.20.0
Will be fixed in v0.22 https://github.com/badaix/snapcast/commit/869a9a276ed3f11ba9e63c2687594cc36df29bb7
This is similar to the issue I had with the first Version of 0.19.0. Which was fixed after installing a Test Version. With the newest 0.20.0 apk the Playback on my Android 10 Tablet stops after some time. The server still shows the Tablet as connected and playing, but there is no sound coming. Stopping and reconnecting fixes this.
Here is a log from just now:
I don't have the exact point of failure, the log doesn't seem to go back that far. However, when it happens i get this when playing content (without sound)
After restarting the service it looks normal:
Could it be an issue with the buffer?