Jump to content

Playback stops - but no errors


Go to solution Solved by rashV,

Recommended Posts

Posted (edited)

I set up emby yesterday on my unraid - the newest version of binhex-emby, the official container did not want to start.

I have Philips 65OLED807, updated to the newest software version, android 11.

The server and tv are connected by ethernet, tv has an external network card attached via USB, so that it's not limited to 100mbs, on a speed test it pulls around 800mb/s which is my max internet connection.

All worked perfectly for a while, but then playback just suddenly stopped.

I don't see any errors in the logs or anything interesting, all I see is:

2024-05-30 18:52:26.252 Info Server: http/1.1 Response 200 to host6. Time: 741ms. GET http://host1:9096/emby/videos/4818/original.mkv?DeviceId=ea3b22f1a8eb54ac&MediaSourceId=fa2c397e68be7bb71697ad73776f2828&PlaySessionId=5fe9d6284d7d49d49011979f2190d2e4&api_key=x_secret5_x
2024-05-30 18:52:26.302 Info Server: http/1.1 POST http://host1:9096/emby/Sessions/Playing/Stopped. UserAgent: Dalvik/2.1.0 (Linux; U; Android 11; 2021/22 Philips UHD Android TV Build/RTT2.211108.001)
2024-05-30 18:52:26.303 Info SessionManager: Playback stopped reported by app AndroidTv 2.1.10g on 65OLED807/12 playing Midsommar. W biały dzień. Stopped at 1623869 ms. PlaySessionId: 5fe9d6284d7d49d49011979f2190d2e4
2024-05-30 18:52:26.303 Info SessionManager: Removing playSession 5fe9d6284d7d49d49011979f2190d2e4 from session 58b415e9e7e0141047dedce132072927

 

I'm attaching all of the logs.

Is there any way we can find out whats wrong and fix it?

embyserver-63852695424.txt embyserver-63852710400.txt hardware_detection-63852688218.txt hardware_detection-63852695432.txt

Edited by rashV
adding new information about network
Posted (edited)

I dug into this a bit more, and I have some more logs:
From emby:

2024-05-31 11:40:52.678 Info App: User policy for admin. EnablePlaybackRemuxing: False EnableVideoPlaybackTranscoding: False EnableAudioPlaybackTranscoding: False
2024-05-31 11:40:52.678 Info SessionManager: Removing playSession e749071668d54c2f8722a7ab34d14aa4 from session 58b415e9e7e0141047dedce132072927
2024-05-31 11:40:52.678 Info SessionManager: Adding playSession 0b2cc1242ccc43989d79948957a3b606 to session 58b415e9e7e0141047dedce132072927
2024-05-31 11:40:52.679 Info Server: http/1.1 Response 200 to host6. Time: 35ms. POST http://host1:9096/emby/Items/4718/PlaybackInfo?format=json
2024-05-31 11:40:53.637 Info Server: http/1.1 POST http://host1:9096/emby/Sessions/Playing/Stopped. UserAgent: Dalvik/2.1.0 (Linux; U; Android 11; 2021/22 Philips UHD Android TV Build/RTT2.211108.001)
2024-05-31 11:40:53.640 Info SessionManager: Playback stopped reported by app AndroidTv 2.1.10g on 65OLED807/12 playing Władca Pierścieni: Powrót króla. Stopped at 787534 ms. PlaySessionId: 0b2cc1242ccc43989d79948957a3b606
2024-05-31 11:40:53.703 Info SessionManager: Removing playSession 0b2cc1242ccc43989d79948957a3b606 from session 58b415e9e7e0141047dedce132072927
2024-05-31 11:40:53.703 Info Server: http/1.1 Response 204 to host6. Time: 66ms. POST http://host1:9096/emby/Sessions/Playing/Stopped


Looks like we are getting those logs on the tv just before the playback stops:
 

