携帯動画変換君でOn2VP6を扱う方法
暇なときにググっていた所、遂に発見
Forbidden - ちみちみこんなとこ開いちゃダメだよ! -
以下抜粋
- 携帯動画変換君のcoresディレクトリのバックアップを取り、適当な場所に置いておく
- ffdshowから最新のffmpegとx264とpthreadGC2.dll.7zを落として解凍
- MP4Box 0.7.0 / 0.7.2 Nightly Free Download - VideoHelpから最新のMP4BOXを落として解凍
- Nero Platinum Suite - Award-winning all-rounderからNeroDigitalAudioを落として解凍
- NeroDigitalAudioは個人利用に限りフリー。夜間は結構重いのでFlashGet等のDL支援ツールに登録するとGood
- 携帯動画変換君のcoresディレクトリに、解凍して出てきた「x264.exe」「libx264.dll」「pthreadGC2.dll」「ffmpeg.exe」「MP4Box.exe」「neroAacEnc.exe」をコピー&上書き
- 「cores」内にある「AVS_Skelton.avs」をTeraPad等のTextEditorで開いて「ConvertToYV12()」と「LanczosResize(480,272)」の2行を追加する。
# 3GP_Converter AVS-Mode skelton
http://sanomoto.sakura.ne.jp/log/200704.html#08
DirectShowSource("<%InputFile%>")
ConvertToYV12()
LanczosResize(480,272)
return last
[Avisynth]
http://sanomoto.sakura.ne.jp/log/200704.html#08
Ext0=WMV:\cores\AVS_Skelton.avs
Ext1=WMA:\cores\AVS_Skelton.avs
Ext2=ASF:\cores\AVS_Skelton.avs
Ext3=AVI:\cores\AVS_Skelton.avs
Ext4=MPG:\cores\AVS_Skelton.avs
- Transcoding.iniの内容を以下の内容に全て上書き
[Info]
Title=機種別設定:PSP 3.30用/ffmpeg差し替え(x264組み込み)
Description=PSP用、動作保証なし。[Item0]
Title=AVC 480x270/23.98fps/512+128kbps/2pass
Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -title "Movie" -timestamp "<%TimeStamp%>" -s 480x270 -r 24000/1001 -b 512k -passlogfile "2pass-log" -pass 1 -vcodec h264 -coder 1 -profile 51 -level 30 -bufsize 128kb -g 300 -bf 3 -mbd 2 -cmp 2 -subcmp 2 -trellis 3 -partitions parti4x4+parti8x8+partp4x4+partp8x8+partb8x8 -aspect 16:9 -an "<%OutputFile%>.MP4""
Command1=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -title "Movie" -timestamp "<%TimeStamp%>" -s 480x270 -r 24000/1001 -b 512k -passlogfile "2pass-log" -pass 2 -vcodec h264 -coder 1 -profile 51 -level 30 -bufsize 128kb -g 300 -bf 3 -mbd 2 -cmp 2 -subcmp 2 -trellis 3 -partitions parti4x4+parti8x8+partp4x4+partp8x8+partb8x8 -aspect 16:9 -acodec aac -ac 2 -ar 48000 -ab 128k -f psp "<%OutputFile%>.MP4""
Command2="rm "2pass-log-0.log""
Command3=""<%AppPath%>\cores\old\ffmpeg" -y -i "<%InputFile%>" -f image2 -ss 5 -vframes 1 -fixaspect -s 160x120 -an "<%OutputFile%>.jpg""[Item1]
Title=AVC 480x270/29.97fps/512+128kbps/2pass
Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -title "Movie" -timestamp "<%TimeStamp%>" -s 480x270 -r 30000/1001 -b 512k -passlogfile "2pass-log" -pass 1 -vcodec h264 -coder 1 -profile 51 -level 30 -bufsize 128kb -g 300 -bf 3 -mbd 2 -cmp 2 -subcmp 2 -trellis 3 -partitions parti4x4+parti8x8+partp4x4+partp8x8+partb8x8 -aspect 16:9 -an "<%OutputFile%>.MP4""
Command1=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -title "Movie" -timestamp "<%TimeStamp%>" -s 480x270 -r 30000/1001 -b 512k -passlogfile "2pass-log" -pass 2 -vcodec h264 -coder 1 -profile 51 -level 30 -bufsize 128kb -g 300 -bf 3 -mbd 2 -cmp 2 -subcmp 2 -trellis 3 -partitions parti4x4+parti8x8+partp4x4+partp8x8+partb8x8 -aspect 16:9 -acodec aac -ac 2 -ar 48000 -ab 128k -f psp "<%OutputFile%>.MP4""
Command2="rm "2pass-log-0.log""
Command3=""<%AppPath%>\cores\old\ffmpeg" -y -i "<%InputFile%>" -f image2 -ss 5 -vframes 1 -fixaspect -s 160x120 -an "<%OutputFile%>.jpg""[Item2]
http://sanomoto.sakura.ne.jp/log/200704.html#08
Title=H.264 480x272/音NeroAacEnc/fps自動設定(ソースに依存)
Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -vn -acodec pcm_s16le -ac 2 -ar 48000 -f wav "<%TemporaryFile%>.wav""
Command1=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -an -vcodec copy -f avi "<%TemporaryFile%>.avi""
Command2=""<%AppPath%>\cores\neroaacenc" -he -q 0.20 -if "<%TemporaryFile%>.wav" -of "<%TemporaryFile%>.aac""
Command3=""<%AppPath%>\cores\ffmpeg" -bitexact -y -i "<%TemporaryFile%>.avi" -vcodec h264 -coder 1 -aspect 480:272 -s 480x272 -profile 51 -bufsize 128kb -g 300 -bf 3 -mbd 2 -cmp 2 -subcmp 2 -trellis 3 -partitions all -qmin 16 -qmax 24 -qcomp 0.8 -level 30 -flags 1 -an -f mp4 "<%TemporaryFile%>.mp4""
Command4=""<%AppPath%>\cores\ffmpeg" -bitexact -y -i "<%TemporaryFile%>.avi" -vcodec h264 -coder 1 -aspect 480:272 -s 480x272 -profile 51 -bufsize 128kb -g 300 -bf 3 -mbd 2 -cmp 2 -subcmp 2 -trellis 3 -partitions all -qmin 16 -qmax 24 -qcomp 0.8 -level 30 -flags 1 -an -f mp4 "<%TemporaryFile%>.mp4""
Command5=""<%AppPath%>\cores\old\ffmpeg" -y -i "<%InputFile%>" -f image2 -ss 5 -vframes 1 -fixaspect -s 160x120 -an "<%OutputFile%>.jpg""
Command6=""<%AppPath%>\cores\MP4Box" -add "<%TemporaryFile%>.aac" -add "<%TemporaryFile%>.mp4" "<%OutputFile%>.mp4""
Command7="rm "<%TemporaryFile%>.log""
Command8="rm "<%TemporaryFile%>.log.temp""
Command9="rm "<%TemporaryFile%>.wav""
Command10="rm "<%TemporaryFile%>.aac""
Command11="rm "<%TemporaryFile%>.avi""
内部で何をやっているのか今一良く判っていませんが
動いてはいるので良しとします。
勉強せねば
※追記 新verが出たのでそちらもみてください
※追記の追記 この記事だけを読む人が居るみたいなので追記しておきます
妙にエラーが出るので、参考元のサイトの記事を読み返してみた所
新verが出ていました。
これを使ったらエラーが出なくなりGood
Title=H.264 480x270/音Nero/FPS維持/4:3
http://sanomoto.sakura.ne.jp/log/200704.html
Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -vn -acodec pcm_s16le -ac 2 -ar 48000 -f wav "<%TemporaryFile%>.wav""
Command1=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -an -vcodec copy -f avi "<%TemporaryFile%>.avi""
Command2=""<%AppPath%>\cores\neroaacenc" -he -q 0.25 -if "<%TemporaryFile%>.wav" -of "<%TemporaryFile%>.aac""
Command3=""<%AppPath%>\cores\ffmpeg" -bitexact -y -i "<%TemporaryFile%>.avi" -vcodec h264 -coder 1 -aspect 360:270 -s 480x270 -profile 51 -bufsize 128kb -g 300 -bf 3 -mbd 2 -cmp 2 -subcmp 2 -trellis 3 -partitions all -qmin 8 -qmax 24 -qcomp 0.8 -level 30 -flags 1 -an -f mp4 "<%TemporaryFile%>.mp4""
Command4=""<%AppPath%>\cores\ffmpeg" -bitexact -y -i "<%TemporaryFile%>.avi" -vcodec h264 -coder 1 -aspect 360:270 -s 480x270 -profile 51 -bufsize 128kb -g 300 -bf 3 -mbd 2 -cmp 2 -subcmp 2 -trellis 3 -partitions all -qmin 8 -qmax 24 -qcomp 0.8 -level 30 -flags 1 -an -f mp4 "<%TemporaryFile%>.mp4""
Command5=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -f image2 -ss 5 -vframes 1 -s 160x120 -an "<%OutputFile%>.jpg""
Command6=""<%AppPath%>\cores\MP4Box" -add "<%TemporaryFile%>.aac" -add "<%TemporaryFile%>.mp4" "<%OutputFile%>.mp4""
Command7="rm "<%TemporaryFile%>.log""
Command8="rm "<%TemporaryFile%>.log.temp""
Command9="rm "<%TemporaryFile%>.wav""
Command10="rm "<%TemporaryFile%>.aac""
Command11="rm "<%TemporaryFile%>.avi""オプションの詳細はFFmpeg - Wikipediaを読むと多少判るかも?
かんたんな解説
- 動画から音声のみを抜き出しwav形式にデコード
- 動画から映像のみを抜き出しavi形式にデコード
- 1で抜き出した音声をaac形式(QB25)にエンコード
- 2で抜き出した映像をh264形式にエンコード 1pass目
- 2で抜き出した映像を以下略 2pass目
- 開始から5秒目のフレームをjpg形式で出力
- 3と6で作成した音声と映像をMP4Boxで結合
- ここまでの経過で作成された素材を全て削除
こんな感じなのかな?