ITU-T P.910を元とした2次元と3次元で映像の品質スコアを調べるsiti

ffmpeg 5.1から使えるフィルタ。SI(Spatial Info:空間情報、フレーム内)とTI(Temporal Info:時間情報、フレーム間)の知覚情報のスコアを調べるsitiフィルタの使い方。SIは複雑なシーンほど数値が高くなる。似たフィルタにentropyフィルタがある。TIはフレーム間の動きの変化が多いほど数値が高くなる。アニメのように動かないと0になる。

映像のエントロピーを調べるentropy
各チャンネルのノイズ係数を調べる bitplanenoise

実装した論文:P.910 : Subjective video quality assessment methods for multimedia applications
論文の最新版:P.910 : Subjective video quality assessment methods for multimedia applications

映像の品質評価に使われるフィルタなど。

Continue reading “ITU-T P.910を元とした2次元と3次元で映像の品質スコアを調べるsiti”

Raspberry Pi 4 Model Bの64bit OSでインタレ解除してHWエンコードする

fieldhintフィルタで手動インターレース解除しH.264のハードウェアエンコードする。手動インターレース解除するとぎりぎり1倍速以上出るので縞フレームの場所が分かればライブ配信にも使える。patternオプションは2022年3月15日に追加されたものなのでffmpegはソースコードからビルドする。

jc-kynesim/rpi-ffmpeg: FFmpeg work for RPI
手動でフィールド処理を行う fieldhint

Continue reading “Raspberry Pi 4 Model Bの64bit OSでインタレ解除してHWエンコードする”

色相を変更できるhuesaturation

RGBベースの色相を変更できるhuesaturationフィルタの使い方。YUVベースはhueフィルタ。タイムライン編集に対応。

色相を動的に変更できる hue
特定の区間だけフィルタを当てるタイムライン編集について

Continue reading “色相を変更できるhuesaturation”

低域を減退させるhighpassと広域を減退させるlowpass

3dBポイントの周波数でフィルタを適用する。フィルターは単極、または両極のいずれかが選択できる。フィルタのロールオフ(減衰傾度)は、1オクターブあたり6dB/極になる。周波数毎に無音にするにはsuperequalizerフィルタなどを使う。

Continue reading “低域を減退させるhighpassと広域を減退させるlowpass”

ピッチを任意の周波数に変更するasetrate

入力した音声のサンプリング周波数より高ければ高音に、低ければ低音に変える。出力周波数は変更した周波数に変わるのでオプションの-arか、aresampleフィルタで目的の周波数に変更する。

ピッチ変更はrubberbandフィルタでもできる。
サンプリング周波数を変えずにテンポとピッチを変える rubberband

Continue reading “ピッチを任意の周波数に変更するasetrate”

色補正フィルタのgrayworld

異なる伝達関数に変換するときに使い、事前に線形変換が必要。ピクセルフォーマットはgbrpf32leになるので負荷はかなり大きい。

論文:https://www.researchgate.net/publication/275213614_A_New_Color_Correction_Method_for_Underwater_Imaging
参考記事:New grayworld video filter in FFmpeg 5.0 – Doom9’s Forum

Continue reading “色補正フィルタのgrayworld”