函数调用关系
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")
时间: 2024-11-05 20:31:39