OSDN Git Service

implmenet ffmpeg's unable to encode aac issue solving function.
authorgn64_jp <gn64_jp@4e526526-5e11-4fc0-8910-f8fd03428081>
Wed, 13 Oct 2010 00:09:47 +0000 (00:09 +0000)
committergn64_jp <gn64_jp@4e526526-5e11-4fc0-8910-f8fd03428081>
Wed, 13 Oct 2010 00:09:47 +0000 (00:09 +0000)
git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/rec10@684 4e526526-5e11-4fc0-8910-f8fd03428081

rec10/trunk/src/tv2audio.py

index a68fb53..b32437b 100644 (file)
@@ -43,7 +43,35 @@ def ts2single_audio(pts):
     p0=subprocess.Popen(e0,shell=True)
     os.waitpid(p0.pid, 0)
     if p0.poll==None:#実行中
-        if os.path.getsize(paac)<1000:#1mで1kb以下の場合自動で終了
+        if os.path.exists(paac):
+            if os.path.getsize(paac)<1000:#1mで1kb以下の場合自動で終了
+                os.kill(p0.pid,signal.SIGKILL)
+                os.remove(paac)
+                ts2singlewav(pts)
+                useNero=0
+                try:
+                    if configreader.getpath("useNeroAAC")=="1" and os.path.exists(configreader.getpath("NeroAAC")):
+                        useNero=1
+                except:
+                    useNero=0
+                if useNero==1:
+                    aout=pts.replace(".ts",".aac")
+                    ain=pts.replace(".ts",".wav")
+                    tv2audio.wav2aac_nero(ain,aout)
+                    if os.path.exists(aout):
+                        aout=pts.replace(".ts",".mp3")
+                        ain=pts.replace(".ts",".wav")
+                        tv2audio.wav2mp3_lame(ain,aout)
+                else:
+                    aout=pts.replace(".ts",".mp3")
+                    ain=pts.replace(".ts",".wav")
+                    tv2audio.wav2mp3_lame(ain,aout)
+
+            else:
+                logt=unicode(p0.communicate()[0], "UTF-8")
+                recdblist.addlog(pts,e0, "FFmpeg音声取り出しログ-コマンド")
+                recdblist.addlog(pts,logt, "FFmpeg音声取り出しログ-詳細")
+        else:
             os.kill(p0.pid,signal.SIGKILL)
             os.remove(paac)
             ts2singlewav(pts)
@@ -65,11 +93,6 @@ def ts2single_audio(pts):
                 aout=pts.replace(".ts",".mp3")
                 ain=pts.replace(".ts",".wav")
                 tv2audio.wav2mp3_lame(ain,aout)
-
-        else:
-            logt=unicode(p0.communicate()[0], "UTF-8")
-            recdblist.addlog(pts,e0, "FFmpeg音声取り出しログ-コマンド")
-            recdblist.addlog(pts,logt, "FFmpeg音声取り出しログ-詳細")
     if os.path.exists(pts.replace(".ts",".mp3")) and os.path.getsize(paac)<1000:#1mで1kb以下の場合自動で終了
         ts2singlewav(pts)
         useNero=0