Import more MXF muxer code from the SoC tree
authorVitor Sessak <vitor1001@gmail.com>
Mon, 25 Aug 2008 20:28:12 +0000 (20:28 +0000)
committerVitor Sessak <vitor1001@gmail.com>
Mon, 25 Aug 2008 20:28:12 +0000 (20:28 +0000)
Originally committed as revision 14968 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/mxfenc.c

index 665bc2a..08f8052 100644 (file)
@@ -468,20 +468,6 @@ static void mxf_write_common_fields(    ByteIOContext *pb, AVStream *st)
     put_be64(pb, st->duration);
 }
 
-static int mux_write_packet(AVFormatContext *s, AVPacket *pkt)
-{
-    ByteIOContext *pb = s->pb;
-    AVStream *st = s->streams[pkt->stream_index];
-    MXFStreamContext *sc = st->priv_data;
-
-    put_buffer(pb, sc->track_essence_element_key, 16); // write key
-    klv_encode_ber_length(pb, pkt->size); // write length
-    put_buffer(pb, pkt->data, pkt->size); // write value
-
-    put_flush_packet(pb);
-    return 0;
-}
-
 static void mxf_write_sequence(AVFormatContext *s, int stream_index, enum MXFMetadataSetType type)
 {
     ByteIOContext *pb = s->pb;
@@ -773,6 +759,20 @@ fail:
     return -1;
 }
 
+static int mux_write_packet(AVFormatContext *s, AVPacket *pkt)
+{
+    ByteIOContext *pb = s->pb;
+    AVStream *st = s->streams[pkt->stream_index];
+    MXFStreamContext *sc = st->priv_data;
+
+    put_buffer(pb, sc->track_essence_element_key, 16); // write key
+    klv_encode_ber_length(pb, pkt->size); // write length
+    put_buffer(pb, pkt->data, pkt->size); // write value
+
+    put_flush_packet(pb);
+    return 0;
+}
+
 static void mxf_update_header_partition(AVFormatContext *s, int64_t footer_partition_offset)
 {
     MXFContext *mxf = s->priv_data;