Jump to content

Video playing slowly, audio normal speed, hence out of sync


TheShanMan

Recommended Posts

TheShanMan

I'll preface my problem with this in case it's relevant: I recently installed Windows 10 clean, previously ran Windows 7, and copied my old Emby Server and Theater folders over after installing fresh copies of them. I didn't manually install any codecs apart from that.

All videos I've played since then have played fine in Theater, but one last night didn't. Rebooting didn't help. The problem is the video was playing at a very slow speed even though audio was playing at normal speed. If I hit the skip forward button, it would skip forward based on the current video position, not the current audio position. That would sync video and audio back up, but only for that instant because from that point, video would continue playing at the slow speed. I've played this video in the distant past, I'm pretty sure in Theater, without a problem. It also plays just fine in VLC and in Emby Android, so my workaround was to cast from my phone to my Chromecast.

Any idea what would cause this and what the fix is? Here's the MediaInfo output for the mkv file in case that's helpful:

Format                                   : Matroska
Format version                           : Version 2
File size                                : 4.38 GiB
Duration                                 : 2 h 10 min
Overall bit rate                         : 4 795 kb/s
Encoded date                             : UTC 2009-11-19 20:02:45
Writing application                      : mkvmerge v2.9.7 ('Tenderness') built on Jul  1 2009 18:43:35
Writing library                          : libebml v0.7.7 + libmatroska v0.8.1
Attachments                              : arial.ttf / ariali.ttf

Video
ID                                       : 1
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Format profile                           : High@L4.1
Format settings                          : CABAC / 9 Ref Frames
Format settings, CABAC                   : Yes
Format settings, Reference frames        : 9 frames
Codec ID                                 : V_MPEG4/ISO/AVC
Duration                                 : 2 h 10 min
Bit rate                                 : 4 567 kb/s
Width                                    : 968 pixels
Height                                   : 720 pixels
Display aspect ratio                     : 4:3
Frame rate mode                          : Constant
Frame rate                               : 23.976 (24000/1001) FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : Progressive
Bits/(Pixel*Frame)                       : 0.273
Stream size                              : 4.08 GiB (93%)
Writing library                          : x264 core 79 r1332M 70f8869
Encoding settings                        : cabac=1 / ref=9 / deblock=1:-3:-3 / analyse=0x3:0x113 / me=umh / subme=9 / psy=1 / psy_rd=0.7:0.2 / mixed_ref=1 / me_range=48 / chroma_me=1 / trellis=2 / 8x8dct=1 / cqm=0 / deadzone=21,11 / chroma_qp_offset=-3 / threads=6 / nr=0 / decimate=0 / mbaff=0 / constrained_intra=0 / bframes=6 / b_pyramid=2 / b_adapt=2 / b_bias=0 / direct=3 / wpredb=1 / wpredp=2 / keyint=250 / keyint_min=25 / scenecut=40 / rc=2pass / mbtree=0 / bitrate=4567 / ratetol=1.0 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ip_ratio=1.40 / pb_ratio=1.30 / aq=1:0.80
Language                                 : English
Default                                  : Yes
Forced                                   : No

Audio
ID                                       : 2
Format                                   : AC-3
Format/Info                              : Audio Coding 3
Commercial name                          : Dolby Digital
Codec ID                                 : A_AC3
Duration                                 : 2 h 10 min
Bit rate mode                            : Constant
Bit rate                                 : 224 kb/s
Channel(s)                               : 2 channels
Channel layout                           : L R
Sampling rate                            : 48.0 kHz
Frame rate                               : 31.250 FPS (1536 SPF)
Compression mode                         : Lossy
Stream size                              : 209 MiB (5%)
Title                                    : AC3 2.0 @ 224
Language                                 : English
Service kind                             : Complete Main
Default                                  : Yes
Forced                                   : No

Text #1
ID                                       : 3
Format                                   : ASS
Codec ID                                 : S_TEXT/ASS
Codec ID/Info                            : Advanced Sub Station Alpha
Compression mode                         : Lossless
Language                                 : English
Default                                  : No
Forced                                   : No

Text #2
ID                                       : 4
Format                                   : ASS
Codec ID                                 : S_TEXT/ASS
Codec ID/Info                            : Advanced Sub Station Alpha
Compression mode                         : Lossless
Language                                 : French
Default                                  : No
Forced                                   : No

