Log in

View Full Version : "Direct stream copy" file size


drdrewusaf
10th December 2007, 02:14
Why, in virtualdubmod, when I select "Direct stream copy" is the resulting file bigger than the source? Is there a way to trans/code/mux the video stream w/o re-encoding and compressing and keeping it close to the same size?

I'm trying to convert an H.264/AVC raw stream to something usable by an mkv muxer. Thanks!



Drew

CWR03
10th December 2007, 15:27
How much bigger is it? Direct stream copy will remux the video unchanged into a new container, but if you've done anything with the audio streams they may be affecting the end file size.

drdrewusaf
10th December 2007, 18:49
At first I was cropping it (via Avisynth script), but read here on the forums that that forces a "re-encode" of sorts causing the bigger file. I got rid of the crop and tried again (still using the Avisynth script since the only way I could get it to open was w/ the DGAVCDec plugin for Avisynth), but it's still gigantic in comparison. There is no audio in the stream, it was demuxed w/ EVODemux.

The size difference is rediculous, so don't laugh...

Original file: 21GB

Direct stream sizes (I didn't let them finish, these are the sizes VirtualDubMod was reporting during the remuxes)
With Crop: 425GB
Without Crop: 665GB

I know...



Drew

J_Darnley
10th December 2007, 18:55
AviSynth outputs raw video so if you use direct stream copy on that you will end up with raw video. VirtualDub would be copying the raw YV12 video to the output file giving you that insane size. If you want to crop, you will need to re-encode.

If you want to mux a raw AVC stream look at mkvmerge or mp4box.

Dark Shikari
10th December 2007, 19:17
Direct Stream Copy copies the stream from Avisynth, not the original stream. The Avisynth stream is always uncompressed.

drdrewusaf
10th December 2007, 20:24
Ok, AviSynth outputs raw video, that makes sense.

I've tried mkvmerge w/ no success. It errored out about 1/4 of the way through the mux (tried 2 times). I'll give mp4box a try...

I even did avc2avi, but the output from it was completely screwed up...the video wasn't even video. Of course, as I'm typing I'm coming up w/ ideas, would VirtualDubMod be able to see if there is recoverable video in the avc2avi output?



Drew

foxyshadis
11th December 2007, 18:00
avc2avi requires a raw (demuxed) stream, which you can get from mkvextract (gui available separate). So does mp4box, since it can't read mkv, but gdsmux (from haali) can merge an mkv directly to an mp4.

joseph5
11th December 2007, 20:18
You can also try Avidemux.