2
我编写了解码许多.flv视频文件的代码。每个视频文件都由一个单独的线程解码。 当我尝试1线程时,一切正常。但是当我尝试使用2个以上的线程时,总会出现错误“avcodec_open/close()周围的线程锁定不足”。使用带多线程的FFMPEG解码h264文件时出错?
我已搜查,我知道()avcodec_open的功能和avcodec_close()不是线程安全的。 之后,我将互斥锁锁定在两个函数被调用的地方。
lockObj.Lock();
avcodec_open/close();
lockObj.UnLock();
但是仍然发生错误“围绕avcodec_open/close()的线程锁定不足”。
有人能告诉我该如何解决?
非常感谢,
牛逼& T组
感谢您的回复,niahnke! 我确定lockObj是每个线程中的同一个对象,因为lockObj和所有线程都在同一个文件中声明。 – TTGroup 2013-09-15 03:16:26