05-31 13:27:42.286 28890 22351 E MediaCodec: Codec reported err 0x80001005, actionCode 0, while in state 6
05-31 13:27:42.286 28890 22351 D MediaCodec: flushMediametrics
05-31 13:27:42.287 28890 22351 D SurfaceUtils: disconnecting from surface 0xe3e179e8, reason disconnectFromSurface
05-31 13:27:42.308 28890 22344 E MediaCodecVideoRenderer: Video codec error
05-31 13:27:42.308 28890 22344 E MediaCodecVideoRenderer:   java.lang.IllegalStateException
05-31 13:27:42.308 28890 22344 E MediaCodecVideoRenderer:       at android.media.MediaCodec.native_dequeueOutputBuffer(Native Method)
05-31 13:27:42.308 28890 22344 E MediaCodecVideoRenderer:       at android.media.MediaCodec.dequeueOutputBuffer(MediaCodec.java:3452)
05-31 13:27:42.308 28890 22344 E MediaCodecVideoRenderer:       at com.google.android.exoplayer2.mediacodec.SynchronousMediaCodecAdapter.dequeueOutputBufferIndex(SynchronousMediaCodecAdapter.java:106)
05-31 13:27:42.308 28890 22344 E MediaCodecVideoRenderer:       at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.drainOutputBuffer(MediaCodecRenderer.java:1814)
05-31 13:27:42.308 28890 22344 E MediaCodecVideoRenderer:       at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:782)
05-31 13:27:42.308 28890 22344 E MediaCodecVideoRenderer:       at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:1007)
05-31 13:27:42.308 28890 22344 E MediaCodecVideoRenderer:       at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:502)
05-31 13:27:42.308 28890 22344 E MediaCodecVideoRenderer:       at android.os.Handler.dispatchMessage(Handler.java:102)
05-31 13:27:42.308 28890 22344 E MediaCodecVideoRenderer:       at android.os.Looper.loop(Looper.java:223)
05-31 13:27:42.308 28890 22344 E MediaCodecVideoRenderer:       at android.os.HandlerThread.run(HandlerThread.java:67)
05-31 13:27:42.317 28890 22344 E ExoPlayerImplInternal: Playback error
05-31 13:27:42.317 28890 22344 E ExoPlayerImplInternal:   com.google.android.exoplayer2.ExoPlaybackException: MediaCodecVideoRenderer error, index=0, format=Format(1, null, null, video/dolby-vision, dvhe.07.06, -1, und, [3840, 2160, -1.0], [-1, -1]), format_supported=NO_EXCEEDS_CAPABILITIES
05-31 13:27:42.317 28890 22344 E ExoPlayerImplInternal:       at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:578)
05-31 13:27:42.317 28890 22344 E ExoPlayerImplInternal:       at android.os.Handler.dispatchMessage(Handler.java:102)
05-31 13:27:42.317 28890 22344 E ExoPlayerImplInternal:       at android.os.Looper.loop(Looper.java:223)
05-31 13:27:42.317 28890 22344 E ExoPlayerImplInternal:       at android.os.HandlerThread.run(HandlerThread.java:67)
05-31 13:27:42.317 28890 22344 E ExoPlayerImplInternal:   Caused by: com.google.android.exoplayer2.video.MediaCodecVideoDecoderException: Decoder failed: OMX.dolby.vision.dvhe.stn.decoder
05-31 13:27:42.317 28890 22344 E ExoPlayerImplInternal:       at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.createDecoderException(MediaCodecVideoRenderer.java:1640)
05-31 13:27:42.317 28890 22344 E ExoPlayerImplInternal:       at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:803)
05-31 13:27:42.317 28890 22344 E ExoPlayerImplInternal:       at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:1007)
05-31 13:27:42.317 28890 22344 E ExoPlayerImplInternal:       at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:502)
05-31 13:27:42.317 28890 22344 E ExoPlayerImplInternal:       ... 3 more
05-31 13:27:42.317 28890 22344 E ExoPlayerImplInternal:   Caused by: java.lang.IllegalStateException
05-31 13:27:42.317 28890 22344 E ExoPlayerImplInternal:       at android.media.MediaCodec.native_dequeueOutputBuffer(Native Method)
05-31 13:27:42.317 28890 22344 E ExoPlayerImplInternal:       at android.media.MediaCodec.dequeueOutputBuffer(MediaCodec.java:3452)
05-31 13:27:42.317 28890 22344 E ExoPlayerImplInternal:       at com.google.android.exoplayer2.mediacodec.SynchronousMediaCodecAdapter.dequeueOutputBufferIndex(SynchronousMediaCodecAdapter.java:106)
05-31 13:27:42.317 28890 22344 E ExoPlayerImplInternal:       at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.drainOutputBuffer(MediaCodecRenderer.java:1814)
05-31 13:27:42.317 28890 22344 E ExoPlayerImplInternal:       at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:782)
05-31 13:27:42.317 28890 22344 E ExoPlayerImplInternal:       ... 5 more
05-31 13:27:42.320 28890 22344 E ExoPlayerImplInternal: Disable failed.
05-31 13:27:42.320 28890 22344 E ExoPlayerImplInternal:   java.lang.IllegalStateException
05-31 13:27:42.320 28890 22344 E ExoPlayerImplInternal:       at android.media.MediaCodec.native_flush(Native Method)
05-31 13:27:42.320 28890 22344 E ExoPlayerImplInternal:       at android.media.MediaCodec.flush(MediaCodec.java:2298)
05-31 13:27:42.320 28890 22344 E ExoPlayerImplInternal:       at com.google.android.exoplayer2.mediacodec.SynchronousMediaCodecAdapter.flush(SynchronousMediaCodecAdapter.java:166)
05-31 13:27:42.320 28890 22344 E ExoPlayerImplInternal:       at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.flushCodec(MediaCodecRenderer.java:867)
05-31 13:27:42.320 28890 22344 E ExoPlayerImplInternal:       at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.flushOrReleaseCodec(MediaCodecRenderer.java:860)
05-31 13:27:42.320 28890 22344 E ExoPlayerImplInternal:       at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onDisabled(MediaCodecRenderer.java:700)
05-31 13:27:42.320 28890 22344 E ExoPlayerImplInternal:       at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onDisabled(MediaCodecVideoRenderer.java:610)
05-31 13:27:42.320 28890 22344 E ExoPlayerImplInternal:       at com.google.android.exoplayer2.BaseRenderer.disable(BaseRenderer.java:186)
05-31 13:27:42.320 28890 22344 E ExoPlayerImplInternal:       at com.google.android.exoplayer2.ExoPlayerImplInternal.disableRenderer(ExoPlayerImplInternal.java:1671)
05-31 13:27:42.320 28890 22344 E ExoPlayerImplInternal:       at com.google.android.exoplayer2.ExoPlayerImplInternal.resetInternal(ExoPlayerImplInternal.java:1412)
05-31 13:27:42.320 28890 22344 E ExoPlayerImplInternal:       at com.google.android.exoplayer2.ExoPlayerImplInternal.stopInternal(ExoPlayerImplInternal.java:1373)
05-31 13:27:42.320 28890 22344 E ExoPlayerImplInternal:       at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:594)
05-31 13:27:42.320 28890 22344 E ExoPlayerImplInternal:       at android.os.Handler.dispatchMessage(Handler.java:102)
05-31 13:27:42.320 28890 22344 E ExoPlayerImplInternal:       at android.os.Looper.loop(Looper.java:223)
05-31 13:27:42.320 28890 22344 E ExoPlayerImplInternal:       at android.os.HandlerThread.run(HandlerThread.java:67)
05-31 13:27:42.328   319 14970 I audio_hal: [out_pause:2063]output_type = 5, handle:229
05-31 13:27:42.328   319 14970 D audio_hal: [out_pause:2092]pause for non-tunneling compressed, state:1, pcm:0xee4c01f0
05-31 13:27:42.333 28890 28890 E EventLogger: playerFailed [eventTime=776.09, mediaPos=1558.77, window=0, period=0, errorCode=ERROR_CODE_DECODING_FAILED
05-31 13:27:42.333 28890 28890 E EventLogger:   com.google.android.exoplayer2.ExoPlaybackException: MediaCodecVideoRenderer error, index=0, format=Format(1, null, null, video/dolby-vision, dvhe.07.06, -1, und, [3840, 2160, -1.0], [-1, -1]), format_supported=NO_EXCEEDS_CAPABILITIES
05-31 13:27:42.333 28890 28890 E EventLogger:       at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:578)
05-31 13:27:42.333 28890 28890 E EventLogger:       at android.os.Handler.dispatchMessage(Handler.java:102)
05-31 13:27:42.333 28890 28890 E EventLogger:       at android.os.Looper.loop(Looper.java:223)
05-31 13:27:42.333 28890 28890 E EventLogger:       at android.os.HandlerThread.run(HandlerThread.java:67)
05-31 13:27:42.333 28890 28890 E EventLogger:   Caused by: com.google.android.exoplayer2.video.MediaCodecVideoDecoderException: Decoder failed: OMX.dolby.vision.dvhe.stn.decoder
05-31 13:27:42.333 28890 28890 E EventLogger:       at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.createDecoderException(MediaCodecVideoRenderer.java:1640)
05-31 13:27:42.333 28890 28890 E EventLogger:       at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:803)
05-31 13:27:42.333 28890 28890 E EventLogger:       at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:1007)
05-31 13:27:42.333 28890 28890 E EventLogger:       at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:502)
05-31 13:27:42.333 28890 28890 E EventLogger:       ... 3 more
05-31 13:27:42.333 28890 28890 E EventLogger:   Caused by: java.lang.IllegalStateException
05-31 13:27:42.333 28890 28890 E EventLogger:       at android.media.MediaCodec.native_dequeueOutputBuffer(Native Method)
05-31 13:27:42.333 28890 28890 E EventLogger:       at android.media.MediaCodec.dequeueOutputBuffer(MediaCodec.java:3452)
05-31 13:27:42.333 28890 28890 E EventLogger:       at com.google.android.exoplayer2.mediacodec.SynchronousMediaCodecAdapter.dequeueOutputBufferIndex(SynchronousMediaCodecAdapter.java:106)
05-31 13:27:42.333 28890 28890 E EventLogger:       at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.drainOutputBuffer(MediaCodecRenderer.java:1814)
05-31 13:27:42.333 28890 28890 E EventLogger:       at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:782)
05-31 13:27:42.333 28890 28890 E EventLogger:       ... 5 more
05-31 13:27:42.333 28890 28890 E EventLogger: ]
05-31 13:27:42.336 28890 28890 I System.out: ***** Got error from Exo player: Decoder failed: OMX.dolby.vision.dvhe.stn.decoder
05-31 13:27:42.339 28890 28890 I System.out: Playback error - Failed to load video
05-31 13:27:42.339 28890 28890 I System.out: Player error encountered - retrying


