From: James Bunton Date: Sun, 16 Mar 2008 12:35:27 +0000 (+1100) Subject: Cleaned up encoder scripts X-Git-Url: https://code.delx.au/transcoding/commitdiff_plain/e81a999d0a375e0fda22e7e8db5d3d37421c578a?hp=397c62bce584db847e6c6781e3815a34ddfeba23 Cleaned up encoder scripts --- diff --git a/toh264.py b/toh264.py index 3d90231..ef9c042 100755 --- a/toh264.py +++ b/toh264.py @@ -9,45 +9,59 @@ cmd = [ "-oac", "faac", "-faacopts", "br=%(abitrate)d:mpeg=4:object=2", "-channels", "2", "-srate", "48000", ] -parser = optparse.OptionParser(usage="%prog [options] input output") -parser.add_option("--dvd", action="store", dest="dvd") -parser.add_option("--filters", action="store", dest="filters", default="denoise3d") -parser.add_option("--vbitrate", action="store", dest="vbitrate", type="int", default=600) -parser.add_option("--abitrate", action="store", dest="abitrate", type="int", default=192) -parser.add_option("--dump", action="store_true", dest="dump") -try: - opts, (input, output) = parser.parse_args(sys.argv[1:]) -except: - parser.print_usage() - sys.exit(1) - -# Start/stop time? -# Custom dvd device? -if opts.dvd: - cmd.insert(1, opts.dvd) - cmd.insert(1, "-dvd-device") - -# Default options -subst = { - "vbitrate": opts.vbitrate, - "abitrate": opts.abitrate, - "filters": opts.filters, - "input": input, -} - -def run(args): - if opts.dump: + +def parseArgs(): + parser = optparse.OptionParser(usage="%prog [options] input output") + parser.add_option("--dvd", action="store", dest="dvd") + parser.add_option("--filters", action="store", dest="filters", default="denoise3d") + parser.add_option("--vbitrate", action="store", dest="vbitrate", type="int", default=600) + parser.add_option("--abitrate", action="store", dest="abitrate", type="int", default=192) + parser.add_option("--startpos", action="store", dest="startpos") + parser.add_option("--endpos", action="store", dest="endpos") + parser.add_option("--dump", action="store_true", dest="dump") + try: + opts, (input, output) = parser.parse_args(sys.argv[1:]) + except: + parser.print_usage() + sys.exit(1) + + return opts, input, output + +def insertOpt(opt, var): + if var: + cmd.insert(1, var) + cmd.insert(1, opt) + +def run(args, dump): + if dump: print " ".join(args) else: subprocess.Popen(args).wait() -# Pass 1 -subst["pass"] = 1 -subst["output"] = "/dev/null" -run([x % subst for x in cmd]) +def main(): + opts, input, output = parseArgs() + + insertOpt("-ss", opts.startpos) + insertOpt("-endpos", opts.endpos) + insertOpt("-dvd-device", opts.dvd) + + subst = { + "vbitrate": opts.vbitrate, + "abitrate": opts.abitrate, + "filters": opts.filters, + "input": input, + } + + # Pass 1 + subst["pass"] = 1 + subst["output"] = "/dev/null" + run([x % subst for x in cmd], opts.dump) + + # Pass 2 + subst["pass"] = 2 + subst["output"] = output + run([x % subst for x in cmd], opts.dump) -# Pass 2 -subst["pass"] = 2 -subst["output"] = output -run([x % subst for x in cmd]) +if __name__ == "__main__": + main() diff --git a/toxvid.py b/toxvid.py index dc545c2..33d9505 100755 --- a/toxvid.py +++ b/toxvid.py @@ -10,45 +10,59 @@ cmd = [ "-oac", "mp3lame", "-lameopts", "abr:br=%(abitrate)d", ] -parser = optparse.OptionParser(usage="%prog [options] input output") -parser.add_option("--dvd", action="store", dest="dvd") -parser.add_option("--filters", action="store", dest="filters", default="denoise3d") -parser.add_option("--vbitrate", action="store", dest="vbitrate", type="int", default=600) -parser.add_option("--abitrate", action="store", dest="abitrate", type="int", default=192) -parser.add_option("--dump", action="store_true", dest="dump") -try: - opts, (input, output) = parser.parse_args(sys.argv[1:]) -except: - parser.print_usage() - sys.exit(1) - -# Start/stop time? -# Custom dvd device? -if opts.dvd: - cmd.insert(1, opts.dvd) - cmd.insert(1, "-dvd-device") - -# Default options -subst = { - "vbitrate": opts.vbitrate, - "abitrate": opts.abitrate, - "filters": opts.filters, - "input": input, -} - -def run(args): - if opts.dump: + +def parseArgs(): + parser = optparse.OptionParser(usage="%prog [options] input output") + parser.add_option("--dvd", action="store", dest="dvd") + parser.add_option("--filters", action="store", dest="filters", default="denoise3d") + parser.add_option("--vbitrate", action="store", dest="vbitrate", type="int", default=600) + parser.add_option("--abitrate", action="store", dest="abitrate", type="int", default=192) + parser.add_option("--startpos", action="store", dest="startpos") + parser.add_option("--endpos", action="store", dest="endpos") + parser.add_option("--dump", action="store_true", dest="dump") + try: + opts, (input, output) = parser.parse_args(sys.argv[1:]) + except: + parser.print_usage() + sys.exit(1) + + return opts, input, output + +def insertOpt(opt, var): + if var: + cmd.insert(1, var) + cmd.insert(1, opt) + +def run(args, dump): + if dump: print " ".join(args) else: subprocess.Popen(args).wait() -# Pass 1 -subst["pass"] = 1 -subst["output"] = "/dev/null" -run([x % subst for x in cmd]) +def main(): + opts, input, output = parseArgs() + + insertOpt("-ss", opts.startpos) + insertOpt("-endpos", opts.endpos) + insertOpt("-dvd-device", opts.dvd) + + subst = { + "vbitrate": opts.vbitrate, + "abitrate": opts.abitrate, + "filters": opts.filters, + "input": input, + } + + # Pass 1 + subst["pass"] = 1 + subst["output"] = "/dev/null" + run([x % subst for x in cmd], opts.dump) + + # Pass 2 + subst["pass"] = 2 + subst["output"] = output + run([x % subst for x in cmd], opts.dump) -# Pass 2 -subst["pass"] = 2 -subst["output"] = output -run([x % subst for x in cmd]) +if __name__ == "__main__": + main()