aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthias P. Braendli <matthias.braendli@mpb.li>2016-09-09 15:00:10 +0200
committerMatthias P. Braendli <matthias.braendli@mpb.li>2016-09-10 20:16:09 +0200
commit0c0840f432c081dff796999b8254866ff0cee6c5 (patch)
tree35a95a4d39517634762b9e545f777250883c7fe8
parent14c7b800eaa23e9da7c92c7c4df397d0c191f097 (diff)
downloadODR-AudioEnc-0c0840f432c081dff796999b8254866ff0cee6c5.tar.gz
ODR-AudioEnc-0c0840f432c081dff796999b8254866ff0cee6c5.tar.bz2
ODR-AudioEnc-0c0840f432c081dff796999b8254866ff0cee6c5.zip
Link against external fdk, rename to odr-audioencoder
-rw-r--r--Makefile.am270
-rw-r--r--configure.ac9
-rw-r--r--src/odr-audioencoder.cpp (renamed from src/dabplus-enc.cpp)8
3 files changed, 43 insertions, 244 deletions
diff --git a/Makefile.am b/Makefile.am
index a71f2ae..b1138aa 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -7,29 +7,8 @@ else
GITVERSION_FLAGS =
endif
-AM_CPPFLAGS = \
- -I$(top_srcdir)/libAACdec/include \
- -I$(top_srcdir)/libAACenc/include \
- -I$(top_srcdir)/libSBRdec/include \
- -I$(top_srcdir)/libSBRenc/include \
- -I$(top_srcdir)/libMpegTPDec/include \
- -I$(top_srcdir)/libMpegTPEnc/include \
- -I$(top_srcdir)/libSYS/include \
- -I$(top_srcdir)/libFDK/include \
- -I$(top_srcdir)/libPCMutils/include
-
-libfdk_dabplus_la_LINK = $(LINK) $(libfdk_dabplus_la_LDFLAGS)
libtoolame_dab_la_LINK = $(LINK) $(libtoolame_dab_la_LDFLAGS)
# Mention a dummy pure C file to trigger generation of the $(LINK) variable
-nodist_EXTRA_libfdk_dabplus_la_SOURCES = dummy.c
-
-fdk_dabplusincludedir = $(includedir)/fdk-dabplus
-fdk_dabplusinclude_HEADERS = \
- $(top_srcdir)/libSYS/include/machine_type.h \
- $(top_srcdir)/libSYS/include/genericStds.h \
- $(top_srcdir)/libSYS/include/FDK_audio.h \
- $(top_srcdir)/libAACenc/include/aacenc_lib.h \
- $(top_srcdir)/libAACdec/include/aacdecoder_lib.h
toolame_dabincludedir = $(includedir)/libtoolame-dab
toolame_dabinclude_HEADERS = \
@@ -65,64 +44,55 @@ toolame_dabinclude_HEADERS = \
$(top_srcdir)/libtoolame-dab/utils.h
pkgconfigdir = $(libdir)/pkgconfig
-pkgconfig_DATA = fdk-dabplus.pc
-lib_LTLIBRARIES = libfdk-dabplus.la libtoolame-dab.la
+lib_LTLIBRARIES = libtoolame-dab.la
libtoolame_dab_la_CFLAGS = -fomit-frame-pointer -DNEWENCODE -std=c99
libtoolame_dab_la_LDFLAGS = -version-info @LIBTOOLAME_DAB_VERSION@ \
-no-undefined \
-export-symbols $(top_srcdir)/libtoolame-dab.sym
-libfdk_dabplus_la_CXXFLAGS = -fno-exceptions -fno-rtti -Wno-narrowing
-libfdk_dabplus_la_LDFLAGS = -version-info @FDK_AAC_VERSION@ -no-undefined \
- -export-symbols $(top_srcdir)/fdk-dabplus.sym
-
-#aac_enc_LDADD = libfdk-dabplus.la
-#aac_enc_SOURCES = src/aac-enc.c \
-# src/wavreader.c
-
if HAVE_JACK
-dabplus_enc_LDADD_JACK = -ljack
+odr_audioencoder_LDADD_JACK = -ljack
else
-dabplus_enc_LDADD_JACK =
+odr_audioencoder_LDADD_JACK =
endif
if HAVE_ALSA
-dabplus_enc_LDADD_ALSA = -lasound
+odr_audioencoder_LDADD_ALSA = -lasound
else
-dabplus_enc_LDADD_ALSA =
+odr_audioencoder_LDADD_ALSA =
endif
-dabplus_enc_LDFLAGS = -no-install
-dabplus_enc_LDADD = libfdk-dabplus.la libtoolame-dab.la \
- -lfec -lzmq \
- -lrt $(dabplus_enc_LDADD_JACK) \
- $(dabplus_enc_LDADD_ALSA) \
- $(LIBVLC_LIBS)
-dabplus_enc_CPPFLAGS = $(AM_CPPFLAGS) $(GITVERSION_FLAGS) -ggdb -O2
-dabplus_enc_SOURCES = src/dabplus-enc.cpp \
- src/FileInput.cpp \
- src/FileInput.h \
- src/AlsaInput.cpp \
- src/AlsaInput.h \
- src/JackInput.cpp \
- src/JackInput.h \
- src/VLCInput.cpp \
- src/VLCInput.h \
- src/SampleQueue.h \
- src/encryption.c \
- src/encryption.h \
- src/zmq.hpp \
- src/utils.c \
- src/utils.h \
- src/wavreader.c \
- src/charset.h \
- src/utf8.h \
- src/utf8/checked.h \
- src/utf8/unchecked.h \
- src/utf8/core.h \
- src/common.h
+odr_audioencoder_LDFLAGS = -no-install
+odr_audioencoder_LDADD = libtoolame-dab.la \
+ -lfec -lzmq \
+ -lrt $(odr_audioencoder_LDADD_JACK) \
+ $(odr_audioencoder_LDADD_ALSA) \
+ $(LIBVLC_LIBS)
+odr_audioencoder_CPPFLAGS = $(AM_CPPFLAGS) $(GITVERSION_FLAGS) -ggdb -O2
+odr_audioencoder_SOURCES = src/odr-audioencoder.cpp \
+ src/FileInput.cpp \
+ src/FileInput.h \
+ src/AlsaInput.cpp \
+ src/AlsaInput.h \
+ src/JackInput.cpp \
+ src/JackInput.h \
+ src/VLCInput.cpp \
+ src/VLCInput.h \
+ src/SampleQueue.h \
+ src/encryption.c \
+ src/encryption.h \
+ src/zmq.hpp \
+ src/utils.c \
+ src/utils.h \
+ src/wavreader.c \
+ src/charset.h \
+ src/utf8.h \
+ src/utf8/checked.h \
+ src/utf8/unchecked.h \
+ src/utf8/core.h \
+ src/common.h
mot_encoder_CXXFLAGS = $(GITVERSION_FLAGS) @MAGICKWAND_CFLAGS@ -Icontrib -Wall -Wextra
mot_encoder_LDADD = @MAGICKWAND_LDADD@
@@ -130,153 +100,11 @@ mot_encoder_SOURCES = src/mot-encoder.cpp \
contrib/lib_crc.h \
contrib/lib_crc.c
-bin_PROGRAMS = dabplus-enc$(EXEEXT) \
+bin_PROGRAMS = odr-audioencoder$(EXEEXT) \
mot-encoder$(EXEEXT)
noinst_HEADERS = src/wavreader.h
-AACDEC_SRC = \
- libAACdec/src/aacdec_drc.cpp \
- libAACdec/src/aacdec_hcr.cpp \
- libAACdec/src/aacdecoder.cpp \
- libAACdec/src/aacdec_pns.cpp \
- libAACdec/src/aac_ram.cpp \
- libAACdec/src/block.cpp \
- libAACdec/src/channelinfo.cpp \
- libAACdec/src/ldfiltbank.cpp \
- libAACdec/src/rvlcbit.cpp \
- libAACdec/src/rvlc.cpp \
- libAACdec/src/aacdec_hcr_bit.cpp \
- libAACdec/src/aacdec_hcrs.cpp \
- libAACdec/src/aacdecoder_lib.cpp \
- libAACdec/src/aacdec_tns.cpp \
- libAACdec/src/aac_rom.cpp \
- libAACdec/src/channel.cpp \
- libAACdec/src/conceal.cpp \
- libAACdec/src/pulsedata.cpp \
- libAACdec/src/rvlcconceal.cpp \
- libAACdec/src/stereo.cpp
-
-AACENC_SRC = \
- libAACenc/src/aacenc.cpp \
- libAACenc/src/aacEnc_ram.cpp \
- libAACenc/src/band_nrg.cpp \
- libAACenc/src/block_switch.cpp \
- libAACenc/src/grp_data.cpp \
- libAACenc/src/metadata_main.cpp \
- libAACenc/src/pre_echo_control.cpp \
- libAACenc/src/quantize.cpp \
- libAACenc/src/tonality.cpp \
- libAACenc/src/aacenc_hcr.cpp \
- libAACenc/src/aacEnc_rom.cpp \
- libAACenc/src/bandwidth.cpp \
- libAACenc/src/channel_map.cpp \
- libAACenc/src/intensity.cpp \
- libAACenc/src/ms_stereo.cpp \
- libAACenc/src/psy_configuration.cpp \
- libAACenc/src/sf_estim.cpp \
- libAACenc/src/transform.cpp \
- libAACenc/src/aacenc_lib.cpp \
- libAACenc/src/aacenc_tns.cpp \
- libAACenc/src/bit_cnt.cpp \
- libAACenc/src/chaosmeasure.cpp \
- libAACenc/src/line_pe.cpp \
- libAACenc/src/noisedet.cpp \
- libAACenc/src/psy_main.cpp \
- libAACenc/src/spreading.cpp \
- libAACenc/src/aacenc_pns.cpp \
- libAACenc/src/adj_thr.cpp \
- libAACenc/src/bitenc.cpp \
- libAACenc/src/dyn_bits.cpp \
- libAACenc/src/metadata_compressor.cpp \
- libAACenc/src/pnsparam.cpp \
- libAACenc/src/qc_main.cpp
-
-FDK_SRC = \
- libFDK/src/autocorr2nd.cpp \
- libFDK/src/dct.cpp \
- libFDK/src/FDK_bitbuffer.cpp \
- libFDK/src/FDK_core.cpp \
- libFDK/src/FDK_crc.cpp \
- libFDK/src/FDK_hybrid.cpp \
- libFDK/src/FDK_tools_rom.cpp \
- libFDK/src/FDK_trigFcts.cpp \
- libFDK/src/fft.cpp \
- libFDK/src/fft_rad2.cpp \
- libFDK/src/fixpoint_math.cpp \
- libFDK/src/mdct.cpp \
- libFDK/src/qmf.cpp \
- libFDK/src/scale.cpp
-
-MPEGTPDEC_SRC = \
- libMpegTPDec/src/tpdec_adif.cpp \
- libMpegTPDec/src/tpdec_adts.cpp \
- libMpegTPDec/src/tpdec_asc.cpp \
- libMpegTPDec/src/tpdec_latm.cpp \
- libMpegTPDec/src/tpdec_lib.cpp
-
-MPEGTPENC_SRC = \
- libMpegTPEnc/src/tpenc_adif.cpp \
- libMpegTPEnc/src/tpenc_adts.cpp \
- libMpegTPEnc/src/tpenc_asc.cpp \
- libMpegTPEnc/src/tpenc_dab.cpp \
- libMpegTPEnc/src/tpenc_latm.cpp \
- libMpegTPEnc/src/tpenc_lib.cpp
-
-PCMUTILS_SRC = \
- libPCMutils/src/pcmutils_lib.cpp
-
-SBRDEC_SRC = \
- libSBRdec/src/env_calc.cpp \
- libSBRdec/src/env_dec.cpp \
- libSBRdec/src/env_extr.cpp \
- libSBRdec/src/huff_dec.cpp \
- libSBRdec/src/lpp_tran.cpp \
- libSBRdec/src/psbitdec.cpp \
- libSBRdec/src/psdec.cpp \
- libSBRdec/src/psdec_hybrid.cpp \
- libSBRdec/src/sbr_crc.cpp \
- libSBRdec/src/sbr_deb.cpp \
- libSBRdec/src/sbr_dec.cpp \
- libSBRdec/src/sbrdec_drc.cpp \
- libSBRdec/src/sbrdec_freq_sca.cpp \
- libSBRdec/src/sbrdecoder.cpp \
- libSBRdec/src/sbr_ram.cpp \
- libSBRdec/src/sbr_rom.cpp
-
-SBRENC_SRC = \
- libSBRenc/src/bit_sbr.cpp \
- libSBRenc/src/env_bit.cpp \
- libSBRenc/src/fram_gen.cpp \
- libSBRenc/src/mh_det.cpp \
- libSBRenc/src/ps_bitenc.cpp \
- libSBRenc/src/ps_encode.cpp \
- libSBRenc/src/resampler.cpp \
- libSBRenc/src/sbr_encoder.cpp \
- libSBRenc/src/sbr_ram.cpp \
- libSBRenc/src/ton_corr.cpp \
- libSBRenc/src/code_env.cpp \
- libSBRenc/src/env_est.cpp \
- libSBRenc/src/invf_est.cpp \
- libSBRenc/src/nf_est.cpp \
- libSBRenc/src/ps_main.cpp \
- libSBRenc/src/sbrenc_freq_sca.cpp \
- libSBRenc/src/sbr_misc.cpp \
- libSBRenc/src/sbr_rom.cpp \
- libSBRenc/src/tran_det.cpp
-
-SYS_SRC = \
- libSYS/src/cmdl_parser.cpp \
- libSYS/src/conv_string.cpp \
- libSYS/src/genericStds.cpp \
- libSYS/src/wav_file.cpp
-
-libfdk_dabplus_la_SOURCES = \
- $(AACDEC_SRC) $(AACENC_SRC) \
- $(MPEGTPDEC_SRC) $(MPEGTPENC_SRC) \
- $(SBRDEC_SRC) $(SBRENC_SRC) \
- $(PCMUTILS_SRC) $(FDK_SRC) $(SYS_SRC)
-
libtoolame_dab_la_SOURCES = \
libtoolame-dab/common.c \
libtoolame-dab/encode.c \
@@ -306,34 +134,8 @@ EXTRA_DIST = \
$(top_srcdir)/NOTICE \
$(top_srcdir)/README.md \
$(top_srcdir)/Android.mk \
- $(top_srcdir)/fdk-dabplus.sym \
$(top_srcdir)/libtoolame-dab.sym \
- $(top_srcdir)/Doxyfile \
- $(top_srcdir)/documentation/*.pdf \
- $(top_srcdir)/libAACdec/src/*.h \
- $(top_srcdir)/libAACdec/src/arm/*.cpp \
- $(top_srcdir)/libAACenc/src/*.h \
- $(top_srcdir)/libSBRenc/src/*.h \
- $(top_srcdir)/libSBRenc/include/*.h \
- $(top_srcdir)/libSBRdec/src/*.h \
- $(top_srcdir)/libSBRdec/src/arm/*.cpp \
- $(top_srcdir)/libSBRdec/include/*.h \
- $(top_srcdir)/libSYS/include/*.h \
- $(top_srcdir)/libSYS/src/linux/*.cpp \
- $(top_srcdir)/libSYS/src/mips/*.cpp \
- $(top_srcdir)/libPCMutils/include/*.h \
- $(top_srcdir)/libMpegTPEnc/include/*.h \
- $(top_srcdir)/libMpegTPEnc/src/*.h \
- $(top_srcdir)/libMpegTPEnc/src/version \
- $(top_srcdir)/libMpegTPDec/include/*.h \
- $(top_srcdir)/libMpegTPDec/src/*.h \
- $(top_srcdir)/libMpegTPDec/src/version \
- $(top_srcdir)/libFDK/include/*.h \
- $(top_srcdir)/libFDK/include/arm/*.h \
- $(top_srcdir)/libFDK/include/mips/*.h \
- $(top_srcdir)/libFDK/include/x86/*.h \
- $(top_srcdir)/libFDK/src/arm/*.cpp \
- $(top_srcdir)/libFDK/src/mips/*.cpp
+ $(top_srcdir)/Doxyfile
doc: export PROJECT_NUMBER:=$(shell git describe --dirty)
diff --git a/configure.ac b/configure.ac
index 04ffbec..4c92bd7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,7 +1,7 @@
dnl -*- Autoconf -*-
dnl Process this file with autoconf to produce a configure script.
-AC_INIT([fdk-aac-dabplus], [1.2.0], [http://opendigitalradio.org/])
+AC_INIT([odr-audioencoder], [0.1.0], [http://opendigitalradio.org/])
AC_CONFIG_AUX_DIR(.)
AC_CONFIG_MACRO_DIR([m4])
AM_INIT_AUTOMAKE([tar-ustar foreign])
@@ -69,8 +69,8 @@ AS_IF([test "x$enable_vlc" = "xyes"],
AM_CONDITIONAL([HAVE_JACK], [ test "x$enable_jack" = "xyes" ])
AM_CONDITIONAL([HAVE_ALSA], [ test "x$enable_alsa" = "xyes" ])
-# fdk-aac-dabplus-zmq needs ZeroMQ
AC_CHECK_LIB(zmq, zmq_init, , AC_MSG_ERROR(ZeroMQ libzmq is required))
+AC_CHECK_LIB(fdk-aac, aacEncOpen, , AC_MSG_ERROR(The FDK-AAC library is required))
if pkg-config MagickWand; then
MAGICKWAND_CFLAGS=`pkg-config MagickWand --cflags`
@@ -88,19 +88,16 @@ AS_IF([ pkg-config MagickWand ],
dnl soname version to use
dnl goes by ‘current[:revision[:age]]’ with the soname ending up as
dnl current.age.revision
-FDK_AAC_VERSION=0:4:0
LIBTOOLAME_DAB_VERSION=0:1:0
AS_IF([test x$enable_shared = xyes], [LIBS_PRIVATE=$LIBS], [LIBS_PUBLIC=$LIBS])
-AC_SUBST(FDK_AAC_VERSION)
AC_SUBST(LIBTOOLAME_DAB_VERSION)
AC_SUBST(LIBS_PUBLIC)
AC_SUBST(LIBS_PRIVATE)
AM_CONDITIONAL([IS_GIT_REPO], [test -d '.git'])
-AC_CONFIG_FILES([Makefile
- fdk-dabplus.pc])
+AC_CONFIG_FILES([Makefile])
AC_OUTPUT
echo
diff --git a/src/dabplus-enc.cpp b/src/odr-audioencoder.cpp
index 35a7496..d98df64 100644
--- a/src/dabplus-enc.cpp
+++ b/src/odr-audioencoder.cpp
@@ -32,7 +32,7 @@
* The readme for the whole package is \ref md_README
*
* Interesting starting points for the encoder
- * - \ref dabplus-enc.cpp Main encoder file
+ * - \ref odr-audioencoder.cpp Main encoder file
* - \ref VLCInput.h VLC Input
* - \ref AlsaInput.h Alsa Input
* - \ref JackInput.h JACK Input
@@ -47,7 +47,7 @@
* - \ref mot-encoder.cpp
*
*
- * \file dabplus-enc.cpp
+ * \file odr-audioencoder.cpp
* \brief The main file for the audio encoder
*/
@@ -81,7 +81,7 @@ extern "C" {
#include <sys/ioctl.h>
#include <fcntl.h>
-#include "libAACenc/include/aacenc_lib.h"
+#include "fdk-aac/aacenc_lib.h"
extern "C" {
#include <fec.h>
@@ -100,7 +100,7 @@ using namespace std;
void usage(const char* name) {
fprintf(stderr,
- "dabplus-enc %s is an audio encoder for both DAB and DAB+.\n"
+ "ODR-AudioEncoder %s is an audio encoder for both DAB and DAB+.\n"
"The DAB+ HE-AACv2 encoder is based on a Thirt-Party Modified\n"
"Version of the Fraunhofer FDK AAC Codec Library for Android,\n"
"and the DAB encoder is using the tooLAME MPEG\n"