Text #3
ID                                       : 5
Format                                   : ASS
Codec ID                                 : S_TEXT/ASS
Codec ID/Info                            : Advanced Sub Station Alpha
Compression mode                         : Lossless
Language                                 : Portuguese
Default                                  : No
Forced                                   : No

Text #4
ID                                       : 6
Format                                   : ASS
Codec ID                                 : S_TEXT/ASS
Codec ID/Info                            : Advanced Sub Station Alpha
Compression mode                         : Lossless
Language                                 : Spanish
Default                                  : No
Forced                                   : No

 

Link to comment
Share on other sites

I just started having this same issue on one of my machines running emby theater. I haven't made any changes to my system, and everything has played fine up until tonight. It doesn't matter what I try playing, I get terrible judder on everything I've tried. They all play fine when using the web app on that machine though, as well as the Samsung app on that TV, but my preferred player is ET, which kinda sucks, because it's unusable for me currently.

ET is working just fine on my main HTPC though. 

Link to comment
Share on other sites

TheShanMan

I should've stated that I'm running version 3.0.13, which as I recall isn't an official release and just an interim solution for the overlay problem.

Good to know it's not just me, I guess.

Edited by TheShanMan
Had the version number wrong
Link to comment
Share on other sites

sooty234

Also, post an mpv log

On 12/27/2020 at 9:55 AM, sooty234 said:

To generate an mpv log, you need to make an mpv.conf and add logging to it. Be sure to name the log file you're making in the logging entry. Example: log-file="G:\mpv logs\Portable mpv log.txt"

 

Link to comment
Share on other sites

TheShanMan

I installed 3.0.13 clean and it seems to be working. However, now I can't seem to get Theater to start full screen for the life of me. It doesn't seem to remember that it was full screen.

I have an mpv log too but I'm guessing since clean .13 works, you might not be interested in the log.

Link to comment
Share on other sites

  • 6 months later...
TheShanMan

I have this happening again with some episodes of a TV series I have, which are .avi's. Again, they play correctly in VLC.

General
Format                                   : AVI
Format/Info                              : Audio Video Interleave
File size                                : 105 MiB
Duration                                 : 6 min 26 s
Overall bit rate                         : 2 281 kb/s
Writing application                      : VirtualDubMod 1.5.10.1 (build 2366/release)
Writing library                          : VirtualDubMod build 2366/release

Video
ID                                       : 0
Format                                   : MPEG-4 Visual
Format profile                           : Simple@L3
Format settings, BVOP                    : No
Format settings, QPel                    : No
Format settings, GMC                     : No warppoints
Format settings, Matrix                  : Default (MPEG)
Codec ID                                 : XVID
Codec ID/Hint                            : XviD
Duration                                 : 6 min 26 s
Bit rate                                 : 2 079 kb/s
Width                                    : 576 pixels
Height                                   : 432 pixels
Display aspect ratio                     : 4:3
Frame rate                               : 25.000 FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : Progressive
Compression mode                         : Lossy
Bits/(Pixel*Frame)                       : 0.334
Stream size                              : 95.7 MiB (91%)
Writing library                          : XviD 0.0.09 (UTC 2003-03-25)

Audio
ID                                       : 1
Format                                   : AC-3
Format/Info                              : Audio Coding 3
Commercial name                          : Dolby Digital
Codec ID                                 : 2000
Duration                                 : 6 min 26 s
Bit rate mode                            : Constant
Bit rate                                 : 192 kb/s
Channel(s)                               : 2 channels
Channel layout                           : L R
Sampling rate                            : 48.0 kHz
Frame rate                               : 31.250 FPS (1536 SPF)
Compression mode                         : Lossy
Delay relative to video                  : 516 ms
Stream size                              : 8.84 MiB (8%)
Alignment                                : Split across interleaves
Interleave, duration                     : 40  ms (1.00 video frame)
Interleave, preload duration             : 500  ms
Service kind                             : Complete Main

 

Link to comment
Share on other sites

TheShanMan
On 12/29/2020 at 10:14 AM, sooty234 said:

Try switching to the GPU renderer and restarting the app.

That appears to solve it. Any idea why "auto" would do the wrong thing at times?

Link to comment
Share on other sites

generiq
On 7/13/2021 at 8:24 PM, TheShanMan said:

 Any idea why "auto" would do the wrong thing at times?

Auto just defaults to the libmpv renderer, and doesn't use the gpu renderer.

Link to comment
Share on other sites

TheShanMan

