OSDN Git Service

change MP4Box option to make videos more familiar for iPad
authorgn64_jp <gn64_jp@4e526526-5e11-4fc0-8910-f8fd03428081>
Tue, 29 May 2012 10:16:02 +0000 (10:16 +0000)
committergn64_jp <gn64_jp@4e526526-5e11-4fc0-8910-f8fd03428081>
Tue, 29 May 2012 10:16:02 +0000 (10:16 +0000)
git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/rec10@942 4e526526-5e11-4fc0-8910-f8fd03428081

rec10/trunk/src/tv2audio.py
rec10/trunk/src/tv2mp4.py

index cc837e8..e0b859a 100644 (file)
@@ -135,6 +135,23 @@ def ts2single_mp3_ffmpeg(pts):
         recdblist.addLog(pts,logt, "FFmpeg_mp3音声取り出しログ-詳細")\r
     except:\r
         ""\r
+def ts2single_aac_ffmpeg(pts):\r
+    ts2singlewav(pts,opts)\r
+    aout=pts.replace(".ts",".aac")\r
+    ain=pts.replace(".ts",".wav")\r
+    wav2aac_ffmpeg(ain,aout)\r
+def wav2aac_ffmpeg(pin,pout):\r
+    paac=pts.replace(".ts",".aac")\r
+    ffmpeg=configreader.getConfPath("ffmpeg")\r
+    e0=ffmpeg+" -i \""+pin+"\" -y \""+pout+"\""\r
+    p0=subprocess.Popen(e0,shell=True)\r
+    os.waitpid(p0.pid, 0)\r
+    try:\r
+        logt=unicode(p0.communicate()[0], "UTF-8")\r
+        recdblist.addLog(pts,e0, "FFmpeg_wav2aac音声取り出しログ-コマンド")\r
+        recdblist.addLog(pts,logt, "FFmpeg_wav2aac音声取り出しログ-詳細")\r
+    except:\r
+        ""\r
 def ts2single_fp_BonTsDemux(pts,opts):\r
     useNero=0\r
     try:\r
@@ -145,6 +162,8 @@ def ts2single_fp_BonTsDemux(pts,opts):
     if useNero==1:\r
         ts2single_aac_BonTsDemux_Nero(pts,opts)\r
     else:\r
+        ts2single_aac_ffmpeg(pts)\r
+    if not os.path.exists(pts.replace(".ts",".aac")):\r
         ts2single_mp3_BonTsDemux(pts,opts)\r
 def ts2single_aac_BonTsDemux_Nero(pts,opts):\r
     ts2singlewav(pts,opts)\r
index 1facd36..e86136a 100644 (file)
@@ -132,29 +132,33 @@ def addAudio(pts,pmp4,opts):#オプションに応じた音声の追加を行う
         paac1=pts.replace(".ts","_1.aac")\r
         paac2=pts.replace(".ts","_2.aac")\r
         recdblist.printutf8(paac1)\r
+        e1a1=exe +u" -add \""+paac1+"\":mpeg4 \""+pmp4+"\""\r
+        e1a2=exe +u" -add \""+paac2+"\":mpeg4 \""+pmp4+"\""\r
         if not os.path.exists(paac1):\r
             paac1=pts.replace(".ts","_1.mp3")\r
+            e1a1=exe +u" -add \""+paac1+"\" \""+pmp4+"\""\r
         if not os.path.exists(paac2):\r
             paac2=pts.replace(".ts","_2.mp3")\r
-        e1a1=exe +u" -add \""+paac1+"\" \""+pmp4+"\""\r
-        e1a2=exe +u" -add \""+paac2+"\" \""+pmp4+"\""\r
+            e1a1=exe +u" -add \""+paac2+"\" \""+pmp4+"\""\r
         if os.path.exists(paac1):\r
             addmp4(paac1, pmp4, e1a1)\r
         if os.path.exists(paac2):\r
             addmp4(paac2, pmp4, e1a2)\r
     elif re.search("b",opts):#BonTsDemuxを使って音声をスプリットした場合\r
         paac=pts.replace(".ts",".aac")\r
+        e1a=exe +u" -add \""+pinaac+"\":mpeg4 \""+pmp4+"\""\r
         if not os.path.exists(paac):\r
             paac=pts.replace(".ts",".mp3")\r
-        e1a1=exe +u" -add \""+paac+"\" \""+pmp4+"\""\r
+            e1a1=exe +u" -add \""+paac+"\" \""+pmp4+"\""\r
         if os.path.exists(paac):\r
             addmp4(paac, pmp4, e1a1)\r
     else:\r
         tv2audio.ts2single_audio(pts,opts)\r
         pinaac=pts.replace(".ts",".aac")\r
+        e1a=exe +u" -add \""+pinaac+"\":mpeg4 \""+pmp4+"\""\r
         if not os.path.exists(pinaac):\r
             pinaac=pinaac.replace(".aac",".mp3")\r
-        e1a=exe +u" -add \""+pinaac+"\" \""+pmp4+"\""\r
+            e1a=exe +u" -add \""+pinaac+"\" \""+pmp4+"\""\r
         if os.path.exists(pinaac):\r
             addmp4(pinaac, pmp4, e1a)\r
 def execmp4box(pin,pout,cmd):\r