view TOOLS/menc2pass @ 12117:e1e5e2124dae

minor changes rename b -> vb, so 'v' is the vlc, 'b' is simply a series of bytes and 'vb' is the length as vlc + the bytes encode the fourcc & language code as v instead of vb, this is much simpler in practice, at least in lavf as the fourcc is an int there
author michael
date Sun, 04 Apr 2004 22:40:48 +0000
parents 9733351ea3e5
children
line wrap: on
line source

#!/usr/bin/perl -w
# Helper script to ease MEncoder two pass encoding
# Copyleft 2001 by Felix Buenemann <atmosfear@users.sourceforge.net>
# This file comes under GPL, see http://www.gnu.org/copyleft/gpl.html for more
# information on it's licensing.
use strict;
my $mencoder="mencoder"; # Path to MEncoder (including binary name)

die <<"EOF" unless @ARGV;
Menc2Pass: No arguments given!
Please give all usual encoding parameters you would give to mencoder, but leave
away the pass=<n> suboption.
EOF

for(my $i=1; $i<=2; $i++) {
  my $parm="";
  foreach my $val (@ARGV) {
    if($val =~ /-lavcopts/) {
      $parm.="$val vpass=$i:";
    } elsif($val =~ /-(divx4)|(xvid)opts/) {
      $parm.="$val pass=$i:";
    } else {
      $parm.="$val ";
    }
  }
  print "Running $mencoder $parm\n";
  system($mencoder,$parm)
  	and die "MEncoder pass $i failed!\n"
}