I reproduced the situation twice. More logs from the tv are attached, as well as full emby log.

Is there anything I can do to fix this?

tvlogs.txt

embyserver.txt tvLogs2.txt

Edited by rashV
Posted
1 hour ago, rashV said:
User policy for admin. EnablePlaybackRemuxing: False EnableVideoPlaybackTranscoding: False EnableAudioPlaybackTranscoding: False

Hi.  Try re-enabling those options and note the text underneath them.

Posted

HI! 

If I reenable those, I'm getting the same issue I was having on plex, it doesn't crash, but it stops direct playing, starts transcoding, and in doing so it loses the HDR. That is the reason why I wanted to try out emby in the first place.

I'm attaching the screenshots from the dashboard, before and after transcoding starts, and new logs.

Is there any way we could make direct playing work?

image.png.af8985849f8f5d5968ffc9a80e7a868d.pngimage.png.8a59536e127ebccb48d1e28bcfcfa2bd.png

embyserver.txt ffmpeg-transcode-dbff2295-cb8c-4b42-9e4e-cdb8e8b0b35f_1.txt ffmpeg-transcode-eaf0caca-0bbf-43ca-a0f4-4114c1962aa9_1.txt

Posted

Have you enabled tonemapping on your server? 

However, the example I saw appeared to be DolbyVision, not HDR and it appears maybe your display/device does not support DolbyVision.  Unless the DV profile is one with an HDR fallback layer, there is no way to tone-map it.

