Jump to content

Apple TV 4k playback stutters


zandr

Recommended Posts

I mostly use Emby for older TV, so 4k hasn't been a large part of usage to date, but now that we're all shut-ins, I've been watching more movies. My setup has issues playing 4k movies; every few minutes play back will stop for a second or two, then continue. These come in clusters of three or four, aren't tied to specific points in the film, and it doesn't appear to be 'buffering' in the usual sense, in that pausing playback doesn't really affect when the next burst comes.

 

To narrow things down, I've dragging a wire down the stairs to eliminate WiFi as a factor (no change on GigE), and tested with both Infuse 6.3 and MRMC. Neither of them show the issue. Infuse's speed test showed 940Mb/s most of the time on the wire, with occasional dips to 250Mb/s or so. So, this points to the player app, I think.

 

I've not extensively tested file types and content, but these tend to be 4k mkvs, and the server claims direct streaming, with the comment that it's repackaging the stream. Typically there's tens of minutes of transcode buffer showing. Server load is light. (It should be, on a 6-core i7)

 

So, what should I try next? Infuse 6.3 could be OK, I guess, with some work. MRMC's UI leaves a lot to be desired. I wouldn't think remuxing the files will help much, since the other players don't have an issue.

 

Are there beta invites available? Anything else I should look at? Or just go get a Shield and be done with it? :)

 

Server: FreeNAS 11.3-U1, i7-3930K CPU @ 3.20GHz, 32GB RAM, 8x8TB RaidZ2, Emby 4.2.1.0, GigE, or 4xGigE LAG, makes no difference.
Client: Emby tvOS 1.4.4.07 on an AppleTV A1842 (32GB 4k), tvOS 13.3.1 (17K795). 802.11ac with tx/rx rates in excess of 300Mbs or GigE, makes no difference.

 

 

Link to comment
Share on other sites

"Direct streaming" is what the dashboard says.

 

Clicking the (i) icon brings up the message "The media is compatible with the device regarding resolution and media type (H.264, AC3, etc.), but is in an incompatible file container (.mkv, .avi, .wmv, etc.). The video will be re-packaged on the fly before streaming it to the device. Direct Streaming a file uses very little processing power without any loss in video quality."

 

EDIT: If I were to try remuxing to make direct play work, is there a recommended ffmpeg incantation for the 4k TV?

Edited by zandr
Link to comment
Share on other sites

sfatula

I notice the video is level 153, which is outside of Apple spec of max level 150. I believe @@vdatanet has noted That 150 plays but 153 does not. Maybe he can chime in.

Link to comment
Share on other sites

vdatanet

He's playing using MPV player. Emby's MPV player does not support 4K in any flavour.

  • Like 1
Link to comment
Share on other sites

I notice the video is level 153, which is outside of Apple spec of max level 150. I believe @@vdatanet has noted That 150 plays but 153 does not. Maybe he can chime in.

Does that imply that the bug here is that the server should transcode and doesn't?

Link to comment
Share on other sites

Here is the authoring specs:

But again, part of the point of Emby and the like is that it should transcode for whatever player is trying to play. If that's not working right, then there's a server bug. No?

Link to comment
Share on other sites

sfatula

"Direct streaming" is what the dashboard says.

 

Clicking the (i) icon brings up the message "The media is compatible with the device regarding resolution and media type (H.264, AC3, etc.), but is in an incompatible file container (.mkv, .avi, .wmv, etc.). The video will be re-packaged on the fly before streaming it to the device. Direct Streaming a file uses very little processing power without any loss in video quality."

 

EDIT: If I were to try remuxing to make direct play work, is there a recommended ffmpeg incantation for the 4k TV?

 

To do that, use the convert to feature in the web interface and see if it plays for you. Use custom profile, and convert to hevc mp4. Does it play after that or same issue? I would suggest not using the replace but the next to option. So, the convert is built into emby without worrying about ffmpeg. The audio will need to be converted. 

Link to comment
Share on other sites

sfatula

But again, part of the point of Emby and the like is that it should transcode for whatever player is trying to play. If that's not working right, then there's a server bug. No?

 

In theory, yes, but Emby server does not support the necessary fMP4 (fragmented mp4) format which is needed to correctly play 4k hevc in the native player. They have stated that this would be a pretty major retooling. The better path will be enhancing/fixing the MPV player which has a lot of problems right now. But that is possible as other software uses mpv on Apple TV and they play mkv 4k hevc pretty well. 

 

Infuse used to be unable to play that video as well. It appears that video has been troublesome. Assuming the video in that thread is the same video you are speaking of.  https://firecore.com/forum/topic/20870

Link to comment
Share on other sites

I grabbed that because I think it's the highest data rate file I have around, and this whole thing felt like a buffering issue. But I've had the same issue with other HEVC releases from usenet.

Link to comment
Share on other sites

sfatula

I grabbed that because I think it's the highest data rate file I have around, and this whole thing felt like a buffering issue. But I've had the same issue with other HEVC releases from usenet.

 

It likely is too high a bitrate or perhaps encoded wrong. The 4k ATV specs say level 5.0 (150), which is 25,000,000 bits/second unless high tier. I think your suspicion is correct. The video, if I read the log correctly, is way above that. From what I am reading, it's even outside the spec of 5.1 and 5.2. That's why I am curious if you change to MP4 and put in a sane bitrate within the 5.0 specs and re-encoded, would it play? I actually think it's encoded incorrectly as level 153 means 5.1. 

 

https://en.wikipedia.org/wiki/High_Efficiency_Video_Coding_tiers_and_levels

Edited by sfatula
Link to comment
Share on other sites

To do that, use the convert to feature in the web interface and see if it plays for you. Use custom profile, and convert to hevc mp4.

OK, now I really feel dumb. There doesn't appear to be a custom profile option in Convert, just 'Mobile' and 'TV'. I can set custom quality, which lets me specify a bitrate, but I can't figure out how to spec HEVC.

 

[EDIT: Oh, that's a 4.3 feature.]

Edited by zandr
Link to comment
Share on other sites

sfatula

You are before 4.3? It's important to be more current since HEVC was added and a special tag was added to make the file playable. 

 

Ok, I see you were on 4.2.1.0. It's difficult to keep up with all the different forums and threads. And, what option became available during what release, etc. But IO am very curious if you can convert to MP4 and keep within level 5.0 specs, does it play correctly?

Edited by sfatula
Link to comment
Share on other sites

Nobody reads anymore.
Sorting out why upgrades aren't happening inside the jail now. @@MRobi



Server: FreeNAS 11.3-U1, i7-3930K CPU @ 3.20GHz, 32GB RAM, 8x8TB RaidZ2, Emby 4.2.1.0, GigE, or 4xGigE LAG, makes no difference.

Client: Emby tvOS 1.4.4.07 on an AppleTV A1842 (32GB 4k), tvOS 13.3.1 (17K795). 802.11ac with tx/rx rates in excess of 300Mbs or GigE, makes no difference.

Link to comment
Share on other sites

Jdiesel

 

Nobody reads anymore.

Sorting out why upgrades aren't happening inside the jail now.

 

Server: FreeNAS 11.3-U1, i7-3930K CPU @ 3.20GHz, 32GB RAM, 8x8TB RaidZ2, Emby 4.2.1.0, GigE, or 4xGigE LAG, makes no difference.

Client: Emby tvOS 1.4.4.07 on an AppleTV A1842 (32GB 4k), tvOS 13.3.1 (17K795). 802.11ac with tx/rx rates in excess of 300Mbs or GigE, makes no difference.

 

 

Does this help?

 

https://emby.media/community/index.php?/topic/78925-freenas-jail-shared-object-libx265so179-not-found/?p=803712

Edited by Jdiesel
Link to comment
Share on other sites

Not exactly, but there is something up with ffmpeg now. I upgraded to 4.5.0.3 (foolishing ignoring the BETA flag) and conversions aren't working. Logs (attached) are complaining about

2020-03-31 16:00:56.281 Error FfmpegManager: ProcessRun 'ffmpeg -hide_banner -version' Error Output:
	Shared object "libdav1d.so.4" not found, required by "libavcodec.so.58"

even though running that command from a shell doesn't produce the same error. Conversions subequently fail with

	System.Exception: System.Exception: No video encoder found for 'hevc'

ffmpeg is still 4.2.1

 

I'm still poking at it, but if this is obvious to someone, let me know. :)

 

Link to comment
Share on other sites

Actually we do. We're happy to help.

Thanks, Luke. I was just noting that I'd called out all the versions in my first post.

So, given that I've made a hash of these jails with broken ffmpegs. Is there a clean way to export my config and restore it to a fresh install? It wouldn't be the end of the world to completely start over, but it would save some time if I didn't have to.

Link to comment
Share on other sites

sfatula

https://support.emby.media/support/solutions/articles/44001159936-backup

 

It could be that it will be a little more difficult to go from Beta back to the live version if you actually did the update. I believe Luke has said sometimes the database changes and it's 1 way. But he would probably know in this case.

Edited by sfatula
Link to comment
Share on other sites

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...