3 # Rec10 TS Recording Tools
4 # Copyright (C) 2009 Yukikaze
11 def ts2x264(pin, pout, opts):#sizeは"HD"か"SD"
12 pout = pout.encode('utf-8')
13 pin = pin.encode('utf-8')
15 pinで指定されたファイルをpoutにx264でエンコードして書き出す
20 if re.search("a", opts):
24 if re.search("2", opts):
26 if re.search("Q", opts):
28 if re.search("F", opts):
30 if re.search("H", opts):
32 if re.search("S", opts):
35 encvf = "-vf pullup,softskip,pp=l5,"
39 encvf = encvf + "scale=720:480,harddup"
40 bitrate = "bitrate=" + tv2avi.Bitrate_SD
42 encvf = encvf + "scale=1280:720,harddup"
43 bitrate = "bitrate=" + tv2avi.Bitrate_HD
45 encvf = encvf + "scale=1920:1080,harddup"
46 bitrate = "bitrate=" + tv2avi.Bitrate_FHD
48 encvf = encvf + "scale=400:240,harddup"
49 bitrate = "bitrate=" + tv2avi.Bitrate_WQVGA
51 encvf = encvf + "scale=1280:720,harddup"
52 bitrate = "bitrate=" + tv2avi.Bitrate_HD
54 pas1exe = "mencoder \'" + pin + "\' -quiet -ovc x264 " + encvf + " -x264encopts " + bitrate + ":threads=auto:pass=1:turbo=2 -passlogfile \'" + pin + ".log\' " + "-oac mp3lame -lameopts cbr:br=128 -o /dev/null"
55 pas2exe = "mencoder \'" + pin + "\' -quiet -ovc x264 " + encvf + " -x264encopts " + bitrate + ":threads=auto:pass=2 -passlogfile \'" + pin + ".log\' " + "-oac mp3lame -lameopts cbr:br=128 -o \'" + pout + "\'"
56 pas1exe = "nice -n 19 " + pas1exe
57 pas2exe = "nice -n 19 " + pas2exe
59 txt=txt+commands.getoutput(pas1exe)
63 txt=txt+commands.getoutput(pas2exe)
66 pas1exe = "mencoder \'" + pin + "\' -quiet -ovc x264 " + encvf + " -x264encopts " + bitrate + ":threads=auto -oac mp3lame -lameopts cbr:br=128 -o \'" + pout + "\'"
67 pas1exe = "nice -n 19 " + pas1exe
69 txt=txt+commands.getoutput(pas1exe)
70 f=open(pin+".enc.log",'w')