Commit 66408fce authored by James Almer's avatar James Almer

avformat: add an Ogg Video muxer

Signed-off-by: 's avatarJames Almer <jamrial@gmail.com>
parent ec0e888e
...@@ -5,6 +5,7 @@ version <next>: ...@@ -5,6 +5,7 @@ version <next>:
- libopenmpt demuxer - libopenmpt demuxer
- tee protocol - tee protocol
- Changed metadata print option to accept general urls - Changed metadata print option to accept general urls
- Alias muxer for Ogg Video (.ogv)
version 3.1: version 3.1:
......
...@@ -2860,6 +2860,7 @@ nut_muxer_select="riffenc" ...@@ -2860,6 +2860,7 @@ nut_muxer_select="riffenc"
nuv_demuxer_select="riffdec" nuv_demuxer_select="riffdec"
oga_muxer_select="ogg_muxer" oga_muxer_select="ogg_muxer"
ogg_demuxer_select="dirac_parse" ogg_demuxer_select="dirac_parse"
ogv_muxer_select="ogg_muxer"
opus_muxer_select="ogg_muxer" opus_muxer_select="ogg_muxer"
psp_muxer_select="mov_muxer" psp_muxer_select="mov_muxer"
rtp_demuxer_select="sdp_demuxer" rtp_demuxer_select="sdp_demuxer"
......
...@@ -340,6 +340,8 @@ OBJS-$(CONFIG_OGA_MUXER) += oggenc.o \ ...@@ -340,6 +340,8 @@ OBJS-$(CONFIG_OGA_MUXER) += oggenc.o \
vorbiscomment.o vorbiscomment.o
OBJS-$(CONFIG_OGG_MUXER) += oggenc.o \ OBJS-$(CONFIG_OGG_MUXER) += oggenc.o \
vorbiscomment.o vorbiscomment.o
OBJS-$(CONFIG_OGV_MUXER) += oggenc.o \
vorbiscomment.o
OBJS-$(CONFIG_OMA_DEMUXER) += omadec.o pcm.o oma.o OBJS-$(CONFIG_OMA_DEMUXER) += omadec.o pcm.o oma.o
OBJS-$(CONFIG_OMA_MUXER) += omaenc.o rawenc.o oma.o id3v2enc.o OBJS-$(CONFIG_OMA_MUXER) += omaenc.o rawenc.o oma.o id3v2enc.o
OBJS-$(CONFIG_OPUS_MUXER) += oggenc.o \ OBJS-$(CONFIG_OPUS_MUXER) += oggenc.o \
......
...@@ -225,6 +225,7 @@ void av_register_all(void) ...@@ -225,6 +225,7 @@ void av_register_all(void)
REGISTER_DEMUXER (NUV, nuv); REGISTER_DEMUXER (NUV, nuv);
REGISTER_MUXER (OGA, oga); REGISTER_MUXER (OGA, oga);
REGISTER_MUXDEMUX(OGG, ogg); REGISTER_MUXDEMUX(OGG, ogg);
REGISTER_MUXER (OGV, ogv);
REGISTER_MUXDEMUX(OMA, oma); REGISTER_MUXDEMUX(OMA, oma);
REGISTER_MUXER (OPUS, opus); REGISTER_MUXER (OPUS, opus);
REGISTER_DEMUXER (PAF, paf); REGISTER_DEMUXER (PAF, paf);
......
...@@ -668,7 +668,10 @@ AVOutputFormat ff_ogg_muxer = { ...@@ -668,7 +668,10 @@ AVOutputFormat ff_ogg_muxer = {
.name = "ogg", .name = "ogg",
.long_name = NULL_IF_CONFIG_SMALL("Ogg"), .long_name = NULL_IF_CONFIG_SMALL("Ogg"),
.mime_type = "application/ogg", .mime_type = "application/ogg",
.extensions = "ogg,ogv" .extensions = "ogg"
#if !CONFIG_OGV_MUXER
",ogv"
#endif
#if !CONFIG_SPX_MUXER #if !CONFIG_SPX_MUXER
",spx" ",spx"
#endif #endif
...@@ -705,6 +708,25 @@ AVOutputFormat ff_oga_muxer = { ...@@ -705,6 +708,25 @@ AVOutputFormat ff_oga_muxer = {
}; };
#endif #endif
#if CONFIG_OGV_MUXER
OGG_CLASS(ogv, Ogg video)
AVOutputFormat ff_ogv_muxer = {
.name = "ogv",
.long_name = NULL_IF_CONFIG_SMALL("Ogg Video"),
.mime_type = "video/ogg",
.extensions = "ogv",
.priv_data_size = sizeof(OGGContext),
.audio_codec = CONFIG_LIBVORBIS_ENCODER ?
AV_CODEC_ID_VORBIS : AV_CODEC_ID_FLAC,
.video_codec = AV_CODEC_ID_THEORA,
.write_header = ogg_write_header,
.write_packet = ogg_write_packet,
.write_trailer = ogg_write_trailer,
.flags = AVFMT_TS_NEGATIVE | AVFMT_ALLOW_FLUSH,
.priv_class = &ogv_muxer_class,
};
#endif
#if CONFIG_SPX_MUXER #if CONFIG_SPX_MUXER
OGG_CLASS(spx, Ogg Speex) OGG_CLASS(spx, Ogg Speex)
AVOutputFormat ff_spx_muxer = { AVOutputFormat ff_spx_muxer = {
......
...@@ -32,7 +32,7 @@ ...@@ -32,7 +32,7 @@
// Major bumping may affect Ticket5467, 5421, 5451(compatibility with Chromium) // Major bumping may affect Ticket5467, 5421, 5451(compatibility with Chromium)
// Also please add any ticket numbers that you belive might be affected here // Also please add any ticket numbers that you belive might be affected here
#define LIBAVFORMAT_VERSION_MAJOR 57 #define LIBAVFORMAT_VERSION_MAJOR 57
#define LIBAVFORMAT_VERSION_MINOR 43 #define LIBAVFORMAT_VERSION_MINOR 44
#define LIBAVFORMAT_VERSION_MICRO 100 #define LIBAVFORMAT_VERSION_MICRO 100
#define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \ #define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment