昨日まではあんなに暖かかったですのに、今日はすごい寒いですね
まだ寒い日が続きますようなのでみなさんもお体お大事にしてあげてくださいね♪
FFmpegでWMVエンコードも出来ないかと思いましたが…
昨日までいろいろ試してたのですが、どうにも動作がうまくいきませんため、この記事に書いてあるFFmpegの式はいつも以上に参考になりませんorz
WMVへのエンコードでしたらAviutlとWMVoutPLUSプラグインで簡単に書き出し可能なのですが、せっかくFFmpeg使ってるんだしコレで書き出しできないかな…と思ったのですが、結論から言うとどれも使えませんorz
FFmpegで作れるWMVはWMV8まで
FFmpeg…っていうよりもこれはオープンソースコーデックの仕様なのですが、2010年1月の時点ではWMVに関しては8までがエンコード可能で、WMV9はデコードしかできない仕様になってたりしてます。
WMV作成式でダメだったモノ一覧
私が試してみた式でZEN X-Fi2で再生できなかった式を挙げておきますね
もしも「ココ違ってるよ」っていうところがありましたらドンドン指摘してあげてくださいorz
あと毎回のコトですが、gooブログの関係で半角円マークが抜かれてアップされてますorz
パターン1(プロファイルとレベル調整でWMV7へ)
[Item0]
Title=WMV 23.976fps 650kbps ステレオ/256kbps
TitleE=WMV /23.976fps/650kbps Stereo/256kbps
Command0=""<%AppPath%>coresffmpeg" -y -i "<%InputFile%>" -aspect 16:9 -vcodec wmv1 -profile 1 -level 1 -trellis 2 -subq 7 -qns 3 -mbd 2 -me_range 7 -partitions parti4x4+partp8x8+partp4x4 -cmp chroma -flags bitexact+aic+gmc -async 100 -s 400x224 -r 24000/1001 -b 650k -acodec wmav1 -ac 2 -ar 44100 -ab 128k "<%OutputFile%>.WMV""
結果的にコレだと再生が出来ませんでしたため、WMVのバージョンを7から8にしてトライします。
パターン2(前述のコーデックをWMV8に変更)
[Item0]
Title=WMV 23.976fps 650kbps ステレオ/256kbps
TitleE=WMV /23.976fps/650kbps Stereo/256kbps
Command0=""<%AppPath%>coresffmpeg" -y -i "<%InputFile%>" -aspect 16:9 -vcodec wmv2 -profile 1 -level 1 -trellis 2 -subq 7 -qns 3 -mbd 2 -me_range 7 -partitions parti4x4+partp8x8+partp4x4 -cmp chroma -flags bitexact+aic+gmc -async 100 -s 400x224 -r 24000/1001 -b 650k -acodec wmav2 -ac 2 -ar 44100 -ab 128k "<%OutputFile%>.WMV""
パターン3(さらに強制量子化、GOPパック指定)
[Item0]
Title=WMV 23.976fps 650kbps ステレオ/256kbps
TitleE=WMV /23.976fps/650kbps Stereo/256kbps
Command0=""<%AppPath%>coresffmpeg" -y -i "<%InputFile%>" -aspect 16:9 -vcodec wmv2 -profile 1 -level 1 -g 200 -qmin 1 -qmax 8 -trellis 2 -subq 7 -qns 3 -mbd 2 -me_range 7 -partitions parti4x4+partp8x8+partp4x4 -cmp chroma -flags bitexact+aic+gmc -async 100 -s 400x224 -r 24000/1001 -b 650k -acodec wmav2 -ac 2 -ar 44100 -ab 128k "<%OutputFile%>.WMV""
パターン4(さらにcabac強制OFF指定)
[Item0]
Title=WMV 23.976fps 650kbps ステレオ/256kbps
TitleE=WMV /23.976fps/650kbps Stereo/256kbps
Command0=""<%AppPath%>coresffmpeg" -y -i "<%InputFile%>" -aspect 16:9 -vcodec wmv2 -profile 1 -level 1 -coder 0 -g 200 -qmin 1 -qmax 8 -trellis 2 -subq 7 -qns 3 -mbd 2 -me_range 7 -partitions parti4x4+partp8x8+partp4x4 -cmp chroma -flags bitexact+aic+gmc -async 100 -s 400x224 -r 24000/1001 -b 650k -acodec wmav2 -ac 2 -ar 44100 -ab 128k "<%OutputFile%>.WMV""
パターン5(さらにバッファサイズ強制指定)
[Item0]
Title=WMV 23.976fps 650kbps ステレオ/256kbps
TitleE=WMV /23.976fps/650kbps Stereo/256kbps
Command0=""<%AppPath%>coresffmpeg" -y -i "<%InputFile%>" -aspect 16:9 -vcodec wmv2 -profile 1 -level 1 -coder 0 -g 200 -qmin 1 -qmax 8 -bufsize max -trellis 2 -subq 7 -qns 3 -mbd 2 -me_range 7 -partitions parti4x4+partp8x8+partp4x4 -cmp chroma -flags bitexact+aic+gmc -async 100 -s 400x224 -r 24000/1001 -b 650k -acodec wmav2 -ac 2 -ar 44100 -ab 128k "<%OutputFile%>.WMV""
これでも結局ダメでしたorz
CreativeのZEN X-Fi2公式ページにWMVのレートは800Kbpsまでって書いてありましたのでサポートに問い合わせましたら、この800Kbpsは映像+音声で800Kbpsというコトで気持ちビットレート下げ目にしてみたのですが、ダメですねorz
前作ZEN X-Fiでもそうでしたが、CreativeのOSはAVIについてはビットレート上限や規格外の量子化もゆるめに作られてるのに対してWMVはガッチガチが恒例みたいですので、もしかしたら私の式自体に問題があるのかも…です…
そもそも-profileオプションがint形式なのが謎ですorz
今回はちょっとガチガチに規格を縛るために使いました-profileオプションなのですが、これの指定が1(Simple profile)、2(Main Profile)、3(High Profile)なのが謎すぎます…ちなみにこれはWMVとH.264での場合で、Xvidだとまた数字に対するプロファイルが違ってきちゃいますorz
-levelオプションもそうですね…特に-profileでWMVを指定した場合、レベルは1(Low Level)、2(Main Level)しかないはずですのに3とか4でも平気でエンコードしちゃう辺りとかが…あんまり意味がないのかな…っていう気にもなってきますorz
もしかするとZEN X-Fi2でサポートしてるのはWMV9だけ…??
ここまでガチガチに縛ったWMV8が通らないということは、私の式以前にWMVのバージョンで弾いてしまってる可能性があったりしてます…
残念なコトにFFmpegで使えるのはWMV8までですので、その辺りとかから無理があったのかもしれませんねorz
まだ寒い日が続きますようなのでみなさんもお体お大事にしてあげてくださいね♪
FFmpegでWMVエンコードも出来ないかと思いましたが…
昨日までいろいろ試してたのですが、どうにも動作がうまくいきませんため、この記事に書いてあるFFmpegの式はいつも以上に参考になりませんorz
WMVへのエンコードでしたらAviutlとWMVoutPLUSプラグインで簡単に書き出し可能なのですが、せっかくFFmpeg使ってるんだしコレで書き出しできないかな…と思ったのですが、結論から言うとどれも使えませんorz
FFmpegで作れるWMVはWMV8まで
FFmpeg…っていうよりもこれはオープンソースコーデックの仕様なのですが、2010年1月の時点ではWMVに関しては8までがエンコード可能で、WMV9はデコードしかできない仕様になってたりしてます。
WMV作成式でダメだったモノ一覧
私が試してみた式でZEN X-Fi2で再生できなかった式を挙げておきますね
もしも「ココ違ってるよ」っていうところがありましたらドンドン指摘してあげてくださいorz
あと毎回のコトですが、gooブログの関係で半角円マークが抜かれてアップされてますorz
パターン1(プロファイルとレベル調整でWMV7へ)
[Item0]
Title=WMV 23.976fps 650kbps ステレオ/256kbps
TitleE=WMV /23.976fps/650kbps Stereo/256kbps
Command0=""<%AppPath%>coresffmpeg" -y -i "<%InputFile%>" -aspect 16:9 -vcodec wmv1 -profile 1 -level 1 -trellis 2 -subq 7 -qns 3 -mbd 2 -me_range 7 -partitions parti4x4+partp8x8+partp4x4 -cmp chroma -flags bitexact+aic+gmc -async 100 -s 400x224 -r 24000/1001 -b 650k -acodec wmav1 -ac 2 -ar 44100 -ab 128k "<%OutputFile%>.WMV""
結果的にコレだと再生が出来ませんでしたため、WMVのバージョンを7から8にしてトライします。
パターン2(前述のコーデックをWMV8に変更)
[Item0]
Title=WMV 23.976fps 650kbps ステレオ/256kbps
TitleE=WMV /23.976fps/650kbps Stereo/256kbps
Command0=""<%AppPath%>coresffmpeg" -y -i "<%InputFile%>" -aspect 16:9 -vcodec wmv2 -profile 1 -level 1 -trellis 2 -subq 7 -qns 3 -mbd 2 -me_range 7 -partitions parti4x4+partp8x8+partp4x4 -cmp chroma -flags bitexact+aic+gmc -async 100 -s 400x224 -r 24000/1001 -b 650k -acodec wmav2 -ac 2 -ar 44100 -ab 128k "<%OutputFile%>.WMV""
パターン3(さらに強制量子化、GOPパック指定)
[Item0]
Title=WMV 23.976fps 650kbps ステレオ/256kbps
TitleE=WMV /23.976fps/650kbps Stereo/256kbps
Command0=""<%AppPath%>coresffmpeg" -y -i "<%InputFile%>" -aspect 16:9 -vcodec wmv2 -profile 1 -level 1 -g 200 -qmin 1 -qmax 8 -trellis 2 -subq 7 -qns 3 -mbd 2 -me_range 7 -partitions parti4x4+partp8x8+partp4x4 -cmp chroma -flags bitexact+aic+gmc -async 100 -s 400x224 -r 24000/1001 -b 650k -acodec wmav2 -ac 2 -ar 44100 -ab 128k "<%OutputFile%>.WMV""
パターン4(さらにcabac強制OFF指定)
[Item0]
Title=WMV 23.976fps 650kbps ステレオ/256kbps
TitleE=WMV /23.976fps/650kbps Stereo/256kbps
Command0=""<%AppPath%>coresffmpeg" -y -i "<%InputFile%>" -aspect 16:9 -vcodec wmv2 -profile 1 -level 1 -coder 0 -g 200 -qmin 1 -qmax 8 -trellis 2 -subq 7 -qns 3 -mbd 2 -me_range 7 -partitions parti4x4+partp8x8+partp4x4 -cmp chroma -flags bitexact+aic+gmc -async 100 -s 400x224 -r 24000/1001 -b 650k -acodec wmav2 -ac 2 -ar 44100 -ab 128k "<%OutputFile%>.WMV""
パターン5(さらにバッファサイズ強制指定)
[Item0]
Title=WMV 23.976fps 650kbps ステレオ/256kbps
TitleE=WMV /23.976fps/650kbps Stereo/256kbps
Command0=""<%AppPath%>coresffmpeg" -y -i "<%InputFile%>" -aspect 16:9 -vcodec wmv2 -profile 1 -level 1 -coder 0 -g 200 -qmin 1 -qmax 8 -bufsize max -trellis 2 -subq 7 -qns 3 -mbd 2 -me_range 7 -partitions parti4x4+partp8x8+partp4x4 -cmp chroma -flags bitexact+aic+gmc -async 100 -s 400x224 -r 24000/1001 -b 650k -acodec wmav2 -ac 2 -ar 44100 -ab 128k "<%OutputFile%>.WMV""
これでも結局ダメでしたorz
CreativeのZEN X-Fi2公式ページにWMVのレートは800Kbpsまでって書いてありましたのでサポートに問い合わせましたら、この800Kbpsは映像+音声で800Kbpsというコトで気持ちビットレート下げ目にしてみたのですが、ダメですねorz
前作ZEN X-Fiでもそうでしたが、CreativeのOSはAVIについてはビットレート上限や規格外の量子化もゆるめに作られてるのに対してWMVはガッチガチが恒例みたいですので、もしかしたら私の式自体に問題があるのかも…です…
そもそも-profileオプションがint形式なのが謎ですorz
今回はちょっとガチガチに規格を縛るために使いました-profileオプションなのですが、これの指定が1(Simple profile)、2(Main Profile)、3(High Profile)なのが謎すぎます…ちなみにこれはWMVとH.264での場合で、Xvidだとまた数字に対するプロファイルが違ってきちゃいますorz
-levelオプションもそうですね…特に-profileでWMVを指定した場合、レベルは1(Low Level)、2(Main Level)しかないはずですのに3とか4でも平気でエンコードしちゃう辺りとかが…あんまり意味がないのかな…っていう気にもなってきますorz
もしかするとZEN X-Fi2でサポートしてるのはWMV9だけ…??
ここまでガチガチに縛ったWMV8が通らないということは、私の式以前にWMVのバージョンで弾いてしまってる可能性があったりしてます…
残念なコトにFFmpegで使えるのはWMV8までですので、その辺りとかから無理があったのかもしれませんねorz