[FFmpeg-devel] [PATCH v2 2/3] avcodec/rawenc: propagate the Producer Reference time
Michael Niedermayer
michael at niedermayer.cc
Fri Nov 29 21:22:40 EET 2024
Hi
On Fri, Nov 01, 2024 at 06:21:23PM +0100, Clément Péron wrote:
> The Producer Reference time contains the source time when the frame
> has been produced. This is usefull in the muxer so propagate it.
>
> Signed-off-by: Clément Péron <peron.clem at gmail.com>
> ---
> libavcodec/rawenc.c | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
> diff --git a/libavcodec/rawenc.c b/libavcodec/rawenc.c
> index 8c577006d9..f238c8e165 100644
> --- a/libavcodec/rawenc.c
> +++ b/libavcodec/rawenc.c
> @@ -49,6 +49,8 @@ static av_cold int raw_encode_init(AVCodecContext *avctx)
> static int raw_encode(AVCodecContext *avctx, AVPacket *pkt,
> const AVFrame *frame, int *got_packet)
> {
> + AVFrameSideData *side_data;
> +
> int ret = av_image_get_buffer_size(frame->format,
> frame->width, frame->height, 1);
>
> @@ -78,6 +80,16 @@ static int raw_encode(AVCodecContext *avctx, AVPacket *pkt,
> }
> }
> *got_packet = 1;
> +
> + // Forward the PRFT to Mux
> + side_data = av_frame_get_side_data(frame, AV_FRAME_DATA_PRFT);
> + if (side_data && side_data->size) {
> + uint8_t *buf = av_packet_new_side_data(pkt, AV_PKT_DATA_PRFT, side_data->size);
> + if (!buf)
> + return AVERROR(ENOMEM);
> + memcpy(buf, side_data->data, side_data->size);
> + }
It feels like there should be a simpler mechanism to forward side data
but if theres not, then this is probably ok assuming the addition of PRFT
and the rest of teh patchset is ok
thx
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
Those who are too smart to engage in politics are punished by being
governed by those who are dumber. -- Plato
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20241129/278ac951/attachment.sig>
More information about the ffmpeg-devel
mailing list