recdblist.Commonlogex("Error", "ts2x264(ts2x264.py)", str(type(inst)), str(inst))
def encode_sar(pin,pout,size,is24fps,quality,crf,deinterlace=1):
mencoder=configreader.getpath("mencoder")
- x264=configreader.getpath("x264")
encvf=""
txt=""
encvf="-sws 9 -vf yadif=0,pp=l5"
harddup=",hqdn3d=2:1:2,unsharp=l3x3:0.75:c3x3:0.75,harddup"
ofps="-ofps 30000/1001"
fps="-fps 30000/1001"
- x264fps="--fps 30000/1001"
+ x264fps="30000/1001"
x264streamsize=""
x264preset=""
x264tune=""
x264_bitrate="5000"
- x264_thread="auto"
tsar=getMoviePAR(pin)
- x264_sar="--sar "+str(tsar[0])+":"+str(tsar[1])
- try:
- xtt=configreader.getenv("x264_thread")
- xtt=int(xtt)
- if xtt>0:
- x264_thread=str(xtt)
- except:
- x264_thread="auto"
- x264_addline=configreader.getenv("x264_addline")
+ x264_sar=str(tsar[0])+":"+str(tsar[1])
if is24fps==1:
ofps="-ofps 24000/1001"
fps="-fps 30000/1001"
- x264fps="--fps 24000/1001"
- x264tune="--tune animation"
+ x264fps="24000/1001"
+ x264tune="animation"
encvf="-sws 9 -vf pullup,softskip"
harddup=",pp=l5,unsharp=l3x3:0.75:c3x3:0.75,hqdn3d=2:1:2,harddup"
if size == "HD":
ofps="-ofps 30000/1001"
#fps="-fps 30000/1001"
fps=""
- x264fps="--fps 30000/1001"
+ x264fps="30000/1001"
x264tune=x264tune+" --tff --nal-hrd vbr"
encvf="-vf hqdn3d=2:1:2"
harddup=",harddup"
encvf=encvf+harddup
x264streamsize=str(tsize[0])+u"x"+str(tsize[1])
if quality==1:
- x264preset=u"--preset ultrafast"
+ x264preset=u"ultrafast"
elif quality==2:
- x264preset=u"--preset veryfast"
+ x264preset=u"veryfast"
elif quality==3:
- x264preset=u"--preset fast"
+ x264preset=u"fast"
elif quality==4:
- x264preset=u"--preset medium"
+ x264preset=u"medium"
elif quality==5:
- x264preset=u"--preset slow"
+ x264preset=u"slow"
elif quality==6:
- x264preset=u"--preset slower"
+ x264preset=u"slower"
if size == "WVGA_BASE" or size == "QVGA_BASE":
x264profile=" --level 32 --profile baseline "
else:
x264profile=" --level 42 --profile high "
- x264crf=u"--crf "+str(crf)
+ x264crf=str(crf)
os.environ['LANG']="ja_JP.UTF-8"
random.seed(pin)
random.jumpahead(10)
random.jumpahead(temptime)
streampath=os.path.join(os.path.dirname(pin),str(random.randint(10000, 99999999)))
os.system(u"mkfifo "+streampath)
- encexe=mencoder+u" \""+pin+u"\" -vfm ffmpeg -quiet "+encvf+u",format=i420 "+fps+" "+ofps+" -oac mp3lame -ovc raw -of rawvideo -o \""+streampath+"\" &"
- encexe=encexe+u" nice -n 19 "+x264+" "+x264_sar+" "+x264crf+u" "+x264_addline+u" --threads "+x264_thread+" "+x264profile+x264preset+" "+x264tune+" "+x264fps+" -o \""+pout+"\" "+streampath+" "+x264streamsize
+ encexe=mencoder+u" \""+pin+u"\" -vfm ffmpeg -quiet "+encvf+u",format=i420 "+fps+" "+ofps+" -oac mp3lame -ovc raw -of rawvideo -o \""+streampath+"\" & "
+ encexe=encexe+get_x264_commandline(x264preset, x264sar, x264fps, x264profile, x264tune, pout, streampath, x264streamsize, crf=x264crf)
+ #encexe=encexe+u" nice -n 19 "+x264+" "+x264_sar+" "+x264crf+u" "+x264_addline+u" --threads "+x264_thread+" "+x264profile+x264preset+" "+x264tune+" "+x264fps+" -o \""+pout+"\" "+streampath+" "+x264streamsize
encexe=u"nice -n 19 " +encexe
recdblist.printutf8(encexe)
txt=""
ffmpeg=configreader.getpath("ffmpeg")
x264=configreader.getpath("x264")
fps=u"-r 29.970030 "
- x264fps="--fps 30000/1001"
+ x264fps="30000/1001"
x264streamsize=""
x264preset=""
x264tune=""
x264_bitrate="2500"
x264_thread="auto"
tsar=getMoviePAR(pin)
- x264_sar="--sar "+str(tsar[0])+":"+str(tsar[1])
- try:
- xtt=configreader.getenv("x264_thread")
- xtt=int(xtt)
- if xtt>0:
- x264_thread=str(xtt)
- except:
- x264_thread="auto"
- x264_addline=configreader.getenv("x264_addline")
+ x264_sar=str(tsar[0])+":"+str(tsar[1])
if size == "HD":
tsize=get_par_size(pin,720)
s = "-s "+str(tsize[0])+"x720 "
x264streamsize=str(tsize[0])+u"x720"
x264_bitrate="2500"
if quality==1:
- x264preset=u"--preset ultrafast"
+ x264preset=u"ultrafast"
elif quality==2:
- x264preset=u"--preset veryfast"
+ x264preset=u"veryfast"
elif quality==3:
- x264preset=u"--preset fast"
+ x264preset=u"fast"
elif quality==4:
- x264preset=u"--preset medium"
+ x264preset=u"medium"
elif quality==5:
- x264preset=u"--preset slow"
+ x264preset=u"slow"
elif quality==6:
- x264preset=u"--preset slower"
+ x264preset=u"slower"
if size == "WVGA_BASE" or size == "QVGA_BASE":
x264profile=" --level 32 --profile baseline "
else:
x264crf=u"--crf "+str(crf)
txt=""
os.environ['LANG']="ja_JP.UTF-8"
- exe=ffmpeg+u" -y -i \""+pin+"\" -vsync 400 -vcodec rawvideo -pix_fmt yuv420p "+s+fps+"-deinterlace -an -f rawvideo - |"
- exe=exe+u" nice -n 19 "+x264+" "+x264_sar+" "+x264crf+u" "+x264_addline+u" --threads "+x264_thread+" "+x264profile+x264preset+" "+x264tune+" "+x264fps+" -o \""+pout+"\" - "+x264streamsize
+ exe=ffmpeg+u" -y -i \""+pin+"\" -vsync 400 -vcodec rawvideo -pix_fmt yuv420p "+s+fps+"-deinterlace -an -f rawvideo - | "
+ exe=exe+get_x264_commandline(x264preset, x264sar, x264fps, x264profile, x264tune, pout,"-", x264streamsize, crf=x264crf)
+ #exe=exe+u" nice -n 19 "+x264+" "+x264_sar+" "+x264crf+u" "+x264_addline+u" --threads "+x264_thread+" "+x264profile+x264preset+" "+x264tune+" "+x264fps+" -o \""+pout+"\" - "+x264streamsize
exe = "nice -n 19 " + exe
txt=""
recdblist.printutf8(exe)
v=-1
if rM:
v=int(rM.group(1))
- return v
\ No newline at end of file
+ return v
+def get_x264_commandline(preset,sar,fps,x264profile,x264tune,pout,pin,x264streamsize,crf=0,bitrate=0):
+ os.environ['LANG']="ja_JP.UTF-8"
+ x264_sar="--sar "+sar
+ x264preset=u"--preset "+preset
+ x264fps="--fps "+fps
+ if crf==0:
+ x264bitrate=u"--bitrate "+str(bitrate)
+ else:
+ x264crf=u"--crf "+str(crf)
+ x264_addline=configreader.getenv("x264_addline")
+ x264_thread="auto"
+ try:
+ xtt=configreader.getenv("x264_thread")
+ xtt=int(xtt)
+ if xtt>0:
+ x264_thread=str(xtt)
+ except:
+ x264_thread="auto"
+ x264_addline=configreader.getenv("x264_addline")
+ if get_x264core_version()>103:
+ x264res=u"--input-res "+x264streamsize
+ exe=u"nice -n 19 "+x264+" "+x264_sar+" "+x264crf+u" "+x264_addline+u" --threads "+x264_thread+" "+x264profile+x264preset+" "+x264tune+" "+x264fps+" "+x264res+" -o \""+pout+"\" "+pin
+ else:
+ exe=u"nice -n 19 "+x264+" "+x264_sar+" "+x264crf+u" "+x264_addline+u" --threads "+x264_thread+" "+x264profile+x264preset+" "+x264tune+" "+x264fps+" -o \""+pout+"\" "+pin+" "+x264streamsize
+ return exe
\ No newline at end of file