・ファイル名に"."があると、出力ファイル名が意図したように設定されないのを修正。 コンパイラがVC++2012からVC++2015に変わったので、もし入っていなければ
Visual Studio 2015 の Visual C++ 再頒布可能パッケージ を入れてください。
ダウンロード>> ダウンロード (ミラー) >>
スポンサーサイト
vp9(WebM)で出力する際、音声のエンコーダで何を選んでも出来たWebMファイルの音声がVorbisになるのは仕様なのでしょうか?
webmに入れられる音声コーデックはvorbisかopusになると思います。 他の音声コーデックを使用する場合には、webmでなくmkvなどに入れてあげてください。
opusを選んでもopusのファイルがwebmとは別に出来て、webmにはvorbisの音声が入っている状態です。 mkvでopusを選んだとしても同じ状況になります。 出力ログを見ると、元の音声をopusにした後にvorbisに再変換してるようにも見えますが… ↓がそのログの一部になります。 Stream mapping: Stream #0:0 -> #0:0 (rawvideo (native) -> vp9 (libvpx-vp9)) Stream #1:0 -> #0:1 (opus (native) -> vorbis (libvorbis))
確かにいただいたログですと、なぜか再変換していますね…。
webm出力でもこのような感じでopusはmuxできると思います。
Stream mapping:
Stream #0:0 -> #0:0 (rawvideo (native) -> vp9 (libvpx-vp9))
Stream #1:0 -> #0:1 (pcm_s16le (native) -> opus (libopus))
下記urlにvp9 + opusで出力するffmpegOut用のプロファイルを置きましたので、ffmpegOut_stgフォルダ内において使用してみてください。
https://1drv.ms/u/s!AsYziax1Q91rrwAgXLnai9VSC0mV
横から失礼します。 音声が変換されてしまうのは-c:a copyが付いていないからではないでしょうか? FFmpegの入力ソースにopusを指定しても音声エンコード設定が無指定の場合、コンテナの規定のコーデックで変換されてしまいます(今回の場合ではVorbis)
頂いたstgファイルを使用した結果、vp9+opusのwebmが作れました! 原因と思われるのは、プロファイルから「vp9(webm)」を選んだ後に右の音声の部分で「opus ogg」を選んで出力していたからのようです(opusenc.exeは導入済み) この場合、右側でopusを選んでもコマンドの部分がvorbisのまま(これに気付けませんでした)なので、ソース音声をopusにしてからvorbisに再変換になってしまったようです。 x264guiExのように右側の音声部分を変えるだけで平気と思い込んでいた私のミスみたいです。 ffmpegOutの場合は右の音声部分はwavのままで、コマンドで指定するべきなのですね… お騒がせして済みませんでした。
いつも使わせて頂いています。 FFmpegでエンコードを行うと、DOS窓にて Thread message queue blocking; consider raising the thread_queue_size option (current value: 8) が出るため、thread_queue_size option を設定したいのですが、どこに設定すればよいでしょうか? ffmpegOut.iniを見てみましたが、理解力不足で分からず、ご教示よろしくお願いします。
設定画面「映像タブ」のコマンド欄(出力コーデック等を指定する箇所)に "-thread_queue_size xx"などと書いていただければ、ffmpegに渡すオプションに含まれるようになります。 よろしくお願いします。
ご教示ありがとうございます。 ですが、設定画面「映像タブ」のコマンド欄に "-thread_queue_size xx"を設定しても、以下のエラーとなります。 Option thread_queue_size (set the maximum number of queued packets from the demuxer) cannot be applied to output url x:\xxxx\aaa.mpg -- you are trying to apply an input option to an output file or vice versa. Move this option before the file it belongs to. つまり、入力ファイル名指定の「前」にこのオプションを入れないといけないようです。 どうしたら良いでしょうか? 何度も申し訳ありませんがよろしくお願いします。
なるほど、そういうことなのですね…。
どうしようもないので、ffmpegOutを更新しました。(0.07)
https://rigaya34589.blog.fc2.com/blog-entry-1010.html
設定画面下部の「入力オプション」欄に書いたオプションが、入力ファイル名指定の「前」に来るようになっています。これでthread_queue_sizeは指定可能になりました。
ただ、結構大きな値を指定しても結局表示されますし、メモリ使用量が増大しますので、デフォルトのままでよいかな、という気もします。
rigaya様 ありがとうございます! 助かりました! このようにすばやい対応頂けるなんて、本当に尊敬します。