Jump to content

Framerate Being Detected as 1000fps -- Forcing Transcode


Noah0504

Recommended Posts

Noah0504

Trying out Emby as I was growing tired of Plex's issues with Live TV.



Anyway, I went to watch a movie just now and noticed the DTS light did not switch from DD on my AVR. I checked the Emby dashboard and it showed it was transcoding the file because the framerate wasn't supported. I started checking my files and under the details for each, it shows the framerate as 1000.



I've ripped and transcoded all of the files myself. I never had an issue with this under Plex or playing them on anywhere else, for that matter.  When the files were transcoded with Handbrake, I did select variable framerate.  If I use mediainfo, I see the correct framerate.



Any help would be much appreciated!


Link to comment
Share on other sites

Noah0504

Well, I was able to confirm that ffprobe is the culprit.  If you look below, you'll see that ffprobe is listing fps as 1k.  However, tbr is correct.  I think I've read in newer versions of ffmpeg, ffprobe uses tbr for outright fps values.

Stream #0:0: Video: h264 (High), yuv420p(tv, bt709, progressive), 1424x1080 [SAR 1:1 DAR 178:135], 1k fps, 23.98 tbr, 1k tbn, 180k tbc (default)

Not really sure there is an easy remedy for me, but it seems weird that I haven't come across anyone else having this issue.

Link to comment
Share on other sites

Noah0504

Just a few more things I've noticed as I try to work this out myself.

 

I'm not 100% sure where Emby pulls it's framerate value from.  Assuming it's from the fps value that ffprobe lists, but I noticed in the transcoder log for a file that Emby could actually be aware of the correct framerate.

{"Codec":"h264","ColorTransfer":"bt709","ColorPrimaries":"bt709","ColorSpace":"bt709","TimeBase":"1/1000","CodecTimeBase":"1/2000","VideoRange":"SDR","DisplayTitle":"1080P H264","NalLengthSize":"4","IsInterlaced":false,"IsAVC":true,"BitRate":9148704,"BitDepth":8,"RefFrames":1,"IsDefault":true,"IsForced":false,"Height":1040,"Width":1920,"AverageFrameRate":1000,"RealFrameRate":23.9760246,"Profile":"High","Type":"Video","AspectRatio":"1.85:1","Index":0,"IsExternal":false,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"PixelFormat":"yuv420p","Level":41}

Above you'll see it lists an average framerate of 1000, but it lists a real framerate of 23.9760246.

 

I don't seem to have a problem playing the video streams directly on other devices because they don't seem to have a framerate limit listed in their capabilities.  The Roku app appears to have a limit for 30fps (which should actually be 60), and because it appears Emby is using the average framerate, Emby thinks it can't play directly and begins to transcode.  Obviously it's not a wise choice to eliminate the framerate limit on the app itself, so is their an easy way to get Emby to use the real framerate?

Link to comment
Share on other sites

Noah0504

On what basis?

 

On the basis of I'm running out of ideas.  :P

 

Obviously I don't want there to be a change made just to fix a single issue for myself, especially if there is a chance of causing issues for others, but I at least want to suggest some ideas!

 

I'll leave this up to the experts to fix, but here is what I know:

 

1. My videos are encoded with variable framerate and it appears that ffprobe struggles with this.  There is a way for ffmpeg to determine if a video has a constant or variable framerate, but I don't think it's a very efficient method -- it's very slow, but it will give you the correct average framerate.  Regardless, I don't think this changes anything for ffprobe, as I don't think you can run it any differently once you know that information.

 

2. I've only had an issue direct playing my videos with our Rokus.  This seems to be the case as only the Rokus have a framerate limit that gets passed back to Emby.  However, we use our Rokus as our main playback method.

 

3. I'm not re-ripping and encoding all of our media.  It's already taken me a very long time.  :P

 

Thanks for taking the time to read and respond to this thread, Luke.

Edited by Noah0504
Link to comment
Share on other sites

Noah0504

Well, I hate to keep adding to this thread, but I think I'd be better off trying to get this taken care of in the Roku app.  I'm going to start a thread under that area because there are a few issues I've come across.

 

The framerate detection might be solved on it's own one day if it's fixed in ffmpeg/ffprobe.

 

Thanks again, Luke.

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