Posted (edited)

No, I have not enabled tone mapping, I'm using the trail version, so it's not available to me. If we manage to make this work, I'll most likely buy the lifetime licence, but for now, I want to confirm that emby can work with no issues.

I think I tried on other movies HDR10, with same effect, but yes here the problem is with DolbyVision.

However, my display/device is Philips 65OLED807, it definitely supports dolby vision, here is a link to the specs: https://www.displayspecifications.com/en/model/b5a52a4c

Additionally, it does detect dolby vision on the movie start, the tv is switching to the dolby vision calibrated mode, and for the first few minutes it does play it with no issue. It only starts to have a problem after some time, when it switches to transcoding.

Thats why I would like to find a way to fix the direct playing. There should be no transcoding needed in this case.

Edited by rashV
GrimReaper
Posted

Try searching for standard Android app in your Store or sideload it:

Emby for Android - Emby,

see how does that compare.

Posted

Since, as I mentioned in previous post, I don't have the emby premiere, and only the free trial version, it does not allow me to play more then a minute on Emby for Android :(

Posted

How was this file created?  Are you sure it was done properly?

Posted

I've seen this happen on multiple files. I'm as confident as I can be that they were done properly.

Posted

I tried another file, and there is a new situation now. The dashboard says its direct play, however the movie is clearly being displayed without dolby vision. The movie stopped being played, loader was showing for 30s, then it started again, this time, the dolby vision is clearly gone, all colors are washed out.

