21#import "libavutil/ffversion.h"
31 [supportedExternalLibraries addObject:@"dav1d"];
32 [supportedExternalLibraries addObject:@"fontconfig"];
33 [supportedExternalLibraries addObject:@"freetype"];
34 [supportedExternalLibraries addObject:@"fribidi"];
35 [supportedExternalLibraries addObject:@"gmp"];
36 [supportedExternalLibraries addObject:@"gnutls"];
37 [supportedExternalLibraries addObject:@"kvazaar"];
38 [supportedExternalLibraries addObject:@"mp3lame"];
39 [supportedExternalLibraries addObject:@"libaom"];
40 [supportedExternalLibraries addObject:@"libass"];
41 [supportedExternalLibraries addObject:@"iconv"];
42 [supportedExternalLibraries addObject:@"libilbc"];
43 [supportedExternalLibraries addObject:@"libtheora"];
44 [supportedExternalLibraries addObject:@"libvidstab"];
45 [supportedExternalLibraries addObject:@"libvorbis"];
46 [supportedExternalLibraries addObject:@"libvpx"];
47 [supportedExternalLibraries addObject:@"libwebp"];
48 [supportedExternalLibraries addObject:@"libxml2"];
49 [supportedExternalLibraries addObject:@"opencore-amr"];
50 [supportedExternalLibraries addObject:@"openh264"];
51 [supportedExternalLibraries addObject:@"opus"];
52 [supportedExternalLibraries addObject:@"rubberband"];
53 [supportedExternalLibraries addObject:@"sdl2"];
54 [supportedExternalLibraries addObject:@"shine"];
55 [supportedExternalLibraries addObject:@"snappy"];
56 [supportedExternalLibraries addObject:@"soxr"];
57 [supportedExternalLibraries addObject:@"speex"];
58 [supportedExternalLibraries addObject:@"tesseract"];
59 [supportedExternalLibraries addObject:@"twolame"];
60 [supportedExternalLibraries addObject:@"x264"];
61 [supportedExternalLibraries addObject:@"x265"];
62 [supportedExternalLibraries addObject:@"xvid"];
66 return [NSString stringWithUTF8String:FFMPEG_CONFIGURATION];
71 Boolean speex = [enabledLibraryArray containsObject:@"speex"];
72 Boolean fribidi = [enabledLibraryArray containsObject:@"fribidi"];
73 Boolean gnutls = [enabledLibraryArray containsObject:@"gnutls"];
74 Boolean xvid = [enabledLibraryArray containsObject:@"xvid"];
77 Boolean minGpl =
false;
78 Boolean https =
false;
79 Boolean httpsGpl =
false;
80 Boolean audio =
false;
81 Boolean video =
false;
83 Boolean fullGpl =
false;
85 if (speex && fribidi) {
110 if ([enabledLibraryArray containsObject:
@"dav1d"] &&
111 [enabledLibraryArray containsObject:
@"fontconfig"] &&
112 [enabledLibraryArray containsObject:
@"freetype"] &&
113 [enabledLibraryArray containsObject:
@"fribidi"] &&
114 [enabledLibraryArray containsObject:
@"gmp"] &&
115 [enabledLibraryArray containsObject:
@"gnutls"] &&
116 [enabledLibraryArray containsObject:
@"kvazaar"] &&
117 [enabledLibraryArray containsObject:
@"mp3lame"] &&
118 [enabledLibraryArray containsObject:
@"libass"] &&
119 [enabledLibraryArray containsObject:
@"iconv"] &&
120 [enabledLibraryArray containsObject:
@"libilbc"] &&
121 [enabledLibraryArray containsObject:
@"libtheora"] &&
122 [enabledLibraryArray containsObject:
@"libvidstab"] &&
123 [enabledLibraryArray containsObject:
@"libvorbis"] &&
124 [enabledLibraryArray containsObject:
@"libvpx"] &&
125 [enabledLibraryArray containsObject:
@"libwebp"] &&
126 [enabledLibraryArray containsObject:
@"libxml2"] &&
127 [enabledLibraryArray containsObject:
@"opencore-amr"] &&
128 [enabledLibraryArray containsObject:
@"opus"] &&
129 [enabledLibraryArray containsObject:
@"shine"] &&
130 [enabledLibraryArray containsObject:
@"snappy"] &&
131 [enabledLibraryArray containsObject:
@"soxr"] &&
132 [enabledLibraryArray containsObject:
@"speex"] &&
133 [enabledLibraryArray containsObject:
@"twolame"] &&
134 [enabledLibraryArray containsObject:
@"x264"] &&
135 [enabledLibraryArray containsObject:
@"x265"] &&
136 [enabledLibraryArray containsObject:
@"xvid"]) {
144 if ([enabledLibraryArray containsObject:
@"dav1d"] &&
145 [enabledLibraryArray containsObject:
@"fontconfig"] &&
146 [enabledLibraryArray containsObject:
@"freetype"] &&
147 [enabledLibraryArray containsObject:
@"fribidi"] &&
148 [enabledLibraryArray containsObject:
@"gmp"] &&
149 [enabledLibraryArray containsObject:
@"gnutls"] &&
150 [enabledLibraryArray containsObject:
@"kvazaar"] &&
151 [enabledLibraryArray containsObject:
@"mp3lame"] &&
152 [enabledLibraryArray containsObject:
@"libass"] &&
153 [enabledLibraryArray containsObject:
@"iconv"] &&
154 [enabledLibraryArray containsObject:
@"libilbc"] &&
155 [enabledLibraryArray containsObject:
@"libtheora"] &&
156 [enabledLibraryArray containsObject:
@"libvorbis"] &&
157 [enabledLibraryArray containsObject:
@"libvpx"] &&
158 [enabledLibraryArray containsObject:
@"libwebp"] &&
159 [enabledLibraryArray containsObject:
@"libxml2"] &&
160 [enabledLibraryArray containsObject:
@"opencore-amr"] &&
161 [enabledLibraryArray containsObject:
@"opus"] &&
162 [enabledLibraryArray containsObject:
@"shine"] &&
163 [enabledLibraryArray containsObject:
@"snappy"] &&
164 [enabledLibraryArray containsObject:
@"soxr"] &&
165 [enabledLibraryArray containsObject:
@"speex"] &&
166 [enabledLibraryArray containsObject:
@"twolame"]) {
174 if ([enabledLibraryArray containsObject:
@"dav1d"] &&
175 [enabledLibraryArray containsObject:
@"fontconfig"] &&
176 [enabledLibraryArray containsObject:
@"freetype"] &&
177 [enabledLibraryArray containsObject:
@"fribidi"] &&
178 [enabledLibraryArray containsObject:
@"kvazaar"] &&
179 [enabledLibraryArray containsObject:
@"libass"] &&
180 [enabledLibraryArray containsObject:
@"iconv"] &&
181 [enabledLibraryArray containsObject:
@"libtheora"] &&
182 [enabledLibraryArray containsObject:
@"libvpx"] &&
183 [enabledLibraryArray containsObject:
@"libwebp"] &&
184 [enabledLibraryArray containsObject:
@"snappy"]) {
192 if ([enabledLibraryArray containsObject:
@"mp3lame"] &&
193 [enabledLibraryArray containsObject:
@"libilbc"] &&
194 [enabledLibraryArray containsObject:
@"libvorbis"] &&
195 [enabledLibraryArray containsObject:
@"opencore-amr"] &&
196 [enabledLibraryArray containsObject:
@"opus"] &&
197 [enabledLibraryArray containsObject:
@"shine"] &&
198 [enabledLibraryArray containsObject:
@"soxr"] &&
199 [enabledLibraryArray containsObject:
@"speex"] &&
200 [enabledLibraryArray containsObject:
@"twolame"]) {
208 if ([enabledLibraryArray containsObject:
@"gmp"] &&
209 [enabledLibraryArray containsObject:
@"gnutls"] &&
210 [enabledLibraryArray containsObject:
@"libvidstab"] &&
211 [enabledLibraryArray containsObject:
@"x264"] &&
212 [enabledLibraryArray containsObject:
@"x265"] &&
213 [enabledLibraryArray containsObject:
@"xvid"]) {
221 if ([enabledLibraryArray containsObject:
@"gmp"] &&
222 [enabledLibraryArray containsObject:
@"gnutls"]) {
230 if ([enabledLibraryArray containsObject:
@"libvidstab"] &&
231 [enabledLibraryArray containsObject:
@"x264"] &&
232 [enabledLibraryArray containsObject:
@"x265"] &&
233 [enabledLibraryArray containsObject:
@"xvid"]) {
245 NSMutableArray *enabledLibraryArray = [[NSMutableArray alloc] init];
247 for (
int i=0; i < [supportedExternalLibraries count]; i++) {
248 NSString *supportedExternalLibrary = [supportedExternalLibraries objectAtIndex:i];
250 NSString *libraryName1 = [NSString stringWithFormat:@"enable-%@", supportedExternalLibrary];
251 NSString *libraryName2 = [NSString stringWithFormat:@"enable-lib%@", supportedExternalLibrary];
253 if ([buildConfiguration rangeOfString:libraryName1].location != NSNotFound || [buildConfiguration rangeOfString:libraryName2].location != NSNotFound) {
254 [enabledLibraryArray addObject:supportedExternalLibrary];
258 [enabledLibraryArray sortUsingSelector:@selector(compare:)];
260 return enabledLibraryArray;
static NSMutableArray * supportedExternalLibraries
NSString * getPackageName()
NSString * getBuildConf()
NSArray * getExternalLibraries()