* [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency
@ 2022-01-06 9:14 Andreas Rheinhardt
2022-01-06 10:52 ` [FFmpeg-devel] [PATCH 2/4] avformat/Makefile, amr: Add missing amr-demuxers->rawdec.o dependency Andreas Rheinhardt
` (17 more replies)
0 siblings, 18 replies; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-06 9:14 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Andreas Rheinhardt
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
libavformat/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libavformat/Makefile b/libavformat/Makefile
index c479ea998e..cc19325397 100644
--- a/libavformat/Makefile
+++ b/libavformat/Makefile
@@ -667,7 +667,7 @@ OBJS-$(CONFIG_UDPLITE_PROTOCOL) += udp.o ip.o
OBJS-$(CONFIG_UNIX_PROTOCOL) += unix.o
# external library protocols
-OBJS-$(CONFIG_LIBAMQP_PROTOCOL) += libamqp.o
+OBJS-$(CONFIG_LIBAMQP_PROTOCOL) += libamqp.o urldecode.o
OBJS-$(CONFIG_LIBRIST_PROTOCOL) += librist.o
OBJS-$(CONFIG_LIBRTMP_PROTOCOL) += librtmp.o
OBJS-$(CONFIG_LIBRTMPE_PROTOCOL) += librtmp.o
--
2.32.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* [FFmpeg-devel] [PATCH 2/4] avformat/Makefile, amr: Add missing amr-demuxers->rawdec.o dependency
2022-01-06 9:14 [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
@ 2022-01-06 10:52 ` Andreas Rheinhardt
2022-01-06 10:52 ` [FFmpeg-devel] [PATCH 3/4] avformat/amr: Don't reset AVFormatContext.priv_data Andreas Rheinhardt
` (16 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-06 10:52 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Andreas Rheinhardt
Forgotten in 1f447fd95463bbf39a78d886359a3006d82f6a94.
Also only enable amr_probe() and amr_read_header() in case
the AMR demuxer is enabled; this avoids having to add
a rawdec.o dependency to the muxer.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
libavformat/Makefile | 6 +++---
libavformat/amr.c | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/libavformat/Makefile b/libavformat/Makefile
index cc19325397..6bd8af1bca 100644
--- a/libavformat/Makefile
+++ b/libavformat/Makefile
@@ -88,10 +88,10 @@ OBJS-$(CONFIG_AIFF_MUXER) += aiffenc.o aiff.o id3v2enc.o
OBJS-$(CONFIG_AIX_DEMUXER) += aixdec.o
OBJS-$(CONFIG_ALP_DEMUXER) += alp.o
OBJS-$(CONFIG_ALP_MUXER) += alp.o
-OBJS-$(CONFIG_AMR_DEMUXER) += amr.o
+OBJS-$(CONFIG_AMR_DEMUXER) += amr.o rawdec.o
OBJS-$(CONFIG_AMR_MUXER) += amr.o rawenc.o
-OBJS-$(CONFIG_AMRNB_DEMUXER) += amr.o
-OBJS-$(CONFIG_AMRWB_DEMUXER) += amr.o
+OBJS-$(CONFIG_AMRNB_DEMUXER) += amr.o rawdec.o
+OBJS-$(CONFIG_AMRWB_DEMUXER) += amr.o rawdec.o
OBJS-$(CONFIG_AMV_MUXER) += amvenc.o
OBJS-$(CONFIG_ANM_DEMUXER) += anm.o
OBJS-$(CONFIG_APC_DEMUXER) += apc.o
diff --git a/libavformat/amr.c b/libavformat/amr.c
index 0a044d69af..9250089cb1 100644
--- a/libavformat/amr.c
+++ b/libavformat/amr.c
@@ -66,6 +66,7 @@ static int amr_write_header(AVFormatContext *s)
}
#endif /* CONFIG_AMR_MUXER */
+#if CONFIG_AMR_DEMUXER
static int amr_probe(const AVProbeData *p)
{
// Only check for "#!AMR" which could be amr-wb, amr-nb.
@@ -140,7 +141,6 @@ static int amr_read_header(AVFormatContext *s)
return 0;
}
-#if CONFIG_AMR_DEMUXER
const AVInputFormat ff_amr_demuxer = {
.name = "amr",
.long_name = NULL_IF_CONFIG_SMALL("3GPP AMR"),
--
2.32.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* [FFmpeg-devel] [PATCH 3/4] avformat/amr: Don't reset AVFormatContext.priv_data
2022-01-06 9:14 [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
2022-01-06 10:52 ` [FFmpeg-devel] [PATCH 2/4] avformat/Makefile, amr: Add missing amr-demuxers->rawdec.o dependency Andreas Rheinhardt
@ 2022-01-06 10:52 ` Andreas Rheinhardt
2022-01-06 10:52 ` [FFmpeg-devel] [PATCH 4/4] avformat/amr: Fix writing AMR header Andreas Rheinhardt
` (15 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-06 10:52 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Andreas Rheinhardt
The AMR muxer doesn't have a private context, so it's priv_data
will be NULL. If it weren't, simply setting it to NULL would lead
to a memleak.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
libavformat/amr.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/libavformat/amr.c b/libavformat/amr.c
index 9250089cb1..8e14052200 100644
--- a/libavformat/amr.c
+++ b/libavformat/amr.c
@@ -53,8 +53,6 @@ static int amr_write_header(AVFormatContext *s)
AVIOContext *pb = s->pb;
AVCodecParameters *par = s->streams[0]->codecpar;
- s->priv_data = NULL;
-
if (par->codec_id == AV_CODEC_ID_AMR_NB) {
avio_write(pb, AMR_header, sizeof(AMR_header) - 1); /* magic number */
} else if (par->codec_id == AV_CODEC_ID_AMR_WB) {
--
2.32.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* [FFmpeg-devel] [PATCH 4/4] avformat/amr: Fix writing AMR header
2022-01-06 9:14 [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
2022-01-06 10:52 ` [FFmpeg-devel] [PATCH 2/4] avformat/Makefile, amr: Add missing amr-demuxers->rawdec.o dependency Andreas Rheinhardt
2022-01-06 10:52 ` [FFmpeg-devel] [PATCH 3/4] avformat/amr: Don't reset AVFormatContext.priv_data Andreas Rheinhardt
@ 2022-01-06 10:52 ` Andreas Rheinhardt
2022-01-06 12:07 ` [FFmpeg-devel] [PATCH 5/6] fate/amr[nw]b: Add remux tests Andreas Rheinhardt
` (14 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-06 10:52 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Andreas Rheinhardt
Regression since f282c34c009e3653ec160c3880e64fc1a9300d0e.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
Will add FATE-remux tests for the muxer later.
libavformat/amr.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/libavformat/amr.c b/libavformat/amr.c
index 8e14052200..40d5bc9cc5 100644
--- a/libavformat/amr.c
+++ b/libavformat/amr.c
@@ -54,9 +54,9 @@ static int amr_write_header(AVFormatContext *s)
AVCodecParameters *par = s->streams[0]->codecpar;
if (par->codec_id == AV_CODEC_ID_AMR_NB) {
- avio_write(pb, AMR_header, sizeof(AMR_header) - 1); /* magic number */
+ avio_write(pb, AMR_header, sizeof(AMR_header)); /* magic number */
} else if (par->codec_id == AV_CODEC_ID_AMR_WB) {
- avio_write(pb, AMRWB_header, sizeof(AMRWB_header) - 1); /* magic number */
+ avio_write(pb, AMRWB_header, sizeof(AMRWB_header)); /* magic number */
} else {
return -1;
}
--
2.32.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* [FFmpeg-devel] [PATCH 5/6] fate/amr[nw]b: Add remux tests
2022-01-06 9:14 [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
` (2 preceding siblings ...)
2022-01-06 10:52 ` [FFmpeg-devel] [PATCH 4/4] avformat/amr: Fix writing AMR header Andreas Rheinhardt
@ 2022-01-06 12:07 ` Andreas Rheinhardt
2022-01-06 12:07 ` [FFmpeg-devel] [PATCH 6/6] fate/amrwb: Fix container type Andreas Rheinhardt
` (13 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-06 12:07 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Andreas Rheinhardt
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
tests/fate/amrnb.mak | 8 +++++-
tests/fate/amrwb.mak | 8 +++++-
tests/ref/fate/amrnb-remux | 58 ++++++++++++++++++++++++++++++++++++++
tests/ref/fate/amrwb-remux | 58 ++++++++++++++++++++++++++++++++++++++
4 files changed, 130 insertions(+), 2 deletions(-)
create mode 100644 tests/ref/fate/amrnb-remux
create mode 100644 tests/ref/fate/amrwb-remux
diff --git a/tests/fate/amrnb.mak b/tests/fate/amrnb.mak
index c0feec25dc..f4f74f14d9 100644
--- a/tests/fate/amrnb.mak
+++ b/tests/fate/amrnb.mak
@@ -30,7 +30,13 @@ FATE_AMRNB += fate-amrnb-12k2
fate-amrnb-12k2: CMD = pcm -i $(TARGET_SAMPLES)/amrnb/12.2k.amr
fate-amrnb-12k2: REF = $(SAMPLES)/amrnb/12.2k.pcm
+FATE_AMRNB_REMUX-$(call ALLYES, FILE_PROTOCOL AMR_DEMUXER AMR_PARSER \
+ AMR_MUXER FRAMECRC_MUXER PIPE_PROTOCOL) \
+ += fate-amrnb-remux
+fate-amrnb-remux: CMD = transcode amr $(TARGET_SAMPLES)/amrnb/10.2k.amr amr "-c copy" "-c copy -t 1"
+
$(FATE_AMRNB): CMP = stddev
FATE_SAMPLES_AVCONV-$(call DEMDEC, AMR, AMRNB) += $(FATE_AMRNB)
-fate-amrnb: $(FATE_AMRNB)
+FATE_SAMPLES_FFMPEG += $(FATE_AMRNB_REMUX-yes)
+fate-amrnb: $(FATE_AMRNB) $(FATE_AMRNB_REMUX-yes)
diff --git a/tests/fate/amrwb.mak b/tests/fate/amrwb.mak
index b93835d76d..617cefca00 100644
--- a/tests/fate/amrwb.mak
+++ b/tests/fate/amrwb.mak
@@ -41,7 +41,13 @@ FATE_AMRWB += fate-amrwb-23k85-2
fate-amrwb-23k85-2: CMD = pcm -i $(TARGET_SAMPLES)/amrwb/deus-23k85.awb
fate-amrwb-23k85-2: REF = $(SAMPLES)/amrwb/deus-23k85.pcm
+FATE_AMRWB_REMUX-$(call ALLYES, FILE_PROTOCOL MOV_DEMUXER AMR_PARSER AMR_MUXER \
+ AMR_DEMUXER FRAMECRC_MUXER PIPE_PROTOCOL) \
+ += fate-amrwb-remux
+fate-amrwb-remux: CMD = transcode mov $(TARGET_SAMPLES)/amrwb/seed-23k85.awb amr "-c copy" "-c copy -t 1"
+
$(FATE_AMRWB): CMP = stddev
FATE_SAMPLES_AVCONV-$(call DEMDEC, AMR, AMRWB) += $(FATE_AMRWB)
-fate-amrwb: $(FATE_AMRWB)
+FATE_SAMPLES_FFMPEG += $(FATE_AMRWB_REMUX-yes)
+fate-amrwb: $(FATE_AMRWB) $(FATE_AMRWB_REMUX-yes)
diff --git a/tests/ref/fate/amrnb-remux b/tests/ref/fate/amrnb-remux
new file mode 100644
index 0000000000..4a78c479f2
--- /dev/null
+++ b/tests/ref/fate/amrnb-remux
@@ -0,0 +1,58 @@
+55311d26f9bb6faa36d99ee7cd34ee05 *tests/data/fate/amrnb-remux.amr
+7674 tests/data/fate/amrnb-remux.amr
+#tb 0: 1/8000
+#media_type 0: audio
+#codec_id 0: amr_nb
+#sample_rate 0: 8000
+#channel_layout 0: 4
+#channel_layout_name 0: mono
+0, 0, 0, 160, 27, 0xc9970c51
+0, 160, 160, 160, 27, 0xbaa00d05
+0, 320, 320, 160, 27, 0xa8af0d60
+0, 480, 480, 160, 27, 0xb6750d9f
+0, 640, 640, 160, 27, 0xcd7d0e5f
+0, 800, 800, 160, 27, 0xaf740d0f
+0, 960, 960, 160, 27, 0xcb1c0f93
+0, 1120, 1120, 160, 27, 0xccfd0e02
+0, 1280, 1280, 160, 27, 0xb3e60d1e
+0, 1440, 1440, 160, 27, 0xbe510d70
+0, 1600, 1600, 160, 27, 0xbeb30d65
+0, 1760, 1760, 160, 27, 0xd4730f2b
+0, 1920, 1920, 160, 27, 0xa8540cd0
+0, 2080, 2080, 160, 27, 0xafdb0c14
+0, 2240, 2240, 160, 27, 0xd9930f24
+0, 2400, 2400, 160, 27, 0xbe5f0cec
+0, 2560, 2560, 160, 27, 0xb44b0c6d
+0, 2720, 2720, 160, 27, 0xdc160ec9
+0, 2880, 2880, 160, 27, 0xb8a20ce3
+0, 3040, 3040, 160, 27, 0xb9120c90
+0, 3200, 3200, 160, 27, 0xcdc70e7f
+0, 3360, 3360, 160, 27, 0xc7c20f06
+0, 3520, 3520, 160, 27, 0xda530f0e
+0, 3680, 3680, 160, 27, 0x90750abc
+0, 3840, 3840, 160, 27, 0xa4840b6d
+0, 4000, 4000, 160, 27, 0x96ed0ad1
+0, 4160, 4160, 160, 27, 0xb6b30c26
+0, 4320, 4320, 160, 27, 0x786909ce
+0, 4480, 4480, 160, 27, 0xa4ae0c7d
+0, 4640, 4640, 160, 27, 0x9ff90ba2
+0, 4800, 4800, 160, 27, 0x914c0c22
+0, 4960, 4960, 160, 27, 0xa8df0c9c
+0, 5120, 5120, 160, 27, 0xb67f0d8e
+0, 5280, 5280, 160, 27, 0xb6810cca
+0, 5440, 5440, 160, 27, 0xa6110c80
+0, 5600, 5600, 160, 27, 0xda0f0ecf
+0, 5760, 5760, 160, 27, 0xd6270e0d
+0, 5920, 5920, 160, 27, 0xd2150ffc
+0, 6080, 6080, 160, 27, 0xbd010da4
+0, 6240, 6240, 160, 27, 0xb9eb0e46
+0, 6400, 6400, 160, 27, 0xc8a80eb6
+0, 6560, 6560, 160, 27, 0xcc6b0cec
+0, 6720, 6720, 160, 27, 0xab190db0
+0, 6880, 6880, 160, 27, 0xb3f90ca7
+0, 7040, 7040, 160, 27, 0xa84a0cc9
+0, 7200, 7200, 160, 27, 0xcdca0e8d
+0, 7360, 7360, 160, 27, 0xaf8b0d1c
+0, 7520, 7520, 160, 27, 0xd9980e15
+0, 7680, 7680, 160, 27, 0xcf810f8e
+0, 7840, 7840, 160, 27, 0xb7810bd0
diff --git a/tests/ref/fate/amrwb-remux b/tests/ref/fate/amrwb-remux
new file mode 100644
index 0000000000..c350fc0b61
--- /dev/null
+++ b/tests/ref/fate/amrwb-remux
@@ -0,0 +1,58 @@
+3634e03f106db1da796059bde3258efc *tests/data/fate/amrwb-remux.amr
+31241 tests/data/fate/amrwb-remux.amr
+#tb 0: 1/16000
+#media_type 0: audio
+#codec_id 0: amr_wb
+#sample_rate 0: 16000
+#channel_layout 0: 4
+#channel_layout_name 0: mono
+0, 0, 0, 320, 61, 0xc8891fe9
+0, 320, 320, 320, 61, 0xc2562027
+0, 640, 640, 320, 61, 0xe46e207f
+0, 960, 960, 320, 61, 0xa27a1c46
+0, 1280, 1280, 320, 61, 0xf1d42007
+0, 1600, 1600, 320, 61, 0x50d61af4
+0, 1920, 1920, 320, 61, 0xbacf1eef
+0, 2240, 2240, 320, 61, 0xbd691d7b
+0, 2560, 2560, 320, 61, 0xfd1323a2
+0, 2880, 2880, 320, 61, 0x7ca01f0e
+0, 3200, 3200, 320, 61, 0x2f812276
+0, 3520, 3520, 320, 61, 0xaef41ca8
+0, 3840, 3840, 320, 61, 0x2560211f
+0, 4160, 4160, 320, 61, 0xd6ad1fd4
+0, 4480, 4480, 320, 61, 0x87d81d18
+0, 4800, 4800, 320, 61, 0x11531a44
+0, 5120, 5120, 320, 61, 0x83011d4f
+0, 5440, 5440, 320, 61, 0xca39211f
+0, 5760, 5760, 320, 61, 0xa0031e8d
+0, 6080, 6080, 320, 61, 0x0b8a1980
+0, 6400, 6400, 320, 61, 0xd2931e62
+0, 6720, 6720, 320, 61, 0x0f7820fd
+0, 7040, 7040, 320, 61, 0xcc8c2149
+0, 7360, 7360, 320, 61, 0x29f82236
+0, 7680, 7680, 320, 61, 0xf7a71f9c
+0, 8000, 8000, 320, 61, 0xa64f1cba
+0, 8320, 8320, 320, 61, 0x685321c1
+0, 8640, 8640, 320, 61, 0x48002221
+0, 8960, 8960, 320, 61, 0xef0a1f53
+0, 9280, 9280, 320, 61, 0x31e321a0
+0, 9600, 9600, 320, 61, 0xb49f1ead
+0, 9920, 9920, 320, 61, 0xe5bb1f9d
+0, 10240, 10240, 320, 61, 0xc5971d19
+0, 10560, 10560, 320, 61, 0x33182328
+0, 10880, 10880, 320, 61, 0xb791204e
+0, 11200, 11200, 320, 61, 0x5db81bd8
+0, 11520, 11520, 320, 61, 0x9f171da7
+0, 11840, 11840, 320, 61, 0xec4a1974
+0, 12160, 12160, 320, 61, 0x980620e1
+0, 12480, 12480, 320, 61, 0x74cf1d0c
+0, 12800, 12800, 320, 61, 0xea761ef7
+0, 13120, 13120, 320, 61, 0xa1da1cc7
+0, 13440, 13440, 320, 61, 0x68741b28
+0, 13760, 13760, 320, 61, 0x87991cee
+0, 14080, 14080, 320, 61, 0x955f1d0f
+0, 14400, 14400, 320, 61, 0x8eea1e69
+0, 14720, 14720, 320, 61, 0xadb21ede
+0, 15040, 15040, 320, 61, 0xace61e29
+0, 15360, 15360, 320, 61, 0x67441c17
+0, 15680, 15680, 320, 61, 0x7f1b1e7c
--
2.32.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* [FFmpeg-devel] [PATCH 6/6] fate/amrwb: Fix container type
2022-01-06 9:14 [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
` (3 preceding siblings ...)
2022-01-06 12:07 ` [FFmpeg-devel] [PATCH 5/6] fate/amr[nw]b: Add remux tests Andreas Rheinhardt
@ 2022-01-06 12:07 ` Andreas Rheinhardt
2022-01-06 17:15 ` [FFmpeg-devel] [PATCH 07/10] avformat/Makefile: Add missing alp-muxer->rawenc.o dependency Andreas Rheinhardt
` (12 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-06 12:07 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Andreas Rheinhardt
All the AMRWB samples are in a mov container.
Also use FATE_SAMPLES_FFMPEG instead of FATE_SAMPLES_AVCONV.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
tests/fate/amrwb.mak | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/fate/amrwb.mak b/tests/fate/amrwb.mak
index 617cefca00..8450c28bba 100644
--- a/tests/fate/amrwb.mak
+++ b/tests/fate/amrwb.mak
@@ -48,6 +48,6 @@ fate-amrwb-remux: CMD = transcode mov $(TARGET_SAMPLES)/amrwb/seed-23k85.awb amr
$(FATE_AMRWB): CMP = stddev
-FATE_SAMPLES_AVCONV-$(call DEMDEC, AMR, AMRWB) += $(FATE_AMRWB)
+FATE_SAMPLES_FFMPEG-$(call DEMDEC, MOV, AMRWB) += $(FATE_AMRWB)
FATE_SAMPLES_FFMPEG += $(FATE_AMRWB_REMUX-yes)
fate-amrwb: $(FATE_AMRWB) $(FATE_AMRWB_REMUX-yes)
--
2.32.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* [FFmpeg-devel] [PATCH 07/10] avformat/Makefile: Add missing alp-muxer->rawenc.o dependency
2022-01-06 9:14 [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
` (4 preceding siblings ...)
2022-01-06 12:07 ` [FFmpeg-devel] [PATCH 6/6] fate/amrwb: Fix container type Andreas Rheinhardt
@ 2022-01-06 17:15 ` Andreas Rheinhardt
2022-01-06 17:15 ` [FFmpeg-devel] [PATCH 08/10] avformat/Makefile: Add missing amv-muxer->riffenc.o dependency Andreas Rheinhardt
` (11 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-06 17:15 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Andreas Rheinhardt
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
libavformat/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libavformat/Makefile b/libavformat/Makefile
index 6bd8af1bca..1d0396ba3e 100644
--- a/libavformat/Makefile
+++ b/libavformat/Makefile
@@ -87,7 +87,7 @@ OBJS-$(CONFIG_AIFF_DEMUXER) += aiffdec.o aiff.o pcm.o \
OBJS-$(CONFIG_AIFF_MUXER) += aiffenc.o aiff.o id3v2enc.o
OBJS-$(CONFIG_AIX_DEMUXER) += aixdec.o
OBJS-$(CONFIG_ALP_DEMUXER) += alp.o
-OBJS-$(CONFIG_ALP_MUXER) += alp.o
+OBJS-$(CONFIG_ALP_MUXER) += alp.o rawenc.o
OBJS-$(CONFIG_AMR_DEMUXER) += amr.o rawdec.o
OBJS-$(CONFIG_AMR_MUXER) += amr.o rawenc.o
OBJS-$(CONFIG_AMRNB_DEMUXER) += amr.o rawdec.o
--
2.32.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* [FFmpeg-devel] [PATCH 08/10] avformat/Makefile: Add missing amv-muxer->riffenc.o dependency
2022-01-06 9:14 [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
` (5 preceding siblings ...)
2022-01-06 17:15 ` [FFmpeg-devel] [PATCH 07/10] avformat/Makefile: Add missing alp-muxer->rawenc.o dependency Andreas Rheinhardt
@ 2022-01-06 17:15 ` Andreas Rheinhardt
2022-01-07 11:09 ` [FFmpeg-devel] [PATCH v2 08/18] configure: Add missing AMV muxer->riffenc dependency Andreas Rheinhardt
2022-01-06 17:15 ` [FFmpeg-devel] [PATCH 09/10] avformat/Makefile: Fix name of PhotoCD demuxer Andreas Rheinhardt
` (10 subsequent siblings)
17 siblings, 1 reply; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-06 17:15 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Andreas Rheinhardt
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
libavformat/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libavformat/Makefile b/libavformat/Makefile
index 1d0396ba3e..9f7ec6eba8 100644
--- a/libavformat/Makefile
+++ b/libavformat/Makefile
@@ -92,7 +92,7 @@ OBJS-$(CONFIG_AMR_DEMUXER) += amr.o rawdec.o
OBJS-$(CONFIG_AMR_MUXER) += amr.o rawenc.o
OBJS-$(CONFIG_AMRNB_DEMUXER) += amr.o rawdec.o
OBJS-$(CONFIG_AMRWB_DEMUXER) += amr.o rawdec.o
-OBJS-$(CONFIG_AMV_MUXER) += amvenc.o
+OBJS-$(CONFIG_AMV_MUXER) += amvenc.o riffenc.o
OBJS-$(CONFIG_ANM_DEMUXER) += anm.o
OBJS-$(CONFIG_APC_DEMUXER) += apc.o
OBJS-$(CONFIG_APE_DEMUXER) += ape.o apetag.o img2.o
--
2.32.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* [FFmpeg-devel] [PATCH 09/10] avformat/Makefile: Fix name of PhotoCD demuxer
2022-01-06 9:14 [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
` (6 preceding siblings ...)
2022-01-06 17:15 ` [FFmpeg-devel] [PATCH 08/10] avformat/Makefile: Add missing amv-muxer->riffenc.o dependency Andreas Rheinhardt
@ 2022-01-06 17:15 ` Andreas Rheinhardt
2022-01-06 17:31 ` Paul B Mahol
2022-01-06 17:15 ` [FFmpeg-devel] [PATCH 10/10] avformat/Makefile: Add entries for CRI, GEM and PGX image pipe demuxers Andreas Rheinhardt
` (9 subsequent siblings)
17 siblings, 1 reply; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-06 17:15 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Andreas Rheinhardt
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
libavformat/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libavformat/Makefile b/libavformat/Makefile
index 9f7ec6eba8..95972d5277 100644
--- a/libavformat/Makefile
+++ b/libavformat/Makefile
@@ -271,7 +271,7 @@ OBJS-$(CONFIG_IMAGE_PBM_PIPE_DEMUXER) += img2dec.o img2.o
OBJS-$(CONFIG_IMAGE_PCX_PIPE_DEMUXER) += img2dec.o img2.o
OBJS-$(CONFIG_IMAGE_PGMYUV_PIPE_DEMUXER) += img2dec.o img2.o
OBJS-$(CONFIG_IMAGE_PGM_PIPE_DEMUXER) += img2dec.o img2.o
-OBJS-$(CONFIG_IMAGE_PHOTOCD_DEMUXER) += img2dec.o img2.o
+OBJS-$(CONFIG_IMAGE_PHOTOCD_PIPE_DEMUXER) += img2dec.o img2.o
OBJS-$(CONFIG_IMAGE_PICTOR_PIPE_DEMUXER) += img2dec.o img2.o
OBJS-$(CONFIG_IMAGE_PNG_PIPE_DEMUXER) += img2dec.o img2.o
OBJS-$(CONFIG_IMAGE_PPM_PIPE_DEMUXER) += img2dec.o img2.o
--
2.32.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* [FFmpeg-devel] [PATCH 10/10] avformat/Makefile: Add entries for CRI, GEM and PGX image pipe demuxers
2022-01-06 9:14 [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
` (7 preceding siblings ...)
2022-01-06 17:15 ` [FFmpeg-devel] [PATCH 09/10] avformat/Makefile: Fix name of PhotoCD demuxer Andreas Rheinhardt
@ 2022-01-06 17:15 ` Andreas Rheinhardt
2022-01-06 18:47 ` [FFmpeg-devel] [PATCH 11/12] avformat/rtsp: #if unused functions away, fix -O0 compilation Andreas Rheinhardt
` (8 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-06 17:15 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Andreas Rheinhardt
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
libavformat/Makefile | 3 +++
1 file changed, 3 insertions(+)
diff --git a/libavformat/Makefile b/libavformat/Makefile
index 95972d5277..300a32bae1 100644
--- a/libavformat/Makefile
+++ b/libavformat/Makefile
@@ -259,9 +259,11 @@ OBJS-$(CONFIG_IMAGE2PIPE_MUXER) += img2enc.o img2.o
OBJS-$(CONFIG_IMAGE2_ALIAS_PIX_DEMUXER) += img2_alias_pix.o
OBJS-$(CONFIG_IMAGE2_BRENDER_PIX_DEMUXER) += img2_brender_pix.o
OBJS-$(CONFIG_IMAGE_BMP_PIPE_DEMUXER) += img2dec.o img2.o
+OBJS-$(CONFIG_IMAGE_CRI_PIPE_DEMUXER) += img2dec.o img2.o
OBJS-$(CONFIG_IMAGE_DDS_PIPE_DEMUXER) += img2dec.o img2.o
OBJS-$(CONFIG_IMAGE_DPX_PIPE_DEMUXER) += img2dec.o img2.o
OBJS-$(CONFIG_IMAGE_EXR_PIPE_DEMUXER) += img2dec.o img2.o
+OBJS-$(CONFIG_IMAGE_GEM_PIPE_DEMUXER) += img2dec.o img2.o
OBJS-$(CONFIG_IMAGE_GIF_PIPE_DEMUXER) += img2dec.o img2.o
OBJS-$(CONFIG_IMAGE_J2K_PIPE_DEMUXER) += img2dec.o img2.o
OBJS-$(CONFIG_IMAGE_JPEG_PIPE_DEMUXER) += img2dec.o img2.o
@@ -271,6 +273,7 @@ OBJS-$(CONFIG_IMAGE_PBM_PIPE_DEMUXER) += img2dec.o img2.o
OBJS-$(CONFIG_IMAGE_PCX_PIPE_DEMUXER) += img2dec.o img2.o
OBJS-$(CONFIG_IMAGE_PGMYUV_PIPE_DEMUXER) += img2dec.o img2.o
OBJS-$(CONFIG_IMAGE_PGM_PIPE_DEMUXER) += img2dec.o img2.o
+OBJS-$(CONFIG_IMAGE_PGX_PIPE_DEMUXER) += img2dec.o img2.o
OBJS-$(CONFIG_IMAGE_PHOTOCD_PIPE_DEMUXER) += img2dec.o img2.o
OBJS-$(CONFIG_IMAGE_PICTOR_PIPE_DEMUXER) += img2dec.o img2.o
OBJS-$(CONFIG_IMAGE_PNG_PIPE_DEMUXER) += img2dec.o img2.o
--
2.32.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [FFmpeg-devel] [PATCH 09/10] avformat/Makefile: Fix name of PhotoCD demuxer
2022-01-06 17:15 ` [FFmpeg-devel] [PATCH 09/10] avformat/Makefile: Fix name of PhotoCD demuxer Andreas Rheinhardt
@ 2022-01-06 17:31 ` Paul B Mahol
0 siblings, 0 replies; 22+ messages in thread
From: Paul B Mahol @ 2022-01-06 17:31 UTC (permalink / raw)
To: FFmpeg development discussions and patches; +Cc: Andreas Rheinhardt
LGTM
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* [FFmpeg-devel] [PATCH 11/12] avformat/rtsp: #if unused functions away, fix -O0 compilation
2022-01-06 9:14 [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
` (8 preceding siblings ...)
2022-01-06 17:15 ` [FFmpeg-devel] [PATCH 10/10] avformat/Makefile: Add entries for CRI, GEM and PGX image pipe demuxers Andreas Rheinhardt
@ 2022-01-06 18:47 ` Andreas Rheinhardt
2022-01-06 18:47 ` [FFmpeg-devel] [PATCH 12/12] avformat/matroskaenc: Fix build with only WebM muxer enabled Andreas Rheinhardt
` (7 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-06 18:47 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Andreas Rheinhardt
parse_rtsp_message() is only called if the rtsp demuxer is enabled
and so it is normally compiled away if said demuxer is disabled.
Yet this does not happen when compiling with -O0 and this leads
to a linking failure because parse_rtsp_message() calls functions
that may not be available if the rtsp demuxer is disabled.
Fix this by properly #if'ing the unused functions away.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
libavformat/rtsp.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c
index 1e091c7380..70c18941ca 100644
--- a/libavformat/rtsp.c
+++ b/libavformat/rtsp.c
@@ -246,6 +246,7 @@ static void finalize_rtp_handler_init(AVFormatContext *s, RTSPStream *rtsp_st,
}
}
+#if CONFIG_RTSP_DEMUXER
static int init_satip_stream(AVFormatContext *s)
{
RTSPState *rt = s->priv_data;
@@ -274,6 +275,7 @@ static int init_satip_stream(AVFormatContext *s)
}
return 0;
}
+#endif
/* parse the rtpmap description: <codec_name>/<clock_rate>[/<other params>] */
static int sdp_parse_rtpmap(AVFormatContext *s,
@@ -2006,6 +2008,7 @@ redirect:
#endif /* CONFIG_RTSP_DEMUXER || CONFIG_RTSP_MUXER */
#if CONFIG_RTPDEC
+#if CONFIG_RTSP_DEMUXER
static int parse_rtsp_message(AVFormatContext *s)
{
RTSPState *rt = s->priv_data;
@@ -2028,6 +2031,7 @@ static int parse_rtsp_message(AVFormatContext *s)
return 0;
}
+#endif
static int udp_read_packet(AVFormatContext *s, RTSPStream **prtsp_st,
uint8_t *buf, int buf_size, int64_t wait_end)
--
2.32.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* [FFmpeg-devel] [PATCH 12/12] avformat/matroskaenc: Fix build with only WebM muxer enabled
2022-01-06 9:14 [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
` (9 preceding siblings ...)
2022-01-06 18:47 ` [FFmpeg-devel] [PATCH 11/12] avformat/rtsp: #if unused functions away, fix -O0 compilation Andreas Rheinhardt
@ 2022-01-06 18:47 ` Andreas Rheinhardt
2022-01-06 20:07 ` [FFmpeg-devel] [PATCH 13/14] configure: Let decklink indev suggest libzvbi Andreas Rheinhardt
` (6 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-06 18:47 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Andreas Rheinhardt
In this case ff_isom_put_dvcc_dvvc() might not be available, leading
to linking failures. Given that WebM currently doesn't support DOVI,
this is fixed by #if'ing the offending code away if the Matroska
muxer is not enabled.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
libavformat/matroskaenc.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c
index 5cc59dc9f8..6ba1dadee9 100644
--- a/libavformat/matroskaenc.c
+++ b/libavformat/matroskaenc.c
@@ -1123,6 +1123,7 @@ static int mkv_write_stereo_mode(AVFormatContext *s, AVIOContext *pb,
static void mkv_write_dovi(AVFormatContext *s, AVIOContext *pb, AVStream *st)
{
+#if CONFIG_MATROSKA_MUXER
AVDOVIDecoderConfigurationRecord *dovi = (AVDOVIDecoderConfigurationRecord *)
av_stream_get_side_data(st, AV_PKT_DATA_DOVI_CONF, NULL);
@@ -1150,6 +1151,7 @@ static void mkv_write_dovi(AVFormatContext *s, AVIOContext *pb, AVStream *st)
end_ebml_master(pb, mapping);
}
+#endif
}
static int mkv_write_track(AVFormatContext *s, MatroskaMuxContext *mkv,
--
2.32.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* [FFmpeg-devel] [PATCH 13/14] configure: Let decklink indev suggest libzvbi
2022-01-06 9:14 [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
` (10 preceding siblings ...)
2022-01-06 18:47 ` [FFmpeg-devel] [PATCH 12/12] avformat/matroskaenc: Fix build with only WebM muxer enabled Andreas Rheinhardt
@ 2022-01-06 20:07 ` Andreas Rheinhardt
2022-01-07 19:58 ` Marton Balint
2022-01-06 20:07 ` [FFmpeg-devel] [PATCH 14/14] avdevice/iec61883: #if unused code away, fix -O0 compilation Andreas Rheinhardt
` (5 subsequent siblings)
17 siblings, 1 reply; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-06 20:07 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Andreas Rheinhardt
Fixes build errors if libzvbi is enabled while libzvbi_teletextdec
is disabled.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
configure | 1 +
1 file changed, 1 insertion(+)
diff --git a/configure b/configure
index 1225faf15a..11342d5cec 100755
--- a/configure
+++ b/configure
@@ -3500,6 +3500,7 @@ caca_outdev_deps="libcaca"
decklink_deps_any="libdl LoadLibrary"
decklink_indev_deps="decklink threads"
decklink_indev_extralibs="-lstdc++"
+decklink_indev_suggest="libzvbi"
decklink_outdev_deps="decklink threads"
decklink_outdev_suggest="libklvanc"
decklink_outdev_extralibs="-lstdc++"
--
2.32.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* [FFmpeg-devel] [PATCH 14/14] avdevice/iec61883: #if unused code away, fix -O0 compilation
2022-01-06 9:14 [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
` (11 preceding siblings ...)
2022-01-06 20:07 ` [FFmpeg-devel] [PATCH 13/14] configure: Let decklink indev suggest libzvbi Andreas Rheinhardt
@ 2022-01-06 20:07 ` Andreas Rheinhardt
2022-01-06 20:51 ` [FFmpeg-devel] [PATCH 15/15] avformat/img2dec: Don't include disabled demuxers Andreas Rheinhardt
` (4 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-06 20:07 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Andreas Rheinhardt
iec61883_parse_queue_hdv() is only called when the mpegts-demuxer
is available and can be optimized away when not. Yet this
optimization is not a given and i fails with e.g. GCC 11 when
using -O0 in which case one will get a compilation error
because the call to the unavailable avpriv_mpegts_parse_packet()
is not optimized away. Therefore #if the offending code away
in this case.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
libavdevice/iec61883.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/libavdevice/iec61883.c b/libavdevice/iec61883.c
index e7b71c757a..72e14abff2 100644
--- a/libavdevice/iec61883.c
+++ b/libavdevice/iec61883.c
@@ -220,6 +220,7 @@ static int iec61883_parse_queue_dv(struct iec61883_data *dv, AVPacket *pkt)
static int iec61883_parse_queue_hdv(struct iec61883_data *dv, AVPacket *pkt)
{
+#if CONFIG_MPEGTS_DEMUXER
DVPacket *packet;
int size;
@@ -235,7 +236,7 @@ static int iec61883_parse_queue_hdv(struct iec61883_data *dv, AVPacket *pkt)
if (size > 0)
return size;
}
-
+#endif
return -1;
}
--
2.32.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* [FFmpeg-devel] [PATCH 15/15] avformat/img2dec: Don't include disabled demuxers
2022-01-06 9:14 [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
` (12 preceding siblings ...)
2022-01-06 20:07 ` [FFmpeg-devel] [PATCH 14/14] avdevice/iec61883: #if unused code away, fix -O0 compilation Andreas Rheinhardt
@ 2022-01-06 20:51 ` Andreas Rheinhardt
2022-01-07 10:53 ` [FFmpeg-devel] [PATCH 16/18] avformat/matroskaenc: Move AAC extradata check to other audio checks Andreas Rheinhardt
` (3 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-06 20:51 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Andreas Rheinhardt
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
libavformat/img2dec.c | 73 +++++++++++++++++++++++++------------------
1 file changed, 42 insertions(+), 31 deletions(-)
diff --git a/libavformat/img2dec.c b/libavformat/img2dec.c
index a6084ceef0..4d5ac51b53 100644
--- a/libavformat/img2dec.c
+++ b/libavformat/img2dec.c
@@ -1130,7 +1130,8 @@ static int gem_probe(const AVProbeData *p)
return ret;
}
-#define IMAGEAUTO_DEMUXER(imgname, codecid)\
+#define IMAGEAUTO_DEMUXER_0(imgname, codecid)
+#define IMAGEAUTO_DEMUXER_1(imgname, codecid)\
const AVInputFormat ff_image_ ## imgname ## _pipe_demuxer = {\
.name = AV_STRINGIFY(imgname) "_pipe",\
.long_name = NULL_IF_CONFIG_SMALL("piped " AV_STRINGIFY(imgname) " sequence"),\
@@ -1143,33 +1144,43 @@ const AVInputFormat ff_image_ ## imgname ## _pipe_demuxer = {\
.raw_codec_id = codecid,\
};
-IMAGEAUTO_DEMUXER(bmp, AV_CODEC_ID_BMP)
-IMAGEAUTO_DEMUXER(cri, AV_CODEC_ID_CRI)
-IMAGEAUTO_DEMUXER(dds, AV_CODEC_ID_DDS)
-IMAGEAUTO_DEMUXER(dpx, AV_CODEC_ID_DPX)
-IMAGEAUTO_DEMUXER(exr, AV_CODEC_ID_EXR)
-IMAGEAUTO_DEMUXER(gem, AV_CODEC_ID_GEM)
-IMAGEAUTO_DEMUXER(gif, AV_CODEC_ID_GIF)
-IMAGEAUTO_DEMUXER(j2k, AV_CODEC_ID_JPEG2000)
-IMAGEAUTO_DEMUXER(jpeg, AV_CODEC_ID_MJPEG)
-IMAGEAUTO_DEMUXER(jpegls, AV_CODEC_ID_JPEGLS)
-IMAGEAUTO_DEMUXER(pam, AV_CODEC_ID_PAM)
-IMAGEAUTO_DEMUXER(pbm, AV_CODEC_ID_PBM)
-IMAGEAUTO_DEMUXER(pcx, AV_CODEC_ID_PCX)
-IMAGEAUTO_DEMUXER(pgm, AV_CODEC_ID_PGM)
-IMAGEAUTO_DEMUXER(pgmyuv, AV_CODEC_ID_PGMYUV)
-IMAGEAUTO_DEMUXER(pgx, AV_CODEC_ID_PGX)
-IMAGEAUTO_DEMUXER(photocd, AV_CODEC_ID_PHOTOCD)
-IMAGEAUTO_DEMUXER(pictor, AV_CODEC_ID_PICTOR)
-IMAGEAUTO_DEMUXER(png, AV_CODEC_ID_PNG)
-IMAGEAUTO_DEMUXER(ppm, AV_CODEC_ID_PPM)
-IMAGEAUTO_DEMUXER(psd, AV_CODEC_ID_PSD)
-IMAGEAUTO_DEMUXER(qdraw, AV_CODEC_ID_QDRAW)
-IMAGEAUTO_DEMUXER(sgi, AV_CODEC_ID_SGI)
-IMAGEAUTO_DEMUXER(sunrast, AV_CODEC_ID_SUNRAST)
-IMAGEAUTO_DEMUXER(svg, AV_CODEC_ID_SVG)
-IMAGEAUTO_DEMUXER(tiff, AV_CODEC_ID_TIFF)
-IMAGEAUTO_DEMUXER(webp, AV_CODEC_ID_WEBP)
-IMAGEAUTO_DEMUXER(xbm, AV_CODEC_ID_XBM)
-IMAGEAUTO_DEMUXER(xpm, AV_CODEC_ID_XPM)
-IMAGEAUTO_DEMUXER(xwd, AV_CODEC_ID_XWD)
+#define IMAGEAUTO_DEMUXER_2(imgname, codecid, enabled) \
+ IMAGEAUTO_DEMUXER_ ## enabled(imgname, codecid)
+#define IMAGEAUTO_DEMUXER_3(imgname, codecid, config) \
+ IMAGEAUTO_DEMUXER_2(imgname, codecid, config)
+#define IMAGEAUTO_DEMUXER_EXT(imgname, codecid, uppercase_name) \
+ IMAGEAUTO_DEMUXER_3(imgname, AV_CODEC_ID_ ## codecid, \
+ CONFIG_IMAGE_ ## uppercase_name ## _PIPE_DEMUXER)
+#define IMAGEAUTO_DEMUXER(imgname, codecid) \
+ IMAGEAUTO_DEMUXER_EXT(imgname, codecid, codecid)
+
+IMAGEAUTO_DEMUXER(bmp, BMP)
+IMAGEAUTO_DEMUXER(cri, CRI)
+IMAGEAUTO_DEMUXER(dds, DDS)
+IMAGEAUTO_DEMUXER(dpx, DPX)
+IMAGEAUTO_DEMUXER(exr, EXR)
+IMAGEAUTO_DEMUXER(gem, GEM)
+IMAGEAUTO_DEMUXER(gif, GIF)
+IMAGEAUTO_DEMUXER_EXT(j2k, JPEG2000, J2K)
+IMAGEAUTO_DEMUXER_EXT(jpeg, MJPEG, JPEG)
+IMAGEAUTO_DEMUXER(jpegls, JPEGLS)
+IMAGEAUTO_DEMUXER(pam, PAM)
+IMAGEAUTO_DEMUXER(pbm, PBM)
+IMAGEAUTO_DEMUXER(pcx, PCX)
+IMAGEAUTO_DEMUXER(pgm, PGM)
+IMAGEAUTO_DEMUXER(pgmyuv, PGMYUV)
+IMAGEAUTO_DEMUXER(pgx, PGX)
+IMAGEAUTO_DEMUXER(photocd, PHOTOCD)
+IMAGEAUTO_DEMUXER(pictor, PICTOR)
+IMAGEAUTO_DEMUXER(png, PNG)
+IMAGEAUTO_DEMUXER(ppm, PPM)
+IMAGEAUTO_DEMUXER(psd, PSD)
+IMAGEAUTO_DEMUXER(qdraw, QDRAW)
+IMAGEAUTO_DEMUXER(sgi, SGI)
+IMAGEAUTO_DEMUXER(sunrast, SUNRAST)
+IMAGEAUTO_DEMUXER(svg, SVG)
+IMAGEAUTO_DEMUXER(tiff, TIFF)
+IMAGEAUTO_DEMUXER(webp, WEBP)
+IMAGEAUTO_DEMUXER(xbm, XBM)
+IMAGEAUTO_DEMUXER(xpm, XPM)
+IMAGEAUTO_DEMUXER(xwd, XWD)
--
2.32.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* [FFmpeg-devel] [PATCH 16/18] avformat/matroskaenc: Move AAC extradata check to other audio checks
2022-01-06 9:14 [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
` (13 preceding siblings ...)
2022-01-06 20:51 ` [FFmpeg-devel] [PATCH 15/15] avformat/img2dec: Don't include disabled demuxers Andreas Rheinhardt
@ 2022-01-07 10:53 ` Andreas Rheinhardt
2022-01-07 10:53 ` [FFmpeg-devel] [PATCH 17/18] fate/subtitles: Fix check for fate-binsub-mksenc test Andreas Rheinhardt
` (2 subsequent siblings)
17 siblings, 0 replies; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-07 10:53 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Andreas Rheinhardt
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
libavformat/matroskaenc.c | 13 ++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)
diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c
index 6ba1dadee9..303aa1ce50 100644
--- a/libavformat/matroskaenc.c
+++ b/libavformat/matroskaenc.c
@@ -1173,13 +1173,6 @@ static int mkv_write_track(AVFormatContext *s, MatroskaMuxContext *mkv,
if (par->codec_type == AVMEDIA_TYPE_ATTACHMENT)
return 0;
- if (par->codec_id == AV_CODEC_ID_AAC) {
- ret = get_aac_sample_rates(s, mkv, par->extradata, par->extradata_size,
- &sample_rate, &output_sample_rate);
- if (ret < 0)
- return ret;
- }
-
track_master = start_ebml_master(pb, MATROSKA_ID_TRACKENTRY, 0);
put_ebml_uint(pb, MATROSKA_ID_TRACKNUMBER, track->track_num);
put_ebml_uid (pb, MATROSKA_ID_TRACKUID, track->uid);
@@ -1377,6 +1370,12 @@ static int mkv_write_track(AVFormatContext *s, MatroskaMuxContext *mkv,
}
if (par->codec_id == AV_CODEC_ID_OPUS)
put_ebml_uint(pb, MATROSKA_ID_SEEKPREROLL, OPUS_SEEK_PREROLL);
+ else if (par->codec_id == AV_CODEC_ID_AAC) {
+ ret = get_aac_sample_rates(s, mkv, par->extradata, par->extradata_size,
+ &sample_rate, &output_sample_rate);
+ if (ret < 0)
+ return ret;
+ }
put_ebml_uint(pb, MATROSKA_ID_TRACKTYPE, MATROSKA_TRACK_TYPE_AUDIO);
--
2.32.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* [FFmpeg-devel] [PATCH 17/18] fate/subtitles: Fix check for fate-binsub-mksenc test
2022-01-06 9:14 [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
` (14 preceding siblings ...)
2022-01-07 10:53 ` [FFmpeg-devel] [PATCH 16/18] avformat/matroskaenc: Move AAC extradata check to other audio checks Andreas Rheinhardt
@ 2022-01-07 10:53 ` Andreas Rheinhardt
2022-01-07 10:53 ` [FFmpeg-devel] [PATCH 18/18] avformat/matroskaenc: Disable MKV-only code if MKV muxer is disabled Andreas Rheinhardt
2022-01-08 10:18 ` [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
17 siblings, 0 replies; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-07 10:53 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Andreas Rheinhardt
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
tests/fate/subtitles.mak | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/fate/subtitles.mak b/tests/fate/subtitles.mak
index 0c89adb0d1..8375cf2898 100644
--- a/tests/fate/subtitles.mak
+++ b/tests/fate/subtitles.mak
@@ -16,7 +16,7 @@ fate-sub-ass-to-ass-transcode: CMD = fmtstdout ass -i $(TARGET_SAMPLES)/sub/1ede
FATE_SUBTITLES_ASS-$(CONFIG_ASS_DEMUXER) += fate-sub-ssa-to-ass-remux
fate-sub-ssa-to-ass-remux: CMD = fmtstdout ass -i $(TARGET_SAMPLES)/sub/a9-misc.ssa -c copy
-FATE_SUBTITLES-$(call ALLYES, ASS_DEMUXER, MATROSKA_MUXER) += fate-binsub-mksenc
+FATE_SUBTITLES-$(call ALLYES, ASS_DEMUXER MATROSKA_MUXER) += fate-binsub-mksenc
fate-binsub-mksenc: CMD = md5pipe -i $(TARGET_SAMPLES)/sub/1ededcbd7b.ass -c copy -f matroska -flags +bitexact -fflags +bitexact
FATE_SUBTITLES_ASS-$(call DEMDEC, JACOSUB, JACOSUB) += fate-sub-jacosub
--
2.32.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* [FFmpeg-devel] [PATCH 18/18] avformat/matroskaenc: Disable MKV-only code if MKV muxer is disabled
2022-01-06 9:14 [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
` (15 preceding siblings ...)
2022-01-07 10:53 ` [FFmpeg-devel] [PATCH 17/18] fate/subtitles: Fix check for fate-binsub-mksenc test Andreas Rheinhardt
@ 2022-01-07 10:53 ` Andreas Rheinhardt
2022-01-08 10:18 ` [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
17 siblings, 0 replies; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-07 10:53 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Andreas Rheinhardt
The Matroska muxer has quite a lot of dependencies and lots of them
are unnecessary for WebM. By disabling the Matroska-only code
at compile time one can get rid of them.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
configure | 1 -
libavformat/Makefile | 4 +-
libavformat/matroskaenc.c | 97 ++++++++++++++++++++++++---------------
3 files changed, 60 insertions(+), 42 deletions(-)
diff --git a/configure b/configure
index 11342d5cec..a9e9d31bc8 100755
--- a/configure
+++ b/configure
@@ -3478,7 +3478,6 @@ w64_muxer_select="wav_muxer"
wav_demuxer_select="riffdec"
wav_muxer_select="riffenc"
webm_chunk_muxer_select="webm_muxer"
-webm_muxer_select="mpeg4audio riffenc"
webm_dash_manifest_demuxer_select="matroska_demuxer"
wtv_demuxer_select="mpegts_demuxer riffdec"
wtv_muxer_select="mpegts_muxer riffenc"
diff --git a/libavformat/Makefile b/libavformat/Makefile
index 300a32bae1..c5b09b6a51 100644
--- a/libavformat/Makefile
+++ b/libavformat/Makefile
@@ -585,9 +585,7 @@ OBJS-$(CONFIG_WAV_DEMUXER) += wavdec.o pcm.o
OBJS-$(CONFIG_WAV_MUXER) += wavenc.o
OBJS-$(CONFIG_WC3_DEMUXER) += wc3movie.o
OBJS-$(CONFIG_WEBM_MUXER) += matroskaenc.o matroska.o \
- av1.o avc.o hevc.o isom_tags.o \
- flacenc_header.o avlanguage.o \
- wv.o vorbiscomment.o
+ av1.o avlanguage.o
OBJS-$(CONFIG_WEBM_DASH_MANIFEST_MUXER) += webmdashenc.o
OBJS-$(CONFIG_WEBM_CHUNK_MUXER) += webm_chunk.o
OBJS-$(CONFIG_WEBP_MUXER) += webpenc.o
diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c
index 303aa1ce50..152312102a 100644
--- a/libavformat/matroskaenc.c
+++ b/libavformat/matroskaenc.c
@@ -21,6 +21,8 @@
#include <stdint.h>
+#include "config.h"
+
#include "av1.h"
#include "avc.h"
#include "hevc.h"
@@ -59,6 +61,11 @@
* Info, Tracks, Chapters, Attachments, Tags (potentially twice) and Cues */
#define MAX_SEEKHEAD_ENTRIES 7
+#define MODE_MATROSKAv2 0x01
+#define MODE_WEBM 0x02
+
+#define IS_WEBM(mkv) (CONFIG_WEBM_MUXER && CONFIG_MATROSKA_MUXER ? \
+ ((mkv)->mode == MODE_WEBM) : CONFIG_WEBM_MUXER)
#define IS_SEEKABLE(pb, mkv) (((pb)->seekable & AVIO_SEEKABLE_NORMAL) && \
!(mkv)->is_live)
@@ -118,9 +125,6 @@ typedef struct mkv_track {
int64_t ts_offset;
} mkv_track;
-#define MODE_MATROSKAv2 0x01
-#define MODE_WEBM 0x02
-
typedef struct MatroskaMuxContext {
const AVClass *class;
int mode;
@@ -640,6 +644,7 @@ static int put_xiph_codecpriv(AVFormatContext *s, AVIOContext *pb,
return 0;
}
+#if CONFIG_MATROSKA_MUXER
static int put_wv_codecpriv(AVIOContext *pb, const AVCodecParameters *par)
{
if (par->extradata && par->extradata_size == 2)
@@ -717,6 +722,7 @@ static int get_aac_sample_rates(AVFormatContext *s, MatroskaMuxContext *mkv,
}
return 0;
}
+#endif
static int mkv_write_native_codecprivate(AVFormatContext *s, AVIOContext *pb,
const AVCodecParameters *par,
@@ -726,6 +732,14 @@ static int mkv_write_native_codecprivate(AVFormatContext *s, AVIOContext *pb,
case AV_CODEC_ID_VORBIS:
case AV_CODEC_ID_THEORA:
return put_xiph_codecpriv(s, dyn_cp, par);
+ case AV_CODEC_ID_AV1:
+ if (par->extradata_size)
+ return ff_isom_write_av1c(dyn_cp, par->extradata,
+ par->extradata_size);
+ else
+ put_ebml_void(pb, 4 + 3);
+ break;
+#if CONFIG_MATROSKA_MUXER
case AV_CODEC_ID_FLAC:
return put_flac_codecpriv(s, dyn_cp, par);
case AV_CODEC_ID_WAVPACK:
@@ -736,13 +750,6 @@ static int mkv_write_native_codecprivate(AVFormatContext *s, AVIOContext *pb,
case AV_CODEC_ID_HEVC:
return ff_isom_write_hvcc(dyn_cp, par->extradata,
par->extradata_size, 0);
- case AV_CODEC_ID_AV1:
- if (par->extradata_size)
- return ff_isom_write_av1c(dyn_cp, par->extradata,
- par->extradata_size);
- else
- put_ebml_void(pb, 4 + 3);
- break;
case AV_CODEC_ID_ALAC:
if (par->extradata_size < 36) {
av_log(s, AV_LOG_ERROR,
@@ -759,8 +766,9 @@ static int mkv_write_native_codecprivate(AVFormatContext *s, AVIOContext *pb,
else
put_ebml_void(pb, MAX_PCE_SIZE + 2 + 4);
break;
+#endif
default:
- if (par->codec_id == AV_CODEC_ID_PRORES &&
+ if (CONFIG_MATROSKA_MUXER && par->codec_id == AV_CODEC_ID_PRORES &&
ff_codec_get_id(ff_codec_movvideo_tags, par->codec_tag) == AV_CODEC_ID_PRORES) {
avio_wl32(dyn_cp, par->codec_tag);
} else if (par->extradata_size && par->codec_id != AV_CODEC_ID_TTA)
@@ -774,8 +782,8 @@ static int mkv_write_codecprivate(AVFormatContext *s, AVIOContext *pb,
AVCodecParameters *par,
int native_id, int qt_id)
{
+ MatroskaMuxContext av_unused *const mkv = s->priv_data;
AVIOContext *dyn_cp;
- MatroskaMuxContext *mkv = s->priv_data;
uint8_t *codecpriv;
int ret, codecpriv_size;
@@ -785,6 +793,7 @@ static int mkv_write_codecprivate(AVFormatContext *s, AVIOContext *pb,
if (native_id) {
ret = mkv_write_native_codecprivate(s, pb, par, dyn_cp);
+#if CONFIG_MATROSKA_MUXER
} else if (par->codec_type == AVMEDIA_TYPE_VIDEO) {
if (qt_id) {
if (!par->codec_tag)
@@ -826,6 +835,7 @@ static int mkv_write_codecprivate(AVFormatContext *s, AVIOContext *pb,
par->codec_tag = tag;
ff_put_wav_header(s, dyn_cp, par, FF_PUT_WAV_HEADER_FORCE_WAVEFORMATEX);
+#endif
}
if (ret >= 0) {
@@ -991,7 +1001,7 @@ static void mkv_write_video_projection(AVFormatContext *s, AVIOContext *pb,
end_ebml_master(pb, projection);
}
-static void mkv_write_field_order(AVIOContext *pb, int mode,
+static void mkv_write_field_order(AVIOContext *pb, int is_webm,
enum AVFieldOrder field_order)
{
switch (field_order) {
@@ -1007,7 +1017,7 @@ static void mkv_write_field_order(AVIOContext *pb, int mode,
case AV_FIELD_BT:
put_ebml_uint(pb, MATROSKA_ID_VIDEOFLAGINTERLACED,
MATROSKA_VIDEO_INTERLACE_FLAG_INTERLACED);
- if (mode != MODE_WEBM) {
+ if (!is_webm) {
switch (field_order) {
case AV_FIELD_TT:
put_ebml_uint(pb, MATROSKA_ID_VIDEOFIELDORDER,
@@ -1031,7 +1041,8 @@ static void mkv_write_field_order(AVIOContext *pb, int mode,
}
static int mkv_write_stereo_mode(AVFormatContext *s, AVIOContext *pb,
- AVStream *st, int mode, int *h_width, int *h_height)
+ AVStream *st, int is_webm,
+ int *h_width, int *h_height)
{
const AVDictionaryEntry *tag;
MatroskaVideoStereoModeType format = MATROSKA_VIDEO_STEREOMODE_TYPE_NB;
@@ -1106,7 +1117,7 @@ static int mkv_write_stereo_mode(AVFormatContext *s, AVIOContext *pb,
return 0;
// if webm, do not write unsupported modes
- if ((mode == MODE_WEBM &&
+ if ((is_webm &&
format > MATROSKA_VIDEO_STEREOMODE_TYPE_TOP_BOTTOM &&
format != MATROSKA_VIDEO_STEREOMODE_TYPE_RIGHT_LEFT)
|| format >= MATROSKA_VIDEO_STEREOMODE_TYPE_NB) {
@@ -1192,7 +1203,7 @@ static int mkv_write_track(AVFormatContext *s, MatroskaMuxContext *mkv,
if (st->disposition & AV_DISPOSITION_FORCED)
put_ebml_uint(pb, MATROSKA_ID_TRACKFLAGFORCED, 1);
- if (mkv->mode == MODE_WEBM) {
+ if (IS_WEBM(mkv)) {
const char *codec_id;
if (par->codec_type != AVMEDIA_TYPE_SUBTITLE) {
for (j = 0; ff_webm_codec_tags[j].id != AV_CODEC_ID_NONE; j++) {
@@ -1271,7 +1282,7 @@ static int mkv_write_track(AVFormatContext *s, MatroskaMuxContext *mkv,
&& av_cmp_q(av_inv_q(st->r_frame_rate), st->time_base) > 0)
put_ebml_uint(pb, MATROSKA_ID_TRACKDEFAULTDURATION, 1000000000LL * st->r_frame_rate.den / st->r_frame_rate.num);
- if (!native_id &&
+ if (CONFIG_MATROSKA_MUXER && !native_id &&
ff_codec_get_tag(ff_codec_movvideo_tags, par->codec_id) &&
((!ff_codec_get_tag(ff_codec_bmp_tags, par->codec_id) && par->codec_id != AV_CODEC_ID_RAWVIDEO) ||
par->codec_id == AV_CODEC_ID_SVQ1 ||
@@ -1293,11 +1304,11 @@ static int mkv_write_track(AVFormatContext *s, MatroskaMuxContext *mkv,
put_ebml_uint (pb, MATROSKA_ID_VIDEOPIXELWIDTH , par->width);
put_ebml_uint (pb, MATROSKA_ID_VIDEOPIXELHEIGHT, par->height);
- mkv_write_field_order(pb, mkv->mode, par->field_order);
+ mkv_write_field_order(pb, IS_WEBM(mkv), par->field_order);
// check both side data and metadata for stereo information,
// write the result to the bitstream if any is found
- ret = mkv_write_stereo_mode(s, pb, st, mkv->mode,
+ ret = mkv_write_stereo_mode(s, pb, st, IS_WEBM(mkv),
&display_width_div,
&display_height_div);
if (ret < 0)
@@ -1318,7 +1329,7 @@ static int mkv_write_track(AVFormatContext *s, MatroskaMuxContext *mkv,
return AVERROR(EINVAL);
}
if (d_width != par->width || display_width_div != 1 || display_height_div != 1) {
- if (mkv->mode == MODE_WEBM || display_width_div != 1 || display_height_div != 1) {
+ if (IS_WEBM(mkv) || display_width_div != 1 || display_height_div != 1) {
put_ebml_uint(pb, MATROSKA_ID_VIDEODISPLAYWIDTH , d_width / display_width_div);
put_ebml_uint(pb, MATROSKA_ID_VIDEODISPLAYHEIGHT, par->height / display_height_div);
} else {
@@ -1335,7 +1346,7 @@ static int mkv_write_track(AVFormatContext *s, MatroskaMuxContext *mkv,
} else if (display_width_div != 1 || display_height_div != 1) {
put_ebml_uint(pb, MATROSKA_ID_VIDEODISPLAYWIDTH , par->width / display_width_div);
put_ebml_uint(pb, MATROSKA_ID_VIDEODISPLAYHEIGHT, par->height / display_height_div);
- } else if (mkv->mode != MODE_WEBM)
+ } else if (!IS_WEBM(mkv))
put_ebml_uint(pb, MATROSKA_ID_VIDEODISPLAYUNIT, MATROSKA_VIDEO_DISPLAYUNIT_UNKNOWN);
if (par->codec_id == AV_CODEC_ID_RAWVIDEO) {
@@ -1347,9 +1358,8 @@ static int mkv_write_track(AVFormatContext *s, MatroskaMuxContext *mkv,
end_ebml_master(pb, subinfo);
- if (mkv->mode != MODE_WEBM) {
+ if (!IS_WEBM(mkv))
mkv_write_dovi(s, pb, st);
- }
break;
@@ -1370,12 +1380,14 @@ static int mkv_write_track(AVFormatContext *s, MatroskaMuxContext *mkv,
}
if (par->codec_id == AV_CODEC_ID_OPUS)
put_ebml_uint(pb, MATROSKA_ID_SEEKPREROLL, OPUS_SEEK_PREROLL);
+#if CONFIG_MATROSKA_MUXER
else if (par->codec_id == AV_CODEC_ID_AAC) {
ret = get_aac_sample_rates(s, mkv, par->extradata, par->extradata_size,
&sample_rate, &output_sample_rate);
if (ret < 0)
return ret;
}
+#endif
put_ebml_uint(pb, MATROSKA_ID_TRACKTYPE, MATROSKA_TRACK_TYPE_AUDIO);
@@ -1410,10 +1422,10 @@ static int mkv_write_track(AVFormatContext *s, MatroskaMuxContext *mkv,
av_log(s, AV_LOG_ERROR, "Subtitle codec %d is not supported.\n", par->codec_id);
return AVERROR(ENOSYS);
}
- if (mkv->mode != MODE_WEBM && st->disposition & AV_DISPOSITION_DESCRIPTIONS)
+ if (!IS_WEBM(mkv) && st->disposition & AV_DISPOSITION_DESCRIPTIONS)
put_ebml_uint(pb, MATROSKA_ID_TRACKFLAGTEXTDESCRIPTIONS, 1);
- if (mkv->mode != MODE_WEBM || par->codec_id != AV_CODEC_ID_WEBVTT)
+ if (!IS_WEBM(mkv) || par->codec_id != AV_CODEC_ID_WEBVTT)
native_id = MATROSKA_TRACK_TYPE_SUBTITLE;
put_ebml_uint(pb, MATROSKA_ID_TRACKTYPE, native_id);
@@ -1423,7 +1435,7 @@ static int mkv_write_track(AVFormatContext *s, MatroskaMuxContext *mkv,
return AVERROR(EINVAL);
}
- if (mkv->mode != MODE_WEBM || par->codec_id != AV_CODEC_ID_WEBVTT) {
+ if (!IS_WEBM(mkv) || par->codec_id != AV_CODEC_ID_WEBVTT) {
track->codecpriv_offset = avio_tell(pb);
ret = mkv_write_codecprivate(s, pb, par, native_id, qt_id);
if (ret < 0)
@@ -1642,7 +1654,7 @@ static int mkv_write_tags(AVFormatContext *s)
}
}
- if (mkv->nb_attachments && mkv->mode != MODE_WEBM) {
+ if (mkv->nb_attachments && !IS_WEBM(mkv)) {
for (i = 0; i < s->nb_streams; i++) {
const mkv_track *track = &mkv->tracks[i];
const AVStream *st = s->streams[i];
@@ -1695,7 +1707,7 @@ static int mkv_write_chapters(AVFormatContext *s)
return ret;
editionentry = start_ebml_master(dyn_cp, MATROSKA_ID_EDITIONENTRY, 0);
- if (mkv->mode != MODE_WEBM) {
+ if (!IS_WEBM(mkv)) {
put_ebml_uint(dyn_cp, MATROSKA_ID_EDITIONFLAGDEFAULT, 1);
/* If mkv_write_tags() has already been called, then any tags
* corresponding to chapters will be put into a new Tags element. */
@@ -1855,7 +1867,7 @@ static int mkv_write_header(AVFormatContext *s)
int ret, i, version = 2;
int64_t creation_time;
- if (mkv->mode != MODE_WEBM ||
+ if (!IS_WEBM(mkv) ||
av_dict_get(s->metadata, "stereo_mode", NULL, 0) ||
av_dict_get(s->metadata, "alpha_mode", NULL, 0))
version = 4;
@@ -1900,7 +1912,7 @@ static int mkv_write_header(AVFormatContext *s)
else
put_ebml_string(pb, MATROSKA_ID_WRITINGAPP, LIBAVFORMAT_IDENT);
- if (mkv->mode != MODE_WEBM)
+ if (!IS_WEBM(mkv))
put_ebml_binary(pb, MATROSKA_ID_SEGMENTUID, mkv->segment_uid, 16);
} else {
const char *ident = "Lavf";
@@ -1948,7 +1960,7 @@ static int mkv_write_header(AVFormatContext *s)
if (ret < 0)
return ret;
- if (mkv->mode != MODE_WEBM) {
+ if (!IS_WEBM(mkv)) {
ret = mkv_write_attachments(s);
if (ret < 0)
return ret;
@@ -2010,6 +2022,7 @@ static int mkv_blockgroup_size(int pkt_size, int track_num_size)
return size;
}
+#if CONFIG_MATROSKA_MUXER
static int mkv_strip_wavpack(const uint8_t *src, uint8_t **pdst, int *size)
{
uint8_t *dst;
@@ -2062,6 +2075,7 @@ fail:
av_freep(&dst);
return ret;
}
+#endif
static int mkv_write_block(AVFormatContext *s, AVIOContext *pb,
uint32_t blockid, const AVPacket *pkt, int keyframe)
@@ -2089,6 +2103,7 @@ static int mkv_write_block(AVFormatContext *s, AVIOContext *pb,
pkt->size, pkt->pts, pkt->dts, pkt->duration, avio_tell(pb),
mkv->cluster_pos, track_number, keyframe != 0);
+#if CONFIG_MATROSKA_MUXER
if (par->codec_id == AV_CODEC_ID_H264 && par->extradata_size > 0 &&
(AV_RB24(par->extradata) == 1 || AV_RB32(par->extradata) == 1)) {
err = ff_avc_parse_nal_units_buf(pkt->data, &data, &size);
@@ -2096,11 +2111,13 @@ static int mkv_write_block(AVFormatContext *s, AVIOContext *pb,
(AV_RB24(par->extradata) == 1 || AV_RB32(par->extradata) == 1)) {
/* extradata is Annex B, assume the bitstream is too and convert it */
err = ff_hevc_annexb2mp4_buf(pkt->data, &data, &size, 0, NULL);
- } else if (par->codec_id == AV_CODEC_ID_AV1) {
- err = ff_av1_filter_obus_buf(pkt->data, &data, &size, &offset);
} else if (par->codec_id == AV_CODEC_ID_WAVPACK) {
err = mkv_strip_wavpack(pkt->data, &data, &size);
} else
+#endif
+ if (par->codec_id == AV_CODEC_ID_AV1) {
+ err = ff_av1_filter_obus_buf(pkt->data, &data, &size, &offset);
+ } else
data = pkt->data;
if (err < 0) {
@@ -2109,7 +2126,8 @@ static int mkv_write_block(AVFormatContext *s, AVIOContext *pb,
return err;
}
- if (par->codec_id == AV_CODEC_ID_PRORES && size >= 8) {
+ if (CONFIG_MATROSKA_MUXER &&
+ par->codec_id == AV_CODEC_ID_PRORES && size >= 8) {
/* Matroska specification requires to remove the first QuickTime atom
*/
size -= 8;
@@ -2261,6 +2279,7 @@ static int mkv_check_new_extra_data(AVFormatContext *s, const AVPacket *pkt)
&side_data_size);
switch (par->codec_id) {
+#if CONFIG_MATROSKA_MUXER
case AV_CODEC_ID_AAC:
if (side_data_size && mkv->track.bc) {
int filler, output_sample_rate = 0;
@@ -2302,6 +2321,7 @@ static int mkv_check_new_extra_data(AVFormatContext *s, const AVPacket *pkt)
par->extradata = old_extradata;
}
break;
+#endif
// FIXME: Remove the following once libaom starts propagating extradata during init()
// See https://bugs.chromium.org/p/aomedia/issues/detail?id=2012
case AV_CODEC_ID_AV1:
@@ -2721,7 +2741,8 @@ static int mkv_init(struct AVFormatContext *s)
si->avoid_negative_ts_use_pts = 1;
}
- if (!strcmp(s->oformat->name, "webm")) {
+ if (!CONFIG_MATROSKA_MUXER ||
+ (CONFIG_WEBM_MUXER && !strcmp(s->oformat->name, "webm"))) {
mkv->mode = MODE_WEBM;
mkv->write_crc = 0;
} else
@@ -2755,7 +2776,7 @@ static int mkv_init(struct AVFormatContext *s)
avpriv_set_pts_info(st, 64, 1, 1000);
if (st->codecpar->codec_type == AVMEDIA_TYPE_ATTACHMENT) {
- if (mkv->mode == MODE_WEBM) {
+ if (IS_WEBM(mkv)) {
av_log(s, AV_LOG_WARNING, "Stream %d will be ignored "
"as WebM doesn't support attachments.\n", i);
} else if (!get_mimetype(st)) {
@@ -2783,7 +2804,7 @@ static int mkv_check_bitstream(AVFormatContext *s, AVStream *st,
{
int ret = 1;
- if (st->codecpar->codec_id == AV_CODEC_ID_AAC) {
+ if (CONFIG_MATROSKA_MUXER && st->codecpar->codec_id == AV_CODEC_ID_AAC) {
if (pkt->size > 2 && (AV_RB16(pkt->data) & 0xfff0) == 0xfff0)
ret = ff_stream_add_bitstream_filter(st, "aac_adtstoasc", NULL);
} else if (st->codecpar->codec_id == AV_CODEC_ID_VP9) {
--
2.32.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* [FFmpeg-devel] [PATCH v2 08/18] configure: Add missing AMV muxer->riffenc dependency
2022-01-06 17:15 ` [FFmpeg-devel] [PATCH 08/10] avformat/Makefile: Add missing amv-muxer->riffenc.o dependency Andreas Rheinhardt
@ 2022-01-07 11:09 ` Andreas Rheinhardt
0 siblings, 0 replies; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-07 11:09 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Andreas Rheinhardt
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
Now using the riffenc subsystem. Not that I knew why we use
a subsystem for this instead of Makefile dependencies.
configure | 1 +
1 file changed, 1 insertion(+)
diff --git a/configure b/configure
index 1225faf15a..6fe7b8513e 100755
--- a/configure
+++ b/configure
@@ -3393,6 +3393,7 @@ ac3_demuxer_select="ac3_parser"
act_demuxer_select="riffdec"
adts_muxer_select="mpeg4audio"
aiff_muxer_select="iso_media"
+amv_muxer_select="riffenc"
asf_demuxer_select="riffdec"
asf_o_demuxer_select="riffdec"
asf_muxer_select="riffenc"
--
2.32.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [FFmpeg-devel] [PATCH 13/14] configure: Let decklink indev suggest libzvbi
2022-01-06 20:07 ` [FFmpeg-devel] [PATCH 13/14] configure: Let decklink indev suggest libzvbi Andreas Rheinhardt
@ 2022-01-07 19:58 ` Marton Balint
0 siblings, 0 replies; 22+ messages in thread
From: Marton Balint @ 2022-01-07 19:58 UTC (permalink / raw)
To: FFmpeg development discussions and patches
On Thu, 6 Jan 2022, Andreas Rheinhardt wrote:
> Fixes build errors if libzvbi is enabled while libzvbi_teletextdec
> is disabled.
>
> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
> ---
> configure | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/configure b/configure
> index 1225faf15a..11342d5cec 100755
> --- a/configure
> +++ b/configure
> @@ -3500,6 +3500,7 @@ caca_outdev_deps="libcaca"
> decklink_deps_any="libdl LoadLibrary"
> decklink_indev_deps="decklink threads"
> decklink_indev_extralibs="-lstdc++"
> +decklink_indev_suggest="libzvbi"
> decklink_outdev_deps="decklink threads"
> decklink_outdev_suggest="libklvanc"
> decklink_outdev_extralibs="-lstdc++"
> --
> 2.32.0
LGTM, thanks.
Marton
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency
2022-01-06 9:14 [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
` (16 preceding siblings ...)
2022-01-07 10:53 ` [FFmpeg-devel] [PATCH 18/18] avformat/matroskaenc: Disable MKV-only code if MKV muxer is disabled Andreas Rheinhardt
@ 2022-01-08 10:18 ` Andreas Rheinhardt
17 siblings, 0 replies; 22+ messages in thread
From: Andreas Rheinhardt @ 2022-01-08 10:18 UTC (permalink / raw)
To: ffmpeg-devel
Andreas Rheinhardt:
> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
> ---
> libavformat/Makefile | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/libavformat/Makefile b/libavformat/Makefile
> index c479ea998e..cc19325397 100644
> --- a/libavformat/Makefile
> +++ b/libavformat/Makefile
> @@ -667,7 +667,7 @@ OBJS-$(CONFIG_UDPLITE_PROTOCOL) += udp.o ip.o
> OBJS-$(CONFIG_UNIX_PROTOCOL) += unix.o
>
> # external library protocols
> -OBJS-$(CONFIG_LIBAMQP_PROTOCOL) += libamqp.o
> +OBJS-$(CONFIG_LIBAMQP_PROTOCOL) += libamqp.o urldecode.o
> OBJS-$(CONFIG_LIBRIST_PROTOCOL) += librist.o
> OBJS-$(CONFIG_LIBRTMP_PROTOCOL) += librtmp.o
> OBJS-$(CONFIG_LIBRTMPE_PROTOCOL) += librtmp.o
>
Will apply this patchset tonight unless there are objections.
- Andreas
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 22+ messages in thread
end of thread, other threads:[~2022-01-08 10:18 UTC | newest]
Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-06 9:14 [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
2022-01-06 10:52 ` [FFmpeg-devel] [PATCH 2/4] avformat/Makefile, amr: Add missing amr-demuxers->rawdec.o dependency Andreas Rheinhardt
2022-01-06 10:52 ` [FFmpeg-devel] [PATCH 3/4] avformat/amr: Don't reset AVFormatContext.priv_data Andreas Rheinhardt
2022-01-06 10:52 ` [FFmpeg-devel] [PATCH 4/4] avformat/amr: Fix writing AMR header Andreas Rheinhardt
2022-01-06 12:07 ` [FFmpeg-devel] [PATCH 5/6] fate/amr[nw]b: Add remux tests Andreas Rheinhardt
2022-01-06 12:07 ` [FFmpeg-devel] [PATCH 6/6] fate/amrwb: Fix container type Andreas Rheinhardt
2022-01-06 17:15 ` [FFmpeg-devel] [PATCH 07/10] avformat/Makefile: Add missing alp-muxer->rawenc.o dependency Andreas Rheinhardt
2022-01-06 17:15 ` [FFmpeg-devel] [PATCH 08/10] avformat/Makefile: Add missing amv-muxer->riffenc.o dependency Andreas Rheinhardt
2022-01-07 11:09 ` [FFmpeg-devel] [PATCH v2 08/18] configure: Add missing AMV muxer->riffenc dependency Andreas Rheinhardt
2022-01-06 17:15 ` [FFmpeg-devel] [PATCH 09/10] avformat/Makefile: Fix name of PhotoCD demuxer Andreas Rheinhardt
2022-01-06 17:31 ` Paul B Mahol
2022-01-06 17:15 ` [FFmpeg-devel] [PATCH 10/10] avformat/Makefile: Add entries for CRI, GEM and PGX image pipe demuxers Andreas Rheinhardt
2022-01-06 18:47 ` [FFmpeg-devel] [PATCH 11/12] avformat/rtsp: #if unused functions away, fix -O0 compilation Andreas Rheinhardt
2022-01-06 18:47 ` [FFmpeg-devel] [PATCH 12/12] avformat/matroskaenc: Fix build with only WebM muxer enabled Andreas Rheinhardt
2022-01-06 20:07 ` [FFmpeg-devel] [PATCH 13/14] configure: Let decklink indev suggest libzvbi Andreas Rheinhardt
2022-01-07 19:58 ` Marton Balint
2022-01-06 20:07 ` [FFmpeg-devel] [PATCH 14/14] avdevice/iec61883: #if unused code away, fix -O0 compilation Andreas Rheinhardt
2022-01-06 20:51 ` [FFmpeg-devel] [PATCH 15/15] avformat/img2dec: Don't include disabled demuxers Andreas Rheinhardt
2022-01-07 10:53 ` [FFmpeg-devel] [PATCH 16/18] avformat/matroskaenc: Move AAC extradata check to other audio checks Andreas Rheinhardt
2022-01-07 10:53 ` [FFmpeg-devel] [PATCH 17/18] fate/subtitles: Fix check for fate-binsub-mksenc test Andreas Rheinhardt
2022-01-07 10:53 ` [FFmpeg-devel] [PATCH 18/18] avformat/matroskaenc: Disable MKV-only code if MKV muxer is disabled Andreas Rheinhardt
2022-01-08 10:18 ` [FFmpeg-devel] [PATCH] avformat/Makefile: Add missing libamqp->urldecode dependency Andreas Rheinhardt
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
This inbox may be cloned and mirrored by anyone:
git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
ffmpegdev@gitmailbox.com
public-inbox-index ffmpegdev
Example config snippet for mirrors.
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git