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でエンコードして書き出す
18 if re.search("a", opts):
23 if re.search("2", opts):
25 if re.search("H", opts):
27 if re.search("S", opts):
29 if re.search("F", opts):
31 if re.search("L", opts):
33 if re.search("G", opts):
35 encode(pin, pout,size,isAnime,dualpass)
36 def encode(pin,pout,size,isAnime,is2pass):
40 encvf = "-vf pullup,softskip,pp=l5,"
44 encvf = encvf + "scale=1280:720,harddup"
45 bitrate = "bitrate=" + tv2avi.Bitrate_HD
47 encvf = encvf + "scale=720:480,harddup"
48 bitrate = "bitrate=" + tv2avi.Bitrate_SD
50 encvf = encvf + "scale=1920:1080,harddup"
51 bitrate = "bitrate=" + tv2avi.Bitrate_FHD
53 encvf = encvf + "harddup"
54 bitrate = "bitrate=" + tv2avi.Bitrate_Short
56 encvf = encvf + "scale=1280:720,harddup"
57 bitrate = "bitrate=" + tv2avi.Bitrate_LowHD
59 encvf = encvf + "scale=1280:720,harddup"
60 bitrate = "bitrate=" + tv2avi.Bitrate_HD
62 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"
63 pas2exe = "mencoder \'" + pin + "\' -quiet -ovc x264 " + encvf + " -x264encopts " + bitrate + ":threads=auto:pass=2 -passlogfile \'" + pin + ".log\' " + "-oac mp3lame -lameopts cbr:br=128 -o \'" + pout + "\'"
64 pas1exe = "nice -n 19 " + pas1exe
65 pas2exe = "nice -n 19 " + pas2exe
67 txt=txt+commands.getoutput(pas1exe)
70 txt=txt+commands.getoutput(pas2exe)
72 pas1exe = "mencoder \'" + pin + "\' -quiet -ovc x264 " + encvf + " -x264encopts " + bitrate + ":threads=auto -oac mp3lame -lameopts cbr:br=128 -o \'" + pout + "\'"
73 pas1exe = "nice -n 19 " + pas1exe
75 txt=txt+commands.getoutput(pas1exe)
77 logo=logo.replace(".sa.avi",".ts")
78 logo=logo.replace(".ts",".log")
90 txt="\n####mencoder-log_"+size+"####\n"+stxt