集計期間は週間のニコ生統計の1ヶ月分である。2015年の1月の2週目から取得漏れの R-18 放送を含めて Vita API で取得し始めたのでそれ以前と比べて取得放送数が増えている。
タイムシフトから新配信かどうかを調べる
18の周波数帯に分けてゲインを調整する superequalizer
ffmpeg 3.4 から追加のフィルタ。compand
フィルタのように特定の音量を調整するのではなく、特定周波数の音量を上げたり下げたり出来るsuperequalizer
フィルタの使い方。
周波数毎の音量を視覚的に見るにはshowspectrump
フィルタやshowspectrumpic
フィルタを使うとわかりやすい。
音声波形を表示する showspectrum, showwaves の使い方
不可逆圧縮された音声のカットされた周波数が調べられる showspectrumpic
基本コマンド
以下のコマンドでは音量は変化しない。
ffmpeg -i input -af superequalizer=1b=1:2b=1:3b=1:4b=1:5b=1:6b=1:7b=1:8b=1:9b=1:10b=1:11b=1:12b=1:13b=1:14b=1:15b=1:16b=1:17b=1:18b=1 -c:v copy output
ffplay -i input -af superequalizer=1:1:1:1:1:1:1:1:1:1:1:1:1:1:1:1:1:1
エッジ検出フィルタ roberts
ffmpeg 3.4でリリースしたRoberts cross operatorを用いたエッジ検出フィルタroberts
の使い方。同様のフィルタにsobel, prewitt
があり、他にもエッジ検出できるフィルタはいくつかある。
- ffmpeg でエッジマスク
- エッジ検出フィルタscharr
- エッジ検出フィルタ sobel, prewitt
- ffmpeg でエッジ検出をする edgedetect
- 鮮鋭化やぼかし、エンボス処理などができる convolution
基本コマンド
ffmpeg -i input -vf roberts=planes=15:scale=1:delta=0 output
ffmpeg -i input -vf roberts=15:1:0 output
ffplay -i input -vf roberts=15:1:0
公式ドキュメント:FFmpeg Filters Documentation : roberts
各チャンネルの音声のビットスコープを映像化する abitscope
各チャンネルの音声のビットスコープを色別で横に並べて映像にするabitscope
フィルタの使い方。出力フォーマットはRGBA。似たフィルタにshowvolume
、showfreqs
がある。
音声の周波数を映像化する showfreqs
リアルタイムでVUメーターを表示する showvolume
基本コマンド
ffmpeg -i input -filter_complex abitscope -c:a copy output
ffmpeg -re -i input -filter_complex abitscope -f sdl -
動画にオーバーレイする例。
ffmpeg -i input -filter_complex abitscope,[0:v]overlay -c:a copy output
ffmpeg -re -i input -filter_complex abitscope,[0:v]overlay -f sdl -

サラウンドをヘッドフォン用の2チャンネルに配置する headphone
ffmpeg 3.4 から追加のフィルタ。サラウンドを HRIRs(head-related impulse response, 頭部インパルス応答) ファイル web.archive.orgを元に頭部伝達関数(HRTF)を適用しユーザの周りに仮想スピーカを作ってステレオとして出力するheadphone
フィルタの使い方。
HRIRsファイルの配布ページが重たい場合はミラーを上げている。(要MSログイン)
HRIRsファイルには DFC, MINP, RAWがあり、基本コマンドにはSubject_001_Wav.zipを使っている。
Geminiで他のダウンロード先を調べた。
各チャンネルの音声を合わせたり調整する pan
音声をサラウンド変換する surround
ffmpeg 3.4から追加のフィルタ。入力したステレオなどの音声の周波数からフロントとリアなどの音声に分けてサラウンド(5.1ch など)に変換するsurround
フィルタの使い方。
2017年5月のニコ生統計
集計期間は週間のニコ生統計の1ヶ月分である。2015年の1月の2週目から取得漏れの R-18 放送を含めて Vita API で取得し始めたのでそれ以前と比べて取得放送数が増えている。
VP9(libvpx-vp9)のエンコード設定について
次世代エンコーダVP9(webm、mp4)のエンコード設定についてffmpegで使う設定をまとめた。libvpx-vp9は外部ライブラリなので別途インストールする必要がある。さらに音声のエンコーダで使われるlibopusも外部ライブラリなのでこれもインストールする必要がある。
設定内容は多くあるがほとんどの設定は何も変えず、ビットレートの設定と品質・速度のトレードオフで考える。VP9は処理が遅いとよく言われるが、-threadsを設定することで速くなる。libx264のように自動設定してくれないので一番下の方にある解像度に併せて設定する。
libvpx-1.7.0から 10、12ビット深度に対応した。
ハードウェアのデコード、エンコード対応表:wiki – SoCs Supporting VP8/VP9
- webmproject/libvpx: github.com
- libvpx/CHANGELOG at master · webmproject/libvpx
- The WebM Open Media Project Blog: Inside WebM Technology: The VP8 Alternate Reference Frame
- Encode/VP9 – FFmpeg
- VP9 Encoding Guide – wiki
- Recommended Settings for VOD | Google Developers
- The WebM Project | VP9 Coding Profiles
- The WebM Project | VP9 Levels and Decoder Testing
- The WebM Project | VP8 Encode Parameter Guide