我编写了用于解码许多 .flv 视频文件的代码。每个视频文件由一个单独的线程解码。当我尝试 1 个线程时,一切正常。但是当我尝试超过 2 个线程时,总是会出现错误“avcodec_open/close() 周围的线程锁定不足”。
我已经搜索过,我知道函数 avcodec_open() 和 avcodec_close() 不是线程安全的。之后,我将互斥锁放在调用两个函数的任何位置。
lockObj.Lock();
avcodec_open/close();
lockObj.UnLock();
但是错误“avcodec_open/close() 周围的线程锁定不足”仍然发生。
有人可以告诉我解决方案吗?
非常感谢,
同天集团