Seems kinda silly... seems like simply defaulting to libmpv would eliminate potential confusion. Auto to me implies a (presumably intelligent) choice by the app for which renderer to use.

Unfortunately choosing gpu is a poor solution because the OSD stops working if I set it to gpu. Would that be a bug in the gpu renderer or a limitation that Emby can't overcome?

Is fixing the libmpv renderer so it doesn't have sync issues in videos like I have a possibility?

Link to comment
Share on other sites

generiq
2 minutes ago, TheShanMan said:

Seems kinda silly... seems like simply defaulting to libmpv would eliminate potential confusion. Auto to me implies a (presumably intelligent) choice by the app for which renderer to use.

Unfortunately choosing gpu is a poor solution because the OSD stops working if I set it to gpu. Would that be a bug in the gpu renderer or a limitation that Emby can't overcome?

Is fixing the libmpv renderer so it doesn't have sync issues in videos like I have a possibility?

The UI issue was the reason libmpv was introduced. But the problem is that the libmpv renderer and electron, don't like each other. There are some conflicts. One big conflict is mpv's access/use of the Windows d3d swapchain is blocked. So when using libmpv in Theater, if you look at the stats when playing, you'll see that for hardware acceleration, there will either be none or it will use one of the copyback modes. This is the only way mpv will be able play any video. This means you can't play HDR stuff. The metadata will not pass to the display. 

Link to comment
Share on other sites

TheShanMan

Are you saying the videos I'm having trouble with are HDR? I don't know much about HDR but I think it's associated with 4k, isn't it? I don't have any 4k videos.

Link to comment
Share on other sites

generiq
4 minutes ago, TheShanMan said:

Are you saying the videos I'm having trouble with are HDR? I don't know much about HDR but I think it's associated with 4k, isn't it? I don't have any 4k videos.

No, it affects all video. I was just using HDR stuff as an example. The libmpv renderer is shit (comparatively). GPU is better, but that too will be replaced in the not too distant future. 4k (UHD) and HDR are not synonymous. They are different entities. But the foundation video still needs to be decoded and rendered before it's sent to the display using the d3d swapchain. The HDR metadata is sent along with the video for the display to decode and apply (if it isn't being tone mapped by the software).

In your example above, that is an xvid encoded video in an AVI container. This can be problematic to demux and decode. mpv can do it, but you should leave hardware acceleration to auto, so mpv can decide how best to handle it. You'd be wise to run that through Handbrake and transcode it to h264 in an mkv container. Then you won't have any issues.

Link to comment
Share on other sites

TheShanMan

Haha! In one case "auto" is nothing more than a default, and in another "auto" means an intelligent choice is actually made. Seems like the former case should be fixed so that auto actually means intelligent choice, or should be removed.

Thanks for pointing out the key characteristic: xvid in avi. I'm pretty sure I have hardware acceleration set to auto but I'll double check. And I think I have a lot of those which do play properly but maybe I'm wrong. It would be nice to single out just the ones that libmpv won't play properly if in fact I do have xvid avi's that work fine. I don't want to convert more videos than I have to. I don't suppose you know of a way to do that? Or do you think all xvid avi's will have playback problems in libmpv?

Appreciate the feedback on this!

Edited by TheShanMan
Link to comment
Share on other sites

generiq
1 hour ago, TheShanMan said:

Haha! In one case "auto" is nothing more than a default, and in another "auto" means an intelligent choice is actually made. Seems like the former case should be fixed so that auto actually means intelligent choice, or should be removed.

Thanks for pointing out the key characteristic: xvid in avi. I'm pretty sure I have hardware acceleration set to auto but I'll double check. And I think I have a lot of those which do play properly but maybe I'm wrong. It would be nice to single out just the ones that libmpv won't play properly if in fact I do have xvid avi's that work fine. I don't want to convert more videos than I have to. I don't suppose you know of a way to do that? Or do you think all xvid avi's will have playback problems in libmpv?

Appreciate the feedback on this!

Well, in the case of the choice of renderer, that's Emby, but the choice of hardware acceleration, that's mpv. Because of electron sitting on top of libmpv, that adds an instruction layer. If you played your media directly in mpv, I suspect they would play just fine (as it does in VLC). But you should be aware that support for these older containers and codecs, is slowly ebbing away. Even h264 is now old, but very common.

I just found some of my shows that are in the same format as yours. mpv chooses nvdec-copy to play it. Other than that, it's software decoded. So I need to get to work on those. 

  • Like 1
