[FFmpeg-devel] [PATCH] avcodec/mediacodecdec_common: stop the codec before releasing it
Matthieu Bouron
matthieu.bouron at gmail.com
Wed Mar 30 23:42:39 EEST 2022
Fixes the following warnings/errors on codec release:
E/BufferQueueProducer: [SurfaceTexture-0-31763-0](id:7c1300000001,api:3,p:31763,c:31763) detachBuffer: slot 0 is not owned by the producer (state = FREE)
E/BufferQueueProducer: [SurfaceTexture-0-31763-0](id:7c1300000001,api:3,p:31763,c:31763) detachBuffer: slot 1 is not owned by the producer (state = FREE)
E/BufferQueueProducer: [SurfaceTexture-0-31763-0](id:7c1300000001,api:3,p:31763,c:31763) detachBuffer: slot 2 is not owned by the producer (state = FREE)
[...]
---
libavcodec/mediacodecdec_common.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/libavcodec/mediacodecdec_common.c b/libavcodec/mediacodecdec_common.c
index cb18aed401..d99881c11f 100644
--- a/libavcodec/mediacodecdec_common.c
+++ b/libavcodec/mediacodecdec_common.c
@@ -232,6 +232,7 @@ static void ff_mediacodec_dec_unref(MediaCodecDecContext *s)
if (atomic_fetch_sub(&s->refcount, 1) == 1) {
if (s->codec) {
+ ff_AMediaCodec_stop(s->codec);
ff_AMediaCodec_delete(s->codec);
s->codec = NULL;
}
--
2.35.1
More information about the ffmpeg-devel
mailing list