Message ID | 20180804004031.12143-1-lorusak@gmail.com |
---|---|
State | Accepted |
Headers | show |
On 04/08/18 01:40, Lukas Rusak wrote: > This just makes the M2MDEC_CLASS similar to how it is done in rkmpp. It looks > clean and has proper indentation > --- > libavcodec/v4l2_m2m_dec.c | 46 ++++++++++++++++++++------------------- > 1 file changed, 24 insertions(+), 22 deletions(-) > > diff --git a/libavcodec/v4l2_m2m_dec.c b/libavcodec/v4l2_m2m_dec.c > index 710e40efd8..7926e25efa 100644 > --- a/libavcodec/v4l2_m2m_dec.c > +++ b/libavcodec/v4l2_m2m_dec.c > @@ -205,29 +205,31 @@ static const AVOption options[] = { > { NULL}, > }; > > +#define M2MDEC_CLASS(NAME) \ > + static const AVClass v4l2_m2m_ ## NAME ## _dec_class = { \ > + .class_name = #NAME "_v4l2_m2m_decoder", \ > + .item_name = av_default_item_name, \ > + .option = options, \ > + .version = LIBAVUTIL_VERSION_INT, \ > + }; > + > #define M2MDEC(NAME, LONGNAME, CODEC, bsf_name) \ > -static const AVClass v4l2_m2m_ ## NAME ## _dec_class = {\ > - .class_name = #NAME "_v4l2_m2m_decoder",\ > - .item_name = av_default_item_name,\ > - .option = options,\ > - .version = LIBAVUTIL_VERSION_INT,\ > -};\ > -\ > -AVCodec ff_ ## NAME ## _v4l2m2m_decoder = { \ > - .name = #NAME "_v4l2m2m" ,\ > - .long_name = NULL_IF_CONFIG_SMALL("V4L2 mem2mem " LONGNAME " decoder wrapper"),\ > - .type = AVMEDIA_TYPE_VIDEO,\ > - .id = CODEC ,\ > - .priv_data_size = sizeof(V4L2m2mPriv),\ > - .priv_class = &v4l2_m2m_ ## NAME ## _dec_class,\ > - .init = v4l2_decode_init,\ > - .receive_frame = v4l2_receive_frame,\ > - .close = ff_v4l2_m2m_codec_end,\ > - .bsfs = bsf_name, \ > - .capabilities = AV_CODEC_CAP_HARDWARE | AV_CODEC_CAP_DELAY | \ > - AV_CODEC_CAP_AVOID_PROBING, \ > - .wrapper_name = "v4l2m2m", \ > -}; > + M2MDEC_CLASS(NAME) \ > + AVCodec ff_ ## NAME ## _v4l2m2m_decoder = { \ > + .name = #NAME "_v4l2m2m" , \ > + .long_name = NULL_IF_CONFIG_SMALL("V4L2 mem2mem " LONGNAME " decoder wrapper"), \ > + .type = AVMEDIA_TYPE_VIDEO, \ > + .id = CODEC , \ > + .priv_data_size = sizeof(V4L2m2mPriv), \ > + .priv_class = &v4l2_m2m_ ## NAME ## _dec_class, \ > + .init = v4l2_decode_init, \ > + .receive_frame = v4l2_receive_frame, \ > + .close = ff_v4l2_m2m_codec_end, \ > + .bsfs = bsf_name, \ > + .capabilities = AV_CODEC_CAP_HARDWARE | AV_CODEC_CAP_DELAY, \ Not a comma! ^ (This gives you a load of compiler warnings, please do make sure you aren't introducing new warnings with patches.) > + AV_CODEC_CAP_AVOID_PROBING, \ > + .wrapper_name = "v4l2m2m", \ > + }; > > M2MDEC(h264, "H.264", AV_CODEC_ID_H264, "h264_mp4toannexb"); > M2MDEC(hevc, "HEVC", AV_CODEC_ID_HEVC, "hevc_mp4toannexb"); > Otherwise LGTM. Thanks, - Mark
diff --git a/libavcodec/v4l2_m2m_dec.c b/libavcodec/v4l2_m2m_dec.c index 710e40efd8..7926e25efa 100644 --- a/libavcodec/v4l2_m2m_dec.c +++ b/libavcodec/v4l2_m2m_dec.c @@ -205,29 +205,31 @@ static const AVOption options[] = { { NULL}, }; +#define M2MDEC_CLASS(NAME) \ + static const AVClass v4l2_m2m_ ## NAME ## _dec_class = { \ + .class_name = #NAME "_v4l2_m2m_decoder", \ + .item_name = av_default_item_name, \ + .option = options, \ + .version = LIBAVUTIL_VERSION_INT, \ + }; + #define M2MDEC(NAME, LONGNAME, CODEC, bsf_name) \ -static const AVClass v4l2_m2m_ ## NAME ## _dec_class = {\ - .class_name = #NAME "_v4l2_m2m_decoder",\ - .item_name = av_default_item_name,\ - .option = options,\ - .version = LIBAVUTIL_VERSION_INT,\ -};\ -\ -AVCodec ff_ ## NAME ## _v4l2m2m_decoder = { \ - .name = #NAME "_v4l2m2m" ,\ - .long_name = NULL_IF_CONFIG_SMALL("V4L2 mem2mem " LONGNAME " decoder wrapper"),\ - .type = AVMEDIA_TYPE_VIDEO,\ - .id = CODEC ,\ - .priv_data_size = sizeof(V4L2m2mPriv),\ - .priv_class = &v4l2_m2m_ ## NAME ## _dec_class,\ - .init = v4l2_decode_init,\ - .receive_frame = v4l2_receive_frame,\ - .close = ff_v4l2_m2m_codec_end,\ - .bsfs = bsf_name, \ - .capabilities = AV_CODEC_CAP_HARDWARE | AV_CODEC_CAP_DELAY | \ - AV_CODEC_CAP_AVOID_PROBING, \ - .wrapper_name = "v4l2m2m", \ -}; + M2MDEC_CLASS(NAME) \ + AVCodec ff_ ## NAME ## _v4l2m2m_decoder = { \ + .name = #NAME "_v4l2m2m" , \ + .long_name = NULL_IF_CONFIG_SMALL("V4L2 mem2mem " LONGNAME " decoder wrapper"), \ + .type = AVMEDIA_TYPE_VIDEO, \ + .id = CODEC , \ + .priv_data_size = sizeof(V4L2m2mPriv), \ + .priv_class = &v4l2_m2m_ ## NAME ## _dec_class, \ + .init = v4l2_decode_init, \ + .receive_frame = v4l2_receive_frame, \ + .close = ff_v4l2_m2m_codec_end, \ + .bsfs = bsf_name, \ + .capabilities = AV_CODEC_CAP_HARDWARE | AV_CODEC_CAP_DELAY, \ + AV_CODEC_CAP_AVOID_PROBING, \ + .wrapper_name = "v4l2m2m", \ + }; M2MDEC(h264, "H.264", AV_CODEC_ID_H264, "h264_mp4toannexb"); M2MDEC(hevc, "HEVC", AV_CODEC_ID_HEVC, "hevc_mp4toannexb");