YUV(A) や RGB(A) の数値を2桁の16進数で映像にオーバーレイして確認できる datascope
フィルタの使い方。数値ではなく映像で表示するフィルタに histogram
フィルタがあるが datascope
フィルタの方が直感的に任意の場所の数値が読み取れる。ただし表示できる範囲は全画面ではなく 1px 毎に表示されるので全体の変化を大まかに調べるのには向かない。
基本コマンド
ffplay input -vf datascope=s=1280x720:x=0:y=0:mode=0:axis=0
チャンネル数の数だけ 1px に表示される数が変わる。上から順番にチャンネルが割り振られる。チャンネルが増えるだけ表示できる解像度が狭くなる。
ffmpeg -f lavfi -i testsrc2=d=1 -vf datascope=s=360x400:mode=color:x=4:y=6:axis=1 -vframes 1 datascope.png
公式ドキュメント:FFmpeg Filters Documentation : datascope
オプション
- size, s[image_size]
出力解像度。表示する座標に横は20倍以上、縦は1チャンネルあたり12倍以上必要
既定値。hd720(1280×720) - x[int]
左上を 0 とする横軸の座標指定
既定値:0 - y[int]
左上を 0 とする縦軸の座標指定
既定値:0 - mode[int]
表示モードの指定- 0, mono:黒背景に白色数字。既定値
- 1, color:黒背景に元映像の色数字
- 2, color2:元映像の背景に数字を読みやすい色に変える
- axis[boolean]
既定値:0(無効)
上と左に座標の値を表示する。有効化すると表示範囲が狭まる