私はいくつかの基本的な情報を得るためにビデオファイルを精査しています。たとえば、次の例では、show_entriesフラグを使用して必要なデータを指定しています。
> ffprobe -v error -show_entries format=size,duration:stream=codec_name,bit_rate video.mp4
TAG:rotateエントリも取得する必要がありますが、セミコロンがshow_entriesフラグの構文と混在しているため、これは機能しません。
> ffprobe -v error -show_entries format=size,duration:stream=codec_name,bit_rate,TAG:rotate output.mp4
No match for section 'rotate'
Failed to set value 'format=size,duration:stream=codec_name,bit_rate,TAG:rotate' for option 'show_entries': Invalid argument
構文を修正する方法はありますか?他の唯一の解決策は、個々のエントリを指定せず、すべてのデータを取得することです。
ストリームに保存されているメタデータタグにはstream_tags
を使用できます。
$ ffprobe -v error -show_entries \
stream_tags=rotate: \
format=size,duration: \
stream=codec_name,bit_rate \
-of default=noprint_wrappers=1 input.mp4
codec_name=h264
bit_rate=39761
TAG:rotate=90
duration=5.000000
size=27114
さらに、コンテナに格納されているメタデータタグにはformat_tags
があります。
セクションのヘッダーとフッターを省略するために-of default=noprint_wrappers=1
を追加しました。