写YUV编码为H264的程序,按照雷神(https://blog.csdn.net/leixiaohua1020/article/details/25430425)的程序,重新编写,运行,结果出现如下错误:
out_file 的格式的 mime_type出现错误指针, 跟进去,发现 没有东西。
查bug过程:
1、 跟进av_guess_format()函数,
提示:如果mime_type类型为非空,则检查mime_type是否与注册格式的MIME类型匹配。
看来程序 是希望我们空着,它自己来匹配。
可是,现在它匹配不出来。这就很尴尬 ̄□ ̄|||
2、 将输入文件,改为 out.mp4,结果有内容:mime_type = application/mp4
3、 断定,代码自己找不到mime_type,于是决定自己找,然后给它赋值。
参考此博客: https://www.cnblogs.com/olartan/p/4111180.html
众里寻他千百度,那代码在最后。
4、 找到代码,就把它填进去:
这里写两遍的原因: 因为只把“video/avc” 放进av_guess_format() 里面,依然不行。
所以,就直接重新赋值 fmt->mime_type = “video/avc”
成功!!!
这次的bug,找的过程,很痛苦。成功后,我差点大笑出来。哈哈哈……
后续把源代码传进上来。