Jump to content

Choppy playback at 25fps but not 29.97


Go to solution Solved by Luke,

Recommended Posts

Hello folks,

 

Need a little help with issues on video playback.

 

I'm running Emby on Windows 10 with the client/server on the same machine. Emby version 3.2.12.0 with the default installation and I run it on Chrome. I'm using the standard Windows paths (not UNC) for file access.

 

I have some videos that were ripped at 29.97fps and they stream fine to my TV (via chromecast) and play fine locally with the Emby client. Unfortunately the quality of the rips are bad so I found some replacements that have good video quality that play at 25fps. Unfortunately these are choppy when I stream them to my TV. They're even worse when I try to play them locally on my laptop with the Emby client. They're fine playing them locally with VLC. I don't have anything else installed at the moment that I can test streaming. I could re-install Plex to test streaming if needed or maybe the VideoCast extension I used to have installed for Chrome.

 

I'm not sure what's going on or what I need to look at in my Emby config. Maybe it's not even the framerate that's the issue but something else? I have attached the media info of both files. I can attach the logs if needed. I read another post that said if the client and server were on the same machine then UNC isn't needed and to be honest I haven't had this issue before so it's not like this is a chronic issue with most of my videos.

 

Any help would be appreciated.

 

Thanks.

post-177961-0-98071800-1492442327_thumb.jpg

post-177961-0-32024300-1492442328_thumb.jpg

Link to post
Share on other sites

Hi @@Luke. I'm definitely familiar with the log files after having spent hours at various times going through them and running different tests to try and resolve my issues but to no avail. :-D I have attached the files you need.

 

I didn't want to get the files mixed up so you're looking for anything with "_new.mp4". These videos are at 25 fps and are the ones giving me trouble. As mentioned the videos that are fine are at 29.97 fps. I have not gone through my entire library to see if any other videos I have are at 25 fps. If they are they aren't giving me trouble so I'm not sure what's up with these files. These files are new and today is the first time I tried to play them.

 

If you need anything else let me know.

ffmpeg-remux-7f7728a6-6070-41e2-bc78-cb8d38f2584c.txt

server-63627984000.txt

Link to post
Share on other sites

We're preserving the original video as-is. Perhaps we should be doing a full transcode. You could try going into the in-app playback settings and dropping the chromecast streaming bitrate to 1mbps. That will be low enough to force this video to fully transcode. See if that plays better. Thanks.

Link to post
Share on other sites

Thanks @@Luke. Is there a reason why it's not even playing locally via Emby? I tried two of these files and both are worse when played locally on my laptop (using Emby) than they are streaming to my TV. The jumping and stuttering makes them unwatchable so it's not just streaming but local play. Both play fine with VLC and the Win 10 native video app. I don't notice any jumping or choppy playback. I will try changing my chromecast settings but that doesn't resolve playing them locally.

 

Thanks @@ebr. I will check my TV. It's older (about 10 years old but is a 720 HDTV so not that old). :-) I haven't seen any settings for that but will check again.

Link to post
Share on other sites

By local if you're referring to the Emby web app, then we'd have to look at the same set of logs for that scenario. If the logs end up looking similar, then it's probably a video stream that needs to be fully transcoded.

Link to post
Share on other sites

