<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 now have a sequence of variable duration video frames to encode. Say the time stamps of video frames are 0, 0,1, 0,2, 0.3, 0,4, 0.6, 0.8, 1.0... (duration 0.1 to duration 0.2). </div><div class="gmail_default" style="font-family:georgia,serif"><br></div><div class="gmail_default" style="font-family:georgia,serif">Encoder is opened by avcodec_find_encoder. Frames are sent to encoder using avcodec_encode_video. Encoded frame timestamp is got from pVideoCodecCtx->coded_frame->pts.</div><div class="gmail_default" style="font-family:georgia,serif"><br></div><div class="gmail_default" style="font-family:georgia,serif">Normally, when open an encoder, you need to specify pVideoCodecCtx->time_base which can precisely present video frames timestamps. If possible duration is not know, I can set it to 1/1000 (time stamp is in ms).</div><div class="gmail_default" style="font-family:georgia,serif"><br></div><div class="gmail_default" style="font-family:georgia,serif">With pVideoCodecCtx->time_base set to 1/1000, time stamp of encoded frames I got is equal to time stamps of input frames. <br></div><div class="gmail_default" style="font-family:georgia,serif"><br></div><div class="gmail_default" style="font-family:georgia,serif">So I just want to get confirm:</div><div class="gmail_default" style="font-family:georgia,serif">1. Is setting pVideoCodecCtx->time_base to 1/1000 the correct way to make encoder accept frames of variable duration? If yes, can I do it to every encoder in ffmpeg library?</div><div class="gmail_default" style="font-family:georgia,serif">2. Comment says  "For fixed-fps content, timebase should be 1/framerate and timestamp increments should be identically 1". If for fixed-fps content, I also set time_base to 1/1000, and timestamp increment be 1000/fps, is it ok?</div><div class="gmail_default" style="font-family:georgia,serif">3. I saw someone saying some muxers require constant frame rate. Does that mean if timestamps of frames sent to muxer is like 0, 0,1, 0,2, 0.3, 0,4, 0.6, 0.8, 1.0, some of them will be dropped by the muxer?</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">Thanks for help</div><div class="gmail_default" style="font-family:georgia,serif"><br></div><div class="gmail_default" style="font-family:georgia,serif"><br></div></div>