Link to comment
Share on other sites

  • 2 years later...
TheShanMan

I've had this start happening more and more lately for some reason, with videos that aren't XVID, and videos that used to work just fine. What's going on? Super frustrating to run into this randomly and have to re-encode stuff.

Link to comment
Share on other sites

TheShanMan

Is older hardware and/or OS likely to cause video to play at a slow rate while the audio plays at normal speed? I just tried one such video on Theater on my desktop computer and it plays fine there (Windows 11 on relatively new hardware) in contrast to my HTPC (Windows 10 on old hardware). I'd really like to understand the root cause/solution to this so I don't keep running into this on videos which can't even be blamed on xvid. I'll upgrade Windows if I have to, but don't want to just on a roll of the dice. Same for hardware.

Here's mediainfo output fwiw:

General
Unique ID                                : 187635967868198955619548001858952226150 (0x8D295F776EB507CD81BDEAF7AEC5E566)
Complete name                            : .mkv
Format                                   : Matroska
Format version                           : Version 2
File size                                : 1.85 GiB
Duration                                 : 1 h 2 min
Overall bit rate                         : 4 251 kb/s
Frame rate                               : 23.976 FPS
Encoded date                             : 2013-08-23 12:35:39 UTC
Writing application                      : mkvmerge v5.8.0 ('No Sleep / Pillow') built on Sep  2 2012 15:37:04
Writing library                          : libebml v1.2.3 + libmatroska v1.3.0

Video
ID                                       : 1
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Format profile                           : High@L3.1
Format settings                          : 2 Ref Frames
Format settings, CABAC                   : No
Format settings, Reference frames        : 2 frames
Codec ID                                 : V_MPEG4/ISO/AVC
Duration                                 : 1 h 2 min
Width                                    : 980 pixels
Height                                   : 720 pixels
Display aspect ratio                     : 4:3
Frame rate mode                          : Constant
Frame rate                               : 23.976 FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : Progressive
Language                                 : English
Default                                  : Yes
Forced                                   : No
Color range                              : Limited
Color primaries                          : BT.709
Transfer characteristics                 : BT.709
Matrix coefficients                      : BT.709

Audio
ID                                       : 2
Format                                   : AAC LC
Format/Info                              : Advanced Audio Codec Low Complexity
Codec ID                                 : A_AAC-2
Duration                                 : 1 h 2 min
Channel(s)                               : 2 channels
Channel layout                           : L R
Sampling rate                            : 48.0 kHz
Frame rate                               : 46.875 FPS (1024 SPF)
Compression mode                         : Lossy
Language                                 : English
Default                                  : Yes
Forced                                   : Yes
Link to comment
Share on other sites

TheShanMan

I'm gonna tentatively say yes... Of the several videos I've seen this problem with recently, I only had one remaining in original form. The rest I re-encoded to get them to play better. The untouched one is playing properly now. So I think that might've been the problem! I'll keep an eye on it and report back if I run into this again.

What is it about the mpv library that would have caused the problem?

Thanks Luke!

  • Thanks 1
Link to comment
Share on other sites

Quote

What is it about the mpv library that would have caused the problem?

It's our video player. It's hard to say. Maybe there was a bug fix in a newer version of theirs.

Link to comment
Share on other sites

TheShanMan

Well @LukeI was wrong because it depends on the monitor it plays on... I have 2 TV's - a normal modern one and a 1956 black and white console TV and my HTPC is hooked up to both, via 2 different graphics cards. So for whatever reason, the video in question seems to play properly on my main TV but improperly on my black and white. Therefore my only guess is the video card drivers factor into this problem. Why would that be? And what, if anything, is the solution?

Link to comment
Share on other sites

TheShanMan

They are but that's not saying much... It's a very old video card providing me with an s-video output.

Doing a little troubleshooting... The most reliable way of switching between TV's in an automated (press of a remote button) fashion involved disabling/enabling the desired video card in device manager, as opposed to disabling/enabling the monitor in the display settings screen. The latter was my preference but I couldn't get it to work reliably. From trying some things so far, I think if my main video card (the hdmi one which is newer) is disabled, the video plays improperly but if I have both cards enabled but the hdmi monitor disabled, it plays properly on the black and white TV.

Maybe after half a dozen years, I could get the monitor enabling/disabling approach to work better. I'll see what I can do there and report back.

  • Thanks 1
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...