Hi @@Luke. Yes. I mean the Emby web app (as in I'm running localhost and browsing my library via chrome http://localhost/web/ and playing the movie on my laptop as opposed to streaming it to my TV). I can't even play the movie in this manner and it's worse than streaming. I believe I tested both the web app and streaming so the results should be in the same log files that I gave. If you don't find anything for local play via the web app I can rerun the test and supply a new log (assuming it's the same server log file or is it different)?

 

BTW: I couldn't find the bitrate setting for chromecast. I think I remember seeing something like this when I first setup chromecast (gen 1) 2 years ago but I don't see it anymore (if I ever did). I did some google searches and I think this ability has been removed (not sure if chromecast is supposed to do this automatically now). I went into the settings (under "Manage Cast devices") and don't see anything related to this. Has this changed? Do I look somewhere else now?

Link to post
Share on other sites

Hi @@Luke. I replayed one of the problem files through the webapp and have attached the log file. There was only a reumx file, no transcode file. Let me know if you need something else. The file I tested with has _newold.mp4 in the name so you can easily find it.

 

I also did a bit of testing:

1. Reloaded Plex and Plex plays them fine. Plex is the only other app I have that is similar and streams in the same manner. They also play fine on my laptop with the Plex web app. As mentioned the files also play fine in VLC, etc.

2. Re-encoded a couple of the files at 29.97 fps and Emby plays these files fine with no stuttering however I lose all the quality I gained with these new files. The background is that I originally had 29.97 fps files that played fine on Emby but the quality was horrible. I found these 25 fps files with great quality but of course they stutter on Emby (streaming and playing on my laptop with the web app). Re-encoding these new files solves the stutter problem but I might as well just play the original files I have given I lose the quality with the re-encode and of course waste time re-encoding.

 

As for chromecast. Sorry... maybe I've gone stupid or something but I don't see the option you mention (screenshot attached on what I see when I right click). As mentioned I remember seeing this feature a long time ago but I have gone through several updates and I think I read that it's no longer available. Or maybe it's buried in some other menu option but I can't find it.

 

Thanks for your efforts with this!!

post-177961-0-27769000-1492792965_thumb.jpg

ffmpeg-remux-bb44b9d3-2468-4910-bbcf-9b7a0a285a42.txt

Link to post
Share on other sites

Can you provide a sample file for testing? Again I think this should probably be fully transcoding, so we just have to figure out what criteria to decide that on. Thanks.

Link to post
Share on other sites

For sure I can. Do you want me to pull a sample of one of the files and if so how much of it do you need and is there a particular tool I should use to cut it without re-encoding to preserve the original?

Link to post
Share on other sites

I guess however much is needed to see the problem. Sometimes when you cut a file you'll find that even without re-encoding, the smaller file doesn't exhibit the issue.

Link to post
Share on other sites

Hi Luke. Just an FYI. I ran another test and re-encoded the problem at 25 fps. Like the previous re-encode using the same problem file but done at 29.97 fps, I lost some of the quality but it's streaming fine and playing via the web app so it's not a "fps" issue although I'm sure you know that by now. Hopefully you can figure out what's going on with the problematic versions. The quality is better so hope to use them.

Link to post
Share on other sites

Yea I'm convinced it needs a full transcode and not a stream copy. The issue is just identifying the characteristic to use to make that decision.

Link to post
Share on other sites
  • Solution

Ok we have tested this video and here is what happens. The problem is actually in the video file itself. To prove this, open a new Chrome tab, then drag and drop the video file onto the browser tab. The file will direct play within Chrome. There won't be any sound due to unsupported audio, but you will see the same choppy playback.

 

This file needs transcoding, however we are not doing that out of the box because there is no obvious characteristic we can use to make that decision. You mentioned it plays fine with our competition, however, we installed it to test the video and saw the same choppy playback. It is only after forcing transcoding that it plays perfectly, so the reason it is playing nicely for you with our competition is because your settings are causing it to transcode.

 

To force it to transcode in Emby, just use the in-video controls to reduce the quality to a bitrate that is lower than the source video. In a future update we will add a more explicit button to force it to transcode.

 

Thanks !

  • Like 1
Link to post
Share on other sites

Thanks so much for this @@Luke. Does that mean VLC and the Windows 10 native video player are transcoding as well because they also play fine there?

 

What's interesting with these files, they were originally avi's. The avi files play fine in Emby. I have all of my files as mp4's so used the app "video container changer" to simply change the container instead of re-encoding which I have done a hundred times before. It's the mp4's that exhibit this odd behavior. What I found interesting is that video container changer gave no errors remuxing this file (other files I have done gave me errors and I had to do a re-encode). I only noticed something odd (aside from the choppiness in Emby) when I went to re-encode the mp4s in Avidemux (this was after doing my original post a couple days ago). Upon loading the files Avidemux I got an error about there being an issue with timing (screenshot attached). When I import the original avi's I don't get this error. As mentioned I have never had issues before so don't know what went wrong. The only thing really different about the avi's is the encoder that was used. I have never seen it before (Nandub v1).

 

When I re-encoded the original avi's with Avidemux using Lavf57 (AVC/AAC) all is fine so something went wonky just doing a container change.

post-177961-0-25310300-1493171406_thumb.jpg

Link to post
Share on other sites
Happy2Play

Since you say "The avi files play fine in Emby", have you looked at what the server is doing to those avi files compared to when it does with mp4's? (transcode/remux vs direct play)

Edited by Happy2Play
Link to post
Share on other sites

Thanks so much for this @@Luke. Does that mean VLC and the Windows 10 native video player are transcoding as well because they also play fine there?

 

What's interesting with these files, they were originally avi's. The avi files play fine in Emby. I have all of my files as mp4's so used the app "video container changer" to simply change the container instead of re-encoding which I have done a hundred times before. It's the mp4's that exhibit this odd behavior. What I found interesting is that video container changer gave no errors remuxing this file (other files I have done gave me errors and I had to do a re-encode). I only noticed something odd (aside from the choppiness in Emby) when I went to re-encode the mp4s in Avidemux (this was after doing my original post a couple days ago). Upon loading the files Avidemux I got an error about there being an issue with timing (screenshot attached). When I import the original avi's I don't get this error. As mentioned I have never had issues before so don't know what went wrong. The only thing really different about the avi's is the encoder that was used. I have never seen it before (Nandub v1).

 

When I re-encoded the original avi's with Avidemux using Lavf57 (AVC/AAC) all is fine so something went wonky just doing a container change.

 

It probably just means that those video players are more resilient about handling bad files than the Chrome video player.

Link to post
Share on other sites

That's a good point @@Happy2Play. I didn't look at the logs after playing the avi's. I will load one of them up again and play it then will play the mp4 version and provide the log files to you in case you want to look (I'm sure you can better interpret the log files than I can).

 

@@Luke's suggestion of having a way to force the transcode is good. Personally I would rather have a message appear telling me it's a bad file because I rather fix the file than play a bad one. :-) Having said that for people who don't know how to fix a bad file (re-encode, etc.) and are stuck with a file like this it would be advantageous to have a way to force a transcode if that will allow it to play. Maybe a message could pop-up alerting it's bad and then the option to continue with a transcode. That would let me know I can fix it but someone like my father could continue on with trying to play it. I hate buggy files and would prefer to fix them. :-) As mentioned I usually test all of my files in VLC before adding them to Emby and since these mp4s played fine in VLC and the Win 10 native player I assumed all was fine.

Link to post
Share on other sites

Personally I would rather have a message appear telling me it's a bad file

 

If the only thing that is happening is the playback is choppy I don't think there is any way for the app to know that so there isn't any way we can determine that the file is "bad" in order to display such a message.  What we can do is put something in the interface that allows you to alert the app that there is a problem with the playback and have it try playing it a different way.  We have this now in the Android TV and Fire TV apps.

Link to post
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...