OSDN Git Service

fix logo import bugs.
[rec10/rec10-git.git] / rec10 / trunk / src / ts2epg.py
1 #!/usr/bin/python\r
2 # coding: UTF-8\r
3 # Rec10 TS Recording Tools\r
4 # Copyright (C) 2009-2011 Yukikaze\r
5 #import sys # モジュール属性 argv を取得するため\r
6 import os\r
7 import re\r
8 import time\r
9 import commands\r
10 \r
11 import chdb\r
12 import configreader\r
13 import tv2ts\r
14 import recdblist\r
15 \r
16 def writeEpgXML(pout, ch):\r
17     """\r
18     tsを取得してepgの入ったxmlとして書き出す\r
19     """\r
20     timet = "90"\r
21     if re.search(u'CS', ch):\r
22         timet = "180"\r
23     elif len(ch)>2:\r
24         timet = "240"\r
25     writeEpgXMLTime(pout, ch ,timet)\r
26 def writeLogoEpgXML(pout, ch):\r
27     """\r
28     tsを取得してepgの入ったxmlとして書き出す\r
29     """\r
30     timet = "1200"\r
31     writeEpgXMLTime(pout, ch ,timet,islogo=1)\r
32 def writeEpgXMLTime(pout, ch ,times,islogo=0):\r
33     """\r
34     指定された時間分tsを取得してepgの入ったxmlとして書き出す\r
35     """\r
36     recdblist.addCommonlogEX(u"通常","write_time(ts2epg.py)",u"Ts-EPG XML書き出し処理開始" ,u"CH:"+ch,log_level=500)\r
37     timet = times\r
38     if re.search(u'CS', ch):\r
39         mode = "/CS"\r
40     elif len(ch)>2:\r
41         mode = "/BS"\r
42     else:\r
43         mode = str(chdb.searchCHFromBctype(u'te' + ch)['ch'])\r
44     epgdump = configreader.getConfPath("epgdump")\r
45     if os.access(pout + ".ts", os.F_OK):\r
46         os.remove(pout + ".ts")\r
47     time.sleep(10)\r
48     tv2ts.tv2b25ts(pout+ ".ts", ch, times)\r
49     logoopt=""\r
50     if islogo==1:\r
51         logoopt="/LOGO "\r
52     exe = "export LANG=ja_JP.UTF-8 && nice -n 15 " + epgdump + " " +logoopt+ mode + " " + pout + ".ts " + pout\r
53     recdblist.printutf8(exe)\r
54     recdblist.addCommonlogEX(u"通常", "write_time(ts2epg.py)", exe,"",log_level=500)\r
55     unicode(commands.getoutput(exe),'utf-8','ignore')\r
56     time.sleep(10)\r
57 \r