OSDN Git Service

alpha commit for 0.9.9.2
authorgn64_jp <gn64_jp@4e526526-5e11-4fc0-8910-f8fd03428081>
Wed, 23 Mar 2011 05:18:28 +0000 (05:18 +0000)
committergn64_jp <gn64_jp@4e526526-5e11-4fc0-8910-f8fd03428081>
Wed, 23 Mar 2011 05:18:28 +0000 (05:18 +0000)
git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/rec10@850 4e526526-5e11-4fc0-8910-f8fd03428081

rec10/trunk/src/dbMySQL.py
rec10/trunk/src/install.py
rec10/trunk/src/readme.txt
rec10/trunk/src/rec10.conf
rec10/trunk/src/rec10d.py
rec10/trunk/src/scan_ch.py
rec10/trunk/src/tv2ts.py

index 4e6d1f9..f7c43a4 100644 (file)
@@ -72,6 +72,10 @@ class DB_MySQL:
         """
         con = MySQLdb.connect(db=self.dbname, host=self.dbhost, port=self.dbport, user=self.dbusr, passwd=self.dbpasswd, charset="utf8")
         cur = con.cursor()
+        try:
+            con.autocommit(1)
+        except:
+            ""
         cur.execute('set names utf8;')
         return [con, cur]
     def close_db(self, db):
index 6fffa9f..1462891 100644 (file)
@@ -55,25 +55,18 @@ def install():
     recdblist.printutf8(u"チャンネルスキャンの開始",verbose_level=100)\r
     scan_ch.searchCh()\r
     rec10d.rec10db.change_installed_in_status(100)\r
-    #if os.path.exists(os.path.join(path,"chlist.xml")):\r
-    #    recdblist.printutf8(u"チャンネルリストが見つかりました。||chlist.xml",verbose_level=100)\r
-    #else:\r
-    #    recdblist.printutf8(u"チャンネルリストが見つかりません。"+os.path.join(path,"chlist.xml")+u"を作成してください。",verbose_level=100)\r
-    #    recdblist.printutf8(u"東京/名古屋/神戸のサンプルがchlist_sample_*.xmlにあるため、参考にしてください。",verbose_level=100)\r
-    #    sys.exit(1)\r
-    #bsok=int(confp.get('env',"bs"))\r
-    #csok=int(confp.get('env',"cs"))\r
-    #import chdata\r
-    #chdata.new_chdata(bsok,csok)\r
     recdblist.printutf8(u"おめでとうございます 初期設定は完了しました。",verbose_level=100)\r
     recdblist.printutf8(u"rec10を実行するユーザーのcrontabに"+os.path.join(path,"rec10")+u"を追加してください(5分周期が目安)",verbose_level=100)\r
     \r
-def getLocalPath(cmd):\r
+def getLocalPath(cmd,exit=1):\r
     printutf8(cmd+u"の場所を確認中")\r
     txt=commands.getoutput(u"which "+cmd)\r
     if len(txt.split(" "))>3:\r
-        printutf8(cmd+u"の場所を確認できませんでした。終了します")\r
-        sys.exit(1)\r
+        if exit==1:\r
+            printutf8(cmd+u"の場所を確認できませんでした。終了します")\r
+            sys.exit(1)\r
+        else:\r
+            return ""\r
     else:\r
         printutf8(cmd+u" : "+txt)\r
         if len(txt.splitlines()):\r
@@ -86,14 +79,17 @@ def move():
     printutf8(u"rec10のインストールを開始します。")\r
     maxn=13\r
     configwriter.setTempConfPath(u"wine", getLocalPath(u"wine"))\r
-    configwriter.setTempConfPath(u"recpt1", getLocalPath(u"recpt1"))\r
+    configwriter.setTempConfPath(u"recpt1", getLocalPath(u"recpt1",exit=0))\r
     #configwriter.setpath(u"x264", getLocalPath(u"x264"))\r
-    configwriter.setTempConfPath(u"mp4box", getLocalPath(u"MP4Box"))\r
+    configwriter.setTempConfPath(u"mp4box", getLocalPath(u"MP4Box",exit=0))\r
     configwriter.setTempConfPath(u"mencoder", getLocalPath(u"mencoder"))\r
     configwriter.setTempConfPath(u"ffmpeg", getLocalPath(u"ffmpeg"))\r
-    configwriter.setTempConfPath(u"mkvmerge", getLocalPath(u"mkvmerge"))\r
+    configwriter.setTempConfPath(u"mkvmerge", getLocalPath(u"mkvmerge",exit=0))\r
+    configwriter.setTempConfPath(u"lame", getLocalPath(u"lame",exit=0))\r
     configwriter.setTempConfPath(u"b25", getLocalPath(u"b25"))\r
     configwriter.setTempConfPath(u"tee", getLocalPath(u"tee"))\r
+    configwriter.setTempConfPath(u"java", getLocalPath(u"java"))\r
+\r
     try:\r
         configwriter.setTempConfPath(u"lame", getLocalPath(u"lame"))\r
     except:\r
@@ -140,8 +136,10 @@ def move():
     audioenc=raw_input("[y/N]:  ")\r
     if audioenc=="y" or audioenc=="Y":\r
         configwriter.setTempConfPath("useNeroAAC", "1")\r
-        printutf8(u"NeroAACEncのパスを指定してください")\r
-        aacpath=getConf(useB,"/etc/rec10.conf","path","NeroAAC","[/usr/local/bin/neroAacEnc] : ")\r
+        aacpath=getLocalPath(u"neroAacEnc",exit=0)\r
+        if len(aacpath)<2:\r
+            printutf8(u"NeroAACEncのパスを指定してください")\r
+            aacpath=getConf(useB,"/etc/rec10.conf","path","NeroAAC","[/usr/local/bin/neroAacEnc] : ")\r
         if aacpath.replace(" ","")=="":\r
             aacpath="/usr/local/bin/neroAacEnc"\r
         configwriter.setTempConfPath("NeroAAC",aacpath)\r
index 2079060..75dbcd3 100644 (file)
@@ -1,7 +1,7 @@
 ###########################################
 #     Rec10 -Ts Recording system-         #
-#                          Ver.0.9.10     #
-# 2011/02/02         Yukikaze & long.inus #
+#                          Ver.0.9.9.2    #
+# 2011/03/23         Yukikaze & long.inus #
 #  Copyright (C) 2009-2011 Yukikaze      #
 ###########################################
 
@@ -70,6 +70,17 @@ chdata.pyを実行してください(python chdata.py)
 バグだらけのコードですが、改善点などを指摘していただけるとうれしいです。
 yukikaze.jp@gmail.com
 
+
+動作確認のとれたディストリ
+
+11/03/10 SVN Centos 5.5 (yukikaze)
+11/03/10 0.9.9.1+a ArchLinux (yukikaze)
+11/02/20 0.9.9.1+a Debian 6.0
+11/02/XX 0.9.9 Ubuntu 10.10
+10/12/XX 0.9.8 Centos 5.5 (yukikaze)
+10/XX/XX 0.9.8 Fedora13 (long.inus)
+
+
 [History]
 11/XX/XX 0.9.10
 ステレオ音声時のBonTsDemux仕様オプション追加("b")
@@ -79,6 +90,7 @@ ffmpegのオプション追加
 epggenreを追加
 keywordの重複チェックをより賢く
 logoのインポートに対応
+ArchLinuxサポートのための細かな変更
 
 11/02/02 0.9.9
 BonTsDemuxを最新版へ(nogui化によりXvfbが不要)
index f9d4640..0c1cc4b 100644 (file)
@@ -7,6 +7,7 @@ tee = /usr/bin/tee
 ffmpeg = /usr/bin/ffmpeg
 rec10 = /usr/local/share/rec10
 lame = /usr/bin/lame
+java = /usr/bin/java
 #recpathは録画先のフォルダを指定
 recpath = /path of /recording
 
@@ -21,6 +22,7 @@ ts_movepath =
 tmp = /tmp/rec10
 epgdump = /usr/local/bin/epgdump
 tssplitter = /usr/bin/java -jar /usr/local/share/rec10/tstools/jTsSplitter.jar
+jTsSplitter = /usr/local/share/rec10/tstools/jTsSplitter.jar
 bontsdemux = /usr/local/share/rec10/tstools/BonTsDemux.exe
 caption2ass = /usr/local/share/rec10/tstools/Caption2Ass.exe
 mp4box = /usr/bin/MP4Box
index e89e75f..b0ce3af 100644 (file)
@@ -3,13 +3,18 @@
 # Rec10 TS Recording Tools\r
 # Copyright (C) 2009-2011 Yukikaze\r
 import os\r
-\r
+import os.path\r
 import warnings\r
 warnings.filterwarnings('ignore', "the sets module is deprecated")\r
 import configreader\r
 import dbMySQL\r
 import timerec\r
 path = str(os.path.dirname(os.path.abspath(__file__))) + "/"\r
+tmppath = configreader.getConfPath("tmp")+"/"\r
+if tmppath=="/":\r
+    tmppath=path\r
+if not os.path.exists(tmppath):\r
+    os.makedirs(tmppath)\r
 global rec10db\r
 def main():\r
     timerec.task()\r
index 60d8f7f..c34347a 100644 (file)
@@ -15,7 +15,7 @@ import configreader
 import recdblist
 import tv2ts
 tmppath = configreader.getConfPath("tmp")+"/"
-tssplitterp = configreader.getConfPath("tssplitter")
+tssplitterp =configreader.getConfPath("java")+" -jar "+configreader.getConfPath("jTsSplitter")
 def searchCh():
     rec10d.rec10db.change_installed_in_status(2)
     #地上デジタル
@@ -112,6 +112,7 @@ def getTsProgNum(ch,tspath):
     doexe = tssplitterp + " "+chopt+" \""+ pin + "\" \""+ pout + "\""
     doexe = "nice -n 18 " + doexe
     os.environ['LANG']="ja_JP.UTF-8"
+    os.system(u"touch \""+pout+"\"")
     txt = unicode(commands.getoutput(doexe.encode('utf-8')),'utf-8','ignore')
     f=open(pout)
     lines=f.readlines()
index 9828d3b..8f706f4 100644 (file)
@@ -105,7 +105,8 @@ def b252tsmix(pin, pout):
         recdblist.addCommandLogZip(pin, "b25", "b25", doexe, txt)
         return txt
 def tsmix2ts(pin, pout, csch):#csch=0ならcsの処理をしない
-    doexe = configreader.getConfPath("tssplitter") + " \""+ pin + "\" \""+ pout + "\" " + str(csch)
+    tssplitterex=configreader.getConfPath("java")+" -jar "+configreader.getConfPath("jTsSplitter")
+    doexe =tssplitterex + " \""+ pin + "\" \""+ pout + "\" " + str(csch)
     doexe = "nice -n 18 " + doexe
     os.environ['LANG']="ja_JP.UTF-8"
     txt = unicode(commands.getoutput(doexe.encode('utf-8')),'utf-8')