所以我有以下視頻示例
Stream #0:0(jpn): Video: h264 (High 10), yuv420p10le(progressive), 1920x1036 [SAR 1:1 DAR 480:259], 23.98 fps, 23.98 tbr, 1k tbn, 47.95 tbc (default)
Stream #0:1(eng): Audio: ac3, 48000 Hz, 5.0(side), fltp, 640 kb/s (default)
Stream #0:2(jpn): Audio: ac3, 48000 Hz, 5.0(side), fltp, 640 kb/s
Stream #0:3(eng): Subtitle: ass (default)
Metadata:
title : English Signs & Songs
Stream #0:4(eng): Subtitle: ass
Metadata:
title : English Subtitles
Stream #0:5: Attachment: ttf
Metadata:
filename : PutoInsanity.ttf
mimetype : application/x-truetype-font
我想用ff探針計算視訊串流和音訊串流的數量,在這種情況下應該給我1和2分別。如何才能實現這個目標?
答案1
沒有這樣的功能,但您可以使用ffprobe
附加工具uniq
(sort
如果需要)來處理輸出。
列出流類型的數量
ffprobe -v error -show_entries stream=codec_type -of default=nw=1:nk=1 input.mkv | uniq -c
1 data
1 video
1 attachment
8 subtitle
6 audio
僅輸出特定流類型的數字
或是零碎的方法。此範例顯示有多少個音訊串流:
ffprobe -v error -select_streams a -show_entries stream=index -of csv=p=0 input.mkv | wc -w
2
接受的值-select_streams
:
v
影片V
影片(不包括附加圖片、影片縮圖或封面藝術)。a
聲音的s
字幕d
數據t
附件