diff mbox series

[FFmpeg-devel] avcodec/opusdec: stop setting deprecated swr options

Message ID 20220923195144.9615-1-jamrial@gmail.com
State New
Headers show
Series [FFmpeg-devel] avcodec/opusdec: stop setting deprecated swr options | expand

Checks

Context Check Description
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished

Commit Message

James Almer Sept. 23, 2022, 7:51 p.m. UTC
Signed-off-by: James Almer <jamrial@gmail.com>
---
 libavcodec/opusdec.c | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

Comments

Andreas Rheinhardt Sept. 23, 2022, 7:55 p.m. UTC | #1
James Almer:
> Signed-off-by: James Almer <jamrial@gmail.com>
> ---
>  libavcodec/opusdec.c | 11 +++++++----
>  1 file changed, 7 insertions(+), 4 deletions(-)
> 
> diff --git a/libavcodec/opusdec.c b/libavcodec/opusdec.c
> index c04aa598b8..8b10bd1a25 100644
> --- a/libavcodec/opusdec.c
> +++ b/libavcodec/opusdec.c
> @@ -640,7 +640,7 @@ static av_cold int opus_decode_init(AVCodecContext *avctx)
>  
>      for (i = 0; i < c->nb_streams; i++) {
>          OpusStreamContext *s = &c->streams[i];
> -        uint64_t layout;
> +        AVChannelLayout layout;
>  
>          s->output_channels = (i < c->nb_stereo_streams) ? 2 : 1;
>  
> @@ -658,14 +658,17 @@ static av_cold int opus_decode_init(AVCodecContext *avctx)
>          if (!s->swr)
>              return AVERROR(ENOMEM);
>  
> -        layout = (s->output_channels == 1) ? AV_CH_LAYOUT_MONO : AV_CH_LAYOUT_STEREO;
> +        layout = (s->output_channels == 1) ? (AVChannelLayout)AV_CHANNEL_LAYOUT_MONO :
> +                                             (AVChannelLayout)AV_CHANNEL_LAYOUT_STEREO;
>          av_opt_set_int(s->swr, "in_sample_fmt",      avctx->sample_fmt,  0);
>          av_opt_set_int(s->swr, "out_sample_fmt",     avctx->sample_fmt,  0);
> -        av_opt_set_int(s->swr, "in_channel_layout",  layout,             0);
> -        av_opt_set_int(s->swr, "out_channel_layout", layout,             0);
> +        av_opt_set_chlayout(s->swr, "in_chlayout",   &layout,            0);
> +        av_opt_set_chlayout(s->swr, "out_chlayout",  &layout,            0);
>          av_opt_set_int(s->swr, "out_sample_rate",    avctx->sample_rate, 0);
>          av_opt_set_int(s->swr, "filter_size",        16,                 0);
>  
> +        av_channel_layout_uninit(&layout);

Unnecessary. You are not even using any of the av_channel_layout*
function to init layout.

> +
>          ret = ff_silk_init(avctx, &s->silk, s->output_channels);
>          if (ret < 0)
>              return ret;
James Almer Sept. 23, 2022, 8:02 p.m. UTC | #2
On 9/23/2022 4:55 PM, Andreas Rheinhardt wrote:
> James Almer:
>> Signed-off-by: James Almer <jamrial@gmail.com>
>> ---
>>   libavcodec/opusdec.c | 11 +++++++----
>>   1 file changed, 7 insertions(+), 4 deletions(-)
>>
>> diff --git a/libavcodec/opusdec.c b/libavcodec/opusdec.c
>> index c04aa598b8..8b10bd1a25 100644
>> --- a/libavcodec/opusdec.c
>> +++ b/libavcodec/opusdec.c
>> @@ -640,7 +640,7 @@ static av_cold int opus_decode_init(AVCodecContext *avctx)
>>   
>>       for (i = 0; i < c->nb_streams; i++) {
>>           OpusStreamContext *s = &c->streams[i];
>> -        uint64_t layout;
>> +        AVChannelLayout layout;
>>   
>>           s->output_channels = (i < c->nb_stereo_streams) ? 2 : 1;
>>   
>> @@ -658,14 +658,17 @@ static av_cold int opus_decode_init(AVCodecContext *avctx)
>>           if (!s->swr)
>>               return AVERROR(ENOMEM);
>>   
>> -        layout = (s->output_channels == 1) ? AV_CH_LAYOUT_MONO : AV_CH_LAYOUT_STEREO;
>> +        layout = (s->output_channels == 1) ? (AVChannelLayout)AV_CHANNEL_LAYOUT_MONO :
>> +                                             (AVChannelLayout)AV_CHANNEL_LAYOUT_STEREO;
>>           av_opt_set_int(s->swr, "in_sample_fmt",      avctx->sample_fmt,  0);
>>           av_opt_set_int(s->swr, "out_sample_fmt",     avctx->sample_fmt,  0);
>> -        av_opt_set_int(s->swr, "in_channel_layout",  layout,             0);
>> -        av_opt_set_int(s->swr, "out_channel_layout", layout,             0);
>> +        av_opt_set_chlayout(s->swr, "in_chlayout",   &layout,            0);
>> +        av_opt_set_chlayout(s->swr, "out_chlayout",  &layout,            0);
>>           av_opt_set_int(s->swr, "out_sample_rate",    avctx->sample_rate, 0);
>>           av_opt_set_int(s->swr, "filter_size",        16,                 0);
>>   
>> +        av_channel_layout_uninit(&layout);
> 
> Unnecessary. You are not even using any of the av_channel_layout*
> function to init layout.

I know it's unnecessary, but it's to promote the good habit of 
uninitializing layouts when you're done with them.

> 
>> +
>>           ret = ff_silk_init(avctx, &s->silk, s->output_channels);
>>           if (ret < 0)
>>               return ret;
> 
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
Andreas Rheinhardt Sept. 23, 2022, 8:04 p.m. UTC | #3
James Almer:
> On 9/23/2022 4:55 PM, Andreas Rheinhardt wrote:
>> James Almer:
>>> Signed-off-by: James Almer <jamrial@gmail.com>
>>> ---
>>>   libavcodec/opusdec.c | 11 +++++++----
>>>   1 file changed, 7 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/libavcodec/opusdec.c b/libavcodec/opusdec.c
>>> index c04aa598b8..8b10bd1a25 100644
>>> --- a/libavcodec/opusdec.c
>>> +++ b/libavcodec/opusdec.c
>>> @@ -640,7 +640,7 @@ static av_cold int
>>> opus_decode_init(AVCodecContext *avctx)
>>>         for (i = 0; i < c->nb_streams; i++) {
>>>           OpusStreamContext *s = &c->streams[i];
>>> -        uint64_t layout;
>>> +        AVChannelLayout layout;
>>>             s->output_channels = (i < c->nb_stereo_streams) ? 2 : 1;
>>>   @@ -658,14 +658,17 @@ static av_cold int
>>> opus_decode_init(AVCodecContext *avctx)
>>>           if (!s->swr)
>>>               return AVERROR(ENOMEM);
>>>   -        layout = (s->output_channels == 1) ? AV_CH_LAYOUT_MONO :
>>> AV_CH_LAYOUT_STEREO;
>>> +        layout = (s->output_channels == 1) ?
>>> (AVChannelLayout)AV_CHANNEL_LAYOUT_MONO :
>>> +                                            
>>> (AVChannelLayout)AV_CHANNEL_LAYOUT_STEREO;
>>>           av_opt_set_int(s->swr, "in_sample_fmt",     
>>> avctx->sample_fmt,  0);
>>>           av_opt_set_int(s->swr, "out_sample_fmt",    
>>> avctx->sample_fmt,  0);
>>> -        av_opt_set_int(s->swr, "in_channel_layout", 
>>> layout,             0);
>>> -        av_opt_set_int(s->swr, "out_channel_layout",
>>> layout,             0);
>>> +        av_opt_set_chlayout(s->swr, "in_chlayout",  
>>> &layout,            0);
>>> +        av_opt_set_chlayout(s->swr, "out_chlayout", 
>>> &layout,            0);
>>>           av_opt_set_int(s->swr, "out_sample_rate",   
>>> avctx->sample_rate, 0);
>>>           av_opt_set_int(s->swr, "filter_size",       
>>> 16,                 0);
>>>   +        av_channel_layout_uninit(&layout);
>>
>> Unnecessary. You are not even using any of the av_channel_layout*
>> function to init layout.
> 
> I know it's unnecessary, but it's to promote the good habit of
> uninitializing layouts when you're done with them.
> 

A habit of unnecessary calls is not good.

- Andreas
diff mbox series

Patch

diff --git a/libavcodec/opusdec.c b/libavcodec/opusdec.c
index c04aa598b8..8b10bd1a25 100644
--- a/libavcodec/opusdec.c
+++ b/libavcodec/opusdec.c
@@ -640,7 +640,7 @@  static av_cold int opus_decode_init(AVCodecContext *avctx)
 
     for (i = 0; i < c->nb_streams; i++) {
         OpusStreamContext *s = &c->streams[i];
-        uint64_t layout;
+        AVChannelLayout layout;
 
         s->output_channels = (i < c->nb_stereo_streams) ? 2 : 1;
 
@@ -658,14 +658,17 @@  static av_cold int opus_decode_init(AVCodecContext *avctx)
         if (!s->swr)
             return AVERROR(ENOMEM);
 
-        layout = (s->output_channels == 1) ? AV_CH_LAYOUT_MONO : AV_CH_LAYOUT_STEREO;
+        layout = (s->output_channels == 1) ? (AVChannelLayout)AV_CHANNEL_LAYOUT_MONO :
+                                             (AVChannelLayout)AV_CHANNEL_LAYOUT_STEREO;
         av_opt_set_int(s->swr, "in_sample_fmt",      avctx->sample_fmt,  0);
         av_opt_set_int(s->swr, "out_sample_fmt",     avctx->sample_fmt,  0);
-        av_opt_set_int(s->swr, "in_channel_layout",  layout,             0);
-        av_opt_set_int(s->swr, "out_channel_layout", layout,             0);
+        av_opt_set_chlayout(s->swr, "in_chlayout",   &layout,            0);
+        av_opt_set_chlayout(s->swr, "out_chlayout",  &layout,            0);
         av_opt_set_int(s->swr, "out_sample_rate",    avctx->sample_rate, 0);
         av_opt_set_int(s->swr, "filter_size",        16,                 0);
 
+        av_channel_layout_uninit(&layout);
+
         ret = ff_silk_init(avctx, &s->silk, s->output_channels);
         if (ret < 0)
             return ret;