iPhone4で
- level 3.1以下じゃないとiTunesで転送すらできない。
- マルチ音声トラックにすると同時になってひどいことになる。
- 字幕を別ファイルのassにしておいても合成表示されない。
ってのが原因で動画再生機能が使えねーよ状態だったのが、
「1.」 は 4Sになって解消(おそらくlevel4.1くらいまではいけそう)。「3.」はそもそもAndroidでも厳しいから自分でPlayerアプリを作るとかしないと無理っぽいのであきらめ気味(最近字幕エフェクトに凝りだしたから焼き付けでいいような気がしてきた)。
というところで「2.」の解決法があったのでやっと使い物になりだした。
こちらのサイトにiPhoneでもちゃんと動作するmp4boxのオプションが書いてあった。
いままではYambをつかって映像と音声の合成をしていたんだけど、YambではiPhone対応のオプションが指定できない。
情報が載っているサイトに替わりで動きそうなGUIツールが公開されていたけど、なぜかうちで動かすと処理に失敗して合成元のファイルが消えるというひどい動きをしてくれたので、自分でバッチファイルをつくった。
——— (ここから) ————–
rem mixonoff <Video track> <OnVocal_audio> <offVocal_Audio>
if “%~1″==”” goto USAGE
if “%~2″==”” goto USAGE
set mp4box=C:\progns\x264\MP4Box.exe
set filename=”%~dp1%~n1%_OnOff.mp4″
set filename=%filename:_noaudio=%
if “%~3″==”” goto USAGE
if “%~4″==”” goto ONOFF
if “%~5″==”” goto PLUSONOFF
:ONOFF
%mp4box% -add “%~1” -add “%~2”:lang=jpn:group=1:name=OnVocal -add “%~3”:disable:group=1:name=OffVocal %filename%
pause
exit /b
:PLUSONOFF
%mp4box% -add “%~1” -add “%~2”:lang=jpn:group=1:name=OnVocal -add “%~3”:disable:group=1:name=OffVocal “%~4”:disable:group=1 %filename%
pause
exit /b
:USAGE
echo “mixonoff <Video track> <OnVocal_audio> <offVocal_Audio> “
pause
exit /b
--------- (ここまで) --------------
本文に書くと変になるので ダウンロードリンク置いとく mixonoff
set mp4box=のところにmp4boxの実行ファイルを書いて保存して
上から映像トラック、OnVocalトラック、OffVocalトラックとなっている状態でエクスプローラーで3つのファイルを選択してバッチファイルにドラックアンドドロップ。そうすると「映像ファイル名(拡張子なし)+_OnOff.mp4″というファイル名の動画の出来上がり。
GUIツールは作るのあんまり得意じゃないんでとりあえずバッチファイルで。(そのうち作るかも)
モバイルで再生するためにわざわざ再エンコする気にはならないけど、これならエンコードしないからすぐ終わる。どうしてもモバイルで聞きたいものと今後作るものはこれで作っていくことにしよう。
#1 by ぺぷと on 2012年1月25日 - 11:58 PM
iphone4s hdmi出力出来たらなぁ…
3のASS読み込みは妄想しちゃいますねぇ
LRCでもいいから1文字単位で合成して欲しい
#2 by ゆう@ふーりんことゆえっち on 2012年1月26日 - 1:02 AM
HDMI付きクレードルというのを入手してみたので、
iPhone4SでHDMI出力できるようになっています。ヒトカラなら十分^^
字幕はVSFilter.dllをまるっと組み込んだソフトデコードプレーヤーを作ればいけるという構想まではある・・・