If you only want to copy the input, there is no need to transcode. You can
simply duplicate the input packets, one packet goes to the decoder so it
can be shown, the other
goes to the muxer for the recorder when someone presses the record button.
You can save to whatever format you want but input may not be playable from
the start until
it reaches the key frame. Deep packet copy can be achieved with the
following code:

AVPacket packet;
av_init_packet(&packet);
av_packet_ref(packet, src);
av_packet_make_writable(&packet);

You can based on the decoded frames, mark a key frame packet and start
saving from there.

On Wed, Jan 1, 2020 at 10:06 AM Audric Ackermann <[email protected]>
wrote:

> Ok thank you.
> As I do not control the input parameters I will go for the transcode
> option. Is there an easy way to duplicate all required decoder parameters
> to the encoder?
>
> Like doing this, but with all important params in one step:
>
> Thanks
>
> outst->codec->width = this->codec_ctx->width;
> outst->codec->height = this->codec_ctx->height;
> outst->codec->pix_fmt = this->codec_ctx->pix_fmt;
> outst->codec->time_base = this->codec_ctx->time_base;
> _______________________________________________
> 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".



-- 

Regards
Strahinja Radman
_______________________________________________
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".

Reply via email to