Ho letto (da qualche parte, non ricordo e lo trovo più ora - forse la domanda sarebbe comunque obsoleta per me in ogni caso) che alcune funzioni FFmpeg non siano sicure per chiamare da più thread allo stesso tempo.ffmpeg: quali funzioni sono multithreading sicure?
FFmpeg per sé non è multithreading al sicuro, nel senso che non si dovrebbe chiamare av_read_frame
o avcodec_decode_audio4
sullo stesso contesto da diversi thread allo stesso tempo - ma che è per lo più evidente.
Ma ad esempio, sembra che avformat_find_stream_info
anche in contesti separati non sia sicuro per essere chiamato da thread diversi allo stesso tempo. Quindi, per renderlo sicuro, avresti bisogno di un mutex globale.
Esiste un elenco di funzioni che non sono sicure?
voglio solo ricordare che avformat_find_stream_info non è thread-safe. –
Se si costruisce FFmpeg con '--enable-pthreads', FFmpeg usa automaticamente la propria implementazione di lock manager predefinita, quindi non c'è bisogno di chiamare' av_lockmgr_register() '. – smokris