I am having the same thing on latest plex android. Go into an album and hit the yellow play button at the top to play the whole album. First track plays and then playback stops.
Plex in foreground but screen off/locked (timeout during first song). Unlocking phone shows plex thinks it is currently playing (yellow playback button shows pause icon) but timer stuck at 0:00.
This happens for both local/synced content as well as server/streamed content.
These albums are FLAC on the server but I assume a different (transcoded) format in the synced/local case…so I don’t think this is a format-specific.
The fact there is a problem with synced content indicates this is likely a (android) client problem.
I found log options under settings > help & support
.
The interesting bit I saw is this:
02-15 14:12:46.596 e: An exception occurred: java.net.SocketTimeoutException: failed to connect to /10.12.12.25 (port 32400) from /192.168.178.60 (port 49708) after 5000ms
I am at the office (office LAN 192.168.178.*
) plex server is at home. Plex server home/private ip address is 10.12.12.25
). Since I am not on the same network, the android app should be using the public ip address of my plex server, not the private/LAN ip address.
Perhaps there is some DNS/caching issue at play here but strange since playing manually starts fine and it is just when playing subsequent tracks in the list that it errors out trying to connect to plex server over LAN ip?
Hope that helps, this is super annoying bug.
02-15 14:12:45.114 i: Fetching [method:GET] http://127.0.0.1:32500/:/timeline?bufferedTime=117823&duration=364000&guid=plex%3A%2F%2Ftrack%2F5d07d664403c6402909ed1f1&key=%2Flibrary%2Fmetadata%2F268530052&playbackTime=90010&playQueueItemID=1879048261&ratingKey=268530052&state=playing&time=90176&X-Plex-Client-Identifier=54a973b802921a2e-com-plexapp-android
02-15 14:12:45.136 i: [HttpServer] /127.0.0.1:40472 - GET /:/timeline
02-15 14:12:45.168 i: Fetching [method:GET] https://PUBLIC-HOME-IP-REDACTED.dd8f8a30aeeb4b22878ef81197ef4319.plex.direct:33400/:/timeline?bufferedTime=117823&duration=364000&guid=plex%3A%2F%2Ftrack%2F5d07d664403c6402909ed1f1&key=%2Flibrary%2Fmetadata%2F94596&playbackTime=90010&playQueueItemID=1879048261&ratingKey=94596&state=playing&time=90176&X-Plex-Client-Identifier=54a973b802921a2e-com-plexapp-android&X-Plex-Token=...EC5K
02-15 14:12:45.171 e: Error parsing XML from http://127.0.0.1:32500/:/timeline?bufferedTime=117823&duration=364000&guid=plex%3A%2F%2Ftrack%2F5d07d664403c6402909ed1f1&key=%2Flibrary%2Fmetadata%2F268530052&playbackTime=90010&playQueueItemID=1879048261&ratingKey=268530052&state=playing&time=90176&X-Plex-Client-Identifier=54a973b802921a2e-com-plexapp-android: Unexpected token (position:TEXT Failure: 200 OK
@2:1 in java.io.InputStreamReader@cb254a9)
02-15 14:12:46.592 e: [PlexServerWebSocket] (ID: 94413395 | Server: Schillerstr) Connection failed.
02-15 14:12:46.596 e: An exception occurred: java.net.SocketTimeoutException: failed to connect to /10.12.12.25 (port 32400) from /192.168.178.60 (port 49708) after 5000ms
02-15 14:12:46.598 e: Stacktrace: java.net.SocketTimeoutException: failed to connect to /10.12.12.25 (port 32400) from /192.168.178.60 (port 49708) after 5000ms
at libcore.io.IoBridge.connectErrno(IoBridge.java:191)
at libcore.io.IoBridge.connect(IoBridge.java:135)
at java.net.PlainSocketImpl.socketConnect(PlainSocketImpl.java:142)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:390)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:230)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:212)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:436)
at java.net.Socket.connect(Socket.java:621)
at okhttp3.internal.platform.AndroidPlatform.connectSocket(SourceFile:1)
at okhttp3.internal.connection.RealConnection.connectSocket(SourceFile:9)
at okhttp3.internal.connection.RealConnection.connect(SourceFile:14)
at okhttp3.internal.connection.ExchangeFinder.findConnection(SourceFile:30)
at okhttp3.internal.connection.ExchangeFinder.findHealthyConnection(SourceFile:1)
at okhttp3.internal.connection.ExchangeFinder.find(SourceFile:6)
at okhttp3.internal.connection.Transmitter.newExchange(SourceFile:5)
at okhttp3.internal.connection.ConnectInterceptor.intercept(SourceFile:5)
at okhttp3.internal.http.RealInterceptorChain.proceed(SourceFile:10)
at okhttp3.internal.http.RealInterceptorChain.proceed(SourceFile:1)
at okhttp3.internal.cache.CacheInterceptor.intercept(SourceFile:22)
at okhttp3.internal.http.RealInterceptorChain.proceed(SourceFile:10)
at okhttp3.internal.http.RealInterceptorChain.proceed(SourceFile:1)
at okhttp3.internal.http.BridgeInterceptor.intercept(SourceFile:22)
at okhttp3.internal.http.RealInterceptorChain.proceed(SourceFile:10)
at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(SourceFile:6)
at okhttp3.internal.http.RealInterceptorChain.proceed(SourceFile:10)
at okhttp3.internal.http.RealInterceptorChain.proceed(SourceFile:1)
at com.plexapp.plex.net.b3.intercept(SourceFile:25)
at okhttp3.internal.http.RealInterceptorChain.proceed(SourceFile:10)
at okhttp3.internal.http.RealInterceptorChain.proceed(SourceFile:1)
at okhttp3.RealCall.getResponseWithInterceptorChain(SourceFile:13)
at okhttp3.RealCall$AsyncCall.execute(SourceFile:2)
at okhttp3.internal.NamedRunnable.run(SourceFile:3)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:919)
And another one…
02-15 14:19:23.876 i: [PlaybackTimeBehaviour] Time: 280245 IsStarted: true
02-15 14:19:23.883 i: Fetching [method:GET] http://127.0.0.1:32500/:/timeline?bufferedTime=7358&duration=364000&guid=plex%3A%2F%2Ftrack%2F5d07d664403c6402909ed1f1&key=%2Flibrary%2Fmetadata%2F268530052&playbackTime=280246&playQueueItemID=1879048261&ratingKey=268530052&state=playing&time=279641&X-Plex-Client-Identifier=54a973b802921a2e-com-plexapp-android
02-15 14:19:23.900 i: [HttpServer] /127.0.0.1:40730 - GET /:/timeline
02-15 14:19:23.928 i: Fetching [method:GET] https://PUBLIC-HOME-IP-REDACTED.dd8f8a30aeeb4b22878ef81197ef4319.plex.direct:33400/:/timeline?bufferedTime=7358&duration=364000&guid=plex%3A%2F%2Ftrack%2F5d07d664403c6402909ed1f1&key=%2Flibrary%2Fmetadata%2F94596&playbackTime=280246&playQueueItemID=1879048261&ratingKey=94596&state=playing&time=279641&X-Plex-Client-Identifier=54a973b802921a2e-com-plexapp-android&X-Plex-Token=...EC5K
02-15 14:19:23.930 e: Error parsing XML from http://127.0.0.1:32500/:/timeline?bufferedTime=7358&duration=364000&guid=plex%3A%2F%2Ftrack%2F5d07d664403c6402909ed1f1&key=%2Flibrary%2Fmetadata%2F268530052&playbackTime=280246&playQueueItemID=1879048261&ratingKey=268530052&state=playing&time=279641&X-Plex-Client-Identifier=54a973b802921a2e-com-plexapp-android: Unexpected token (position:TEXT Failure: 200 OK
@2:1 in java.io.InputStreamReader@6e77b48)
02-15 14:19:30.626 i: [Treble]: BASS: The gapless stream for stream 1879048262 is dying a natural death.
02-15 14:19:30.628 i: [Treble]: BASS: Stream 1879048262 ended (dying: 0).
02-15 14:19:30.630 i: [Treble]: BASS: Asked to remove stream with identifier 1879048262 with 1 existing streams (fade: 0, kickOffNext: 1).
02-15 14:19:30.635 i: [Treble]: Play Queue: Set item 1879048262 active to 0, 0 active remaining.
02-15 14:19:30.641 i: [Treble]: BASS: Removed stream 1879048262 from position 0, there are now 0 streams.
02-15 14:19:30.643 i: [Treble]: Cache: Asked to close file.
02-15 14:19:30.643 i: [Treble]: BASS: Getting rid of stream 1879048262.
02-15 14:19:30.644 i: [Player][Treble] State (transcoding: false codec: bitrate: 0)
02-15 14:19:30.645 i: [EngineEventManager] onPlaybackStopped: Completed
02-15 14:19:30.645 i: [Player][Timeline] Playback stopped (error: false)
02-15 14:19:30.646 i: [Treble]: BASS: Closing stream 1879048262.
02-15 14:19:30.647 i: [Treble]: BASS: Deleting gapless stream 0x800000c9.
02-15 14:19:30.647 w: [Player][Timeline] player position was negative. Position time will be reported as 0.
02-15 14:19:30.648 i: [Treble]: Play Queue: Set item 1879048262 active to 0, 0 active remaining.
02-15 14:19:30.648 i: [Treble]: Cache: Deleting file reader 0x7753a25598
02-15 14:19:30.649 i: [PlaybackTimeBehaviour] Time: 287009 IsStarted: true
02-15 14:19:30.649 i: [PlaybackTimeBehaviour] Time: 287010 IsStarted: true
02-15 14:19:30.650 i: Fetching [method:GET] http://127.0.0.1:32500/:/timeline?bufferedTime=0&duration=364000&guid=plex%3A%2F%2Ftrack%2F5d07d664403c6402909ed1f1&key=%2Flibrary%2Fmetadata%2F268530052&playbackTime=287009&playQueueItemID=1879048261&ratingKey=268530052&state=stopped&time=0&X-Plex-Client-Identifier=54a973b802921a2e-com-plexapp-android
02-15 14:19:30.651 i: [PlaybackTimeBehaviour] Playback stopped, pausing stopwatch
02-15 14:19:30.652 i: [PlaybackTimeBehaviour] Time: 287020 IsStarted: false
02-15 14:19:30.652 i: [WiFiLockBehaviour] Releasing WiFi lock since playback was stopped.
02-15 14:19:30.656 i: [HttpServer] /127.0.0.1:40736 - GET /:/timeline
02-15 14:19:30.658 i: [BatteryMonitorBehaviour] Playback session was 4.8 minutes long.
02-15 14:19:30.660 i: [BatteryMonitorBehaviour] Average battery consumption was -5597.46 µAh per minute.
02-15 14:19:30.685 i: Fetching [method:GET] https://PUBLIC-HOME-IP-REDACTED.dd8f8a30aeeb4b22878ef81197ef4319.plex.direct:33400/:/timeline?bufferedTime=0&duration=364000&guid=plex%3A%2F%2Ftrack%2F5d07d664403c6402909ed1f1&key=%2Flibrary%2Fmetadata%2F94596&playbackTime=287009&playQueueItemID=1879048261&ratingKey=94596&state=stopped&time=0&X-Plex-Client-Identifier=54a973b802921a2e-com-plexapp-android&X-Plex-Token=...EC5K
02-15 14:19:30.686 e: Error parsing XML from http://127.0.0.1:32500/:/timeline?bufferedTime=0&duration=364000&guid=plex%3A%2F%2Ftrack%2F5d07d664403c6402909ed1f1&key=%2Flibrary%2Fmetadata%2F268530052&playbackTime=287009&playQueueItemID=1879048261&ratingKey=268530052&state=stopped&time=0&X-Plex-Client-Identifier=54a973b802921a2e-com-plexapp-android: Unexpected token (position:TEXT Failure: 200 OK
@2:1 in java.io.InputStreamReader@5dfe0de)
02-15 14:19:31.123 w: [Treble]: BASS: Mixer underflowed.
02-15 14:19:50.639 w: [Treble]: BASS: Mixer underflowed.
02-15 14:19:50.642 i: [Treble]: BASS: Pausing audio output.
02-15 14:21:06.666 e: [PlexServerWebSocket] (ID: 94413395 | Server: Schillerstr) Connection failed.
02-15 14:21:06.669 e: An exception occurred: java.net.SocketTimeoutException: failed to connect to /10.12.12.25 (port 32400) from /192.168.178.60 (port 49982) after 5000ms
02-15 14:21:06.670 e: Stacktrace: java.net.SocketTimeoutException: failed to connect to /10.12.12.25 (port 32400) from /192.168.178.60 (port 49982) after 5000ms
at libcore.io.IoBridge.connectErrno(IoBridge.java:191)
at libcore.io.IoBridge.connect(IoBridge.java:135)
at java.net.PlainSocketImpl.socketConnect(PlainSocketImpl.java:142)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:390)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:230)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:212)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:436)
at java.net.Socket.connect(Socket.java:621)
at okhttp3.internal.platform.AndroidPlatform.connectSocket(SourceFile:1)
at okhttp3.internal.connection.RealConnection.connectSocket(SourceFile:9)
at okhttp3.internal.connection.RealConnection.connect(SourceFile:14)
at okhttp3.internal.connection.ExchangeFinder.findConnection(SourceFile:30)
at okhttp3.internal.connection.ExchangeFinder.findHealthyConnection(SourceFile:1)
at okhttp3.internal.connection.ExchangeFinder.find(SourceFile:6)
at okhttp3.internal.connection.Transmitter.newExchange(SourceFile:5)
at okhttp3.internal.connection.ConnectInterceptor.intercept(SourceFile:5)
at okhttp3.internal.http.RealInterceptorChain.proceed(SourceFile:10)
at okhttp3.internal.http.RealInterceptorChain.proceed(SourceFile:1)
at okhttp3.internal.cache.CacheInterceptor.intercept(SourceFile:22)
at okhttp3.internal.http.RealInterceptorChain.proceed(SourceFile:10)
at okhttp3.internal.http.RealInterceptorChain.proceed(SourceFile:1)
at okhttp3.internal.http.BridgeInterceptor.intercept(SourceFile:22)
at okhttp3.internal.http.RealInterceptorChain.proceed(SourceFile:10)
at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(SourceFile:6)
at okhttp3.internal.http.RealInterceptorChain.proceed(SourceFile:10)
at okhttp3.internal.http.RealInterceptorChain.proceed(SourceFile:1)
at com.plexapp.plex.net.b3.intercept(SourceFile:25)
at okhttp3.internal.http.RealInterceptorChain.proceed(SourceFile:10)
at okhttp3.internal.http.RealInterceptorChain.proceed(SourceFile:1)
at okhttp3.RealCall.getResponseWithInterceptorChain(SourceFile:13)
at okhttp3.RealCall$AsyncCall.execute(SourceFile:2)
at okhttp3.internal.NamedRunnable.run(SourceFile:3)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:919)
02-15 14:22:04.944 i: [HttpServer] /192.168.178.49:53616 - GET /logging
I don’t think it is relevant to the bug but my plex server private (32400
) and public (33400
) ports are different. Port forwarding manually configured in my juniper srx. No uPnP. Only reason it might be relevant is plex server port is different for clients connecting on LAN vs WAN.