Log in

View Full Version : Frameserving WMV Files


Video Dude
7th April 2006, 02:23
I'm trying to frameserve wmv files using AviSynth 2.5.6.

But when I view the avs file in MediaPlayer or when I view the xvid output from VirtualDub the video plays in fast motion while the audio plays normal. It's funny because if I slide the bar in media player to any position playing the avs file, the video and audio are in sync for a half second then the video starts going fast. Also the Media Player and avisynth's info() still report 29.700 fps.

I tried the following scripts:
DirectShowSource("c:\video.wmv")

DirectShowSource("c:\video.wmv", fps=29.700)

DirectShowSource("c:\video.wmv", fps=29.700, seek=true)


The wmv files play perfect in MediaPlayer 9/10, ZoomPlayer, etc. It's seems just to be when I use AviSynth that it goes in fastmotion. I thought it might be my wmv files, so I tried some of the free wmv video game trailer advertisements and still had the same problem.

Does anyone have any suggestions? Thanks.

foxyshadis
7th April 2006, 02:47
convertfps=true

This may cause stutter unless you raise the framerate, but if the input was cfr and the encoder only dropped dupes it won't.

Video Dude
7th April 2006, 03:05
Thanks foxyshadis.

convertfps=true worked perfect. I did a quick check and did not really notice any stutter.

I just frame stepped thru the wmv file using TMPGEnc and I noticed a lot of duplicate frames. AviSynth without convertfps=true does not display the duplicate frames. I guess thats why the video played fast.

:thanks:

ericfree
13th April 2006, 03:24
I had the same problem too, but thanks to foxyshadis, it's fixed -- for some wmv files, but not others.

When I use my slider bar to jump around (seek), after a few times, the video and audio can get out of synch.

Any ideas?

foxyshadis
13th April 2006, 05:03
That's a limitation of directshowsource, because it constructs two different filter graphs for a/v, it can't always keep them in sync while seeking because many splitters & decoders are so imprecise. (With some splitters it works fine, with others not at all. And with some files, works great, others not.) This is why DSS has the reputation of being the flakiest part of avisynth, along with not loading the fricking file for no good reason. The best solution is just to keep seeking to a minimum.