diff --git a/libavformat/mxfenc.c b/libavformat/mxfenc.c
index 665bc2a48d2399bb05bb8ea9dd14a088a687ed4f..08f80523d8a60ac5ec12d24fdc0e8238c0aa1e08 100644
--- a/libavformat/mxfenc.c
+++ b/libavformat/mxfenc.c
@@ -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;