54 lines
1.9 KiB
Diff
54 lines
1.9 KiB
Diff
https://github.com/gpac/gpac/commit/ba14e34dd7a3c4cef5a56962898e9f863dd4b4f3
|
|
|
|
From ba14e34dd7a3c4cef5a56962898e9f863dd4b4f3 Mon Sep 17 00:00:00 2001
|
|
From: jeanlf <jeanlf@gpac.io>
|
|
Date: Mon, 13 Mar 2023 09:43:52 +0100
|
|
Subject: [PATCH] fixed compil with ffmpeg 6 - cf #2406
|
|
|
|
---
|
|
src/filters/ff_mx.c | 20 ++++++++++++++++----
|
|
1 file changed, 16 insertions(+), 4 deletions(-)
|
|
|
|
diff --git a/src/filters/ff_mx.c b/src/filters/ff_mx.c
|
|
index 34e5f59e7c..5cf1d98941 100644
|
|
--- a/src/filters/ff_mx.c
|
|
+++ b/src/filters/ff_mx.c
|
|
@@ -503,7 +503,11 @@ static GF_Err ffmx_close_seg(GF_Filter *filter, GF_FFMuxCtx *ctx, Bool send_evt_
|
|
evt.seg_size.is_init = 0;
|
|
}
|
|
evt.seg_size.media_range_start = ctx->offset_at_seg_start;
|
|
+#if LIBAVFORMAT_VERSION_MAJOR < 60
|
|
evt.seg_size.media_range_end = ctx->muxer->pb ? (ctx->muxer->pb->written-1) : 0;
|
|
+#else
|
|
+ evt.seg_size.media_range_end = ctx->muxer->pb ? (ctx->muxer->pb->bytes_written-1) : 0;
|
|
+#endif
|
|
ctx->offset_at_seg_start = evt.seg_size.media_range_end;
|
|
|
|
gf_filter_pid_send_event(pid, &evt);
|
|
@@ -1013,13 +1017,21 @@ static GF_Err ffmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool is_r
|
|
ff_codec_id = ffmpeg_codecid_from_gpac(codec_id, &ff_codec_tag);
|
|
}
|
|
|
|
+
|
|
+ res = 1;
|
|
+#if LIBAVFORMAT_VERSION_MAJOR < 60
|
|
if (ctx->muxer->oformat && ctx->muxer->oformat->query_codec) {
|
|
res = ctx->muxer->oformat->query_codec(ff_codec_id, 1);
|
|
- if (!res) {
|
|
- GF_LOG(GF_LOG_ERROR, GF_LOG_CONTAINER, ("[FFMux] Codec %s not supported in container %s\n", gf_codecid_name(codec_id), ctx->muxer->oformat->name));
|
|
- return GF_NOT_SUPPORTED;
|
|
- }
|
|
}
|
|
+#else
|
|
+ res = avformat_query_codec(ctx->muxer->oformat, ff_codec_id, FF_COMPLIANCE_NORMAL);
|
|
+#endif
|
|
+
|
|
+ if (!res) {
|
|
+ GF_LOG(GF_LOG_ERROR, GF_LOG_CONTAINER, ("[FFMux] Codec %s not supported in container %s\n", gf_codecid_name(codec_id), ctx->muxer->oformat->name));
|
|
+ return GF_NOT_SUPPORTED;
|
|
+ }
|
|
+
|
|
const AVCodec *c = avcodec_find_decoder(ff_codec_id);
|
|
if (!c) return GF_NOT_SUPPORTED;
|
|
|