函數調用關係
av_probe_input_buffer調用av_probe_input_buffer2進行整一個碼流格式的分析過程。
其中調用avio_read進行碼流數據的讀取,將緩存數據保存在AVProbeData定義的buf裏面,
然後調用av_probe_input_format2(AVProbeData *pd, int is_opened, int *score_max)
函數去猜測碼流格式,其中包裹最終的調用函數av_probe_input_format3。
優化方向
如果知道AVInputFormat的碼流格式,就可以直接調用av_find_input_format函數,返回
碼流格式,避免了數據的探測延時,而且不再需要調用av_probe_input_buffer函數
例子,指定h264碼流格式,代碼如下:av_find_input_format("h264")