]> code.delx.au - transcoding/commitdiff
Cleaned up encoder scripts
authorJames Bunton <jamesbunton@fastmail.fm>
Sun, 16 Mar 2008 12:35:27 +0000 (23:35 +1100)
committerJames Bunton <jamesbunton@fastmail.fm>
Sun, 16 Mar 2008 12:35:27 +0000 (23:35 +1100)
toh264.py
toxvid.py

index 3d902310061e5193b44eead1642f03793af5ec87..ef9c042c57e97df5d6e5536f8b5c568f04f35d3c 100755 (executable)
--- 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()
 
index dc545c2b0d0e290ef857540a373879cd1fa3325e..33d95054d20219cefe00be1b87fdd68cb30a366c 100755 (executable)
--- 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()