[FFmpeg-devel] [PATCH] avformat/matroskaenc: Improve log messages for blocks

Andreas Rheinhardt andreas.rheinhardt at googlemail.com
Tue Apr 16 05:02:03 EEST 2019


Up until now, a block's relative offset has been reported as the offset
in the log messages output when writing blocks; given that it is
impossible to know the real offset from the beginning of the file at
this point due to the fact that it is not yet known how many bytes will
be used for the containing cluster's length field both the relative
offset in the cluster as well as the offset of the containing cluster
will be reported from now on.

Also, the log message for writing vtt blocks has been brought in line
with the message for normal blocks.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at googlemail.com>
---
Sorry for sending this a third time, but I just found out that my second
attempt had an unnecessary space ("in  cluster"), so here is the updated
version.

And I'd like to take this opportunity to ping the whole patchset.
 libavformat/matroskaenc.c | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c
index 441315e2d5..fc0e95440e 100644
--- a/libavformat/matroskaenc.c
+++ b/libavformat/matroskaenc.c
@@ -2124,10 +2124,10 @@ static void mkv_write_block(AVFormatContext *s, AVIOContext *pb,
 
     ts += mkv->tracks[pkt->stream_index].ts_offset;
 
-    av_log(s, AV_LOG_DEBUG, "Writing block at offset %" PRIu64 ", size %d, "
-           "pts %" PRId64 ", dts %" PRId64 ", duration %" PRId64 ", keyframe %d\n",
-           avio_tell(pb), pkt->size, pkt->pts, pkt->dts, pkt->duration,
-           keyframe != 0);
+    av_log(s, AV_LOG_DEBUG, "Writing block at relative offset %" PRId64 " in "
+           "cluster at offset %" PRId64 "; size %d, pts %" PRId64 ", dts %" PRId64
+           ", duration %" PRId64 ", keyframe %d\n", avio_tell(pb), mkv->cluster_pos,
+           pkt->size, pkt->pts, pkt->dts, pkt->duration, keyframe != 0);
     if (par->codec_id == AV_CODEC_ID_H264 && par->extradata_size > 0 &&
         (AV_RB24(par->extradata) == 1 || AV_RB32(par->extradata) == 1))
         ff_avc_parse_nal_units_buf(pkt->data, &data, &size);
@@ -2231,9 +2231,10 @@ static int mkv_write_vtt_blocks(AVFormatContext *s, AVIOContext *pb, AVPacket *p
 
     size = id_size + 1 + settings_size + 1 + pkt->size;
 
-    av_log(s, AV_LOG_DEBUG, "Writing block at offset %" PRIu64 ", size %d, "
-           "pts %" PRId64 ", dts %" PRId64 ", duration %" PRId64 ", flags %d\n",
-           avio_tell(pb), size, pkt->pts, pkt->dts, pkt->duration, flags);
+    av_log(s, AV_LOG_DEBUG, "Writing block at relative offset %" PRId64 " in "
+           "cluster at offset %" PRId64 "; size %d, pts %" PRId64 ", dts %" PRId64
+           ", duration %" PRId64 ", keyframe %d\n", avio_tell(pb), mkv->cluster_pos,
+           size, pkt->pts, pkt->dts, pkt->duration, 1);
 
     blockgroup = start_ebml_master(pb, MATROSKA_ID_BLOCKGROUP, mkv_blockgroup_size(size));
 
-- 
2.21.0



More information about the ffmpeg-devel mailing list