File welle-io-fdk-aac.patch of Package welle-io
127
1
diff --git a/CMakeLists.txt b/CMakeLists.txt
2
index 5e0ef762..208ad4e7 100644
3
--- a/CMakeLists.txt
4
+++ b/CMakeLists.txt
5
6
option(RTLSDR "Compile with RTL-SDR support" OFF )
7
option(SOAPYSDR "Compile with SoapySDR support" OFF )
8
option(FLAC "Compile with flac support for streaming" OFF )
9
+option(FDK_AAC "Use FDK-AAC instead of FAAD" OFF )
10
11
add_definitions(-Wall)
12
add_definitions(-g)
13
-add_definitions(-DDABLIN_AAC_FAAD2)
14
15
if(MINGW)
16
add_definitions(-municode)
17
18
set(fft_sources "")
19
set(KISS_INCLUDE_DIRS "")
20
endif()
21
- find_package(Faad REQUIRED)
22
+ if (FDK_AAC)
23
+ find_package(FdkAac REQUIRED)
24
+ if (FDKAAC_FOUND)
25
+ add_definitions(-DDABLIN_AAC_FDKAAC)
26
+ set(AAC_LIBRARIES ${FDKAAC_LIBRARIES})
27
+ set(AAC_INCLUDE_DIRS ${FDKAAC_INCLUDE_DIRS})
28
+ endif()
29
+ else()
30
+ find_package(Faad REQUIRED)
31
+ if (FAAD_FOUND)
32
+ add_definitions(-DDABLIN_AAC_FAAD2)
33
+ set(AAC_LIBRARIES ${FAAD_LIBRARIES})
34
+ set(AAC_INCLUDE_DIRS ${FAAD_INCLUDE_DIRS})
35
+ endif()
36
+ endif()
37
find_package(MPG123 REQUIRED)
38
else()
39
# For KISSFFT
40
41
)
42
43
# For FAAD
44
+ add_definitions(-DDABLIN_AAC_FAAD2)
45
add_definitions(-DHAVE_CONFIG_H)
46
include_directories(
47
src/libs/faad2
48
49
src/libs/fec
50
${FFTW3F_INCLUDE_DIRS}
51
${KISS_INCLUDE_DIRS}
52
- ${FAAD_INCLUDE_DIRS}
53
+ ${AAC_INCLUDE_DIRS}
54
${LIBRTLSDR_INCLUDE_DIRS}
55
${SoapySDR_INCLUDE_DIRS}
56
${FLACPP_INCLUDE_DIRS}
57
58
${LIBRTLSDR_LIBRARIES}
59
${LIBAIRSPY_LIBRARIES}
60
${FFTW3F_LIBRARIES}
61
- ${FAAD_LIBRARIES}
62
+ ${AAC_LIBRARIES}
63
${SoapySDR_LIBRARIES}
64
${MPG123_LIBRARIES}
65
Threads::Threads
66
67
${LIBRTLSDR_LIBRARIES}
68
${LIBAIRSPY_LIBRARIES}
69
${FFTW3F_LIBRARIES}
70
- ${FAAD_LIBRARIES}
71
+ ${AAC_LIBRARIES}
72
${ALSA_LIBRARIES}
73
${LAME_LIBRARIES}
74
${SoapySDR_LIBRARIES}
75
diff --git a/cmake/Modules/FindFdkAac.cmake b/cmake/Modules/FindFdkAac.cmake
76
new file mode 100644
77
index 00000000..12b79243
78
--- /dev/null
79
+++ b/cmake/Modules/FindFdkAac.cmake
80
81
+# Try to find FDKAAC library and include path.
82
+# Once done this will define
83
+#
84
+# FDKAAC_INCLUDE_DIRS - where to find faad.h, etc.
85
+# FDKAAC_LIBRARIES - List of libraries when using libfaad.
86
+# FDKAAC_FOUND - True if libfaad found.
87
+
88
+find_path(FDKAAC_INCLUDE_DIR fdk-aac/aacdecoder_lib.h DOC "The directory where fdk-aac/aacdecoder_lib.h resides")
89
+find_library(FDKAAC_LIBRARY NAMES fdk-aac DOC "The libfdk-aac library")
90
+
91
+if(FDKAAC_INCLUDE_DIR AND FDKAAC_LIBRARY)
92
+ set(FDKAAC_FOUND 1)
93
+ set(FDKAAC_LIBRARIES ${FDKAAC_LIBRARY})
94
+ set(FDKAAC_INCLUDE_DIRS ${FDKAAC_INCLUDE_DIR})
95
+else(FDKAAC_INCLUDE_DIR AND FDKAAC_LIBRARY)
96
+ set(FDKAAC_FOUND 0)
97
+ set(FDKAAC_LIBRARIES)
98
+ set(FDKAAC_INCLUDE_DIRS)
99
+endif(FDKAAC_INCLUDE_DIR AND FDKAAC_LIBRARY)
100
+
101
+mark_as_advanced(FDKAAC_INCLUDE_DIR)
102
+mark_as_advanced(FDKAAC_LIBRARY)
103
+mark_as_advanced(FDKAAC_FOUND)
104
+
105
+if(NOT FDKAAC_FOUND)
106
+ set(FDKAAC_DIR_MESSAGE "libfaad was not found. Make sure FDKAAC_LIBRARY and FDKAAC_INCLUDE_DIR are set.")
107
+ if(NOT FDKAAC_FIND_QUIETLY)
108
+ message(STATUS "${FDKAAC_DIR_MESSAGE}")
109
+ else(NOT FDKAAC_FIND_QUIETLY)
110
+ if(FDKAAC_FIND_REQUIRED)
111
+ message(FATAL_ERROR "${FDKAAC_DIR_MESSAGE}")
112
+ endif(FDKAAC_FIND_REQUIRED)
113
+ endif(NOT FDKAAC_FIND_QUIETLY)
114
+endif(NOT FDKAAC_FOUND)
115
diff --git a/src/backend/subchannel_sink.h b/src/backend/subchannel_sink.h
116
index 826c9d22..4d234430 100644
117
--- a/src/backend/subchannel_sink.h
118
+++ b/src/backend/subchannel_sink.h
119
120
virtual void ProcessPAD(const uint8_t* /*xpad_data*/, size_t /*xpad_len*/, bool /*exact_xpad_len*/, const uint8_t* /*fpad_data*/) {}
121
122
virtual void AudioError(const std::string& /*hint*/) {}
123
+ virtual void AudioWarning(const std::string& /*hint*/) {}
124
virtual void ACCFrameError(const unsigned char /* error*/) {}
125
virtual void FECInfo(int /*total_corr_count*/, bool /*uncorr_errors*/) {}
126
};
127