[FFmpeg-devel] [PATCH 1/2] v4l_m2m: add missing AV_CODEC_CAP_DELAY flags

Jorge Ramirez jorge.ramirez-ortiz at linaro.org
Thu Dec 14 20:54:26 EET 2017


On 12/14/2017 07:48 PM, wm4 wrote:
> This is pretty much a requirement for any codec that handles modern
> codecs like h264, but it was missing. Potentially could lead to issues
> like missing frames at the end of a stream.
> ---
> Untested.
hi,

please do not merge this (the capability was not missing, it just broke 
the codeca last time I tested it hence why it is not in the code).

I will look into this now (test/validate again); I also  have a couple 
of other things pending - in particular a patch that Mark Thompson sent 
me a couple of months back which is quite important (today we access 
free'd memory when we close the codec...we are lucky that the memory is 
not reused)

I have been off the radar doing some uboot work that couldnt be 
postponed. sorry about it. I am back on this now.

> ---
>   libavcodec/v4l2_m2m_dec.c | 2 +-
>   libavcodec/v4l2_m2m_enc.c | 2 +-
>   2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/libavcodec/v4l2_m2m_dec.c b/libavcodec/v4l2_m2m_dec.c
> index c4ea20ea83..8308613978 100644
> --- a/libavcodec/v4l2_m2m_dec.c
> +++ b/libavcodec/v4l2_m2m_dec.c
> @@ -215,7 +215,7 @@ AVCodec ff_ ## NAME ## _v4l2m2m_decoder = { \
>       .receive_frame  = v4l2_receive_frame,\
>       .close          = ff_v4l2_m2m_codec_end,\
>       .bsfs           = bsf_name, \
> -    .capabilities   = AV_CODEC_CAP_HARDWARE, \
> +    .capabilities   = AV_CODEC_CAP_HARDWARE | AV_CODEC_CAP_DELAY, \
>       .wrapper_name   = "v4l2m2m", \
>   };
>   
> diff --git a/libavcodec/v4l2_m2m_enc.c b/libavcodec/v4l2_m2m_enc.c
> index f62ce7cdb5..7e88f4d2e6 100644
> --- a/libavcodec/v4l2_m2m_enc.c
> +++ b/libavcodec/v4l2_m2m_enc.c
> @@ -335,7 +335,7 @@ AVCodec ff_ ## NAME ## _v4l2m2m_encoder = { \
>       .send_frame     = v4l2_send_frame,\
>       .receive_packet = v4l2_receive_packet,\
>       .close          = ff_v4l2_m2m_codec_end,\
> -    .capabilities   = AV_CODEC_CAP_HARDWARE, \
> +    .capabilities   = AV_CODEC_CAP_HARDWARE | AV_CODEC_CAP_DELAY, \
>       .wrapper_name   = "v4l2m2m", \
>   };
>   



More information about the ffmpeg-devel mailing list