[FFmpeg-devel] [PATCH 1/7] avcodec/pcm: Remove always-false check

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Sat Mar 15 06:55:59 EET 2025


Ramiro Polla:
> 
> On 3/13/25 06:49, Andreas Rheinhardt wrote:
>> Patches attached.
> 
> 
> [PATCH 2/7] avcodec/pcm: Cache sample_size value
> 
>> diff --git a/libavcodec/pcm.c b/libavcodec/pcm.c
>> index 5d8dcb8ff0..620acf0f46 100644
>> --- a/libavcodec/pcm.c
>> +++ b/libavcodec/pcm.c
>> @@ -328,17 +335,14 @@ static int pcm_decode_frame(AVCodecContext
>> *avctx, AVFrame *frame,
>>      int buf_size       = avpkt->size;
>>      PCMDecode *s       = avctx->priv_data;
>>      int channels       = avctx->ch_layout.nb_channels;
>> -    int sample_size, c, n, ret, samples_per_block;
>> +    int sample_size = s->sample_size, c, n, ret, samples_per_block;
>>      uint8_t *samples;
>>      int32_t *dst_int32_t;
> 
> Could you put sample_size on its own line? It gets a little confusing
> with the first variable being initialized, but the subsequent variables
> being uninitialized.
> 

Sure.

> 
> [PATCH 3/7] avcodec/pcm: Remove duplication from FFCodec define macros
> 
>> diff --git a/libavcodec/pcm.c b/libavcodec/pcm.c
>> index 620acf0f46..6c1feecca3 100644
>> --- a/libavcodec/pcm.c
>> +++ b/libavcodec/pcm.c
> [...]
>> +//       AV_CODEC_ID_*       pcm_* name
>> +//                 AV_SAMPLE_FMT_*               long name
>> +PCM_CODEC  (ALAW,         S16, alaw,         "PCM A-law / G.711 A-law");
>> +PCM_DECODER(F16LE,        FLT, f16le,        "PCM 16.8 floating point
>> little-endian");
> 
> The labels don't align with the fields.

I actually made it so that the field is below the middle of the label.
You prefer the following I presume:
//AV_CODEC_ID_*            pcm_* name
//          AV_SAMPLE_FMT_*                  long name
PCM_CODEC  (ALAW,         S16, alaw,         "PCM A-law / G.711 A-law");

> 
> And in the next patch ([PATCH 4/7] avcodec/pcm: Don't allocate LUT when
> unused), with the introduction of PCM_CODEC_EXT(), the alignment of
> PCM_CODEC/PCM_DECODER/PCM_CODEC_EXT is lost.
> 

Only for a few codecs and only for the first field. Is this really so
important? I'd consider it worse if there were "PCM_CODEC    (" instead
of "PCM_CODEC  (" everywhere else. (Of course, this point were moot if
you had an idea for macro name shorter than PCM_CODEC_EXT.)

- Andreas



More information about the ffmpeg-devel mailing list