diff --git a/libavformat/spdifenc.c b/libavformat/spdifenc.c
index ed02b2e8f2fe13c6c97270d2e7df2278967ed9ed..0dcf98ce0bb8919e36d35175b2714180fa838bbf 100644
--- a/libavformat/spdifenc.c
+++ b/libavformat/spdifenc.c
@@ -253,6 +253,7 @@ static int spdif_write_packet(struct AVFormatContext *s, AVPacket *pkt)
     IEC958Context *ctx = s->priv_data;
     int ret, padding;
 
+    ctx->out_buf = pkt->data;
     ctx->out_bytes = pkt->size;
     ctx->length_code = FFALIGN(pkt->size, 2) << 3;