Compare commits
No commits in common. "642d90e9b64926c527d1fed816927d35ed56f2b5" and "b625df9191dd6d40a3877b305baedabcfe3b8020" have entirely different histories.
642d90e9b6
...
b625df9191
7 changed files with 12 additions and 101 deletions
6
Makefile
6
Makefile
|
@ -1,5 +1,5 @@
|
||||||
SRCS := AudioLib/main.c
|
SRCS := AudioLib/main.c
|
||||||
INCLUDES := -Iaudio/
|
INCLUDES := -Iaudio/include
|
||||||
|
|
||||||
BUILDDIR = .build
|
BUILDDIR = .build
|
||||||
TARGET := libaudio-test
|
TARGET := libaudio-test
|
||||||
|
@ -13,7 +13,7 @@ CFLAGS = --std=gnu99 -Wall
|
||||||
all: $(TARGET)
|
all: $(TARGET)
|
||||||
|
|
||||||
$(TARGET): $(OBJS) | audiolib
|
$(TARGET): $(OBJS) | audiolib
|
||||||
$(CC) `$(PKGCONFIG) --libs ao` -Laudio/.build/ -Laudio/.build/libmad -Laudio/.build/speexdsp -Laudio/.build/libfaad2 -o $(TARGET) $(OBJS) -laudio -lmad -lspeexresampler -lfaad2 -lm
|
$(CC) `$(PKGCONFIG) --libs ao` -Laudio/.build/ -Laudio/.build/libmad -Laudio/.build/speexdsp -o $(TARGET) $(OBJS) -laudio -lmad -lspeexresampler -lm
|
||||||
|
|
||||||
audiolib:
|
audiolib:
|
||||||
(cd audio; make)
|
(cd audio; make)
|
||||||
|
@ -26,7 +26,7 @@ $(OBJS): | $(BUILDDIR)
|
||||||
$(BUILDDIR):
|
$(BUILDDIR):
|
||||||
mkdir -p $(BUILDDIR)/AudioLib
|
mkdir -p $(BUILDDIR)/AudioLib
|
||||||
|
|
||||||
.PHONY: clean audiolib
|
.PHONY: clean
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
-rm $(OBJS)
|
-rm $(OBJS)
|
||||||
|
|
17
Readme.md
17
Readme.md
|
@ -106,22 +106,6 @@ Currently not a lot of elements are implemented, but these here are:
|
||||||
- What it does: Takes MP3 frames from demuxer and decodes them to 16 Bit audio samples
|
- What it does: Takes MP3 frames from demuxer and decodes them to 16 Bit audio samples
|
||||||
- Dependencies: modified `libmad` in `deps/mp3`
|
- Dependencies: modified `libmad` in `deps/mp3`
|
||||||
|
|
||||||
### Demuxer: ADTS
|
|
||||||
|
|
||||||
- Include: `audio_demuxer_adts.h`
|
|
||||||
- Create: `audio_demuxer_adts();`
|
|
||||||
- What it does: Finds sync marker in input data stream and assembles complete AAC Frames to be emitted to decoder
|
|
||||||
|
|
||||||
### Decoder: AAC
|
|
||||||
|
|
||||||
- Include: `audio_decoder_aac.h`
|
|
||||||
- Create: `audio_decoder_aac();`
|
|
||||||
- What it does: Takes AAC frames from demuxer and decodes them to 16 Bit audio samples
|
|
||||||
- Dependencies: modified `libfaad2` in `deps/aac`
|
|
||||||
|
|
||||||
You can configure the AAC decoder and disable for example HE-AAC (called SBR there) by editing
|
|
||||||
`config.h` in `deps/aac`.
|
|
||||||
|
|
||||||
### Filter: Resample
|
### Filter: Resample
|
||||||
|
|
||||||
- Include: `audio_filter_resample.h`
|
- Include: `audio_filter_resample.h`
|
||||||
|
@ -214,6 +198,7 @@ A list of filters, demuxers and decoders that are planned to be implemented in t
|
||||||
|
|
||||||
- Demuxer: ISO MPEG 4 Containers (mp4/mov)
|
- Demuxer: ISO MPEG 4 Containers (mp4/mov)
|
||||||
- Demuxer: OGG (for Vorbis and Opus)
|
- Demuxer: OGG (for Vorbis and Opus)
|
||||||
|
- Decoder: AAC
|
||||||
- Decoder: FLAC
|
- Decoder: FLAC
|
||||||
- Decoder: OPUS
|
- Decoder: OPUS
|
||||||
- Decoder: Vorbis
|
- Decoder: Vorbis
|
||||||
|
|
|
@ -5,14 +5,12 @@ SRCS := \
|
||||||
audio_source_testtone.c \
|
audio_source_testtone.c \
|
||||||
audio_demuxer_mp3.c \
|
audio_demuxer_mp3.c \
|
||||||
audio_decoder_mp3.c \
|
audio_decoder_mp3.c \
|
||||||
audio_demuxer_adts.c \
|
|
||||||
audio_decoder_aac.c \
|
|
||||||
audio_filter_param_eq.c \
|
audio_filter_param_eq.c \
|
||||||
audio_filter_resample.c \
|
audio_filter_resample.c \
|
||||||
audio_sink_file.c \
|
audio_sink_file.c \
|
||||||
audio_sink_libao.c
|
audio_sink_libao.c
|
||||||
|
|
||||||
INCLUDES := -Iinclude `pkg-config --cflags ao`
|
INCLUDES := -Iinclude
|
||||||
|
|
||||||
BUILDDIR = .build
|
BUILDDIR = .build
|
||||||
TARGET := $(BUILDDIR)/libaudio.a
|
TARGET := $(BUILDDIR)/libaudio.a
|
||||||
|
@ -20,9 +18,9 @@ OBJS := $(addprefix $(BUILDDIR)/, $(patsubst %.c,%.o, $(SRCS)))
|
||||||
|
|
||||||
CC = gcc
|
CC = gcc
|
||||||
AR = ar
|
AR = ar
|
||||||
CFLAGS = --std=gnu99 -Wall -Os
|
CFLAGS = --std=gnu99 -Wall
|
||||||
|
|
||||||
all: $(TARGET) $(BUILDDIR)/libmad/libmad.a $(BUILDDIR)/speexdsp/libspeexresampler.a $(BUILDDIR)/libfaad2/libfaad2.a
|
all: $(TARGET) $(BUILDDIR)/libmad/libmad.a $(BUILDDIR)/speexdsp/libspeexresampler.a
|
||||||
|
|
||||||
$(TARGET): $(OBJS)
|
$(TARGET): $(OBJS)
|
||||||
$(AR) -cr $(TARGET) $(OBJS)
|
$(AR) -cr $(TARGET) $(OBJS)
|
||||||
|
@ -33,10 +31,7 @@ $(BUILDDIR)/libmad/libmad.a:
|
||||||
$(BUILDDIR)/speexdsp/libspeexresampler.a:
|
$(BUILDDIR)/speexdsp/libspeexresampler.a:
|
||||||
(cd deps/resampler; make BUILDDIR=$(abspath $(BUILDDIR)/speexdsp))
|
(cd deps/resampler; make BUILDDIR=$(abspath $(BUILDDIR)/speexdsp))
|
||||||
|
|
||||||
$(BUILDDIR)/libfaad2/libfaad2.a:
|
$(BUILDDIR)/%.o: %.c include/%.h
|
||||||
(cd deps/aac; make BUILDDIR=$(abspath $(BUILDDIR)/libfaad2))
|
|
||||||
|
|
||||||
$(BUILDDIR)/%.o: %.c %.h
|
|
||||||
$(CC) $(INCLUDES) $(CFLAGS) -c $< -o $@
|
$(CC) $(INCLUDES) $(CFLAGS) -c $< -o $@
|
||||||
|
|
||||||
$(OBJS): | $(BUILDDIR)
|
$(OBJS): | $(BUILDDIR)
|
||||||
|
@ -50,5 +45,4 @@ clean:
|
||||||
-rm $(OBJS)
|
-rm $(OBJS)
|
||||||
-rm $(TARGET)
|
-rm $(TARGET)
|
||||||
(cd deps/mp3; make BUILDDIR=$(abspath $(BUILDDIR)/libmad) clean)
|
(cd deps/mp3; make BUILDDIR=$(abspath $(BUILDDIR)/libmad) clean)
|
||||||
(cd deps/resampler; make BUILDDIR=$(abspath $(BUILDDIR)/speexdsp) clean)
|
(cd deps/resampler; make BUILDDIR=$(abspath $(BUILDDIR)/speexdsp) clean)
|
||||||
(cd deps/aac; make BUILDDIR=$(abspath $(BUILDDIR)/libfaad2) clean)
|
|
|
@ -1,68 +0,0 @@
|
||||||
SRCS := \
|
|
||||||
bits.c \
|
|
||||||
cfft.c \
|
|
||||||
common.c \
|
|
||||||
decoder.c \
|
|
||||||
drc.c \
|
|
||||||
drm_dec.c \
|
|
||||||
error.c \
|
|
||||||
filtbank.c \
|
|
||||||
hcr.c \
|
|
||||||
huffman.c \
|
|
||||||
ic_predict.c \
|
|
||||||
is.c \
|
|
||||||
lt_predict.c \
|
|
||||||
mdct.c \
|
|
||||||
mp4.c \
|
|
||||||
ms.c \
|
|
||||||
output.c \
|
|
||||||
pns.c \
|
|
||||||
ps_dec.c \
|
|
||||||
ps_syntax.c \
|
|
||||||
pulse.c \
|
|
||||||
rvlc.c \
|
|
||||||
sbr_dct.c \
|
|
||||||
sbr_dec.c \
|
|
||||||
sbr_e_nf.c \
|
|
||||||
sbr_fbt.c \
|
|
||||||
sbr_hfadj.c \
|
|
||||||
sbr_hfgen.c \
|
|
||||||
sbr_huff.c \
|
|
||||||
sbr_qmf.c \
|
|
||||||
sbr_syntax.c \
|
|
||||||
sbr_tf_grid.c \
|
|
||||||
specrec.c \
|
|
||||||
ssr_fb.c \
|
|
||||||
ssr_ipqf.c \
|
|
||||||
ssr.c \
|
|
||||||
syntax.c \
|
|
||||||
tns.c
|
|
||||||
|
|
||||||
|
|
||||||
BUILDDIR = .build
|
|
||||||
TARGET := $(BUILDDIR)/libfaad2.a
|
|
||||||
OBJS := $(addprefix $(BUILDDIR)/, $(patsubst %.c,%.o, $(SRCS)))
|
|
||||||
|
|
||||||
CC = gcc
|
|
||||||
AR = ar
|
|
||||||
CFLAGS = --std=gnu99 -Wall -Os
|
|
||||||
INCLUDES = -I.
|
|
||||||
|
|
||||||
all: $(TARGET)
|
|
||||||
|
|
||||||
$(TARGET): $(OBJS)
|
|
||||||
$(AR) -cr $(TARGET) $(OBJS)
|
|
||||||
|
|
||||||
$(BUILDDIR)/%.o: %.c config.h
|
|
||||||
$(CC) $(CFLAGS) $(INCLUDES) -c $< -o $@
|
|
||||||
|
|
||||||
$(OBJS): | $(BUILDDIR)
|
|
||||||
|
|
||||||
$(BUILDDIR):
|
|
||||||
mkdir -p $(BUILDDIR)
|
|
||||||
|
|
||||||
.PHONY: clean
|
|
||||||
|
|
||||||
clean:
|
|
||||||
-rm $(OBJS)
|
|
||||||
-rm $(TARGET)
|
|
|
@ -29,7 +29,7 @@
|
||||||
/* Allow decoding of Digital Radio Mondiale (DRM) */
|
/* Allow decoding of Digital Radio Mondiale (DRM) */
|
||||||
#undef DRM_SUPPORT
|
#undef DRM_SUPPORT
|
||||||
|
|
||||||
/* Define DISABLE_SBR if you want to disable SBR decoding. (HE-AAC) */
|
/* Define DISABLE_SBR if you want to disable SBR decoding. */
|
||||||
#undef DISABLE_SBR
|
#undef DISABLE_SBR
|
||||||
|
|
||||||
/* Define SBR_LOW_POWER if you want only low power SBR decoding without PS. */
|
/* Define SBR_LOW_POWER if you want only low power SBR decoding without PS. */
|
||||||
|
|
|
@ -17,7 +17,7 @@ OBJS := $(addprefix $(BUILDDIR)/, $(patsubst %.c,%.o, $(SRCS)))
|
||||||
|
|
||||||
CC = gcc
|
CC = gcc
|
||||||
AR = ar
|
AR = ar
|
||||||
CFLAGS = --std=gnu99 -Wall -Os
|
CFLAGS = --std=gnu99 -Wall
|
||||||
|
|
||||||
all: $(TARGET)
|
all: $(TARGET)
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ OBJS := $(addprefix $(BUILDDIR)/, $(patsubst %.c,%.o, $(SRCS)))
|
||||||
|
|
||||||
CC = gcc
|
CC = gcc
|
||||||
AR = ar
|
AR = ar
|
||||||
CFLAGS = --std=gnu99 -Wall -Os
|
CFLAGS = --std=gnu99 -Wall
|
||||||
|
|
||||||
all: $(TARGET)
|
all: $(TARGET)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue