[FFmpeg-devel] [PATCH 1/3] avcodec/av1dec: Pass AVCodecContext* as logctx in get_sw_pixel_format()
Andreas Rheinhardt
andreas.rheinhardt at outlook.com
Wed Sep 13 11:43:59 EEST 2023
James Almer:
> On 9/12/2023 9:22 PM, Andreas Rheinhardt wrote:
>> Andreas Rheinhardt:
>>> It indicates to the reader that said function does not modify
>>> any state.
>>>
>>> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
>>> ---
>>> libavcodec/av1dec.c | 12 ++++++------
>>> 1 file changed, 6 insertions(+), 6 deletions(-)
>>>
>>> diff --git a/libavcodec/av1dec.c b/libavcodec/av1dec.c
>>> index 8f9c2dfefb..8f6c4f732e 100644
>>> --- a/libavcodec/av1dec.c
>>> +++ b/libavcodec/av1dec.c
>>> @@ -440,7 +440,7 @@ static int get_tiles_info(AVCodecContext *avctx,
>>> const AV1RawTileGroup *tile_gro
>>> }
>>> -static enum AVPixelFormat get_sw_pixel_format(AVCodecContext *avctx,
>>> +static enum AVPixelFormat get_sw_pixel_format(void *logctx,
>>> const
>>> AV1RawSequenceHeader *seq)
>>> {
>>> uint8_t bit_depth;
>>> @@ -451,7 +451,7 @@ static enum AVPixelFormat
>>> get_sw_pixel_format(AVCodecContext *avctx,
>>> else if (seq->seq_profile <= 2)
>>> bit_depth = seq->color_config.high_bitdepth ? 10 : 8;
>>> else {
>>> - av_log(avctx, AV_LOG_ERROR,
>>> + av_log(logctx, AV_LOG_ERROR,
>>> "Unknown AV1 profile %d.\n", seq->seq_profile);
>>> return -1;
>>> }
>>> @@ -467,7 +467,7 @@ static enum AVPixelFormat
>>> get_sw_pixel_format(AVCodecContext *avctx,
>>> else if (bit_depth == 12)
>>> pix_fmt = AV_PIX_FMT_YUV444P12;
>>> else
>>> - av_log(avctx, AV_LOG_WARNING, "Unknown AV1 pixel
>>> format.\n");
>>> + av_log(logctx, AV_LOG_WARNING, "Unknown AV1 pixel
>>> format.\n");
>>> } else if (seq->color_config.subsampling_x == 1 &&
>>> seq->color_config.subsampling_y == 0) {
>>> if (bit_depth == 8)
>>> @@ -477,7 +477,7 @@ static enum AVPixelFormat
>>> get_sw_pixel_format(AVCodecContext *avctx,
>>> else if (bit_depth == 12)
>>> pix_fmt = AV_PIX_FMT_YUV422P12;
>>> else
>>> - av_log(avctx, AV_LOG_WARNING, "Unknown AV1 pixel
>>> format.\n");
>>> + av_log(logctx, AV_LOG_WARNING, "Unknown AV1 pixel
>>> format.\n");
>>> } else if (seq->color_config.subsampling_x == 1 &&
>>> seq->color_config.subsampling_y == 1) {
>>> if (bit_depth == 8)
>>> @@ -487,7 +487,7 @@ static enum AVPixelFormat
>>> get_sw_pixel_format(AVCodecContext *avctx,
>>> else if (bit_depth == 12)
>>> pix_fmt = AV_PIX_FMT_YUV420P12;
>>> else
>>> - av_log(avctx, AV_LOG_WARNING, "Unknown AV1 pixel
>>> format.\n");
>>> + av_log(logctx, AV_LOG_WARNING, "Unknown AV1 pixel
>>> format.\n");
>>> }
>>> } else {
>>> if (bit_depth == 8)
>>> @@ -497,7 +497,7 @@ static enum AVPixelFormat
>>> get_sw_pixel_format(AVCodecContext *avctx,
>>> else if (bit_depth == 12)
>>> pix_fmt = AV_PIX_FMT_GRAY12;
>>> else
>>> - av_log(avctx, AV_LOG_WARNING, "Unknown AV1 pixel
>>> format.\n");
>>> + av_log(logctx, AV_LOG_WARNING, "Unknown AV1 pixel
>>> format.\n");
>>> }
>>> return pix_fmt;
>>
>> Will apply this patchset tonight unless there are objections.
>
> Not against it, but this reminds me I'd really like a way to pass a
> const pointer to av_log().
In this case you should take a look at bsf.c whose item_name callback
modifies the underlying AVClass-enabled context. (It also does not
bother with error checks.)
- Andreas
More information about the ffmpeg-devel
mailing list