ffmpeg3.0を試す

なんでもかんでも変換出来る動画作成に便利なffmpegですが、ついにv3.0に上がったようです

http://www.forest.impress.co.jp/docs/news/20160217_744023.html

私も時々ffmpegにはQSVでお世話になっています

今回のアップデートでどんな機能が有効になったのか、私の興味のある範囲で抜粋してみます

とりあえず変更点をまとめたログをズラっと

https://git.videolan.org/?p=ffmpeg.git;a=blob_plain;f=Changelog;hb=n3.0

version 3.0:

  • Common Encryption (CENC) MP4 encoding and decoding support
    MPEG-DASHにも使われる暗号化形式のCENCのエンコードとでコードに対応した模様。緩やかにDASHが補完されていく感じがする

  • DXV decoding
    DXVはQuickTime形式(mov)に格納出来るクロスプラットフォームのコーデックだけど、これ使うならProResじゃないかな

  • extensive native AAC encoder improvements and removal of experimental flag
    実験用のフラグが削除されて、ネイティブのAACエンコーダの性能が向上した模様

  • zero-copy Intel QSV transcoding in ffmpeg
    内部のエッセンスをトランスコードしないでコピー出来るようになった?

  • Interplay ACM demuxer and audio decoder
    Avidも精力的な様子。Interplayなんて引きこもりプロダクトなのに

  • DXVA2-accelerated VP9 decoding
    VP9がハードウェアアクセラレーション使ってデコード出来るようになったようなので、やっとSkelakeのデコーダが役に立ちそう

  • only seek with the right mouse button in ffplay
    ffplayの中で右クリックでしかシーク出来ない模様。前はシークまともに出来てなかったから良いかも

  • toggle full screen when double-clicking with the left mouse button in ffplay
    ffplayの再生中にダブルクリックで全画面表示出来るようになった模様。これは便利そう

  • support for dvaudio in wav and avi
    今更感のあるAVIコンテナにDVコーデックのWAVオーディオ格納出来るようになった模様

  • libaacplus and libvo-aacenc support removed
    libaacplusとlibvo-aacencのサポートが中止された模様。使ってた人はネイティブのAAC使えばいいのかな

  • Cineform HD decoder
    まさかのCineformデコード

  • significant performance improvements in Windows Television (WTV) demuxer
    AppleのAppleTVやGoogleがAndroidTVやってるのと同じように、MicrosoftもWindows10TVとかいうのやってる事を知った

  • nnedi deinterlacer
    とても高性能なインターレース解除のフィルターのようなので、今度試してみます

  • metadata video and ametadata audio filter
    ビデオとオーディオにメタデータ付けられそうなフィルター

  • SMPTE VC-2 HQ profile support for the Dirac decoder

  • SMPTE VC-2 native encoder supporting the HQ profile
    今後注目と言われるDiracコーデックのエンコードとデコードをサポートした模様

さすがffmpegという感じのアップデートでした

とりあえずQSVでRTMPで出力してみましたが、問題なく動作しました

ffmpeg

いい感じです

N3150のCeleronでも1920x1080p30で配信も出来ました

rtmpで配信する時は、以下のような文字列を使います。rtmpのアドレスは、配信サーバーのIPアドレスやホスト名に変えてください

ffmpeg.exe -i sample.ts -acodec libfdk_aac -profile:a aac_he -ar 24000 -ab 48k -ac 2 -vcodec h264_qsv -s 640×360 -aspect 16:9 -vb 650k -maxrate 650k -profile:v high -level 31 -f flv “rtmp://127.0.0.1/live/stream”

この場合は、以下のようなRTMPが出力されます

ビデオ:H.264 640×360 650Kbps

オーディオ:HE-AAC Stereo 48kbps

QSVなffmpegは自分で作ることも出来るようですが私はそういうことが出来ない人なので、以下のリンク先からいつも入手しています

https://github.com/illuspas/ffmpeg-hw-win32