Signed-off-by: vladimir <[email protected]>
---
libavformat/asfenc.c | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/libavformat/asfenc.c b/libavformat/asfenc.c
index 6be285c..33f41e3 100644
--- a/libavformat/asfenc.c
+++ b/libavformat/asfenc.c
@@ -182,6 +182,8 @@
1 - /* Payload Flags */ \
2 * PAYLOAD_HEADER_SIZE_MULTIPLE_PAYLOADS)
+#define DATA_HEADER_SIZE 50
+
typedef struct {
uint32_t seqno;
int is_streamed;
@@ -517,14 +519,14 @@ static int asf_write_header1(AVFormatContext *s, int64_t
file_size,
cur_pos = avio_tell(pb);
header_size = cur_pos - header_offset;
if (asf->is_streamed) {
- header_size += 8 + 30 + 50;
+ header_size += 8 + 30 + DATA_HEADER_SIZE;
avio_seek(pb, header_offset - 10 - 30, SEEK_SET);
avio_wl16(pb, header_size);
avio_seek(pb, header_offset - 2 - 30, SEEK_SET);
avio_wl16(pb, header_size);
- header_size -= 8 + 30 + 50;
+ header_size -= 8 + 30 + DATA_HEADER_SIZE;
}
header_size += 24 + 6;
avio_seek(pb, header_offset - 14, SEEK_SET);
@@ -533,6 +535,7 @@ static int asf_write_header1(AVFormatContext *s, int64_t
file_size,
/* movie chunk, followed by packets of packet_size */
asf->data_offset = cur_pos;
+av_log(s, AV_LOG_ERROR, "data_offset: %d\r\n", asf->data_offset );
put_guid(pb, &ff_asf_data_header);
avio_wl64(pb, data_chunk_size);
put_guid(pb, &ff_asf_my_guid);
@@ -555,10 +558,10 @@ static int asf_write_header(AVFormatContext *s)
asf->nb_index_count = 0;
asf->maximum_packet = 0;
- /* the data-chunk-size has to be 50, which is data_size - asf->data_offset
- * at the moment this function is done. It is needed to use asf as
- * streamable format. */
- if (asf_write_header1(s, 0, 50) < 0) {
+ /* the data-chunk-size has to be 50(DATA_HEADER_SIZE), which is
+ * data_size - asf->data_offset at the moment this function is done.
+ * It is needed to use asf as a streamable format. */
+ if (asf_write_header1(s, 0, DATA_HEADER_SIZE) < 0) {
//av_free(asf);
return -1;
}
--
1.8.1.4
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel