Log in

View Full Version : How do I play a clip backwards?


Leolo
19th April 2003, 22:12
Hello people,

I'm trying to play a video clip backwards, but I can't do it. I'm using Avisynth 2.5.1 beta.

I'm using this script:


DirectShowSource ("Coldplay - The Scientist.mpg")
Reverse


But when I open the AVS file with Zoom Player, it says "Video Desync!", and doesn't show anything :(

I've tried with VirtualDub 1.5.1, but all I get is a black screen...

Please, any tips about how to play an MPEG-1 video in reverse?

Thanks a million.
Regards.

N_F
20th April 2003, 01:05
You could try using Nic's mpegdecoder instead of DirectShowSource, but I have no idea if it'll make any difference.

sh0dan
20th April 2003, 16:19
Directshowsource doesn't support backwards seeking. Use MPEGDecoder as suggested above.

Leolo
22nd April 2003, 22:32
Hello again,

Thank you very much for your replies, but I'm still unable to make it work.

I've copied MPEGDecoder.dll into avisynth's plugin directory, and I have written the following AVS script:
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\MPEGDecoder.dll")
MPEGSource("C:\temp\Coldplay - The scientist.mpg")
Reverse

But ZoomPlayer says in red letters: "Plugin MPEGDecoder.dll is not an AviSynth 2.5 plugin - c:\temp\cold.avs, line 1"

I've tried with Nic's MPEGDecoder_YV12, but Zoom Player gives me another error: "Unable to create filters for [c:\temp\cold.avs] This may be due to a corrupt file or missing decoder filters"

VirtualDub says the following: "Couldn't locate decompressor for format 'YV12' (unknown)"

I suppose I must downgrade my AviSynth version to 2.0x, is there any other solution?

EDIT:I've added "ConvertToYUY2" at the end of the script file, and I get the following error in Zoom Player: "Avisynth: caught an access violation at 0x01ce386e, attempting to read from 0x00000000"

Thanks a lot.
Regards.

Guest
23rd April 2003, 04:03
Originally posted by Leolo

VirtualDub says the following: "Couldn't locate decompressor for format 'YV12' (unknown)" Install DivX 5 to get a YV12 codec that VirtualDub can use.

N_F
23rd April 2003, 09:32
You may want to try

MPEGSource("C:\temp\Coldplay - The scientist.mpg", -2)

if you run into problems with the length and speed of the clip, alternatively I think you can specify the amount of frames manually.

Also, don't forget to add the paratheses to reverse: reverse()

Leolo
23rd April 2003, 13:07
Hi,

I'm sorry to bother you again, but I'm still having problems. This is turning to be much more difficult than I thought of.

I've installed DivX 5.04, the free version. I've also added the missing parenthesis, and made two different scripts:

LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\MPEGDecoder.dll")
MPEGSource("C:\temp\Coldplay - The scientist.mpg")
Reverse()

LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\MPEGDecoder.dll")
MPEGSource("C:\temp\Coldplay - The scientist.mpg", -2)
Reverse()

However, VirtualDub gives me with both of them almost the same error as Zoom Player: "AviSynth read error: AviSynth: caught an access violation at 0x0108386e, attempting to read from 0x00000000"

Could this be a bug? Or is there any other solution I should try?

Thank you very much.
Regards.

Guest
23rd April 2003, 13:51
Why don't you transcode to AVI and then reverse that?

wotef
23rd April 2003, 14:50
yeah, just open it directly from vdub
THEN save to avi
THEN use avisynth

avisource("whatever.avi")
reverse()

Leolo
23rd April 2003, 23:53
Hi,

OK, I'll save to AVI then. I thought it was possible to play back in reverse an MPEG-1 clip, but it seems it isn't.

However, VirtualDub says that I cannot do a simple Direct Stream Copy, because I get this error: "The source video stream uses a compression algorithm which is not compatible with AVI files. Direct stream copy cannot be used with this video stream."

Why are MPEG-1 video streams not compatible with AVI files???

Thanks a lot.
Regards.

Guest
24th April 2003, 00:59
Originally posted by Leolo
Why are MPEG-1 video streams not compatible with AVI files??? MPEG files are encoded in a way that cannot be read by the AVI codec API (ACM).