But the dashboard is still displaying Direct Play. Logs are also showing that it started to transcode. But the dashboard is claiming to direct play, it must be showing it incorrectly.

Posted

Something about these files is causing errors when trying to direct play.  This is indicated in your screen shots.

Can you try searching for our standard android app (Just "Emby" on Amazon and "Emby for Android on Google) on the same device's app store and see how that compares?

Thanks.

 

GrimReaper
Posted
Just now, ebr said:

Can you try searching for our standard android app (Just "Emby" on Amazon and "Emby for Android on Google) on the same device's app store and see how that compares?

 

5 hours ago, GrimReaper said:

Try searching for standard Android app in your Store or sideload it:

Emby for Android - Emby,

see how does that compare.

 

3 hours ago, rashV said:

Since, as I mentioned in previous post, I don't have the emby premiere, and only the free trial version, it does not allow me to play more then a minute on Emby for Android

 

Posted
Quote

the official container did not want to start.

Hi, what exactly happened?

Posted (edited)
11 hours ago, ebr said:

Something about these files is causing errors when trying to direct play.  This is indicated in your screen shots.

I'm pretty sure that the files themselves are good, no issues with them.

If you can point me to some files we could test on so that you are also confident, I will do a test on it. 

If that's not possible, then please take my word for it, the files are good. In my opinion, the server is also fine. The problem is most likely on the player.

 

2 hours ago, Luke said:

Hi, what exactly happened?

It does not allow me to remap ports. I have some other apps using some of the ports its trying to use. Even the main port, it still tries to use 8096, even If I put some other port in the config.

I disabled the other apps, and tried on the official container. 
I also tried on the Emby for android, and this time - maybe because it was the first app that I logged into after switching containers? - it did not give me 1 minute limit.

I still fails in the same way. It starts to transcode part way through the movie.

Edited by rashV
Posted

Anything around 70GB or bigger appears to be suffering from this issue, while things under that are working fine.

Posted (edited)

If I play the files "directly", but still over the network like with VLC, they seem to be playing with no issue. But it does not have dolby vision support. So it falls back to normal HDR.

Edited by rashV
adding new information
Posted
3 hours ago, rashV said:

Anything around 70GB or bigger appears to be suffering from this issue, while things under that are working fine.

What are the bitrates?  What's the network connection?

Posted (edited)

The network connection is at least 800mb/s, its ethernet on both ends. I added an external network card to the tv, its 1gb/s, but I'm not confident it achives full speed. But it maxes out my external internet connection at 800mb/s on a speed test.

Bitrates are from 70 to 90 Mbps.

Edited by rashV
Posted
6 minutes ago, rashV said:

Bitrates are from 70 to 90 Mbps

I'm just wondering if the TVs internals are really up for that high of a bitrate.  Do you have any external streaming device you could do a comparison test with on the same content?

Posted

Unfortunately, I don't have any external device I could try out.

However, as mentioned, the movies play perfectly if I use a player like VLC and play them over network with SMB share from unraid. So it seems it should be able to handle it? Unless it's the dolby vision that is the problem (as the players seem to fallback to normal HDR)?

I don't know any player that could handle dolby vision in such a way, so I don't have a way to test it.

Posted (edited)

The Vimu media player is capable in playing dolby vision from SMB. And it also fails.

It looks like the decoder for dolby vision is somehow broken on the tv. I'm getting:

Exo2 Renderer: Decoder failed:
OMX.dolby.vision.dvge.stn.decoder

All works week when playing from SMB when using standard HDR.

Edited by rashV
Posted

We’re due for an exoplayer update soon so we’ll see if that helps.

  • Solution
Posted

So, I figoured out that vimu.tv is able to play all my movies. It has an option of `Convert Dolby Vision Profile`, when I turn it on, everything works just fine.

I tested it on 131gb movie with 70 Mbps bitrate, which is the best I can find - no issues.

The setting is converting profile 7 of dolby vision to profile 8. It appears that dolby vision profile 7 has some issues on my Philips tv. I found some examples of other people with Philips tv's with the same issue. So most likely its a problem with the tv itself.

  • Thanks 1

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...