<div dir="ltr"><div class="gmail_default" style="font-family:georgia,serif">Hi guys,</div><div class="gmail_default" style="font-family:georgia,serif"><br></div><div class="gmail_default" style="font-family:georgia,serif">I'm using ffmpeg to mux variable framerate source to MKV format, each frame I send to av_write_frame has correct timestamp and duration set.</div><div class="gmail_default" style="font-family:georgia,serif"><br></div><div class="gmail_default" style="font-family:georgia,serif">Because it's variable frame rate source, I set codecctx->time_base = 1/1000 (because timestamp is in miliseconds)</div><div class="gmail_default" style="font-family:georgia,serif"><br></div><div class="gmail_default" style="font-family:georgia,serif">The generated MKV file however, if dumped by ffprobe -show_frames -select_streams v, pkt_duration = 1. (thats 1/1000 second, not the duration I set to avframe).</div><div class="gmail_default" style="font-family:georgia,serif"><br></div><div class="gmail_default" style="font-family:georgia,serif">After some investigation, <i><font color="#660000">I found that video packet is written by mkv_write_block, which always write simple block instead of block group, so that blockduration (which is not a child of simple block) is never written.</font></i></div><div class="gmail_default" style="font-family:georgia,serif"><i><font color="#660000"><br></font></i></div><div class="gmail_default" style="font-family:georgia,serif"><i><font color="#660000">But the mkv spec says: Block duration is mandatory when DefaultDuration is set for the track. <a href="https://www.matroska.org/technical/specs/index.html#Cluster">https://www.matroska.org/technical/specs/index.html#Cluster</a></font></i></div><div class="gmail_default" style="font-family:georgia,serif"><i><font color="#660000">Ffmpeg does write the default track duration in mkv_write_track,but doesn't write block duration, is that a possible bug?</font></i></div><div class="gmail_default" style="font-family:georgia,serif"><i><font color="#660000"><br></font></i></div><div class="gmail_default" style="font-family:georgia,serif"><font color="#000000">Thanks</font></div><div class="gmail_default" style="font-family:georgia,serif"><font color="#e06666"><br></font></div><div class="gmail_default" style="font-family:georgia,serif"><br></div><div class="gmail_default" style="font-family:georgia,serif"><br></div><div class="gmail_default" style="font-family:georgia,serif"><br></div></div>