[FFmpeg-devel] [PATCH]Add an .oga muxer

Carl Eugen Hoyos cehoyos at ag.or.at
Tue Mar 25 15:23:26 CET 2014


Hi!

As requested on the user mailing list.

Please comment, Carl Eugen
-------------- next part --------------
diff --git a/libavformat/allformats.c b/libavformat/allformats.c
index 6d74860..6312848 100644
--- a/libavformat/allformats.c
+++ b/libavformat/allformats.c
@@ -204,6 +204,7 @@ 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);
diff --git a/libavformat/oggenc.c b/libavformat/oggenc.c
index 9c64755..4398b20 100644
--- a/libavformat/oggenc.c
+++ b/libavformat/oggenc.c
@@ -648,6 +648,30 @@ AVOutputFormat ff_ogg_muxer = {
 };
 #endif
 
+#if CONFIG_OGA_MUXER
+static const AVClass oga_muxer_class = {
+    .class_name = "Ogg audio muxer",
+    .item_name  = av_default_item_name,
+    .option     = options,
+    .version    = LIBAVUTIL_VERSION_INT,
+};
+
+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       = AV_CODEC_ID_VORBIS,
+    .video_codec       = AV_CODEC_ID_NONE,
+    .write_header      = ogg_write_header,
+    .write_packet      = ogg_write_packet,
+    .write_trailer     = ogg_write_trailer,
+    .flags             = AVFMT_TS_NEGATIVE,
+    .priv_class        = &oga_muxer_class,
+};
+#endif
+
 #if CONFIG_SPEEX_MUXER
 static const AVClass speex_muxer_class = {
     .class_name = "Speex muxer",


More information about the ffmpeg-devel mailing list