Jump to content

H.264 level detection?


Recommended Posts

chripopper
Posted

Hello, I recently started using emby and I really like it a lot, all my questions I previously had got answered by searing this forums, great support. I will probably get premiere soon and try out hw-transcoding.

 

However I can not find the answer for one problem:

I have 9 seasons of a show i really enjoy watching on my chromecast. The chromecast handles direct play just fine but the video level is set to 5.0 so therefore emby transcodes and my passive cooled home server gets a little bit hot for nothing. (I verified that direct play works by disable transcoding under user settings)

I then used the application "H.264 level editor" to change the level of all videos to 4.0 but emby still detects them at 5.0, even after a library delete/re add. Every file i open in H.264 level editor now reports 4.0, double and triple checked.

 

  • How does emby detect the H.264 video level?
  • Is it possible to fool emby to think the level is 4.0 without reencoding all videos?

 

Video information:

image.png.927b0ea5049a84f8dc6e322b25ab7eed.png

image.png.b6c55389f69a010fc6d58dc84e498586.png

Happy2Play
Posted
20 minutes ago, chripopper said:
  • How does emby detect the H.264 video level?
  • Is it possible to fool emby to think the level is 4.0 without reencoding all videos?

Emby would have to see the file change via RTM or a library scan to re-probe the media.  But I just tested change a file level with  "H.264 level editor" and Emby update the level in UI with a library scan.

As for fooling not really as Emby probes the media and writes this to the database. 

So we may need to see a server log if a library scan is not updating the files you have edited.

chripopper
Posted (edited)
23 hours ago, Happy2Play said:

Emby would have to see the file change via RTM or a library scan to re-probe the media.  But I just tested change a file level with  "H.264 level editor" and Emby update the level in UI with a library scan.

As for fooling not really as Emby probes the media and writes this to the database. 

So we may need to see a server log if a library scan is not updating the files you have edited.

Thanks for your help!!

When you took the time to test that level editor and library scan I knew something had to be off with the video files and not emby.

 

In the emby log i found the ffprobe command emby runs:

Info MediaProbeManager: ProcessRun 'ffprobe' Execute: /app/emby/ffprobe -i file:"/data/something/something.mkv" -threads 0 -v info -print_format json -show_streams -show_chapters -show_format -show_data

Running this in bash confirmed that the video level was still reported at 5.0 by ffprobe but 4.0 by H.264 level editor.

 

The problem was solved when I extended the search area in H.264 level editor (size limit: 100 000 000, count limit: 10) then I saw the first two hits were at level 4.0 and the other 8 were at 5.0. Changing all to 4.0 and making a new library scan solved the problem.

I'm sorry it was my own fault and nothing wrong with emby. Hopefully this can help someone else in the future when they are wondering why transcode reason shows "video level not supported" and how to fix incorrect video levels...

 

Edit: 10mb size limit and 3 count limit also worked. My guess is that ffprobe searches for 3 hits and is using the highest level detected of those hits.

Edited by chripopper
  • Like 1
Posted

Glad you figured something out.

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