1
0
mirror of https://git.ffmpeg.org/ffmpeg.git synced 2026-10-24 02:09:03 +03:00
Files
ffmpeg/libswresample/Makefile
Kacper Michajłow 72b81d5b64 swresample: support AV_SAMPLE_FMT_DSD input
Convert DSD to PCM with the same 96-tap symmetric lowpass filter the
libavcodec DSD decoders use. The implementation is copied from
libavcodec/dsd.c, minus the LSBF table variants, since AV_SAMPLE_FMT_DSD
is defined as MSBF.

The libavcodec copy will be removed in future commits as decoders are
transitioned to SWR.

The conversion is stateful (per-channel filter history), so the audio
conversion functions gain a per-channel state argument.

DSD silence is the 0x69 bit pattern instead of the 0x80 used for PCM.

Only a direct DSD to float conversion function is provided. For format
pairs without a direct conversion function (e.g. DSD to s16 with equal
rates), swr_init() now falls back from the full_convert shortcut to
the generic two-stage path instead of failing, and reports unsupported
conversions with a proper error message instead of ENOMEM.

Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
2026-09-06 00:48:24 +02:00

31 lines
1002 B
Makefile

NAME = swresample
DESC = FFmpeg audio resampling library
FFLIBS = avutil
HEADERS = swresample.h \
version.h \
version_major.h \
OBJS = audioconvert.o \
dsd2pcm.o \
dither.o \
options.o \
rematrix.o \
resample.o \
resample_dsp.o \
swresample.o \
swresample_frame.o \
version.o \
OBJS-$(CONFIG_LIBSOXR) += soxr_resample.o
# Objects duplicated from other libraries for shared builds
SHLIBOBJS += log2_tab.o reverse.o
# Windows resource file
SHLIBOBJS-$(HAVE_GNU_WINDRES) += swresampleres.o
TESTPROGS = rematrix \
swresample \
swresample_resample_realloc \