PDA

View Full Version : Fixing ASF files


akimboman
3rd February 2004, 22:47
I am trying to convert asf to avi, but there is a corrupt frame stopping me. This is what I've tries so far:

-I'm using AviSynth to frameserve to Virtualdub:

DirectShowSource("E:\temp\mpg\sfu308.asf",fps=14.267)
FreezeFrame (22282,24282,22282)

-It looks like AviSynth "locks-up" on frame 22284.

Any suggestions?

sh0dan
4th February 2004, 00:09
The internal DSS decoder never skips (read: seeks), if the destination is less than ten frames ahead. So the defective frame will be attempted to be decoded. Furthermore the ASF-decoder could also try to decode the frame, since it probably isn't a keyframe.

The best way would probably be to load the ASF twice, and use trim + splice to join it.

akimboman
4th February 2004, 00:42
I can't load the entire file into any editing application that I have. In other words, I can't save the segment after the bad frame.

The only method I've found that will open the beginning of the file is AviSynth / Virtualdub.

Windows Media Player crashes when it gets to the bad frame - but the slider bar will go past the bad frame (then media player will play the last section).

I tried to re-encode the file with Windows Media Encoder. It failed to get past the bad frame.

Wilbert
4th February 2004, 10:38
Could you upload that file somewhere?

sh0dan
4th February 2004, 11:38
What I meant was:

v1 = DirectShowSource("E:\temp\mpg\sfu308.asf",fps=14.267).trim(0,22282)
v2 = DirectShowSource("E:\temp\mpg\sfu308.asf",fps=14.267).trim(24282,0)
v1 ++ v2

akimboman
5th February 2004, 21:49
The trim function doesn't work on this file. It trims the section before the bad frame - but freezes on the section after the bad frame(s).

I did find a solution. I downloaded the trial version of video fixer (www.video-fixer.com). It fixed the file so I could use AviSynth to frameserve to Virtualdub.