summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog1
-rwxr-xr-xconfigure3
-rw-r--r--libavformat/allformats.c3
-rw-r--r--libavformat/oggenc.c53
-rw-r--r--libavformat/version.h2
5 files changed, 60 insertions, 2 deletions
diff --git a/Changelog b/Changelog
index ea9d721732..cfdf11b14b 100644
--- a/Changelog
+++ b/Changelog
@@ -31,6 +31,7 @@ version <next>:
- Icecast protocol
- request icecast metadata by default
- support for using metadata in stream specifiers in avtools
+- Aliases and defaults for Ogg subtypes (opus, spx)
version 10:
diff --git a/configure b/configure
index db3ee364dd..97b60cd291 100755
--- a/configure
+++ b/configure
@@ -2047,7 +2047,9 @@ mpegtsraw_demuxer_select="mpegts_demuxer"
mxf_d10_muxer_select="mxf_muxer"
nut_muxer_select="riffenc"
nuv_demuxer_select="riffdec"
+oga_muxer_select="ogg_muxer"
ogg_demuxer_select="golomb"
+opus_muxer_select="ogg_muxer"
psp_muxer_select="mov_muxer"
rtp_demuxer_select="sdp_demuxer"
rtpdec_select="asf_demuxer rm_demuxer rtp_protocol mpegts_demuxer mov_demuxer"
@@ -2058,6 +2060,7 @@ sap_muxer_select="rtp_muxer rtp_protocol rtpenc_chain"
sdp_demuxer_select="rtpdec"
smoothstreaming_muxer_select="ismv_muxer"
spdif_muxer_select="aac_parser"
+spx_muxer_select="ogg_muxer"
tak_demuxer_select="tak_parser"
tg2_muxer_select="mov_muxer"
tgp_muxer_select="mov_muxer"
diff --git a/libavformat/allformats.c b/libavformat/allformats.c
index 984bb52aaf..bef155ffa0 100644
--- a/libavformat/allformats.c
+++ b/libavformat/allformats.c
@@ -174,8 +174,10 @@ void av_register_all(void)
REGISTER_MUXER (NULL, null);
REGISTER_MUXDEMUX(NUT, nut);
REGISTER_DEMUXER (NUV, nuv);
+ REGISTER_MUXER (OGA, oga);
REGISTER_MUXDEMUX(OGG, ogg);
REGISTER_MUXDEMUX(OMA, oma);
+ REGISTER_MUXER (OPUS, opus);
REGISTER_DEMUXER (PAF, paf);
REGISTER_MUXDEMUX(PCM_ALAW, pcm_alaw);
REGISTER_MUXDEMUX(PCM_MULAW, pcm_mulaw);
@@ -226,6 +228,7 @@ void av_register_all(void)
REGISTER_DEMUXER (SMUSH, smush);
REGISTER_DEMUXER (SOL, sol);
REGISTER_MUXDEMUX(SOX, sox);
+ REGISTER_MUXER (SPX, spx);
REGISTER_MUXDEMUX(SPDIF, spdif);
REGISTER_MUXDEMUX(SRT, srt);
REGISTER_DEMUXER (STR, str);
diff --git a/libavformat/oggenc.c b/libavformat/oggenc.c
index 19c77595f4..8ef6765a84 100644
--- a/libavformat/oggenc.c
+++ b/libavformat/oggenc.c
@@ -627,11 +627,12 @@ static int ogg_write_trailer(AVFormatContext *s)
return 0;
}
+#if CONFIG_OGG_MUXER
AVOutputFormat ff_ogg_muxer = {
.name = "ogg",
.long_name = NULL_IF_CONFIG_SMALL("Ogg"),
.mime_type = "application/ogg",
- .extensions = "ogg,ogv,spx,opus",
+ .extensions = "ogg,ogv",
.priv_data_size = sizeof(OGGContext),
.audio_codec = CONFIG_LIBVORBIS_ENCODER ?
AV_CODEC_ID_VORBIS : AV_CODEC_ID_FLAC,
@@ -642,3 +643,53 @@ AVOutputFormat ff_ogg_muxer = {
.flags = AVFMT_TS_NEGATIVE | AVFMT_ALLOW_FLUSH,
.priv_class = &ogg_muxer_class,
};
+#endif
+
+#if CONFIG_OGA_MUXER
+AVOutputFormat ff_oga_muxer = {
+ .name = "oga",
+ .long_name = NULL_IF_CONFIG_SMALL("Ogg Audio"),
+ .mime_type = "audio/ogg",
+ .extensions = "oga",
+ .priv_data_size = sizeof(OGGContext),
+ .audio_codec = CONFIG_LIBVORBIS_ENCODER ?
+ AV_CODEC_ID_VORBIS : AV_CODEC_ID_FLAC,
+ .write_header = ogg_write_header,
+ .write_packet = ogg_write_packet,
+ .write_trailer = ogg_write_trailer,
+ .flags = AVFMT_TS_NEGATIVE | AVFMT_ALLOW_FLUSH,
+ .priv_class = &ogg_muxer_class,
+};
+#endif
+
+#if CONFIG_SPX_MUXER
+AVOutputFormat ff_spx_muxer = {
+ .name = "spx",
+ .long_name = NULL_IF_CONFIG_SMALL("Ogg Speex"),
+ .mime_type = "audio/ogg",
+ .extensions = "spx",
+ .priv_data_size = sizeof(OGGContext),
+ .audio_codec = AV_CODEC_ID_SPEEX,
+ .write_header = ogg_write_header,
+ .write_packet = ogg_write_packet,
+ .write_trailer = ogg_write_trailer,
+ .flags = AVFMT_TS_NEGATIVE | AVFMT_ALLOW_FLUSH,
+ .priv_class = &ogg_muxer_class,
+};
+#endif
+
+#if CONFIG_OPUS_MUXER
+AVOutputFormat ff_opus_muxer = {
+ .name = "opus",
+ .long_name = NULL_IF_CONFIG_SMALL("Ogg Opus"),
+ .mime_type = "audio/ogg",
+ .extensions = "opus",
+ .priv_data_size = sizeof(OGGContext),
+ .audio_codec = AV_CODEC_ID_OPUS,
+ .write_header = ogg_write_header,
+ .write_packet = ogg_write_packet,
+ .write_trailer = ogg_write_trailer,
+ .flags = AVFMT_TS_NEGATIVE | AVFMT_ALLOW_FLUSH,
+ .priv_class = &ogg_muxer_class,
+};
+#endif
diff --git a/libavformat/version.h b/libavformat/version.h
index 181d2689b2..7b1acd6143 100644
--- a/libavformat/version.h
+++ b/libavformat/version.h
@@ -30,7 +30,7 @@
#include "libavutil/version.h"
#define LIBAVFORMAT_VERSION_MAJOR 56
-#define LIBAVFORMAT_VERSION_MINOR 1
+#define LIBAVFORMAT_VERSION_MINOR 2
#define LIBAVFORMAT_VERSION_MICRO 0
#define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \