FFmpeg中可执行文件ffprobe用法汇总
從https://ffbinaries.com/downloads 下載最新的4.1版本的Windows 64位FFprobe,FFprobe用于從多媒體流中獲取相關信息或查看文件格式信息,并以可讀的方式打印,FFprobe可以作為一個命令行程序單獨使用。
通過執行以下命令將FFprobe信息重定位到ffprobe_help.txt文件中便于查看,FFprobe使用方法為:ffprobe.exe [options] [input_file]。
ffprobe.exe --help > ffprobe_help.txt
以下匯總FFprobe的常用操作:
1. 查看單幅圖像信息如png或jpg,則執行以下命令,結果如下圖所示:可以獲取輸入圖像的寬、高;獲取編碼格式,對應FFmpeg源碼中的枚舉類型AVCodecID,如1.png的編碼格式為png(AV_CODEC_ID_PNG),而1.jpg編碼格式為mjpge(AV_CODEC_ID_MJPEG);獲取像素格式,對應FFmpeg源碼中的枚舉類型AVPixelFormat,如1.png的像素格式為rgb24(AV_PIX_FMT_RGB24),而1.jpg的像素格式為yuvj444p(AV_PIX_FMT_YUVJ444P)
ffprobe.exe 1.png
ffprobe.exe 1.jpg
2. 查看avi文件信息,則執行以下命令,結果如下圖所示:有兩個流,一個視頻流,一個音頻流,視頻流采用的是mpeg4(即對應枚舉類型AVCodecID中的AV_CODEC_ID_MPEG4)編碼方式,音頻流采用的是ac3(即對應枚舉類型AVCodecID中的AV_CODEC_ID_AC3)編碼格式;此文件播放時長為11.26秒;幀率為24;視頻幀的像素格式為yuv420p(對應枚舉類型AVPixelFormat中的AV_PIX_FMT_YUV420P);視頻尺寸為720x528
ffprobe.exe 1.avi
3. 對mp4文件以json格式打印輸出(-print_format, 可用的打印格式包括:default, compact, csv, flat, ini, json, xml)、輸出格式信息(-show_format)、輸出流信息(-show_streams),則執行以下命令,結果如下圖所示:有兩個流,一個視頻流,一個音頻流,視頻流采用的是h264(即對應枚舉類型AVCodecID中的AV_CODEC_ID_H264)編碼方式,音頻流采用的是aac(即對應枚舉類型AVCodecID中的AV_CODEC_ID_AAC)編碼格式;此文件播放時長為16.64秒;幀率為30;視頻幀的像素格式為yuv420p(對應枚舉類型AVPixelFormat中的AV_PIX_FMT_YUV420P);視頻尺寸為544x960;產生的1.mp4.info.txt的內容如下:
ffprobe.exe -print_format json? -show_format -show_streams -i 1.mp4 > 1.mp4.info.txt
{"streams": [{"index": 0,"codec_name": "aac","codec_long_name": "AAC (Advanced Audio Coding)","profile": "LC","codec_type": "audio","codec_time_base": "1/48000","codec_tag_string": "mp4a","codec_tag": "0x6134706d","sample_fmt": "fltp","sample_rate": "48000","channels": 2,"channel_layout": "stereo","bits_per_sample": 0,"r_frame_rate": "0/0","avg_frame_rate": "0/0","time_base": "1/48000","start_pts": 0,"start_time": "0.000000","duration_ts": 798720,"duration": "16.640000","bit_rate": "96000","max_bit_rate": "94904","nb_frames": "780","disposition": {"default": 1,"dub": 0,"original": 0,"comment": 0,"lyrics": 0,"karaoke": 0,"forced": 0,"hearing_impaired": 0,"visual_impaired": 0,"clean_effects": 0,"attached_pic": 0,"timed_thumbnails": 0},"tags": {"creation_time": "2019-07-28T09:30:06.000000Z","language": "und"}},{"index": 1,"codec_name": "h264","codec_long_name": "H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10","profile": "High","codec_type": "video","codec_time_base": "146669/8802000","codec_tag_string": "avc1","codec_tag": "0x31637661","width": 544,"height": 960,"coded_width": 544,"coded_height": 960,"has_b_frames": 2,"pix_fmt": "yuv420p","level": 31,"chroma_location": "left","refs": 1,"is_avc": "true","nal_length_size": "4","r_frame_rate": "30/1","avg_frame_rate": "4401000/146669","time_base": "1/90000","start_pts": 5998,"start_time": "0.066644","duration_ts": 1466690,"duration": "16.296556","bit_rate": "1157602","bits_per_raw_sample": "8","nb_frames": "489","disposition": {"default": 1,"dub": 0,"original": 0,"comment": 0,"lyrics": 0,"karaoke": 0,"forced": 0,"hearing_impaired": 0,"visual_impaired": 0,"clean_effects": 0,"attached_pic": 0,"timed_thumbnails": 0},"tags": {"creation_time": "2019-07-28T09:30:06.000000Z","language": "und","encoder": "JVT/AVC Coding"}}],"format": {"filename": "1.mp4","nb_streams": 2,"nb_programs": 0,"format_name": "mov,mp4,m4a,3gp,3g2,mj2","format_long_name": "QuickTime / MOV","start_time": "0.000000","duration": "16.640000","size": "2571206","bit_rate": "1236156","probe_score": 100,"tags": {"major_brand": "mp42","minor_version": "0","compatible_brands": "mp42isom","creation_time": "2019-07-28T09:30:06.000000Z"}}
}
4. 查看h264視頻流文件信息:則執行以下命令,結果如下圖所示:只有一個視頻流,視頻流采用的是h264(即對應枚舉類型AVCodecID中的AV_CODEC_ID_H264)編碼方式;幀率為25;視頻幀的像素格式為yuv420p(對應枚舉類型AVPixelFormat中的AV_PIX_FMT_YUV420P);視頻尺寸為384x288
ffprobe.exe 1.264
5. 查看rtsp視頻流信息:則執行以下命令,結果如下圖所示:有兩個流,一個視頻流,一個音頻流,視頻流采用的是h264(即對應枚舉類型AVCodecID中的AV_CODEC_ID_H264)編碼方式,音頻流采用的是aac(即對應枚舉類型AVCodecID中的AV_CODEC_ID_AAC)編碼格式;此文件播放時長為9分56.48秒;幀率為24;視頻幀的像素格式為yuv420p(對應枚舉類型AVPixelFormat中的AV_PIX_FMT_YUV420P);視頻尺寸為240x160
ffprobe.exe rtsp://184.72.239.149/vod/mp4://BigBuckBunny_115k.mov
GitHub:https://github.com/fengbingchun/OpenCV_Test
總結
以上是生活随笔為你收集整理的FFmpeg中可执行文件ffprobe用法汇总的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux下gdb attach的使用(
- 下一篇: FFmpeg中可执行文件ffmpeg用法