summaryrefslogtreecommitdiff
path: root/libavformat/asfenc.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavformat/asfenc.c')
-rw-r--r--libavformat/asfenc.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libavformat/asfenc.c b/libavformat/asfenc.c
index 02f2a299c9..cccbf858c7 100644
--- a/libavformat/asfenc.c
+++ b/libavformat/asfenc.c
@@ -34,6 +34,7 @@
#define ASF_INDEXED_INTERVAL 10000000
#define ASF_INDEX_BLOCK (1<<9)
+#define ASF_PAYLOADS_PER_PACKET 63
#define ASF_PACKET_ERROR_CORRECTION_DATA_SIZE 0x2
#define ASF_PACKET_ERROR_CORRECTION_FLAGS \
@@ -858,6 +859,8 @@ static void put_frame(AVFormatContext *s, ASFStream *stream, AVStream *avst,
flush_packet(s);
else if (asf->packet_size_left <= (PAYLOAD_HEADER_SIZE_MULTIPLE_PAYLOADS + PACKET_HEADER_MIN_SIZE + 1))
flush_packet(s);
+ else if (asf->packet_nb_payloads == ASF_PAYLOADS_PER_PACKET)
+ flush_packet(s);
}
stream->seq++;
}