Browse code

g723.1 muxer

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>

Mohamed Naufal authored on 2011/10/10 09:48:16
Showing 3 changed files
... ...
@@ -99,6 +99,7 @@ OBJS-$(CONFIG_GXF_MUXER)                 += gxfenc.o audiointerleave.o
99 99
 OBJS-$(CONFIG_G722_DEMUXER)              += rawdec.o
100 100
 OBJS-$(CONFIG_G722_MUXER)                += rawenc.o
101 101
 OBJS-$(CONFIG_G723_1_DEMUXER)            += g723_1.o
102
+OBJS-$(CONFIG_G723_1_MUXER)              += g723_1.o
102 103
 OBJS-$(CONFIG_H261_DEMUXER)              += h261dec.o rawdec.o
103 104
 OBJS-$(CONFIG_H261_MUXER)                += rawenc.o
104 105
 OBJS-$(CONFIG_H263_DEMUXER)              += h263dec.o rawdec.o
... ...
@@ -100,7 +100,7 @@ void av_register_all(void)
100 100
     REGISTER_MUXER    (FRAMECRC, framecrc);
101 101
     REGISTER_MUXER    (FRAMEMD5, framemd5);
102 102
     REGISTER_MUXDEMUX (G722, g722);
103
-    REGISTER_DEMUXER  (G723_1, g723_1);
103
+    REGISTER_MUXDEMUX (G723_1, g723_1);
104 104
     REGISTER_MUXER    (GIF, gif);
105 105
     REGISTER_DEMUXER  (GSM, gsm);
106 106
     REGISTER_MUXDEMUX (GXF, gxf);
... ...
@@ -81,3 +81,24 @@ AVInputFormat ff_g723_1_demuxer = {
81 81
     .extensions = "tco,rco",
82 82
     .flags = AVFMT_GENERIC_INDEX
83 83
 };
84
+
85
+#if CONFIG_G723_1_MUXER
86
+static int g723_1_write_packet(AVFormatContext *s, AVPacket *pkt)
87
+{
88
+    put_buffer(s->pb, pkt->data, pkt->size);
89
+    put_flush_packet(s->pb);
90
+    return 0;
91
+}
92
+
93
+AVOutputFormat ff_g723_1_muxer = {
94
+    "g723_1",
95
+    NULL_IF_CONFIG_SMALL("G.723.1 format"),
96
+    "audio/g723",
97
+    "tco",
98
+    0,
99
+    CODEC_ID_G723_1,
100
+    CODEC_ID_NONE,
101
+    NULL,
102
+    g723_1_write_packet,
103
+};
104
+#endif