[FFmpeg-devel] [PATCH 2/2] lavc/avfft: deprecate the API

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Tue Jul 25 02:19:52 EEST 2023


Lynne:
> Jul 25, 2023, 00:19 by andreas.rheinhardt at outlook.com:
> 
>> Lynne:
>>
>>> Subject: [PATCH 2/2] lavc/avfft: deprecate the API
>>>
>>> This deprecates the currently unused API.
>>>
>> ^
>>  superseded
>>
>>> ---
>>>  doc/APIchanges             |  4 ++++
>>>  libavcodec/avfft.h         | 25 +++++++++++++++++++++++++
>>>  libavcodec/tests/fft.c     |  4 ++++
>>>  libavcodec/version.h       |  2 +-
>>>  libavcodec/version_major.h |  2 ++
>>>  5 files changed, 36 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/doc/APIchanges b/doc/APIchanges
>>> index 5afe8bcb75..38fc0b1459 100644
>>> --- a/doc/APIchanges
>>> +++ b/doc/APIchanges
>>> @@ -2,6 +2,10 @@ The last version increases of all libraries were on 2023-02-09
>>>  
>>>  API changes, most recent first:
>>>  
>>> +2023-07-xx - xxxxxxxxxx - lavc 60.23.100 - avfft.h
>>> +  Deprecate av_dct, av_rdft, av_fft and av_mdct.
>>>
>>
>> This should mention that the whole header is deprecated and will be removed.
>>
>>> +  Replaced by libavutil/tx.h
>>> +
>>>  2023-07-xx - xxxxxxxxxx - lavc 60 - avcodec.h
>>>  Deprecate AV_CODEC_FLAG_DROPCHANGED without replacement.
>>>  
>>> diff --git a/libavcodec/avfft.h b/libavcodec/avfft.h
>>> index 0c0f9b8d8d..6401833089 100644
>>> --- a/libavcodec/avfft.h
>>> +++ b/libavcodec/avfft.h
>>> @@ -19,6 +19,10 @@
>>>  #ifndef AVCODEC_AVFFT_H
>>>  #define AVCODEC_AVFFT_H
>>>  
>>> +#include "libavutil/attributes.h"
>>> +#include "version_major.h"
>>> +#if FF_API_AVFFT
>>> +
>>>  /**
>>>  * @file
>>>  * @ingroup lavc_fft
>>> @@ -44,26 +48,38 @@ typedef struct FFTContext FFTContext;
>>>  * Set up a complex FFT.
>>>  * @param nbits           log2 of the length of the input array
>>>  * @param inverse         if 0 perform the forward transform, if 1 perform the inverse
>>> + * @deprecated use AVTXContext from libavutil/tx.h
>>>  */
>>> +attribute_deprecated
>>>  FFTContext *av_fft_init(int nbits, int inverse);
>>>  
>>>  /**
>>>  * Do the permutation needed BEFORE calling ff_fft_calc().
>>> + * @deprecated use AVTXContext from libavutil/tx.h
>>>  */
>>> +attribute_deprecated
>>>  void av_fft_permute(FFTContext *s, FFTComplex *z);
>>>  
>>>  /**
>>>  * Do a complex FFT with the parameters defined in av_fft_init(). The
>>>  * input data must be permuted before. No 1.0/sqrt(n) normalization is done.
>>> + * @deprecated use AVTXContext from libavutil/tx.h
>>>
>>
>> This deprecation warning is supposed to apply to av_fft_calc() and
>> apparently AVTXContext is not a replacement for av_fft_calc(). Probably
>> better to write something like: "Use the AVTX API from libavutil/tx.h."
>>
> 
> v2 attached. Added a comment to both APIchanges
> on a replacement, and added comments to this file to
> indicate how to replace each functionality.
> 

Looks good to me. But wait a day so that others (Anton?) can take a look
at it, too.

- Andreas



More information about the ffmpeg-devel mailing list