换不同SDK版本后出错
av_write_frame(pFormatCtxEnc, &pkt); 相同的代码,用网站上下载的SDK3.2是没有问题的,换用自己编译的较新的版本就出错,好象提示被0整除. 用别人编译的SDK4.0也是有问题. 不知道是哪的问题呀 现在发现其实在av_write_header(oc);的时候已经出错了,以前没有检查这个函数,不知道这个函数还做很多事情, AVStream 和 AVStream中的AVCodecContext,有些参数是一样的,我们好象是只设置AVCodecContext,AVStream 参数是SDK自动填写的,填写的时间是av_write_header(oc);填写过程还要做一些检测,也要填一写参数,如果参数有问题就可能退出。 我的这个问题只是两个地方的像素纵横比不一样就出错了。因我我在AVCodecContext中设置了像素纵横比107:100,而AVStream中没有设置手动设置合适的参数后不出错了。不知道解决方法正确不。 也还没有比较新老版本设置参数的时候哪些地方不同。 |