avisplit - split AVI-files into chunks of a maximum size


       avisplit [ -i file -o base [ -s size ] [ -H num ] [ -t
       s1-s2[,s3-s4,..]	 -c -m -b num -f commentfile ] ] [ -v ]


       avisplit is Copyright (C) by Thomas Ostreich.


       avisplit splits a single AVI-file into chunks of size
       Each of the created chunks will be an independent file,
       i.e. it can be played without needing any other of the


       -i file
	      Specify the filename of the file to split into

       -o base
	      Specify the base of the output filename(s) avisplit
	      will then split to base-%04d.avi

       -s size
	      Use this option to specify the maximum size (in
	      units of MB) of the chunks avisplit should create.
	      0 means dechunk, create as many files as possible.

       -H num Create only the first num chunks then exit.

       -t s1-s2[,s3-s4,..]
	      Split the input file based on time/framecode

       -c     Together with -t. Merge all segments into one AVI-
	      File again instead generating seperate files.

       -m     Together with -t. Force split at upper bondary
	      instead of lower border.

       -b num Specify if avisplit should write an VBR mp3 header
	      into the AVI file. Default is 1 because it does not
	      hurt. num is either 1 or 0.

       -f commentfile
	      Read AVI tombstone data for header comments from
	      commentfile. See /docs/avi_comments.txt for a sam-

       -v     Print only version information and exit.


       The command

       avisplit -s 700 -i my_file.avi

       will split the file my_file.avi into chunks which's maxi-
       mum size will not exceed 700 MB, i.e. they will fit onto a
       CD, each.  The created chunks will be named
       my_file.avi-0000, my_file.avi-0001, etc.

       avisplit -i my_file.avi -c -o out.avi -t

       will grab Minutes 10 to 11 and 13 to 14 from my_file.avi
       and merge it into out.avi


       When you split a file with avisplit and the A/V sync for
       the first file is OK but the sync on all successive files
       is bad then have a look at the output of tcprobe(1)

	| V: 25.000 fps, codec=dvsd, frames=250, width=720,
	| A: 48000 Hz, format=0x01, bits=16, channels=2,
       bitrate=1536 kbps,
	|    10 chunks, 1920000 bytes

       You'll see the AVI file has only 10 Audio chunks but 250
       video chunks. That means one audio chunk spans several
       video frames.  avisplit can not cut a chunk in half, it
       only handles complete chunks. If you do, say, avisplit -s
       20, it is possible that the first file will have 6 audio
       chunks and the second one only 4 meaning there is too much
       audio in the first AVI file.

       The solution is to remux the AVI file with
	      transcode -i in.avi -P1 -N 0x1 -y raw -o out.avi
       (of course -N 0x1 is not correct for all AVI files).  Now
       look at tcprobe again

	| V: 25.000 fps, codec=dvsd, frames=250, width=720,
	| A: 48000 Hz, format=0x01, bits=16, channels=2,
       bitrate=1536 kbps,
	|   250 chunks, 1920000 bytes

       The data in this file is exactly the same (its bit-identi-
       cal) as it was in in.avi; the AVI file was just written in
       a different way, we do now have 250 audio chunks which
       makes splitting much easier and more accurate for avis-


       avisplit was written by Thomas Ostreich
       <ostreich@theorie.physik.uni-goettingen.de> with contribu-
       tions from many others.	See AUTHORS for details.


       aviindex(1), avifix(1), avimerge(1), tccat(1), tcde-
       code(1), tcdemux(1), tcextract(1), tcprobe(1), tcscan(1),

Transcode Wiki | Recent Changes | Preferences
Password required to edit | View other revisions
Last edited October 24, 2004 7:04 am by gateway (diff)