ffmpeg的avcodec_decode_video花屏时线程死掉
本人用avcodec_decode_video进行H264的解码,正常播放时没问题,但长期花屏(短时间花屏的话线程不会挂,超过2分钟的话就容易挂)的话该线程会挂掉。部分代码如下,日志跟踪结果是线程死掉的日志最后只打印“-in-”,大牛们有什么好的建议。万分感谢!
FILE *pFileIn;
char filenameIn[MAX_PATH];
sprintf(filenameIn,"avcodec_decode_video %d.txt",GetCurrentThreadId());
pFileIn = fopen(filenameIn,"a+");
char *pcharIn = "-in-\n";
fwrite(pcharIn,1,strlen(pcharIn),pFileIn);
fclose(pFileIn);
length = avcodec_decode_video(pCodecContext,pVideoFrame, &got_picture,data, size);
FILE *pFileOut;
char filenameOut[MAX_PATH];
sprintf(filenameOut,"avcodec_decode_video %d.txt",GetCurrentThreadId());
pFileOut = fopen(filenameOut,"a+");
char *pcharOut = "-out-\n";
fwrite(pcharOut,1,strlen(pcharOut),pFileOut);
fclose(pFileOut);