mirror of
https://gitee.com/openharmony/third_party_ffmpeg
synced 2024-11-23 19:30:05 +00:00
lavfi: deprecate aconvert.
This filter is not required anymore with aformat. Drop it at next bump.
This commit is contained in:
parent
71ef1ec7b4
commit
9ab221f8d8
@ -37,7 +37,7 @@
|
||||
#include <libavfilter/buffersink.h>
|
||||
#include <libavfilter/buffersrc.h>
|
||||
|
||||
const char *filter_descr = "aresample=8000,aconvert=s16:mono";
|
||||
const char *filter_descr = "aresample=8000,aformat=sample_fmts=s16:channel_layouts=mono";
|
||||
const char *player = "ffplay -f s16le -ar 8000 -ac 1 -";
|
||||
|
||||
static AVFormatContext *fmt_ctx;
|
||||
|
@ -393,17 +393,17 @@ Appending @code{:v} to it will do exactly that.
|
||||
Use @option{-dumpgraph -} to find out exactly where the channel layout is
|
||||
lost.
|
||||
|
||||
Most likely, it is through @code{auto-inserted aconvert}. Try to understand
|
||||
Most likely, it is through @code{auto-inserted aresample}. Try to understand
|
||||
why the converting filter was needed at that place.
|
||||
|
||||
Just before the output is a likely place, as @option{-f lavfi} currently
|
||||
only support packed S16.
|
||||
|
||||
Then insert the correct @code{aconvert} explicitly in the filtergraph,
|
||||
Then insert the correct @code{aformat} explicitly in the filtergraph,
|
||||
specifying the exact format.
|
||||
|
||||
@example
|
||||
aconvert=s16:stereo:packed
|
||||
aformat=sample_fmts=s16:channel_layouts=stereo
|
||||
@end example
|
||||
|
||||
@section Why does FFmpeg not see the subtitles in my VOB file?
|
||||
|
@ -283,6 +283,8 @@ Below is a description of the currently available audio filters.
|
||||
|
||||
Convert the input audio format to the specified formats.
|
||||
|
||||
@emph{This filter is deprecated. Use @ref{aformat} instead.}
|
||||
|
||||
The filter accepts a string of the form:
|
||||
"@var{sample_format}:@var{channel_layout}".
|
||||
|
||||
|
@ -45,6 +45,8 @@ static av_cold int init(AVFilterContext *ctx, const char *args0)
|
||||
int ret = 0;
|
||||
char *args = av_strdup(args0);
|
||||
|
||||
av_log(ctx, AV_LOG_WARNING, "This filter is deprecated, use aformat instead\n");
|
||||
|
||||
aconvert->out_sample_fmt = AV_SAMPLE_FMT_NONE;
|
||||
aconvert->out_chlayout = 0;
|
||||
|
||||
|
@ -45,7 +45,9 @@ void avfilter_register_all(void)
|
||||
return;
|
||||
initialized = 1;
|
||||
|
||||
#if FF_API_ACONVERT_FILTER
|
||||
REGISTER_FILTER(ACONVERT, aconvert, af);
|
||||
#endif
|
||||
REGISTER_FILTER(AFADE, afade, af);
|
||||
REGISTER_FILTER(AFORMAT, aformat, af);
|
||||
REGISTER_FILTER(ALLPASS, allpass, af);
|
||||
|
@ -675,7 +675,9 @@ static int process_options(AVFilterContext *ctx, AVDictionary **options,
|
||||
// TODO: drop me
|
||||
static const char *const filters_left_to_update[] = {
|
||||
"abuffer",
|
||||
#if FF_API_ACONVERT_FILTER
|
||||
"aconvert",
|
||||
#endif
|
||||
"atempo",
|
||||
"buffer",
|
||||
"mp",
|
||||
|
@ -98,7 +98,7 @@ int avfilter_graph_create_filter(AVFilterContext **filt_ctx, AVFilter *filt,
|
||||
* Enable or disable automatic format conversion inside the graph.
|
||||
*
|
||||
* Note that format conversion can still happen inside explicitly inserted
|
||||
* scale and aconvert filters.
|
||||
* scale and aresample filters.
|
||||
*
|
||||
* @param flags any of the AVFILTER_AUTO_CONVERT_* constants
|
||||
*/
|
||||
|
@ -66,5 +66,8 @@
|
||||
#ifndef FF_API_OLD_FILTER_OPTS
|
||||
#define FF_API_OLD_FILTER_OPTS (LIBAVFILTER_VERSION_MAJOR < 4)
|
||||
#endif
|
||||
#ifndef FF_API_ACONVERT_FILTER
|
||||
#define FF_API_ACONVERT_FILTER (LIBAVFILTER_VERSION_MAJOR < 4)
|
||||
#endif
|
||||
|
||||
#endif /* AVFILTER_VERSION_H */
|
||||
|
Loading…
Reference in New Issue
Block a user