OSDN Git Service

ba1a4aed99e182b39ea980856807a3178904cab4
[rec10/rec10-git.git] / rec10 / trunk / src / tv2mkv.py
1 #!/usr/bin/python
2 # coding: UTF-8
3 # Rec10 TS Recording Tools
4 # Copyright (C) 2009 Yukikaze
5 import sys
6 import commands
7 import tv2avi
8 import os.path
9 import time
10 import shutil
11 def ts2mkv(pin, pout, opt):
12     dir=os.path.split(pout)[0]
13     title=os.path.split(pout)[1]
14     title=os.path.splitext(title)[0]
15     tpavi=os.path.join(dir,title+".avi")
16     tpmkv=os.path.join(dir, title+".mkv")
17     tv2avi.ts2avi(pin, tpavi, opt)
18     time.sleep(10)
19     avi2mkv(tpavi,tpmkv)
20     #shutil.move(tpavi,pout.replace(".mkv",".avi"))
21     #shutil.move(tpmkv,pout)
22 def avi2mkv(pin,pout):
23     exe = "mkvmerge"
24     #doexe = exe.encode('utf-8') + u' \"' + pin.encode('utf-8') + u'\" \"' + pout.encode('utf-8') + u'\"'
25     doexe = exe + u" -o '" + pout + u"' --cues 0:all --forced-track 0:no --forced-track 1:no -a 1 -d 0 -S '" + pin + u"' --track-order 0:0,0:1"
26     doexe = "nice -n 17 " + doexe
27     print doexe
28     logo=pout.replace(".mkv",".log")
29     os.environ['LANG']="ja_JP.UTF-8"
30     txt= doexe+"\n"
31     txt = txt+commands.getoutput(doexe.encode('utf-8'))
32     txt = "\n####mkvmerge-log####\n"+txt
33     f=open(logo,'a')
34     f.write(txt)
35     f.close()
36     sys.stdout.flush()