Thanks, but the AVFrame is not encoded data. Maybe your idea was to copy the packet data? Than I`ll have to increment dts/pts counters manually in this case... I don't know how...
ср, 11 мая 2022 г. в 15:03, Gustav González <[email protected]>: > On Wed, May 11, 2022 at 6:24 AM Aleksei Komarov <[email protected]> > wrote: > >> Hi, >> I'm encoding VFR frame sequence to Constant Frame Rate output stream (in >> real-time) >> E.g. to maintain 60 fps I have to DUPLICATE frames from 30 fps stream (or >> any VFR video streams). >> To do this I`m copying the same frame binary data and feed it to >> avcodec_receive_packet() once again. (It works but is not optimal) >> What is the proper way to tell the encoder that the new frame is the same >> as the last one besides timestamp data (PTS/DTS). In other words how >> to duplicate last frame in the stream without reencoding the frame again? >> I've seen this type of video ( generated by OBS ) where MANY frames were >> really duplicated, where pkt_size=48 or lower! >> > > I'm just shooting in the dark, but what if you don't focus on the AVFrame > data but on saving a copy of the AVPacket of the previous frame after it is > encoded? In that way, you could avoid calling the whole encoding process > again. Just guessing. > > -- > Gustav Gonzalez > [email protected] > > _______________________________________________ > Libav-user mailing list > [email protected] > https://ffmpeg.org/mailman/listinfo/libav-user > > To unsubscribe, visit link above, or email > [email protected] with subject "unsubscribe". > -- С уважением Алексей Комаров.
_______________________________________________ Libav-user mailing list [email protected] https://ffmpeg.org/mailman/listinfo/libav-user To unsubscribe, visit link above, or email [email protected] with subject "unsubscribe".
