正在显示
16 个修改的文件
包含
1072 行增加
和
49 行删除
@@ -25,7 +25,7 @@ flv/ts/mp3/aac streaming for user prefered. | @@ -25,7 +25,7 @@ flv/ts/mp3/aac streaming for user prefered. | ||
25 | 1. Multiple feature: transcode, forward, ingest, http hooks, dvr, hls, rtsp, http streaming, | 25 | 1. Multiple feature: transcode, forward, ingest, http hooks, dvr, hls, rtsp, http streaming, |
26 | http api, refer, log, bandwith test and srs-librtmp. | 26 | http api, refer, log, bandwith test and srs-librtmp. |
27 | 1. Best maintainess: simple arch over state-threads(coroutine), single thread, single process | 27 | 1. Best maintainess: simple arch over state-threads(coroutine), single thread, single process |
28 | -and only linux platform, common server x86-64/i386/arm/mips cpus, rich comments, strictly | 28 | +and for linux/osx platform, common server x86-64/i386/arm/mips cpus, rich comments, strictly |
29 | follows RTMP/HLS/RTSP spec. | 29 | follows RTMP/HLS/RTSP spec. |
30 | 1. Easy to use: both English and Chinese wiki, typically config files in trunk/conf, traceable | 30 | 1. Easy to use: both English and Chinese wiki, typically config files in trunk/conf, traceable |
31 | and session based log, linux service script and install script. | 31 | and session based log, linux service script and install script. |
@@ -37,7 +37,7 @@ Enjoy it! | @@ -37,7 +37,7 @@ Enjoy it! | ||
37 | 37 | ||
38 | SRS(SIMPLE RTMP Server) over state-threads created in 2013.10. | 38 | SRS(SIMPLE RTMP Server) over state-threads created in 2013.10. |
39 | 39 | ||
40 | -SRS delivers rtmp/hls/http live on x86/x64/arm/mips linux, | 40 | +SRS delivers rtmp/hls/http live on x86/x64/arm/mips linux/osx, |
41 | supports origin/edge/vhost and transcode/ingest and dvr/forward | 41 | supports origin/edge/vhost and transcode/ingest and dvr/forward |
42 | and http-api/http-callback/reload, introduces tracable | 42 | and http-api/http-callback/reload, introduces tracable |
43 | session-oriented log, exports client srs-librtmp, | 43 | session-oriented log, exports client srs-librtmp, |
@@ -550,6 +550,7 @@ Supported operating systems and hardware: | @@ -550,6 +550,7 @@ Supported operating systems and hardware: | ||
550 | 550 | ||
551 | ### SRS 2.0 history | 551 | ### SRS 2.0 history |
552 | 552 | ||
553 | +* v2.0, 2015-03-10, fix [#155](https://github.com/winlinvip/simple-rtmp-server/issues/155), support osx(darwin) for mac pro. 2.0.137. | ||
553 | * v2.0, 2015-03-08, fix [#316](https://github.com/winlinvip/simple-rtmp-server/issues/316), http api provides stream/vhost/srs/server bytes, codec and count. 2.0.136. | 554 | * v2.0, 2015-03-08, fix [#316](https://github.com/winlinvip/simple-rtmp-server/issues/316), http api provides stream/vhost/srs/server bytes, codec and count. 2.0.136. |
554 | * v2.0, 2015-03-08, fix [#310](https://github.com/winlinvip/simple-rtmp-server/issues/310), refine aac LC, support aac HE/HEv2. 2.0.134. | 555 | * v2.0, 2015-03-08, fix [#310](https://github.com/winlinvip/simple-rtmp-server/issues/310), refine aac LC, support aac HE/HEv2. 2.0.134. |
555 | * v2.0, 2015-03-06, for [#322](https://github.com/winlinvip/simple-rtmp-server/issues/322), fix http-flv stream bug, support multiple streams. 2.0.133. | 556 | * v2.0, 2015-03-06, for [#322](https://github.com/winlinvip/simple-rtmp-server/issues/322), fix http-flv stream bug, support multiple streams. 2.0.133. |
trunk/3rdparty/patches/2.http.parser.patch
0 → 100644
1 | +diff -r -c ./Makefile ../http-parser-2.1/Makefile | ||
2 | +*** ./Makefile Tue Mar 10 10:44:19 2015 | ||
3 | +--- ../http-parser-2.1/Makefile Wed Mar 27 06:35:20 2013 | ||
4 | +*************** | ||
5 | +*** 12,22 **** | ||
6 | + CFLAGS_FAST = $(CFLAGS) -O3 $(CFLAGS_FAST_EXTRA) | ||
7 | + CFLAGS_LIB = $(CFLAGS_FAST) -fPIC | ||
8 | + | ||
9 | +- # patch by winlin | ||
10 | +- CPPFLAGS_FAST = $(CPPFLAGS_DEBUG) | ||
11 | +- CFLAGS_FAST = $(CFLAGS_DEBUG) | ||
12 | +- CFLAGS_LIB = $(CFLAGS_FAST) -fPIC | ||
13 | +- | ||
14 | + test: test_g test_fast | ||
15 | + ./test_g | ||
16 | + ./test_fast | ||
17 | +--- 12,17 ---- |
@@ -16,8 +16,28 @@ echo "#define SRS_AUTO_BUILD_DATE \"`date \"+%Y-%m-%d %H:%M:%S\"`\"" >> $SRS_AUT | @@ -16,8 +16,28 @@ echo "#define SRS_AUTO_BUILD_DATE \"`date \"+%Y-%m-%d %H:%M:%S\"`\"" >> $SRS_AUT | ||
16 | echo "#define SRS_AUTO_UNAME \"`uname -a`\"" >> $SRS_AUTO_HEADERS_H | 16 | echo "#define SRS_AUTO_UNAME \"`uname -a`\"" >> $SRS_AUTO_HEADERS_H |
17 | echo "#define SRS_AUTO_USER_CONFIGURE \"${SRS_AUTO_USER_CONFIGURE}\"" >> $SRS_AUTO_HEADERS_H | 17 | echo "#define SRS_AUTO_USER_CONFIGURE \"${SRS_AUTO_USER_CONFIGURE}\"" >> $SRS_AUTO_HEADERS_H |
18 | echo "#define SRS_AUTO_CONFIGURE \"${SRS_AUTO_CONFIGURE}\"" >> $SRS_AUTO_HEADERS_H | 18 | echo "#define SRS_AUTO_CONFIGURE \"${SRS_AUTO_CONFIGURE}\"" >> $SRS_AUTO_HEADERS_H |
19 | +echo "" >> $SRS_AUTO_HEADERS_H | ||
20 | + | ||
21 | +# export the preset. | ||
22 | +if [ $SRS_OSX = YES ]; then | ||
23 | + echo "#define SRS_OSX" >> $SRS_AUTO_HEADERS_H | ||
24 | +fi | ||
25 | +if [ $SRS_X86_X64 = YES ]; then | ||
26 | + echo "#define SRS_X86_X64" >> $SRS_AUTO_HEADERS_H | ||
27 | +fi | ||
28 | +if [ $SRS_ARM_UBUNTU12 = YES ]; then | ||
29 | + echo "#define SRS_ARM_UBUNTU12" >> $SRS_AUTO_HEADERS_H | ||
30 | +fi | ||
31 | +if [ $SRS_MIPS_UBUNTU12 = YES ]; then | ||
32 | + echo "#define SRS_MIPS_UBUNTU12" >> $SRS_AUTO_HEADERS_H | ||
33 | +fi | ||
34 | +if [ $SRS_PI = YES ]; then | ||
35 | + echo "#define SRS_PI" >> $SRS_AUTO_HEADERS_H | ||
36 | +fi | ||
37 | +if [ $SRS_CUBIE = YES ]; then | ||
38 | + echo "#define SRS_CUBIE" >> $SRS_AUTO_HEADERS_H | ||
39 | +fi | ||
19 | 40 | ||
20 | -# new empty line to auto headers file. | ||
21 | echo "" >> $SRS_AUTO_HEADERS_H | 41 | echo "" >> $SRS_AUTO_HEADERS_H |
22 | 42 | ||
23 | ##################################################################################### | 43 | ##################################################################################### |
@@ -41,6 +41,24 @@ function Ubuntu_prepare() | @@ -41,6 +41,24 @@ function Ubuntu_prepare() | ||
41 | return 0; | 41 | return 0; |
42 | fi | 42 | fi |
43 | fi | 43 | fi |
44 | + | ||
45 | + # for arm, install the cross build tool chain. | ||
46 | + if [ $SRS_ARM_UBUNTU12 = YES ]; then | ||
47 | + $SrsArmCC --help >/dev/null 2>&1; ret=$?; if [[ 0 -ne $ret ]]; then | ||
48 | + echo "install gcc-arm-linux-gnueabi g++-arm-linux-gnueabi" | ||
49 | + require_sudoer "sudo apt-get install -y --force-yes gcc-arm-linux-gnueabi g++-arm-linux-gnueabi" | ||
50 | + sudo apt-get install -y --force-yes gcc-arm-linux-gnueabi g++-arm-linux-gnueabi; ret=$?; if [[ 0 -ne $ret ]]; then return $ret; fi | ||
51 | + echo "install gcc-arm-linux-gnueabi g++-arm-linux-gnueabi success" | ||
52 | + fi | ||
53 | + fi | ||
54 | + | ||
55 | + # for mips, user must installed the tool chain. | ||
56 | + if [ $SRS_MIPS_UBUNTU12 = YES ]; then | ||
57 | + $SrsArmCC --help >/dev/null 2>&1; ret=$?; if [[ 0 -ne $ret ]]; then | ||
58 | + echo "user must install the tool chain: $SrsArmCC" | ||
59 | + return 2 | ||
60 | + fi | ||
61 | + fi | ||
44 | 62 | ||
45 | OS_IS_UBUNTU=YES | 63 | OS_IS_UBUNTU=YES |
46 | echo "Ubuntu detected, install tools if needed" | 64 | echo "Ubuntu detected, install tools if needed" |
@@ -110,24 +128,6 @@ function Ubuntu_prepare() | @@ -110,24 +128,6 @@ function Ubuntu_prepare() | ||
110 | fi | 128 | fi |
111 | fi | 129 | fi |
112 | 130 | ||
113 | - # for arm, install the cross build tool chain. | ||
114 | - if [ $SRS_ARM_UBUNTU12 = YES ]; then | ||
115 | - $SrsArmCC --help >/dev/null 2>&1; ret=$?; if [[ 0 -ne $ret ]]; then | ||
116 | - echo "install gcc-arm-linux-gnueabi g++-arm-linux-gnueabi" | ||
117 | - require_sudoer "sudo apt-get install -y --force-yes gcc-arm-linux-gnueabi g++-arm-linux-gnueabi" | ||
118 | - sudo apt-get install -y --force-yes gcc-arm-linux-gnueabi g++-arm-linux-gnueabi; ret=$?; if [[ 0 -ne $ret ]]; then return $ret; fi | ||
119 | - echo "install gcc-arm-linux-gnueabi g++-arm-linux-gnueabi success" | ||
120 | - fi | ||
121 | - fi | ||
122 | - | ||
123 | - # for mips, user must installed the tool chain. | ||
124 | - if [ $SRS_MIPS_UBUNTU12 = YES ]; then | ||
125 | - $SrsArmCC --help >/dev/null 2>&1; ret=$?; if [[ 0 -ne $ret ]]; then | ||
126 | - echo "user must install the tool chain: $SrsArmCC" | ||
127 | - return 2 | ||
128 | - fi | ||
129 | - fi | ||
130 | - | ||
131 | echo "Ubuntu install tools success" | 131 | echo "Ubuntu install tools success" |
132 | return 0 | 132 | return 0 |
133 | } | 133 | } |
@@ -144,6 +144,12 @@ function Centos_prepare() | @@ -144,6 +144,12 @@ function Centos_prepare() | ||
144 | if [[ ! -f /etc/redhat-release ]]; then | 144 | if [[ ! -f /etc/redhat-release ]]; then |
145 | return 0; | 145 | return 0; |
146 | fi | 146 | fi |
147 | + | ||
148 | + # for arm, install the cross build tool chain. | ||
149 | + if [ $SRS_EMBEDED_CPU = YES ]; then | ||
150 | + echo "embeded(arm/mips) is invalid for CentOS" | ||
151 | + return 1 | ||
152 | + fi | ||
147 | 153 | ||
148 | OS_IS_CENTOS=YES | 154 | OS_IS_CENTOS=YES |
149 | echo "Centos detected, install tools if needed" | 155 | echo "Centos detected, install tools if needed" |
@@ -220,18 +226,137 @@ function Centos_prepare() | @@ -220,18 +226,137 @@ function Centos_prepare() | ||
220 | fi | 226 | fi |
221 | fi | 227 | fi |
222 | 228 | ||
229 | + echo "Centos install tools success" | ||
230 | + return 0 | ||
231 | +} | ||
232 | +# donot prepare tools, for srs-librtmp depends only gcc and g++. | ||
233 | +if [ $SRS_EXPORT_LIBRTMP_PROJECT = NO ]; then | ||
234 | + Centos_prepare; ret=$?; if [[ 0 -ne $ret ]]; then echo "CentOS prepare failed, ret=$ret"; exit $ret; fi | ||
235 | +fi | ||
236 | +##################################################################################### | ||
237 | +# for Centos, auto install tools by yum | ||
238 | +##################################################################################### | ||
239 | +OS_IS_OSX=NO | ||
240 | +function OSX_prepare() | ||
241 | +{ | ||
242 | + uname -s|grep Darwin >/dev/null 2>&1 | ||
243 | + ret=$?; if [[ 0 -ne $ret ]]; then | ||
244 | + if [ $SRS_OSX = YES ]; then | ||
245 | + echo "OSX check failed, actual is `uname -s`" | ||
246 | + exit 1; | ||
247 | + fi | ||
248 | + return 0; | ||
249 | + fi | ||
250 | + | ||
223 | # for arm, install the cross build tool chain. | 251 | # for arm, install the cross build tool chain. |
224 | if [ $SRS_EMBEDED_CPU = YES ]; then | 252 | if [ $SRS_EMBEDED_CPU = YES ]; then |
225 | - echo "embeded(arm/mips) is invalid for CentOS" | 253 | + echo "embeded(arm/mips) is invalid for OSX" |
226 | return 1 | 254 | return 1 |
227 | fi | 255 | fi |
256 | + | ||
257 | + OS_IS_OSX=YES | ||
258 | + echo "OSX detected, install tools if needed" | ||
228 | 259 | ||
229 | - echo "Centos install tools success" | 260 | + brew --help >/dev/null 2>&1; ret=$?; if [[ 0 -ne $ret ]]; then |
261 | + echo "install brew" | ||
262 | + echo "ruby -e \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)\"" | ||
263 | + ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"; ret=$?; if [[ 0 -ne $ret ]]; then return $ret; fi | ||
264 | + echo "install brew success" | ||
265 | + fi | ||
266 | + | ||
267 | + gcc --help >/dev/null 2>&1; ret=$?; if [[ 0 -ne $ret ]]; then | ||
268 | + echo "install gcc" | ||
269 | + echo "brew install gcc" | ||
270 | + brew install gcc; ret=$?; if [[ 0 -ne $ret ]]; then return $ret; fi | ||
271 | + echo "install gcc success" | ||
272 | + fi | ||
273 | + | ||
274 | + g++ --help >/dev/null 2>&1; ret=$?; if [[ 0 -ne $ret ]]; then | ||
275 | + echo "install gcc-c++" | ||
276 | + echo "brew install gcc-c++" | ||
277 | + brew install gcc-c++; ret=$?; if [[ 0 -ne $ret ]]; then return $ret; fi | ||
278 | + echo "install gcc-c++ success" | ||
279 | + fi | ||
280 | + | ||
281 | + make --help >/dev/null 2>&1; ret=$?; if [[ 0 -ne $ret ]]; then | ||
282 | + echo "install make" | ||
283 | + echo "brew install make" | ||
284 | + brew install make; ret=$?; if [[ 0 -ne $ret ]]; then return $ret; fi | ||
285 | + echo "install make success" | ||
286 | + fi | ||
287 | + | ||
288 | + patch --help >/dev/null 2>&1; ret=$?; if [[ 0 -ne $ret ]]; then | ||
289 | + echo "install patch" | ||
290 | + echo "brew install patch" | ||
291 | + brew install patch; ret=$?; if [[ 0 -ne $ret ]]; then return $ret; fi | ||
292 | + echo "install patch success" | ||
293 | + fi | ||
294 | + | ||
295 | + unzip --help >/dev/null 2>&1; ret=$?; if [[ 0 -ne $ret ]]; then | ||
296 | + echo "install unzip" | ||
297 | + echo "brew install unzip" | ||
298 | + brew install unzip; ret=$?; if [[ 0 -ne $ret ]]; then return $ret; fi | ||
299 | + echo "install unzip success" | ||
300 | + fi | ||
301 | + | ||
302 | + if [ $SRS_FFMPEG_TOOL = YES ]; then | ||
303 | + automake --help >/dev/null 2>&1; ret=$?; if [[ 0 -ne $ret ]]; then | ||
304 | + echo "install automake" | ||
305 | + echo "brew install automake" | ||
306 | + brew install automake; ret=$?; if [[ 0 -ne $ret ]]; then return $ret; fi | ||
307 | + echo "install automake success" | ||
308 | + fi | ||
309 | + | ||
310 | + autoconf --help >/dev/null 2>&1; ret=$?; if [[ 0 -ne $ret ]]; then | ||
311 | + echo "install autoconf" | ||
312 | + echo "brew install autoconf" | ||
313 | + brew install autoconf; ret=$?; if [[ 0 -ne $ret ]]; then return $ret; fi | ||
314 | + echo "install autoconf success" | ||
315 | + fi | ||
316 | + | ||
317 | + libtool --help >/dev/null 2>&1; ret=$?; if [[ 0 -ne $ret ]]; then | ||
318 | + echo "install libtool" | ||
319 | + echo "brew install libtool" | ||
320 | + brew install libtool; ret=$?; if [[ 0 -ne $ret ]]; then return $ret; fi | ||
321 | + echo "install libtool success" | ||
322 | + fi | ||
323 | + | ||
324 | + if [[ ! -f /usr/include/pcre.h ]]; then | ||
325 | + echo "install pcre-devel" | ||
326 | + echo "brew install pcre-devel" | ||
327 | + brew install pcre-devel; ret=$?; if [[ 0 -ne $ret ]]; then return $ret; fi | ||
328 | + echo "install pcre-devel success" | ||
329 | + fi | ||
330 | + | ||
331 | + if [[ ! -f /usr/include/zlib.h ]]; then | ||
332 | + echo "install zlib-devel" | ||
333 | + echo "brew install zlib-devel" | ||
334 | + brew install zlib-devel; ret=$?; if [[ 0 -ne $ret ]]; then return $ret; fi | ||
335 | + echo "install zlib-devel success" | ||
336 | + fi | ||
337 | + fi | ||
338 | + | ||
339 | + echo "OSX install tools success" | ||
230 | return 0 | 340 | return 0 |
231 | } | 341 | } |
232 | # donot prepare tools, for srs-librtmp depends only gcc and g++. | 342 | # donot prepare tools, for srs-librtmp depends only gcc and g++. |
233 | if [ $SRS_EXPORT_LIBRTMP_PROJECT = NO ]; then | 343 | if [ $SRS_EXPORT_LIBRTMP_PROJECT = NO ]; then |
234 | - Centos_prepare; ret=$?; if [[ 0 -ne $ret ]]; then echo "CentOS prepare failed, ret=$ret"; exit $ret; fi | 344 | + OSX_prepare; ret=$?; if [[ 0 -ne $ret ]]; then echo "OSX prepare failed, ret=$ret"; exit $ret; fi |
345 | +fi | ||
346 | +# requires the osx when os | ||
347 | +if [ $OS_IS_OSX = YES ]; then | ||
348 | + if [ $SRS_OSX = NO ]; then | ||
349 | + echo "OSX detected, must specifies the --osx" | ||
350 | + exit 1 | ||
351 | + fi | ||
352 | + if [ $SRS_HTTP_API = YES ]; then | ||
353 | + echo "OSX does not support http-api, use --without-http-api" | ||
354 | + exit 1 | ||
355 | + fi | ||
356 | + if [ $SRS_STAT = YES ]; then | ||
357 | + echo "OSX does not support stat, use --without-stat" | ||
358 | + exit 1 | ||
359 | + fi | ||
235 | fi | 360 | fi |
236 | 361 | ||
237 | ##################################################################################### | 362 | ##################################################################################### |
@@ -239,7 +364,11 @@ fi | @@ -239,7 +364,11 @@ fi | ||
239 | ##################################################################################### | 364 | ##################################################################################### |
240 | if [ $SRS_EXPORT_LIBRTMP_PROJECT = NO ]; then | 365 | if [ $SRS_EXPORT_LIBRTMP_PROJECT = NO ]; then |
241 | # check the arm flag file, if flag changed, need to rebuild the st. | 366 | # check the arm flag file, if flag changed, need to rebuild the st. |
242 | - _ST_MAKE=linux-debug | 367 | + _ST_MAKE=linux-debug && _ST_EXTRA_CFLAGS="-DMD_HAVE_EPOLL" |
368 | + # for osx, use darwin for st, donot use epoll. | ||
369 | + if [ $OS_IS_OSX = YES ]; then | ||
370 | + _ST_MAKE=darwin-debug && _ST_EXTRA_CFLAGS="" | ||
371 | + fi | ||
243 | # memory leak for linux-optimized | 372 | # memory leak for linux-optimized |
244 | # @see: https://github.com/winlinvip/simple-rtmp-server/issues/197 | 373 | # @see: https://github.com/winlinvip/simple-rtmp-server/issues/197 |
245 | if [ $SRS_EMBEDED_CPU = YES ]; then | 374 | if [ $SRS_EMBEDED_CPU = YES ]; then |
@@ -253,9 +382,9 @@ if [ $SRS_EXPORT_LIBRTMP_PROJECT = NO ]; then | @@ -253,9 +382,9 @@ if [ $SRS_EXPORT_LIBRTMP_PROJECT = NO ]; then | ||
253 | ( | 382 | ( |
254 | rm -rf ${SRS_OBJS}/st-1.9 && cd ${SRS_OBJS} && | 383 | rm -rf ${SRS_OBJS}/st-1.9 && cd ${SRS_OBJS} && |
255 | unzip -q ../3rdparty/st-1.9.zip && cd st-1.9 && | 384 | unzip -q ../3rdparty/st-1.9.zip && cd st-1.9 && |
256 | - patch -p0 < ../../3rdparty/patches/1.st.arm.patch && | 385 | + patch -p0 -R < ../../3rdparty/patches/1.st.arm.patch && |
257 | make CC=${SrsArmCC} AR=${SrsArmAR} LD=${SrsArmLD} RANDLIB=${SrsArmRANDLIB} \ | 386 | make CC=${SrsArmCC} AR=${SrsArmAR} LD=${SrsArmLD} RANDLIB=${SrsArmRANDLIB} \ |
258 | - EXTRA_CFLAGS="-DMD_HAVE_EPOLL" ${_ST_MAKE} && | 387 | + EXTRA_CFLAGS=${_ST_EXTRA_CFLAGS} ${_ST_MAKE} && |
259 | cd .. && rm -rf st && ln -sf st-1.9/obj st && | 388 | cd .. && rm -rf st && ln -sf st-1.9/obj st && |
260 | cd .. && touch ${SRS_OBJS}/_flag.st.arm.tmp | 389 | cd .. && touch ${SRS_OBJS}/_flag.st.arm.tmp |
261 | ) | 390 | ) |
@@ -268,7 +397,7 @@ if [ $SRS_EXPORT_LIBRTMP_PROJECT = NO ]; then | @@ -268,7 +397,7 @@ if [ $SRS_EXPORT_LIBRTMP_PROJECT = NO ]; then | ||
268 | ( | 397 | ( |
269 | rm -rf ${SRS_OBJS}/st-1.9 && cd ${SRS_OBJS} && | 398 | rm -rf ${SRS_OBJS}/st-1.9 && cd ${SRS_OBJS} && |
270 | unzip -q ../3rdparty/st-1.9.zip && cd st-1.9 && | 399 | unzip -q ../3rdparty/st-1.9.zip && cd st-1.9 && |
271 | - make ${_ST_MAKE} EXTRA_CFLAGS="-DMD_HAVE_EPOLL" && | 400 | + make ${_ST_MAKE} ${_ST_EXTRA_CFLAGS} && |
272 | cd .. && rm -rf st && ln -sf st-1.9/obj st && | 401 | cd .. && rm -rf st && ln -sf st-1.9/obj st && |
273 | cd .. && rm -f ${SRS_OBJS}/_flag.st.arm.tmp | 402 | cd .. && rm -f ${SRS_OBJS}/_flag.st.arm.tmp |
274 | ) | 403 | ) |
@@ -293,6 +422,7 @@ if [ $SRS_HTTP_PARSER = YES ]; then | @@ -293,6 +422,7 @@ if [ $SRS_HTTP_PARSER = YES ]; then | ||
293 | ( | 422 | ( |
294 | rm -rf ${SRS_OBJS}/http-parser-2.1 && cd ${SRS_OBJS} && unzip -q ../3rdparty/http-parser-2.1.zip && | 423 | rm -rf ${SRS_OBJS}/http-parser-2.1 && cd ${SRS_OBJS} && unzip -q ../3rdparty/http-parser-2.1.zip && |
295 | cd http-parser-2.1 && | 424 | cd http-parser-2.1 && |
425 | + patch -p0 -R < ../../3rdparty/patches/2.http.parser.patch && | ||
296 | sed -i "s/CPPFLAGS_FAST +=.*$/CPPFLAGS_FAST = \$\(CPPFLAGS_DEBUG\)/g" Makefile && | 426 | sed -i "s/CPPFLAGS_FAST +=.*$/CPPFLAGS_FAST = \$\(CPPFLAGS_DEBUG\)/g" Makefile && |
297 | sed -i "s/CFLAGS_FAST =.*$/CFLAGS_FAST = \$\(CFLAGS_DEBUG\)/g" Makefile && | 427 | sed -i "s/CFLAGS_FAST =.*$/CFLAGS_FAST = \$\(CFLAGS_DEBUG\)/g" Makefile && |
298 | make CC=${SrsArmCC} AR=${SrsArmAR} package && | 428 | make CC=${SrsArmCC} AR=${SrsArmAR} package && |
@@ -309,8 +439,7 @@ if [ $SRS_HTTP_PARSER = YES ]; then | @@ -309,8 +439,7 @@ if [ $SRS_HTTP_PARSER = YES ]; then | ||
309 | ( | 439 | ( |
310 | rm -rf ${SRS_OBJS}/http-parser-2.1 && cd ${SRS_OBJS} && unzip -q ../3rdparty/http-parser-2.1.zip && | 440 | rm -rf ${SRS_OBJS}/http-parser-2.1 && cd ${SRS_OBJS} && unzip -q ../3rdparty/http-parser-2.1.zip && |
311 | cd http-parser-2.1 && | 441 | cd http-parser-2.1 && |
312 | - sed -i "s/CPPFLAGS_FAST +=.*$/CPPFLAGS_FAST = \$\(CPPFLAGS_DEBUG\)/g" Makefile && | ||
313 | - sed -i "s/CFLAGS_FAST =.*$/CFLAGS_FAST = \$\(CFLAGS_DEBUG\)/g" Makefile && | 442 | + patch -p0 -R < ../../3rdparty/patches/2.http.parser.patch && |
314 | make package && | 443 | make package && |
315 | cd .. && rm -rf hp && ln -sf http-parser-2.1 hp && | 444 | cd .. && rm -rf hp && ln -sf http-parser-2.1 hp && |
316 | cd .. && rm -f ${SRS_OBJS}/_flag.st.hp.tmp | 445 | cd .. && rm -f ${SRS_OBJS}/_flag.st.hp.tmp |
@@ -402,7 +531,7 @@ if [ $SRS_HTTP_CALLBACK = YES ]; then | @@ -402,7 +531,7 @@ if [ $SRS_HTTP_CALLBACK = YES ]; then | ||
402 | if [[ -f ${SRS_OBJS}/CherryPy-3.2.4/setup.py ]]; then | 531 | if [[ -f ${SRS_OBJS}/CherryPy-3.2.4/setup.py ]]; then |
403 | echo "CherryPy-3.2.4 is ok."; | 532 | echo "CherryPy-3.2.4 is ok."; |
404 | else | 533 | else |
405 | - require_sudoer "configure --with-http-callback" | 534 | + require_sudoer "install CherryPy-3.2.4" |
406 | echo "install CherryPy-3.2.4"; | 535 | echo "install CherryPy-3.2.4"; |
407 | ( | 536 | ( |
408 | sudo rm -rf ${SRS_OBJS}/CherryPy-3.2.4 && cd ${SRS_OBJS} && | 537 | sudo rm -rf ${SRS_OBJS}/CherryPy-3.2.4 && cd ${SRS_OBJS} && |
@@ -454,9 +583,11 @@ fi | @@ -454,9 +583,11 @@ fi | ||
454 | ##################################################################################### | 583 | ##################################################################################### |
455 | # extra configure options | 584 | # extra configure options |
456 | CONFIGURE_TOOL="./config" | 585 | CONFIGURE_TOOL="./config" |
457 | -EXTRA_CONFIGURE="" | ||
458 | if [ $SRS_EMBEDED_CPU = YES ]; then | 586 | if [ $SRS_EMBEDED_CPU = YES ]; then |
459 | - CONFIGURE_TOOL="./Configure" | 587 | + CONFIGURE_TOOL="./Configure linux-armv4" |
588 | +fi | ||
589 | +if [ $SRS_OSX = YES ]; then | ||
590 | + CONFIGURE_TOOL="./Configure darwin64-`uname -m`-cc" | ||
460 | fi | 591 | fi |
461 | # @see http://www.openssl.org/news/secadv_20140407.txt | 592 | # @see http://www.openssl.org/news/secadv_20140407.txt |
462 | # Affected users should upgrade to OpenSSL 1.0.1g. Users unable to immediately | 593 | # Affected users should upgrade to OpenSSL 1.0.1g. Users unable to immediately |
@@ -475,7 +606,7 @@ if [ $SRS_SSL = YES ]; then | @@ -475,7 +606,7 @@ if [ $SRS_SSL = YES ]; then | ||
475 | ( | 606 | ( |
476 | rm -rf ${SRS_OBJS}/openssl-1.0.1f && cd ${SRS_OBJS} && | 607 | rm -rf ${SRS_OBJS}/openssl-1.0.1f && cd ${SRS_OBJS} && |
477 | unzip -q ../3rdparty/openssl-1.0.1f.zip && cd openssl-1.0.1f && | 608 | unzip -q ../3rdparty/openssl-1.0.1f.zip && cd openssl-1.0.1f && |
478 | - $CONFIGURE_TOOL --prefix=`pwd`/_release -no-shared no-asm linux-armv4 -DOPENSSL_NO_HEARTBEATS ${EXTRA_CONFIGURE} && | 609 | + $CONFIGURE_TOOL --prefix=`pwd`/_release -no-shared no-asm && |
479 | make CC=${SrsArmCC} GCC=${SrsArmGCC} AR="${SrsArmAR} r" \ | 610 | make CC=${SrsArmCC} GCC=${SrsArmGCC} AR="${SrsArmAR} r" \ |
480 | LD=${SrsArmLD} LINK=${SrsArmGCC} RANDLIB=${SrsArmRANDLIB} && | 611 | LD=${SrsArmLD} LINK=${SrsArmGCC} RANDLIB=${SrsArmRANDLIB} && |
481 | make install_sw && | 612 | make install_sw && |
@@ -492,7 +623,7 @@ if [ $SRS_SSL = YES ]; then | @@ -492,7 +623,7 @@ if [ $SRS_SSL = YES ]; then | ||
492 | ( | 623 | ( |
493 | rm -rf ${SRS_OBJS}/openssl-1.0.1f && cd ${SRS_OBJS} && | 624 | rm -rf ${SRS_OBJS}/openssl-1.0.1f && cd ${SRS_OBJS} && |
494 | unzip -q ../3rdparty/openssl-1.0.1f.zip && cd openssl-1.0.1f && | 625 | unzip -q ../3rdparty/openssl-1.0.1f.zip && cd openssl-1.0.1f && |
495 | - $CONFIGURE_TOOL --prefix=`pwd`/_release -no-shared -DOPENSSL_NO_HEARTBEATS ${EXTRA_CONFIGURE} && | 626 | + $CONFIGURE_TOOL --prefix=`pwd`/_release -no-shared && |
496 | make && make install_sw && | 627 | make && make install_sw && |
497 | cd .. && rm -rf openssl && ln -sf openssl-1.0.1f/_release openssl && | 628 | cd .. && rm -rf openssl && ln -sf openssl-1.0.1f/_release openssl && |
498 | cd .. && rm -f ${SRS_OBJS}/_flag.ssl.arm.tmp | 629 | cd .. && rm -f ${SRS_OBJS}/_flag.ssl.arm.tmp |
@@ -68,6 +68,8 @@ SRS_EXPORT_LIBRTMP_SINGLE=NO | @@ -68,6 +68,8 @@ SRS_EXPORT_LIBRTMP_SINGLE=NO | ||
68 | # presets | 68 | # presets |
69 | # for x86/x64 pc/servers | 69 | # for x86/x64 pc/servers |
70 | SRS_X86_X64=NO | 70 | SRS_X86_X64=NO |
71 | +# for osx system | ||
72 | +SRS_OSX=NO | ||
71 | # armhf(v7cpu) built on ubuntu12 | 73 | # armhf(v7cpu) built on ubuntu12 |
72 | SRS_ARM_UBUNTU12=NO | 74 | SRS_ARM_UBUNTU12=NO |
73 | # mips built on ubuntu12 | 75 | # mips built on ubuntu12 |
@@ -166,6 +168,7 @@ Options: | @@ -166,6 +168,7 @@ Options: | ||
166 | 168 | ||
167 | Presets: | 169 | Presets: |
168 | --x86-x64 [default] for x86/x64 cpu, common pc and servers. | 170 | --x86-x64 [default] for x86/x64 cpu, common pc and servers. |
171 | + --osx for osx(darwin) system to build SRS. | ||
169 | --pi for raspberry-pi(directly build), open features hls/ssl/static. | 172 | --pi for raspberry-pi(directly build), open features hls/ssl/static. |
170 | --cubie for cubieboard(directly build), open features except ffmpeg/nginx. | 173 | --cubie for cubieboard(directly build), open features except ffmpeg/nginx. |
171 | --arm alias for --with-arm-ubuntu12, for ubuntu12, arm crossbuild | 174 | --arm alias for --with-arm-ubuntu12, for ubuntu12, arm crossbuild |
@@ -260,6 +263,7 @@ function parse_user_option() { | @@ -260,6 +263,7 @@ function parse_user_option() { | ||
260 | --log-trace) SRS_LOG_TRACE=YES ;; | 263 | --log-trace) SRS_LOG_TRACE=YES ;; |
261 | 264 | ||
262 | --x86-x64) SRS_X86_X64=YES ;; | 265 | --x86-x64) SRS_X86_X64=YES ;; |
266 | + --osx) SRS_OSX=YES ;; | ||
263 | --arm) SRS_ARM_UBUNTU12=YES ;; | 267 | --arm) SRS_ARM_UBUNTU12=YES ;; |
264 | --mips) SRS_MIPS_UBUNTU12=YES ;; | 268 | --mips) SRS_MIPS_UBUNTU12=YES ;; |
265 | --pi) SRS_PI=YES ;; | 269 | --pi) SRS_PI=YES ;; |
@@ -331,7 +335,9 @@ function apply_user_presets() { | @@ -331,7 +335,9 @@ function apply_user_presets() { | ||
331 | if [ $SRS_PI = NO ]; then | 335 | if [ $SRS_PI = NO ]; then |
332 | if [ $SRS_CUBIE = NO ]; then | 336 | if [ $SRS_CUBIE = NO ]; then |
333 | if [ $SRS_X86_X64 = NO ]; then | 337 | if [ $SRS_X86_X64 = NO ]; then |
334 | - SRS_X86_X64=YES; opt="--x86-x64 $opt"; | 338 | + if [ $SRS_OSX = NO ]; then |
339 | + SRS_X86_X64=YES; opt="--x86-x64 $opt"; | ||
340 | + fi | ||
335 | fi | 341 | fi |
336 | fi | 342 | fi |
337 | fi | 343 | fi |
@@ -551,7 +557,7 @@ function apply_user_presets() { | @@ -551,7 +557,7 @@ function apply_user_presets() { | ||
551 | SRS_HTTP_CALLBACK=YES | 557 | SRS_HTTP_CALLBACK=YES |
552 | SRS_HTTP_SERVER=YES | 558 | SRS_HTTP_SERVER=YES |
553 | SRS_STREAM_CASTER=YES | 559 | SRS_STREAM_CASTER=YES |
554 | - SRS_HTTP_API=YES | 560 | + SRS_HTTP_API=NO |
555 | SRS_LIBRTMP=YES | 561 | SRS_LIBRTMP=YES |
556 | SRS_RESEARCH=NO | 562 | SRS_RESEARCH=NO |
557 | SRS_UTEST=YES | 563 | SRS_UTEST=YES |
@@ -563,6 +569,32 @@ function apply_user_presets() { | @@ -563,6 +569,32 @@ function apply_user_presets() { | ||
563 | SRS_STATIC=NO | 569 | SRS_STATIC=NO |
564 | fi | 570 | fi |
565 | 571 | ||
572 | + # for osx(darwin) | ||
573 | + if [ $SRS_OSX = YES ]; then | ||
574 | + SRS_HLS=YES | ||
575 | + SRS_DVR=YES | ||
576 | + SRS_NGINX=NO | ||
577 | + SRS_SSL=YES | ||
578 | + SRS_FFMPEG_TOOL=NO | ||
579 | + SRS_TRANSCODE=YES | ||
580 | + SRS_INGEST=YES | ||
581 | + SRS_STAT=NO | ||
582 | + SRS_HTTP_PARSER=YES | ||
583 | + SRS_HTTP_CALLBACK=YES | ||
584 | + SRS_HTTP_SERVER=YES | ||
585 | + SRS_STREAM_CASTER=YES | ||
586 | + SRS_HTTP_API=NO | ||
587 | + SRS_LIBRTMP=YES | ||
588 | + SRS_RESEARCH=NO | ||
589 | + SRS_UTEST=NO | ||
590 | + SRS_GPERF=NO | ||
591 | + SRS_GPERF_MC=NO | ||
592 | + SRS_GPERF_MP=NO | ||
593 | + SRS_GPERF_CP=NO | ||
594 | + SRS_GPROF=NO | ||
595 | + SRS_STATIC=NO | ||
596 | + fi | ||
597 | + | ||
566 | # if dev specified, open features if possible. | 598 | # if dev specified, open features if possible. |
567 | if [ $SRS_DEV = YES ]; then | 599 | if [ $SRS_DEV = YES ]; then |
568 | SRS_HLS=YES | 600 | SRS_HLS=YES |
@@ -11,10 +11,10 @@ mkdir -p ${SRS_OBJS} | @@ -11,10 +11,10 @@ mkdir -p ${SRS_OBJS} | ||
11 | 11 | ||
12 | ##################################################################################### | 12 | ##################################################################################### |
13 | # linux shell color support. | 13 | # linux shell color support. |
14 | -RED="\\e[31m" | ||
15 | -GREEN="\\e[32m" | ||
16 | -YELLOW="\\e[33m" | ||
17 | -BLACK="\\e[0m" | 14 | +RED="\\033[31m" |
15 | +GREEN="\\033[32m" | ||
16 | +YELLOW="\\033[33m" | ||
17 | +BLACK="\\033[0m" | ||
18 | 18 | ||
19 | ##################################################################################### | 19 | ##################################################################################### |
20 | # parse user options, set the variables like: | 20 | # parse user options, set the variables like: |
@@ -21,11 +21,11 @@ DEFAULT_LOG_FILE='./objs/srs.log' | @@ -21,11 +21,11 @@ DEFAULT_LOG_FILE='./objs/srs.log' | ||
21 | ######################################################################## | 21 | ######################################################################## |
22 | # utility functions | 22 | # utility functions |
23 | ######################################################################## | 23 | ######################################################################## |
24 | -RED="\\e[31m" | ||
25 | -GREEN="\\e[32m" | ||
26 | -YELLOW="\\e[33m" | ||
27 | -BLACK="\\e[0m" | ||
28 | -POS="\\e[60G" | 24 | +RED="\\033[31m" |
25 | +GREEN="\\033[32m" | ||
26 | +YELLOW="\\033[33m" | ||
27 | +BLACK="\\033[0m" | ||
28 | +POS="\\033[60G" | ||
29 | 29 | ||
30 | ok_msg() { | 30 | ok_msg() { |
31 | echo -e "${1}${POS}${BLACK}[${GREEN} OK ${BLACK}]" | 31 | echo -e "${1}${POS}${BLACK}[${GREEN} OK ${BLACK}]" |
1 | +// !$*UTF8*$! | ||
2 | +{ | ||
3 | + archiveVersion = 1; | ||
4 | + classes = { | ||
5 | + }; | ||
6 | + objectVersion = 46; | ||
7 | + objects = { | ||
8 | + | ||
9 | +/* Begin PBXBuildFile section */ | ||
10 | + 3C1231F61AAE652D00CE8F6C /* srs_core_autofree.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1231F01AAE652C00CE8F6C /* srs_core_autofree.cpp */; }; | ||
11 | + 3C1231F71AAE652D00CE8F6C /* srs_core_performance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1231F21AAE652C00CE8F6C /* srs_core_performance.cpp */; }; | ||
12 | + 3C1231F81AAE652D00CE8F6C /* srs_core.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1231F41AAE652D00CE8F6C /* srs_core.cpp */; }; | ||
13 | + 3C1232061AAE812C00CE8F6C /* srs_main_server.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232051AAE812C00CE8F6C /* srs_main_server.cpp */; }; | ||
14 | + 3C1232201AAE814D00CE8F6C /* srs_kernel_aac.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232081AAE814D00CE8F6C /* srs_kernel_aac.cpp */; }; | ||
15 | + 3C1232211AAE814D00CE8F6C /* srs_kernel_buffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12320A1AAE814D00CE8F6C /* srs_kernel_buffer.cpp */; }; | ||
16 | + 3C1232221AAE814D00CE8F6C /* srs_kernel_codec.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12320C1AAE814D00CE8F6C /* srs_kernel_codec.cpp */; }; | ||
17 | + 3C1232231AAE814D00CE8F6C /* srs_kernel_consts.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12320E1AAE814D00CE8F6C /* srs_kernel_consts.cpp */; }; | ||
18 | + 3C1232241AAE814D00CE8F6C /* srs_kernel_error.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232101AAE814D00CE8F6C /* srs_kernel_error.cpp */; }; | ||
19 | + 3C1232251AAE814D00CE8F6C /* srs_kernel_file.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232121AAE814D00CE8F6C /* srs_kernel_file.cpp */; }; | ||
20 | + 3C1232261AAE814D00CE8F6C /* srs_kernel_flv.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232141AAE814D00CE8F6C /* srs_kernel_flv.cpp */; }; | ||
21 | + 3C1232271AAE814D00CE8F6C /* srs_kernel_log.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232161AAE814D00CE8F6C /* srs_kernel_log.cpp */; }; | ||
22 | + 3C1232281AAE814D00CE8F6C /* srs_kernel_mp3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232181AAE814D00CE8F6C /* srs_kernel_mp3.cpp */; }; | ||
23 | + 3C1232291AAE814D00CE8F6C /* srs_kernel_stream.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12321A1AAE814D00CE8F6C /* srs_kernel_stream.cpp */; }; | ||
24 | + 3C12322A1AAE814D00CE8F6C /* srs_kernel_ts.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12321C1AAE814D00CE8F6C /* srs_kernel_ts.cpp */; }; | ||
25 | + 3C12322B1AAE814D00CE8F6C /* srs_kernel_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12321E1AAE814D00CE8F6C /* srs_kernel_utility.cpp */; }; | ||
26 | + 3C1232411AAE81A400CE8F6C /* srs_raw_avc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12322D1AAE81A400CE8F6C /* srs_raw_avc.cpp */; }; | ||
27 | + 3C1232421AAE81A400CE8F6C /* srs_rtmp_amf0.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12322F1AAE81A400CE8F6C /* srs_rtmp_amf0.cpp */; }; | ||
28 | + 3C1232431AAE81A400CE8F6C /* srs_rtmp_buffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232311AAE81A400CE8F6C /* srs_rtmp_buffer.cpp */; }; | ||
29 | + 3C1232441AAE81A400CE8F6C /* srs_rtmp_handshake.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232331AAE81A400CE8F6C /* srs_rtmp_handshake.cpp */; }; | ||
30 | + 3C1232451AAE81A400CE8F6C /* srs_rtmp_io.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232351AAE81A400CE8F6C /* srs_rtmp_io.cpp */; }; | ||
31 | + 3C1232461AAE81A400CE8F6C /* srs_rtmp_msg_array.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232371AAE81A400CE8F6C /* srs_rtmp_msg_array.cpp */; }; | ||
32 | + 3C1232471AAE81A400CE8F6C /* srs_rtmp_sdk.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232391AAE81A400CE8F6C /* srs_rtmp_sdk.cpp */; }; | ||
33 | + 3C1232481AAE81A400CE8F6C /* srs_rtmp_stack.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12323B1AAE81A400CE8F6C /* srs_rtmp_stack.cpp */; }; | ||
34 | + 3C1232491AAE81A400CE8F6C /* srs_rtmp_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12323D1AAE81A400CE8F6C /* srs_rtmp_utility.cpp */; }; | ||
35 | + 3C12324A1AAE81A400CE8F6C /* srs_rtsp_stack.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12323F1AAE81A400CE8F6C /* srs_rtsp_stack.cpp */; }; | ||
36 | + 3C1232941AAE81D900CE8F6C /* srs_app_bandwidth.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12324C1AAE81D900CE8F6C /* srs_app_bandwidth.cpp */; }; | ||
37 | + 3C1232951AAE81D900CE8F6C /* srs_app_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12324E1AAE81D900CE8F6C /* srs_app_config.cpp */; }; | ||
38 | + 3C1232961AAE81D900CE8F6C /* srs_app_conn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232501AAE81D900CE8F6C /* srs_app_conn.cpp */; }; | ||
39 | + 3C1232971AAE81D900CE8F6C /* srs_app_dvr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232521AAE81D900CE8F6C /* srs_app_dvr.cpp */; }; | ||
40 | + 3C1232981AAE81D900CE8F6C /* srs_app_edge.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232541AAE81D900CE8F6C /* srs_app_edge.cpp */; }; | ||
41 | + 3C1232991AAE81D900CE8F6C /* srs_app_empty.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232561AAE81D900CE8F6C /* srs_app_empty.cpp */; }; | ||
42 | + 3C12329A1AAE81D900CE8F6C /* srs_app_encoder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232581AAE81D900CE8F6C /* srs_app_encoder.cpp */; }; | ||
43 | + 3C12329B1AAE81D900CE8F6C /* srs_app_ffmpeg.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12325A1AAE81D900CE8F6C /* srs_app_ffmpeg.cpp */; }; | ||
44 | + 3C12329C1AAE81D900CE8F6C /* srs_app_forward.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12325C1AAE81D900CE8F6C /* srs_app_forward.cpp */; }; | ||
45 | + 3C12329D1AAE81D900CE8F6C /* srs_app_heartbeat.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12325E1AAE81D900CE8F6C /* srs_app_heartbeat.cpp */; }; | ||
46 | + 3C12329E1AAE81D900CE8F6C /* srs_app_hls.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232601AAE81D900CE8F6C /* srs_app_hls.cpp */; }; | ||
47 | + 3C12329F1AAE81D900CE8F6C /* srs_app_http_api.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232621AAE81D900CE8F6C /* srs_app_http_api.cpp */; }; | ||
48 | + 3C1232A01AAE81D900CE8F6C /* srs_app_http_client.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232641AAE81D900CE8F6C /* srs_app_http_client.cpp */; }; | ||
49 | + 3C1232A11AAE81D900CE8F6C /* srs_app_http_conn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232661AAE81D900CE8F6C /* srs_app_http_conn.cpp */; }; | ||
50 | + 3C1232A21AAE81D900CE8F6C /* srs_app_http_hooks.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232681AAE81D900CE8F6C /* srs_app_http_hooks.cpp */; }; | ||
51 | + 3C1232A31AAE81D900CE8F6C /* srs_app_http.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12326A1AAE81D900CE8F6C /* srs_app_http.cpp */; }; | ||
52 | + 3C1232A41AAE81D900CE8F6C /* srs_app_ingest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12326C1AAE81D900CE8F6C /* srs_app_ingest.cpp */; }; | ||
53 | + 3C1232A51AAE81D900CE8F6C /* srs_app_json.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12326E1AAE81D900CE8F6C /* srs_app_json.cpp */; }; | ||
54 | + 3C1232A61AAE81D900CE8F6C /* srs_app_kbps.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232701AAE81D900CE8F6C /* srs_app_kbps.cpp */; }; | ||
55 | + 3C1232A71AAE81D900CE8F6C /* srs_app_listener.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232721AAE81D900CE8F6C /* srs_app_listener.cpp */; }; | ||
56 | + 3C1232A81AAE81D900CE8F6C /* srs_app_log.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232741AAE81D900CE8F6C /* srs_app_log.cpp */; }; | ||
57 | + 3C1232A91AAE81D900CE8F6C /* srs_app_mpegts_udp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232761AAE81D900CE8F6C /* srs_app_mpegts_udp.cpp */; }; | ||
58 | + 3C1232AA1AAE81D900CE8F6C /* srs_app_pithy_print.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232781AAE81D900CE8F6C /* srs_app_pithy_print.cpp */; }; | ||
59 | + 3C1232AB1AAE81D900CE8F6C /* srs_app_recv_thread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12327A1AAE81D900CE8F6C /* srs_app_recv_thread.cpp */; }; | ||
60 | + 3C1232AC1AAE81D900CE8F6C /* srs_app_refer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12327C1AAE81D900CE8F6C /* srs_app_refer.cpp */; }; | ||
61 | + 3C1232AD1AAE81D900CE8F6C /* srs_app_reload.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12327E1AAE81D900CE8F6C /* srs_app_reload.cpp */; }; | ||
62 | + 3C1232AE1AAE81D900CE8F6C /* srs_app_rtmp_conn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232801AAE81D900CE8F6C /* srs_app_rtmp_conn.cpp */; }; | ||
63 | + 3C1232AF1AAE81D900CE8F6C /* srs_app_rtsp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232821AAE81D900CE8F6C /* srs_app_rtsp.cpp */; }; | ||
64 | + 3C1232B01AAE81D900CE8F6C /* srs_app_security.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232841AAE81D900CE8F6C /* srs_app_security.cpp */; }; | ||
65 | + 3C1232B11AAE81D900CE8F6C /* srs_app_server.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232861AAE81D900CE8F6C /* srs_app_server.cpp */; }; | ||
66 | + 3C1232B21AAE81D900CE8F6C /* srs_app_source.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232881AAE81D900CE8F6C /* srs_app_source.cpp */; }; | ||
67 | + 3C1232B31AAE81D900CE8F6C /* srs_app_st_socket.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12328A1AAE81D900CE8F6C /* srs_app_st_socket.cpp */; }; | ||
68 | + 3C1232B41AAE81D900CE8F6C /* srs_app_st.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12328C1AAE81D900CE8F6C /* srs_app_st.cpp */; }; | ||
69 | + 3C1232B51AAE81D900CE8F6C /* srs_app_statistic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12328E1AAE81D900CE8F6C /* srs_app_statistic.cpp */; }; | ||
70 | + 3C1232B61AAE81D900CE8F6C /* srs_app_thread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232901AAE81D900CE8F6C /* srs_app_thread.cpp */; }; | ||
71 | + 3C1232B71AAE81D900CE8F6C /* srs_app_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232921AAE81D900CE8F6C /* srs_app_utility.cpp */; }; | ||
72 | + 3C1232D31AAEA56B00CE8F6C /* libst.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3C1232D21AAEA56B00CE8F6C /* libst.a */; }; | ||
73 | + 3C1232E91AAEA5D000CE8F6C /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3C1232E71AAEA5D000CE8F6C /* libcrypto.a */; }; | ||
74 | + 3C1232EA1AAEA5D000CE8F6C /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3C1232E81AAEA5D000CE8F6C /* libssl.a */; }; | ||
75 | + 3C1232ED1AAEA70F00CE8F6C /* libhttp_parser.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3C1232EC1AAEA70F00CE8F6C /* libhttp_parser.a */; }; | ||
76 | +/* End PBXBuildFile section */ | ||
77 | + | ||
78 | +/* Begin PBXCopyFilesBuildPhase section */ | ||
79 | + 3C1231E31AAE64A400CE8F6C /* CopyFiles */ = { | ||
80 | + isa = PBXCopyFilesBuildPhase; | ||
81 | + buildActionMask = 2147483647; | ||
82 | + dstPath = /usr/share/man/man1/; | ||
83 | + dstSubfolderSpec = 0; | ||
84 | + files = ( | ||
85 | + ); | ||
86 | + runOnlyForDeploymentPostprocessing = 1; | ||
87 | + }; | ||
88 | +/* End PBXCopyFilesBuildPhase section */ | ||
89 | + | ||
90 | +/* Begin PBXFileReference section */ | ||
91 | + 3C1231E51AAE64A400CE8F6C /* srs_xcode */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; includeInIndex = 0; path = srs_xcode; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
92 | + 3C1231F01AAE652C00CE8F6C /* srs_core_autofree.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_core_autofree.cpp; path = ../../../src/core/srs_core_autofree.cpp; sourceTree = "<group>"; }; | ||
93 | + 3C1231F11AAE652C00CE8F6C /* srs_core_autofree.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_core_autofree.hpp; path = ../../../src/core/srs_core_autofree.hpp; sourceTree = "<group>"; }; | ||
94 | + 3C1231F21AAE652C00CE8F6C /* srs_core_performance.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_core_performance.cpp; path = ../../../src/core/srs_core_performance.cpp; sourceTree = "<group>"; }; | ||
95 | + 3C1231F31AAE652C00CE8F6C /* srs_core_performance.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_core_performance.hpp; path = ../../../src/core/srs_core_performance.hpp; sourceTree = "<group>"; }; | ||
96 | + 3C1231F41AAE652D00CE8F6C /* srs_core.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_core.cpp; path = ../../../src/core/srs_core.cpp; sourceTree = "<group>"; }; | ||
97 | + 3C1231F51AAE652D00CE8F6C /* srs_core.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_core.hpp; path = ../../../src/core/srs_core.hpp; sourceTree = "<group>"; }; | ||
98 | + 3C1231FB1AAE673100CE8F6C /* srs_auto_headers.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_auto_headers.hpp; path = ../../../objs/srs_auto_headers.hpp; sourceTree = "<group>"; }; | ||
99 | + 3C1232051AAE812C00CE8F6C /* srs_main_server.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_main_server.cpp; path = ../../../src/main/srs_main_server.cpp; sourceTree = "<group>"; }; | ||
100 | + 3C1232081AAE814D00CE8F6C /* srs_kernel_aac.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_kernel_aac.cpp; path = ../../../src/kernel/srs_kernel_aac.cpp; sourceTree = "<group>"; }; | ||
101 | + 3C1232091AAE814D00CE8F6C /* srs_kernel_aac.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_kernel_aac.hpp; path = ../../../src/kernel/srs_kernel_aac.hpp; sourceTree = "<group>"; }; | ||
102 | + 3C12320A1AAE814D00CE8F6C /* srs_kernel_buffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_kernel_buffer.cpp; path = ../../../src/kernel/srs_kernel_buffer.cpp; sourceTree = "<group>"; }; | ||
103 | + 3C12320B1AAE814D00CE8F6C /* srs_kernel_buffer.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_kernel_buffer.hpp; path = ../../../src/kernel/srs_kernel_buffer.hpp; sourceTree = "<group>"; }; | ||
104 | + 3C12320C1AAE814D00CE8F6C /* srs_kernel_codec.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_kernel_codec.cpp; path = ../../../src/kernel/srs_kernel_codec.cpp; sourceTree = "<group>"; }; | ||
105 | + 3C12320D1AAE814D00CE8F6C /* srs_kernel_codec.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_kernel_codec.hpp; path = ../../../src/kernel/srs_kernel_codec.hpp; sourceTree = "<group>"; }; | ||
106 | + 3C12320E1AAE814D00CE8F6C /* srs_kernel_consts.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_kernel_consts.cpp; path = ../../../src/kernel/srs_kernel_consts.cpp; sourceTree = "<group>"; }; | ||
107 | + 3C12320F1AAE814D00CE8F6C /* srs_kernel_consts.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_kernel_consts.hpp; path = ../../../src/kernel/srs_kernel_consts.hpp; sourceTree = "<group>"; }; | ||
108 | + 3C1232101AAE814D00CE8F6C /* srs_kernel_error.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_kernel_error.cpp; path = ../../../src/kernel/srs_kernel_error.cpp; sourceTree = "<group>"; }; | ||
109 | + 3C1232111AAE814D00CE8F6C /* srs_kernel_error.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_kernel_error.hpp; path = ../../../src/kernel/srs_kernel_error.hpp; sourceTree = "<group>"; }; | ||
110 | + 3C1232121AAE814D00CE8F6C /* srs_kernel_file.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_kernel_file.cpp; path = ../../../src/kernel/srs_kernel_file.cpp; sourceTree = "<group>"; }; | ||
111 | + 3C1232131AAE814D00CE8F6C /* srs_kernel_file.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_kernel_file.hpp; path = ../../../src/kernel/srs_kernel_file.hpp; sourceTree = "<group>"; }; | ||
112 | + 3C1232141AAE814D00CE8F6C /* srs_kernel_flv.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_kernel_flv.cpp; path = ../../../src/kernel/srs_kernel_flv.cpp; sourceTree = "<group>"; }; | ||
113 | + 3C1232151AAE814D00CE8F6C /* srs_kernel_flv.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_kernel_flv.hpp; path = ../../../src/kernel/srs_kernel_flv.hpp; sourceTree = "<group>"; }; | ||
114 | + 3C1232161AAE814D00CE8F6C /* srs_kernel_log.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_kernel_log.cpp; path = ../../../src/kernel/srs_kernel_log.cpp; sourceTree = "<group>"; }; | ||
115 | + 3C1232171AAE814D00CE8F6C /* srs_kernel_log.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_kernel_log.hpp; path = ../../../src/kernel/srs_kernel_log.hpp; sourceTree = "<group>"; }; | ||
116 | + 3C1232181AAE814D00CE8F6C /* srs_kernel_mp3.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_kernel_mp3.cpp; path = ../../../src/kernel/srs_kernel_mp3.cpp; sourceTree = "<group>"; }; | ||
117 | + 3C1232191AAE814D00CE8F6C /* srs_kernel_mp3.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_kernel_mp3.hpp; path = ../../../src/kernel/srs_kernel_mp3.hpp; sourceTree = "<group>"; }; | ||
118 | + 3C12321A1AAE814D00CE8F6C /* srs_kernel_stream.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_kernel_stream.cpp; path = ../../../src/kernel/srs_kernel_stream.cpp; sourceTree = "<group>"; }; | ||
119 | + 3C12321B1AAE814D00CE8F6C /* srs_kernel_stream.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_kernel_stream.hpp; path = ../../../src/kernel/srs_kernel_stream.hpp; sourceTree = "<group>"; }; | ||
120 | + 3C12321C1AAE814D00CE8F6C /* srs_kernel_ts.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_kernel_ts.cpp; path = ../../../src/kernel/srs_kernel_ts.cpp; sourceTree = "<group>"; }; | ||
121 | + 3C12321D1AAE814D00CE8F6C /* srs_kernel_ts.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_kernel_ts.hpp; path = ../../../src/kernel/srs_kernel_ts.hpp; sourceTree = "<group>"; }; | ||
122 | + 3C12321E1AAE814D00CE8F6C /* srs_kernel_utility.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_kernel_utility.cpp; path = ../../../src/kernel/srs_kernel_utility.cpp; sourceTree = "<group>"; }; | ||
123 | + 3C12321F1AAE814D00CE8F6C /* srs_kernel_utility.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_kernel_utility.hpp; path = ../../../src/kernel/srs_kernel_utility.hpp; sourceTree = "<group>"; }; | ||
124 | + 3C12322D1AAE81A400CE8F6C /* srs_raw_avc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_raw_avc.cpp; path = ../../../src/protocol/srs_raw_avc.cpp; sourceTree = "<group>"; }; | ||
125 | + 3C12322E1AAE81A400CE8F6C /* srs_raw_avc.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_raw_avc.hpp; path = ../../../src/protocol/srs_raw_avc.hpp; sourceTree = "<group>"; }; | ||
126 | + 3C12322F1AAE81A400CE8F6C /* srs_rtmp_amf0.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_rtmp_amf0.cpp; path = ../../../src/protocol/srs_rtmp_amf0.cpp; sourceTree = "<group>"; }; | ||
127 | + 3C1232301AAE81A400CE8F6C /* srs_rtmp_amf0.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_rtmp_amf0.hpp; path = ../../../src/protocol/srs_rtmp_amf0.hpp; sourceTree = "<group>"; }; | ||
128 | + 3C1232311AAE81A400CE8F6C /* srs_rtmp_buffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_rtmp_buffer.cpp; path = ../../../src/protocol/srs_rtmp_buffer.cpp; sourceTree = "<group>"; }; | ||
129 | + 3C1232321AAE81A400CE8F6C /* srs_rtmp_buffer.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_rtmp_buffer.hpp; path = ../../../src/protocol/srs_rtmp_buffer.hpp; sourceTree = "<group>"; }; | ||
130 | + 3C1232331AAE81A400CE8F6C /* srs_rtmp_handshake.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_rtmp_handshake.cpp; path = ../../../src/protocol/srs_rtmp_handshake.cpp; sourceTree = "<group>"; }; | ||
131 | + 3C1232341AAE81A400CE8F6C /* srs_rtmp_handshake.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_rtmp_handshake.hpp; path = ../../../src/protocol/srs_rtmp_handshake.hpp; sourceTree = "<group>"; }; | ||
132 | + 3C1232351AAE81A400CE8F6C /* srs_rtmp_io.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_rtmp_io.cpp; path = ../../../src/protocol/srs_rtmp_io.cpp; sourceTree = "<group>"; }; | ||
133 | + 3C1232361AAE81A400CE8F6C /* srs_rtmp_io.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_rtmp_io.hpp; path = ../../../src/protocol/srs_rtmp_io.hpp; sourceTree = "<group>"; }; | ||
134 | + 3C1232371AAE81A400CE8F6C /* srs_rtmp_msg_array.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_rtmp_msg_array.cpp; path = ../../../src/protocol/srs_rtmp_msg_array.cpp; sourceTree = "<group>"; }; | ||
135 | + 3C1232381AAE81A400CE8F6C /* srs_rtmp_msg_array.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_rtmp_msg_array.hpp; path = ../../../src/protocol/srs_rtmp_msg_array.hpp; sourceTree = "<group>"; }; | ||
136 | + 3C1232391AAE81A400CE8F6C /* srs_rtmp_sdk.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_rtmp_sdk.cpp; path = ../../../src/protocol/srs_rtmp_sdk.cpp; sourceTree = "<group>"; }; | ||
137 | + 3C12323A1AAE81A400CE8F6C /* srs_rtmp_sdk.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_rtmp_sdk.hpp; path = ../../../src/protocol/srs_rtmp_sdk.hpp; sourceTree = "<group>"; }; | ||
138 | + 3C12323B1AAE81A400CE8F6C /* srs_rtmp_stack.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_rtmp_stack.cpp; path = ../../../src/protocol/srs_rtmp_stack.cpp; sourceTree = "<group>"; }; | ||
139 | + 3C12323C1AAE81A400CE8F6C /* srs_rtmp_stack.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_rtmp_stack.hpp; path = ../../../src/protocol/srs_rtmp_stack.hpp; sourceTree = "<group>"; }; | ||
140 | + 3C12323D1AAE81A400CE8F6C /* srs_rtmp_utility.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_rtmp_utility.cpp; path = ../../../src/protocol/srs_rtmp_utility.cpp; sourceTree = "<group>"; }; | ||
141 | + 3C12323E1AAE81A400CE8F6C /* srs_rtmp_utility.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_rtmp_utility.hpp; path = ../../../src/protocol/srs_rtmp_utility.hpp; sourceTree = "<group>"; }; | ||
142 | + 3C12323F1AAE81A400CE8F6C /* srs_rtsp_stack.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_rtsp_stack.cpp; path = ../../../src/protocol/srs_rtsp_stack.cpp; sourceTree = "<group>"; }; | ||
143 | + 3C1232401AAE81A400CE8F6C /* srs_rtsp_stack.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_rtsp_stack.hpp; path = ../../../src/protocol/srs_rtsp_stack.hpp; sourceTree = "<group>"; }; | ||
144 | + 3C12324C1AAE81D900CE8F6C /* srs_app_bandwidth.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_bandwidth.cpp; path = ../../../src/app/srs_app_bandwidth.cpp; sourceTree = "<group>"; }; | ||
145 | + 3C12324D1AAE81D900CE8F6C /* srs_app_bandwidth.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_bandwidth.hpp; path = ../../../src/app/srs_app_bandwidth.hpp; sourceTree = "<group>"; }; | ||
146 | + 3C12324E1AAE81D900CE8F6C /* srs_app_config.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_config.cpp; path = ../../../src/app/srs_app_config.cpp; sourceTree = "<group>"; }; | ||
147 | + 3C12324F1AAE81D900CE8F6C /* srs_app_config.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_config.hpp; path = ../../../src/app/srs_app_config.hpp; sourceTree = "<group>"; }; | ||
148 | + 3C1232501AAE81D900CE8F6C /* srs_app_conn.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_conn.cpp; path = ../../../src/app/srs_app_conn.cpp; sourceTree = "<group>"; }; | ||
149 | + 3C1232511AAE81D900CE8F6C /* srs_app_conn.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_conn.hpp; path = ../../../src/app/srs_app_conn.hpp; sourceTree = "<group>"; }; | ||
150 | + 3C1232521AAE81D900CE8F6C /* srs_app_dvr.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_dvr.cpp; path = ../../../src/app/srs_app_dvr.cpp; sourceTree = "<group>"; }; | ||
151 | + 3C1232531AAE81D900CE8F6C /* srs_app_dvr.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_dvr.hpp; path = ../../../src/app/srs_app_dvr.hpp; sourceTree = "<group>"; }; | ||
152 | + 3C1232541AAE81D900CE8F6C /* srs_app_edge.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_edge.cpp; path = ../../../src/app/srs_app_edge.cpp; sourceTree = "<group>"; }; | ||
153 | + 3C1232551AAE81D900CE8F6C /* srs_app_edge.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_edge.hpp; path = ../../../src/app/srs_app_edge.hpp; sourceTree = "<group>"; }; | ||
154 | + 3C1232561AAE81D900CE8F6C /* srs_app_empty.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_empty.cpp; path = ../../../src/app/srs_app_empty.cpp; sourceTree = "<group>"; }; | ||
155 | + 3C1232571AAE81D900CE8F6C /* srs_app_empty.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_empty.hpp; path = ../../../src/app/srs_app_empty.hpp; sourceTree = "<group>"; }; | ||
156 | + 3C1232581AAE81D900CE8F6C /* srs_app_encoder.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_encoder.cpp; path = ../../../src/app/srs_app_encoder.cpp; sourceTree = "<group>"; }; | ||
157 | + 3C1232591AAE81D900CE8F6C /* srs_app_encoder.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_encoder.hpp; path = ../../../src/app/srs_app_encoder.hpp; sourceTree = "<group>"; }; | ||
158 | + 3C12325A1AAE81D900CE8F6C /* srs_app_ffmpeg.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_ffmpeg.cpp; path = ../../../src/app/srs_app_ffmpeg.cpp; sourceTree = "<group>"; }; | ||
159 | + 3C12325B1AAE81D900CE8F6C /* srs_app_ffmpeg.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_ffmpeg.hpp; path = ../../../src/app/srs_app_ffmpeg.hpp; sourceTree = "<group>"; }; | ||
160 | + 3C12325C1AAE81D900CE8F6C /* srs_app_forward.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_forward.cpp; path = ../../../src/app/srs_app_forward.cpp; sourceTree = "<group>"; }; | ||
161 | + 3C12325D1AAE81D900CE8F6C /* srs_app_forward.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_forward.hpp; path = ../../../src/app/srs_app_forward.hpp; sourceTree = "<group>"; }; | ||
162 | + 3C12325E1AAE81D900CE8F6C /* srs_app_heartbeat.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_heartbeat.cpp; path = ../../../src/app/srs_app_heartbeat.cpp; sourceTree = "<group>"; }; | ||
163 | + 3C12325F1AAE81D900CE8F6C /* srs_app_heartbeat.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_heartbeat.hpp; path = ../../../src/app/srs_app_heartbeat.hpp; sourceTree = "<group>"; }; | ||
164 | + 3C1232601AAE81D900CE8F6C /* srs_app_hls.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_hls.cpp; path = ../../../src/app/srs_app_hls.cpp; sourceTree = "<group>"; }; | ||
165 | + 3C1232611AAE81D900CE8F6C /* srs_app_hls.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_hls.hpp; path = ../../../src/app/srs_app_hls.hpp; sourceTree = "<group>"; }; | ||
166 | + 3C1232621AAE81D900CE8F6C /* srs_app_http_api.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_http_api.cpp; path = ../../../src/app/srs_app_http_api.cpp; sourceTree = "<group>"; }; | ||
167 | + 3C1232631AAE81D900CE8F6C /* srs_app_http_api.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_http_api.hpp; path = ../../../src/app/srs_app_http_api.hpp; sourceTree = "<group>"; }; | ||
168 | + 3C1232641AAE81D900CE8F6C /* srs_app_http_client.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_http_client.cpp; path = ../../../src/app/srs_app_http_client.cpp; sourceTree = "<group>"; }; | ||
169 | + 3C1232651AAE81D900CE8F6C /* srs_app_http_client.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_http_client.hpp; path = ../../../src/app/srs_app_http_client.hpp; sourceTree = "<group>"; }; | ||
170 | + 3C1232661AAE81D900CE8F6C /* srs_app_http_conn.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_http_conn.cpp; path = ../../../src/app/srs_app_http_conn.cpp; sourceTree = "<group>"; }; | ||
171 | + 3C1232671AAE81D900CE8F6C /* srs_app_http_conn.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_http_conn.hpp; path = ../../../src/app/srs_app_http_conn.hpp; sourceTree = "<group>"; }; | ||
172 | + 3C1232681AAE81D900CE8F6C /* srs_app_http_hooks.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_http_hooks.cpp; path = ../../../src/app/srs_app_http_hooks.cpp; sourceTree = "<group>"; }; | ||
173 | + 3C1232691AAE81D900CE8F6C /* srs_app_http_hooks.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_http_hooks.hpp; path = ../../../src/app/srs_app_http_hooks.hpp; sourceTree = "<group>"; }; | ||
174 | + 3C12326A1AAE81D900CE8F6C /* srs_app_http.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_http.cpp; path = ../../../src/app/srs_app_http.cpp; sourceTree = "<group>"; }; | ||
175 | + 3C12326B1AAE81D900CE8F6C /* srs_app_http.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_http.hpp; path = ../../../src/app/srs_app_http.hpp; sourceTree = "<group>"; }; | ||
176 | + 3C12326C1AAE81D900CE8F6C /* srs_app_ingest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_ingest.cpp; path = ../../../src/app/srs_app_ingest.cpp; sourceTree = "<group>"; }; | ||
177 | + 3C12326D1AAE81D900CE8F6C /* srs_app_ingest.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_ingest.hpp; path = ../../../src/app/srs_app_ingest.hpp; sourceTree = "<group>"; }; | ||
178 | + 3C12326E1AAE81D900CE8F6C /* srs_app_json.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_json.cpp; path = ../../../src/app/srs_app_json.cpp; sourceTree = "<group>"; }; | ||
179 | + 3C12326F1AAE81D900CE8F6C /* srs_app_json.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_json.hpp; path = ../../../src/app/srs_app_json.hpp; sourceTree = "<group>"; }; | ||
180 | + 3C1232701AAE81D900CE8F6C /* srs_app_kbps.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_kbps.cpp; path = ../../../src/app/srs_app_kbps.cpp; sourceTree = "<group>"; }; | ||
181 | + 3C1232711AAE81D900CE8F6C /* srs_app_kbps.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_kbps.hpp; path = ../../../src/app/srs_app_kbps.hpp; sourceTree = "<group>"; }; | ||
182 | + 3C1232721AAE81D900CE8F6C /* srs_app_listener.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_listener.cpp; path = ../../../src/app/srs_app_listener.cpp; sourceTree = "<group>"; }; | ||
183 | + 3C1232731AAE81D900CE8F6C /* srs_app_listener.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_listener.hpp; path = ../../../src/app/srs_app_listener.hpp; sourceTree = "<group>"; }; | ||
184 | + 3C1232741AAE81D900CE8F6C /* srs_app_log.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_log.cpp; path = ../../../src/app/srs_app_log.cpp; sourceTree = "<group>"; }; | ||
185 | + 3C1232751AAE81D900CE8F6C /* srs_app_log.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_log.hpp; path = ../../../src/app/srs_app_log.hpp; sourceTree = "<group>"; }; | ||
186 | + 3C1232761AAE81D900CE8F6C /* srs_app_mpegts_udp.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_mpegts_udp.cpp; path = ../../../src/app/srs_app_mpegts_udp.cpp; sourceTree = "<group>"; }; | ||
187 | + 3C1232771AAE81D900CE8F6C /* srs_app_mpegts_udp.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_mpegts_udp.hpp; path = ../../../src/app/srs_app_mpegts_udp.hpp; sourceTree = "<group>"; }; | ||
188 | + 3C1232781AAE81D900CE8F6C /* srs_app_pithy_print.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_pithy_print.cpp; path = ../../../src/app/srs_app_pithy_print.cpp; sourceTree = "<group>"; }; | ||
189 | + 3C1232791AAE81D900CE8F6C /* srs_app_pithy_print.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_pithy_print.hpp; path = ../../../src/app/srs_app_pithy_print.hpp; sourceTree = "<group>"; }; | ||
190 | + 3C12327A1AAE81D900CE8F6C /* srs_app_recv_thread.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_recv_thread.cpp; path = ../../../src/app/srs_app_recv_thread.cpp; sourceTree = "<group>"; }; | ||
191 | + 3C12327B1AAE81D900CE8F6C /* srs_app_recv_thread.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_recv_thread.hpp; path = ../../../src/app/srs_app_recv_thread.hpp; sourceTree = "<group>"; }; | ||
192 | + 3C12327C1AAE81D900CE8F6C /* srs_app_refer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_refer.cpp; path = ../../../src/app/srs_app_refer.cpp; sourceTree = "<group>"; }; | ||
193 | + 3C12327D1AAE81D900CE8F6C /* srs_app_refer.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_refer.hpp; path = ../../../src/app/srs_app_refer.hpp; sourceTree = "<group>"; }; | ||
194 | + 3C12327E1AAE81D900CE8F6C /* srs_app_reload.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_reload.cpp; path = ../../../src/app/srs_app_reload.cpp; sourceTree = "<group>"; }; | ||
195 | + 3C12327F1AAE81D900CE8F6C /* srs_app_reload.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_reload.hpp; path = ../../../src/app/srs_app_reload.hpp; sourceTree = "<group>"; }; | ||
196 | + 3C1232801AAE81D900CE8F6C /* srs_app_rtmp_conn.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_rtmp_conn.cpp; path = ../../../src/app/srs_app_rtmp_conn.cpp; sourceTree = "<group>"; }; | ||
197 | + 3C1232811AAE81D900CE8F6C /* srs_app_rtmp_conn.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_rtmp_conn.hpp; path = ../../../src/app/srs_app_rtmp_conn.hpp; sourceTree = "<group>"; }; | ||
198 | + 3C1232821AAE81D900CE8F6C /* srs_app_rtsp.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_rtsp.cpp; path = ../../../src/app/srs_app_rtsp.cpp; sourceTree = "<group>"; }; | ||
199 | + 3C1232831AAE81D900CE8F6C /* srs_app_rtsp.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_rtsp.hpp; path = ../../../src/app/srs_app_rtsp.hpp; sourceTree = "<group>"; }; | ||
200 | + 3C1232841AAE81D900CE8F6C /* srs_app_security.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_security.cpp; path = ../../../src/app/srs_app_security.cpp; sourceTree = "<group>"; }; | ||
201 | + 3C1232851AAE81D900CE8F6C /* srs_app_security.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_security.hpp; path = ../../../src/app/srs_app_security.hpp; sourceTree = "<group>"; }; | ||
202 | + 3C1232861AAE81D900CE8F6C /* srs_app_server.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_server.cpp; path = ../../../src/app/srs_app_server.cpp; sourceTree = "<group>"; }; | ||
203 | + 3C1232871AAE81D900CE8F6C /* srs_app_server.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_server.hpp; path = ../../../src/app/srs_app_server.hpp; sourceTree = "<group>"; }; | ||
204 | + 3C1232881AAE81D900CE8F6C /* srs_app_source.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_source.cpp; path = ../../../src/app/srs_app_source.cpp; sourceTree = "<group>"; }; | ||
205 | + 3C1232891AAE81D900CE8F6C /* srs_app_source.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_source.hpp; path = ../../../src/app/srs_app_source.hpp; sourceTree = "<group>"; }; | ||
206 | + 3C12328A1AAE81D900CE8F6C /* srs_app_st_socket.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_st_socket.cpp; path = ../../../src/app/srs_app_st_socket.cpp; sourceTree = "<group>"; }; | ||
207 | + 3C12328B1AAE81D900CE8F6C /* srs_app_st_socket.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_st_socket.hpp; path = ../../../src/app/srs_app_st_socket.hpp; sourceTree = "<group>"; }; | ||
208 | + 3C12328C1AAE81D900CE8F6C /* srs_app_st.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_st.cpp; path = ../../../src/app/srs_app_st.cpp; sourceTree = "<group>"; }; | ||
209 | + 3C12328D1AAE81D900CE8F6C /* srs_app_st.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_st.hpp; path = ../../../src/app/srs_app_st.hpp; sourceTree = "<group>"; }; | ||
210 | + 3C12328E1AAE81D900CE8F6C /* srs_app_statistic.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_statistic.cpp; path = ../../../src/app/srs_app_statistic.cpp; sourceTree = "<group>"; }; | ||
211 | + 3C12328F1AAE81D900CE8F6C /* srs_app_statistic.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_statistic.hpp; path = ../../../src/app/srs_app_statistic.hpp; sourceTree = "<group>"; }; | ||
212 | + 3C1232901AAE81D900CE8F6C /* srs_app_thread.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_thread.cpp; path = ../../../src/app/srs_app_thread.cpp; sourceTree = "<group>"; }; | ||
213 | + 3C1232911AAE81D900CE8F6C /* srs_app_thread.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_thread.hpp; path = ../../../src/app/srs_app_thread.hpp; sourceTree = "<group>"; }; | ||
214 | + 3C1232921AAE81D900CE8F6C /* srs_app_utility.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_utility.cpp; path = ../../../src/app/srs_app_utility.cpp; sourceTree = "<group>"; }; | ||
215 | + 3C1232931AAE81D900CE8F6C /* srs_app_utility.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_utility.hpp; path = ../../../src/app/srs_app_utility.hpp; sourceTree = "<group>"; }; | ||
216 | + 3C1232B81AAE824500CE8F6C /* configure */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = configure; path = ../../../configure; sourceTree = "<group>"; }; | ||
217 | + 3C1232BB1AAE827E00CE8F6C /* apps.sh */ = {isa = PBXFileReference; explicitFileType = text.script.sh; fileEncoding = 4; name = apps.sh; path = ../../../auto/apps.sh; sourceTree = "<group>"; }; | ||
218 | + 3C1232BC1AAE827E00CE8F6C /* auto_headers.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = auto_headers.sh; path = ../../../auto/auto_headers.sh; sourceTree = "<group>"; }; | ||
219 | + 3C1232BD1AAE827E00CE8F6C /* build_ffmpeg.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = build_ffmpeg.sh; path = ../../../auto/build_ffmpeg.sh; sourceTree = "<group>"; }; | ||
220 | + 3C1232BE1AAE827E00CE8F6C /* depends.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = depends.sh; path = ../../../auto/depends.sh; sourceTree = "<group>"; }; | ||
221 | + 3C1232BF1AAE827E00CE8F6C /* generate_header.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = generate_header.sh; path = ../../../auto/generate_header.sh; sourceTree = "<group>"; }; | ||
222 | + 3C1232C01AAE827E00CE8F6C /* generate-srs-librtmp-project.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = "generate-srs-librtmp-project.sh"; path = "../../../auto/generate-srs-librtmp-project.sh"; sourceTree = "<group>"; }; | ||
223 | + 3C1232C11AAE827E00CE8F6C /* generate-srs-librtmp-single.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = "generate-srs-librtmp-single.sh"; path = "../../../auto/generate-srs-librtmp-single.sh"; sourceTree = "<group>"; }; | ||
224 | + 3C1232C21AAE827E00CE8F6C /* libs.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = libs.sh; path = ../../../auto/libs.sh; sourceTree = "<group>"; }; | ||
225 | + 3C1232C31AAE827E00CE8F6C /* local_ip.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = local_ip.sh; path = ../../../auto/local_ip.sh; sourceTree = "<group>"; }; | ||
226 | + 3C1232C41AAE827E00CE8F6C /* modules.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = modules.sh; path = ../../../auto/modules.sh; sourceTree = "<group>"; }; | ||
227 | + 3C1232C51AAE827E00CE8F6C /* options.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = options.sh; path = ../../../auto/options.sh; sourceTree = "<group>"; }; | ||
228 | + 3C1232C61AAE827E00CE8F6C /* summary.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = summary.sh; path = ../../../auto/summary.sh; sourceTree = "<group>"; }; | ||
229 | + 3C1232C71AAE827E00CE8F6C /* utest.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = utest.sh; path = ../../../auto/utest.sh; sourceTree = "<group>"; }; | ||
230 | + 3C1232C81AAE833300CE8F6C /* _log.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = _log.sh; path = ../../../scripts/_log.sh; sourceTree = "<group>"; }; | ||
231 | + 3C1232C91AAE833300CE8F6C /* build.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = build.sh; path = ../../../scripts/build.sh; sourceTree = "<group>"; }; | ||
232 | + 3C1232CA1AAE833300CE8F6C /* git.commit.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = git.commit.sh; path = ../../../scripts/git.commit.sh; sourceTree = "<group>"; }; | ||
233 | + 3C1232CB1AAE833300CE8F6C /* git2unix.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = git2unix.sh; path = ../../../scripts/git2unix.sh; sourceTree = "<group>"; }; | ||
234 | + 3C1232CC1AAE833300CE8F6C /* install.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = install.sh; path = ../../../scripts/install.sh; sourceTree = "<group>"; }; | ||
235 | + 3C1232CD1AAE833300CE8F6C /* package.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = package.sh; path = ../../../scripts/package.sh; sourceTree = "<group>"; }; | ||
236 | + 3C1232CE1AAE833300CE8F6C /* run.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = run.sh; path = ../../../scripts/run.sh; sourceTree = "<group>"; }; | ||
237 | + 3C1232CF1AAE833300CE8F6C /* srs.test */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = srs.test; path = ../../../scripts/srs.test; sourceTree = "<group>"; }; | ||
238 | + 3C1232D01AAE833300CE8F6C /* stop.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = stop.sh; path = ../../../scripts/stop.sh; sourceTree = "<group>"; }; | ||
239 | + 3C1232D11AAE833300CE8F6C /* test_configure.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = test_configure.sh; path = ../../../scripts/test_configure.sh; sourceTree = "<group>"; }; | ||
240 | + 3C1232D21AAEA56B00CE8F6C /* libst.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libst.a; path = "../../objs/st-1.9/DARWIN_14.0.0_DBG/libst.a"; sourceTree = "<group>"; }; | ||
241 | + 3C1232E71AAEA5D000CE8F6C /* libcrypto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcrypto.a; path = "../../objs/openssl-1.0.1f/_release/lib/libcrypto.a"; sourceTree = "<group>"; }; | ||
242 | + 3C1232E81AAEA5D000CE8F6C /* libssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libssl.a; path = "../../objs/openssl-1.0.1f/_release/lib/libssl.a"; sourceTree = "<group>"; }; | ||
243 | + 3C1232EC1AAEA70F00CE8F6C /* libhttp_parser.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libhttp_parser.a; path = "../../objs/http-parser-2.1/libhttp_parser.a"; sourceTree = "<group>"; }; | ||
244 | + 3C1232F11AAEAC7000CE8F6C /* srs */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = srs; path = ../../../etc/init.d/srs; sourceTree = "<group>"; }; | ||
245 | + 3C1232F21AAEAC7000CE8F6C /* srs-api */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = "srs-api"; path = "../../../etc/init.d/srs-api"; sourceTree = "<group>"; }; | ||
246 | + 3C1232F31AAEAC7000CE8F6C /* srs-demo */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = "srs-demo"; path = "../../../etc/init.d/srs-demo"; sourceTree = "<group>"; }; | ||
247 | + 3C1232F41AAEAC7000CE8F6C /* srs-demo-19350 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = "srs-demo-19350"; path = "../../../etc/init.d/srs-demo-19350"; sourceTree = "<group>"; }; | ||
248 | +/* End PBXFileReference section */ | ||
249 | + | ||
250 | +/* Begin PBXFrameworksBuildPhase section */ | ||
251 | + 3C1231E21AAE64A400CE8F6C /* Frameworks */ = { | ||
252 | + isa = PBXFrameworksBuildPhase; | ||
253 | + buildActionMask = 2147483647; | ||
254 | + files = ( | ||
255 | + 3C1232ED1AAEA70F00CE8F6C /* libhttp_parser.a in Frameworks */, | ||
256 | + 3C1232E91AAEA5D000CE8F6C /* libcrypto.a in Frameworks */, | ||
257 | + 3C1232EA1AAEA5D000CE8F6C /* libssl.a in Frameworks */, | ||
258 | + 3C1232D31AAEA56B00CE8F6C /* libst.a in Frameworks */, | ||
259 | + ); | ||
260 | + runOnlyForDeploymentPostprocessing = 0; | ||
261 | + }; | ||
262 | +/* End PBXFrameworksBuildPhase section */ | ||
263 | + | ||
264 | +/* Begin PBXGroup section */ | ||
265 | + 3C1231DC1AAE64A400CE8F6C = { | ||
266 | + isa = PBXGroup; | ||
267 | + children = ( | ||
268 | + 3C1232EE1AAEA71C00CE8F6C /* links */, | ||
269 | + 3C1231E71AAE64A400CE8F6C /* srs_xcode */, | ||
270 | + 3C1231E61AAE64A400CE8F6C /* Products */, | ||
271 | + ); | ||
272 | + sourceTree = "<group>"; | ||
273 | + }; | ||
274 | + 3C1231E61AAE64A400CE8F6C /* Products */ = { | ||
275 | + isa = PBXGroup; | ||
276 | + children = ( | ||
277 | + 3C1231E51AAE64A400CE8F6C /* srs_xcode */, | ||
278 | + ); | ||
279 | + name = Products; | ||
280 | + sourceTree = "<group>"; | ||
281 | + }; | ||
282 | + 3C1231E71AAE64A400CE8F6C /* srs_xcode */ = { | ||
283 | + isa = PBXGroup; | ||
284 | + children = ( | ||
285 | + 3C1232EF1AAEAC5800CE8F6C /* etc */, | ||
286 | + 3C1232B81AAE824500CE8F6C /* configure */, | ||
287 | + 3C1232BA1AAE826F00CE8F6C /* auto */, | ||
288 | + 3C1232B91AAE825100CE8F6C /* scripts */, | ||
289 | + 3C12324B1AAE81CE00CE8F6C /* app */, | ||
290 | + 3C12322C1AAE819900CE8F6C /* protocol */, | ||
291 | + 3C1232071AAE814200CE8F6C /* kernel */, | ||
292 | + 3C1232041AAE80CB00CE8F6C /* main */, | ||
293 | + 3C1231F91AAE670E00CE8F6C /* objs */, | ||
294 | + 3C1231EF1AAE651100CE8F6C /* core */, | ||
295 | + ); | ||
296 | + path = srs_xcode; | ||
297 | + sourceTree = "<group>"; | ||
298 | + }; | ||
299 | + 3C1231EF1AAE651100CE8F6C /* core */ = { | ||
300 | + isa = PBXGroup; | ||
301 | + children = ( | ||
302 | + 3C1231F01AAE652C00CE8F6C /* srs_core_autofree.cpp */, | ||
303 | + 3C1231F11AAE652C00CE8F6C /* srs_core_autofree.hpp */, | ||
304 | + 3C1231F21AAE652C00CE8F6C /* srs_core_performance.cpp */, | ||
305 | + 3C1231F31AAE652C00CE8F6C /* srs_core_performance.hpp */, | ||
306 | + 3C1231F41AAE652D00CE8F6C /* srs_core.cpp */, | ||
307 | + 3C1231F51AAE652D00CE8F6C /* srs_core.hpp */, | ||
308 | + ); | ||
309 | + name = core; | ||
310 | + sourceTree = "<group>"; | ||
311 | + }; | ||
312 | + 3C1231F91AAE670E00CE8F6C /* objs */ = { | ||
313 | + isa = PBXGroup; | ||
314 | + children = ( | ||
315 | + 3C1231FB1AAE673100CE8F6C /* srs_auto_headers.hpp */, | ||
316 | + ); | ||
317 | + name = objs; | ||
318 | + sourceTree = "<group>"; | ||
319 | + }; | ||
320 | + 3C1232041AAE80CB00CE8F6C /* main */ = { | ||
321 | + isa = PBXGroup; | ||
322 | + children = ( | ||
323 | + 3C1232051AAE812C00CE8F6C /* srs_main_server.cpp */, | ||
324 | + ); | ||
325 | + name = main; | ||
326 | + sourceTree = "<group>"; | ||
327 | + }; | ||
328 | + 3C1232071AAE814200CE8F6C /* kernel */ = { | ||
329 | + isa = PBXGroup; | ||
330 | + children = ( | ||
331 | + 3C1232081AAE814D00CE8F6C /* srs_kernel_aac.cpp */, | ||
332 | + 3C1232091AAE814D00CE8F6C /* srs_kernel_aac.hpp */, | ||
333 | + 3C12320A1AAE814D00CE8F6C /* srs_kernel_buffer.cpp */, | ||
334 | + 3C12320B1AAE814D00CE8F6C /* srs_kernel_buffer.hpp */, | ||
335 | + 3C12320C1AAE814D00CE8F6C /* srs_kernel_codec.cpp */, | ||
336 | + 3C12320D1AAE814D00CE8F6C /* srs_kernel_codec.hpp */, | ||
337 | + 3C12320E1AAE814D00CE8F6C /* srs_kernel_consts.cpp */, | ||
338 | + 3C12320F1AAE814D00CE8F6C /* srs_kernel_consts.hpp */, | ||
339 | + 3C1232101AAE814D00CE8F6C /* srs_kernel_error.cpp */, | ||
340 | + 3C1232111AAE814D00CE8F6C /* srs_kernel_error.hpp */, | ||
341 | + 3C1232121AAE814D00CE8F6C /* srs_kernel_file.cpp */, | ||
342 | + 3C1232131AAE814D00CE8F6C /* srs_kernel_file.hpp */, | ||
343 | + 3C1232141AAE814D00CE8F6C /* srs_kernel_flv.cpp */, | ||
344 | + 3C1232151AAE814D00CE8F6C /* srs_kernel_flv.hpp */, | ||
345 | + 3C1232161AAE814D00CE8F6C /* srs_kernel_log.cpp */, | ||
346 | + 3C1232171AAE814D00CE8F6C /* srs_kernel_log.hpp */, | ||
347 | + 3C1232181AAE814D00CE8F6C /* srs_kernel_mp3.cpp */, | ||
348 | + 3C1232191AAE814D00CE8F6C /* srs_kernel_mp3.hpp */, | ||
349 | + 3C12321A1AAE814D00CE8F6C /* srs_kernel_stream.cpp */, | ||
350 | + 3C12321B1AAE814D00CE8F6C /* srs_kernel_stream.hpp */, | ||
351 | + 3C12321C1AAE814D00CE8F6C /* srs_kernel_ts.cpp */, | ||
352 | + 3C12321D1AAE814D00CE8F6C /* srs_kernel_ts.hpp */, | ||
353 | + 3C12321E1AAE814D00CE8F6C /* srs_kernel_utility.cpp */, | ||
354 | + 3C12321F1AAE814D00CE8F6C /* srs_kernel_utility.hpp */, | ||
355 | + ); | ||
356 | + name = kernel; | ||
357 | + sourceTree = "<group>"; | ||
358 | + }; | ||
359 | + 3C12322C1AAE819900CE8F6C /* protocol */ = { | ||
360 | + isa = PBXGroup; | ||
361 | + children = ( | ||
362 | + 3C12322D1AAE81A400CE8F6C /* srs_raw_avc.cpp */, | ||
363 | + 3C12322E1AAE81A400CE8F6C /* srs_raw_avc.hpp */, | ||
364 | + 3C12322F1AAE81A400CE8F6C /* srs_rtmp_amf0.cpp */, | ||
365 | + 3C1232301AAE81A400CE8F6C /* srs_rtmp_amf0.hpp */, | ||
366 | + 3C1232311AAE81A400CE8F6C /* srs_rtmp_buffer.cpp */, | ||
367 | + 3C1232321AAE81A400CE8F6C /* srs_rtmp_buffer.hpp */, | ||
368 | + 3C1232331AAE81A400CE8F6C /* srs_rtmp_handshake.cpp */, | ||
369 | + 3C1232341AAE81A400CE8F6C /* srs_rtmp_handshake.hpp */, | ||
370 | + 3C1232351AAE81A400CE8F6C /* srs_rtmp_io.cpp */, | ||
371 | + 3C1232361AAE81A400CE8F6C /* srs_rtmp_io.hpp */, | ||
372 | + 3C1232371AAE81A400CE8F6C /* srs_rtmp_msg_array.cpp */, | ||
373 | + 3C1232381AAE81A400CE8F6C /* srs_rtmp_msg_array.hpp */, | ||
374 | + 3C1232391AAE81A400CE8F6C /* srs_rtmp_sdk.cpp */, | ||
375 | + 3C12323A1AAE81A400CE8F6C /* srs_rtmp_sdk.hpp */, | ||
376 | + 3C12323B1AAE81A400CE8F6C /* srs_rtmp_stack.cpp */, | ||
377 | + 3C12323C1AAE81A400CE8F6C /* srs_rtmp_stack.hpp */, | ||
378 | + 3C12323D1AAE81A400CE8F6C /* srs_rtmp_utility.cpp */, | ||
379 | + 3C12323E1AAE81A400CE8F6C /* srs_rtmp_utility.hpp */, | ||
380 | + 3C12323F1AAE81A400CE8F6C /* srs_rtsp_stack.cpp */, | ||
381 | + 3C1232401AAE81A400CE8F6C /* srs_rtsp_stack.hpp */, | ||
382 | + ); | ||
383 | + name = protocol; | ||
384 | + sourceTree = "<group>"; | ||
385 | + }; | ||
386 | + 3C12324B1AAE81CE00CE8F6C /* app */ = { | ||
387 | + isa = PBXGroup; | ||
388 | + children = ( | ||
389 | + 3C12324C1AAE81D900CE8F6C /* srs_app_bandwidth.cpp */, | ||
390 | + 3C12324D1AAE81D900CE8F6C /* srs_app_bandwidth.hpp */, | ||
391 | + 3C12324E1AAE81D900CE8F6C /* srs_app_config.cpp */, | ||
392 | + 3C12324F1AAE81D900CE8F6C /* srs_app_config.hpp */, | ||
393 | + 3C1232501AAE81D900CE8F6C /* srs_app_conn.cpp */, | ||
394 | + 3C1232511AAE81D900CE8F6C /* srs_app_conn.hpp */, | ||
395 | + 3C1232521AAE81D900CE8F6C /* srs_app_dvr.cpp */, | ||
396 | + 3C1232531AAE81D900CE8F6C /* srs_app_dvr.hpp */, | ||
397 | + 3C1232541AAE81D900CE8F6C /* srs_app_edge.cpp */, | ||
398 | + 3C1232551AAE81D900CE8F6C /* srs_app_edge.hpp */, | ||
399 | + 3C1232561AAE81D900CE8F6C /* srs_app_empty.cpp */, | ||
400 | + 3C1232571AAE81D900CE8F6C /* srs_app_empty.hpp */, | ||
401 | + 3C1232581AAE81D900CE8F6C /* srs_app_encoder.cpp */, | ||
402 | + 3C1232591AAE81D900CE8F6C /* srs_app_encoder.hpp */, | ||
403 | + 3C12325A1AAE81D900CE8F6C /* srs_app_ffmpeg.cpp */, | ||
404 | + 3C12325B1AAE81D900CE8F6C /* srs_app_ffmpeg.hpp */, | ||
405 | + 3C12325C1AAE81D900CE8F6C /* srs_app_forward.cpp */, | ||
406 | + 3C12325D1AAE81D900CE8F6C /* srs_app_forward.hpp */, | ||
407 | + 3C12325E1AAE81D900CE8F6C /* srs_app_heartbeat.cpp */, | ||
408 | + 3C12325F1AAE81D900CE8F6C /* srs_app_heartbeat.hpp */, | ||
409 | + 3C1232601AAE81D900CE8F6C /* srs_app_hls.cpp */, | ||
410 | + 3C1232611AAE81D900CE8F6C /* srs_app_hls.hpp */, | ||
411 | + 3C1232621AAE81D900CE8F6C /* srs_app_http_api.cpp */, | ||
412 | + 3C1232631AAE81D900CE8F6C /* srs_app_http_api.hpp */, | ||
413 | + 3C1232641AAE81D900CE8F6C /* srs_app_http_client.cpp */, | ||
414 | + 3C1232651AAE81D900CE8F6C /* srs_app_http_client.hpp */, | ||
415 | + 3C1232661AAE81D900CE8F6C /* srs_app_http_conn.cpp */, | ||
416 | + 3C1232671AAE81D900CE8F6C /* srs_app_http_conn.hpp */, | ||
417 | + 3C1232681AAE81D900CE8F6C /* srs_app_http_hooks.cpp */, | ||
418 | + 3C1232691AAE81D900CE8F6C /* srs_app_http_hooks.hpp */, | ||
419 | + 3C12326A1AAE81D900CE8F6C /* srs_app_http.cpp */, | ||
420 | + 3C12326B1AAE81D900CE8F6C /* srs_app_http.hpp */, | ||
421 | + 3C12326C1AAE81D900CE8F6C /* srs_app_ingest.cpp */, | ||
422 | + 3C12326D1AAE81D900CE8F6C /* srs_app_ingest.hpp */, | ||
423 | + 3C12326E1AAE81D900CE8F6C /* srs_app_json.cpp */, | ||
424 | + 3C12326F1AAE81D900CE8F6C /* srs_app_json.hpp */, | ||
425 | + 3C1232701AAE81D900CE8F6C /* srs_app_kbps.cpp */, | ||
426 | + 3C1232711AAE81D900CE8F6C /* srs_app_kbps.hpp */, | ||
427 | + 3C1232721AAE81D900CE8F6C /* srs_app_listener.cpp */, | ||
428 | + 3C1232731AAE81D900CE8F6C /* srs_app_listener.hpp */, | ||
429 | + 3C1232741AAE81D900CE8F6C /* srs_app_log.cpp */, | ||
430 | + 3C1232751AAE81D900CE8F6C /* srs_app_log.hpp */, | ||
431 | + 3C1232761AAE81D900CE8F6C /* srs_app_mpegts_udp.cpp */, | ||
432 | + 3C1232771AAE81D900CE8F6C /* srs_app_mpegts_udp.hpp */, | ||
433 | + 3C1232781AAE81D900CE8F6C /* srs_app_pithy_print.cpp */, | ||
434 | + 3C1232791AAE81D900CE8F6C /* srs_app_pithy_print.hpp */, | ||
435 | + 3C12327A1AAE81D900CE8F6C /* srs_app_recv_thread.cpp */, | ||
436 | + 3C12327B1AAE81D900CE8F6C /* srs_app_recv_thread.hpp */, | ||
437 | + 3C12327C1AAE81D900CE8F6C /* srs_app_refer.cpp */, | ||
438 | + 3C12327D1AAE81D900CE8F6C /* srs_app_refer.hpp */, | ||
439 | + 3C12327E1AAE81D900CE8F6C /* srs_app_reload.cpp */, | ||
440 | + 3C12327F1AAE81D900CE8F6C /* srs_app_reload.hpp */, | ||
441 | + 3C1232801AAE81D900CE8F6C /* srs_app_rtmp_conn.cpp */, | ||
442 | + 3C1232811AAE81D900CE8F6C /* srs_app_rtmp_conn.hpp */, | ||
443 | + 3C1232821AAE81D900CE8F6C /* srs_app_rtsp.cpp */, | ||
444 | + 3C1232831AAE81D900CE8F6C /* srs_app_rtsp.hpp */, | ||
445 | + 3C1232841AAE81D900CE8F6C /* srs_app_security.cpp */, | ||
446 | + 3C1232851AAE81D900CE8F6C /* srs_app_security.hpp */, | ||
447 | + 3C1232861AAE81D900CE8F6C /* srs_app_server.cpp */, | ||
448 | + 3C1232871AAE81D900CE8F6C /* srs_app_server.hpp */, | ||
449 | + 3C1232881AAE81D900CE8F6C /* srs_app_source.cpp */, | ||
450 | + 3C1232891AAE81D900CE8F6C /* srs_app_source.hpp */, | ||
451 | + 3C12328A1AAE81D900CE8F6C /* srs_app_st_socket.cpp */, | ||
452 | + 3C12328B1AAE81D900CE8F6C /* srs_app_st_socket.hpp */, | ||
453 | + 3C12328C1AAE81D900CE8F6C /* srs_app_st.cpp */, | ||
454 | + 3C12328D1AAE81D900CE8F6C /* srs_app_st.hpp */, | ||
455 | + 3C12328E1AAE81D900CE8F6C /* srs_app_statistic.cpp */, | ||
456 | + 3C12328F1AAE81D900CE8F6C /* srs_app_statistic.hpp */, | ||
457 | + 3C1232901AAE81D900CE8F6C /* srs_app_thread.cpp */, | ||
458 | + 3C1232911AAE81D900CE8F6C /* srs_app_thread.hpp */, | ||
459 | + 3C1232921AAE81D900CE8F6C /* srs_app_utility.cpp */, | ||
460 | + 3C1232931AAE81D900CE8F6C /* srs_app_utility.hpp */, | ||
461 | + ); | ||
462 | + name = app; | ||
463 | + sourceTree = "<group>"; | ||
464 | + }; | ||
465 | + 3C1232B91AAE825100CE8F6C /* scripts */ = { | ||
466 | + isa = PBXGroup; | ||
467 | + children = ( | ||
468 | + 3C1232C81AAE833300CE8F6C /* _log.sh */, | ||
469 | + 3C1232C91AAE833300CE8F6C /* build.sh */, | ||
470 | + 3C1232CA1AAE833300CE8F6C /* git.commit.sh */, | ||
471 | + 3C1232CB1AAE833300CE8F6C /* git2unix.sh */, | ||
472 | + 3C1232CC1AAE833300CE8F6C /* install.sh */, | ||
473 | + 3C1232CD1AAE833300CE8F6C /* package.sh */, | ||
474 | + 3C1232CE1AAE833300CE8F6C /* run.sh */, | ||
475 | + 3C1232CF1AAE833300CE8F6C /* srs.test */, | ||
476 | + 3C1232D01AAE833300CE8F6C /* stop.sh */, | ||
477 | + 3C1232D11AAE833300CE8F6C /* test_configure.sh */, | ||
478 | + ); | ||
479 | + name = scripts; | ||
480 | + sourceTree = "<group>"; | ||
481 | + }; | ||
482 | + 3C1232BA1AAE826F00CE8F6C /* auto */ = { | ||
483 | + isa = PBXGroup; | ||
484 | + children = ( | ||
485 | + 3C1232BB1AAE827E00CE8F6C /* apps.sh */, | ||
486 | + 3C1232BC1AAE827E00CE8F6C /* auto_headers.sh */, | ||
487 | + 3C1232BD1AAE827E00CE8F6C /* build_ffmpeg.sh */, | ||
488 | + 3C1232BE1AAE827E00CE8F6C /* depends.sh */, | ||
489 | + 3C1232BF1AAE827E00CE8F6C /* generate_header.sh */, | ||
490 | + 3C1232C01AAE827E00CE8F6C /* generate-srs-librtmp-project.sh */, | ||
491 | + 3C1232C11AAE827E00CE8F6C /* generate-srs-librtmp-single.sh */, | ||
492 | + 3C1232C21AAE827E00CE8F6C /* libs.sh */, | ||
493 | + 3C1232C31AAE827E00CE8F6C /* local_ip.sh */, | ||
494 | + 3C1232C41AAE827E00CE8F6C /* modules.sh */, | ||
495 | + 3C1232C51AAE827E00CE8F6C /* options.sh */, | ||
496 | + 3C1232C61AAE827E00CE8F6C /* summary.sh */, | ||
497 | + 3C1232C71AAE827E00CE8F6C /* utest.sh */, | ||
498 | + ); | ||
499 | + name = auto; | ||
500 | + sourceTree = "<group>"; | ||
501 | + }; | ||
502 | + 3C1232EE1AAEA71C00CE8F6C /* links */ = { | ||
503 | + isa = PBXGroup; | ||
504 | + children = ( | ||
505 | + 3C1232EC1AAEA70F00CE8F6C /* libhttp_parser.a */, | ||
506 | + 3C1232D21AAEA56B00CE8F6C /* libst.a */, | ||
507 | + 3C1232E81AAEA5D000CE8F6C /* libssl.a */, | ||
508 | + 3C1232E71AAEA5D000CE8F6C /* libcrypto.a */, | ||
509 | + ); | ||
510 | + name = links; | ||
511 | + sourceTree = "<group>"; | ||
512 | + }; | ||
513 | + 3C1232EF1AAEAC5800CE8F6C /* etc */ = { | ||
514 | + isa = PBXGroup; | ||
515 | + children = ( | ||
516 | + 3C1232F01AAEAC5D00CE8F6C /* init.d */, | ||
517 | + ); | ||
518 | + name = etc; | ||
519 | + sourceTree = "<group>"; | ||
520 | + }; | ||
521 | + 3C1232F01AAEAC5D00CE8F6C /* init.d */ = { | ||
522 | + isa = PBXGroup; | ||
523 | + children = ( | ||
524 | + 3C1232F11AAEAC7000CE8F6C /* srs */, | ||
525 | + 3C1232F21AAEAC7000CE8F6C /* srs-api */, | ||
526 | + 3C1232F31AAEAC7000CE8F6C /* srs-demo */, | ||
527 | + 3C1232F41AAEAC7000CE8F6C /* srs-demo-19350 */, | ||
528 | + ); | ||
529 | + name = init.d; | ||
530 | + sourceTree = "<group>"; | ||
531 | + }; | ||
532 | +/* End PBXGroup section */ | ||
533 | + | ||
534 | +/* Begin PBXNativeTarget section */ | ||
535 | + 3C1231E41AAE64A400CE8F6C /* srs_xcode */ = { | ||
536 | + isa = PBXNativeTarget; | ||
537 | + buildConfigurationList = 3C1231EC1AAE64A400CE8F6C /* Build configuration list for PBXNativeTarget "srs_xcode" */; | ||
538 | + buildPhases = ( | ||
539 | + 3C1231E11AAE64A400CE8F6C /* Sources */, | ||
540 | + 3C1231E21AAE64A400CE8F6C /* Frameworks */, | ||
541 | + 3C1231E31AAE64A400CE8F6C /* CopyFiles */, | ||
542 | + ); | ||
543 | + buildRules = ( | ||
544 | + ); | ||
545 | + dependencies = ( | ||
546 | + ); | ||
547 | + name = srs_xcode; | ||
548 | + productName = srs_xcode; | ||
549 | + productReference = 3C1231E51AAE64A400CE8F6C /* srs_xcode */; | ||
550 | + productType = "com.apple.product-type.tool"; | ||
551 | + }; | ||
552 | +/* End PBXNativeTarget section */ | ||
553 | + | ||
554 | +/* Begin PBXProject section */ | ||
555 | + 3C1231DD1AAE64A400CE8F6C /* Project object */ = { | ||
556 | + isa = PBXProject; | ||
557 | + attributes = { | ||
558 | + LastUpgradeCheck = 0610; | ||
559 | + ORGANIZATIONNAME = winlin; | ||
560 | + TargetAttributes = { | ||
561 | + 3C1231E41AAE64A400CE8F6C = { | ||
562 | + CreatedOnToolsVersion = 6.1.1; | ||
563 | + }; | ||
564 | + }; | ||
565 | + }; | ||
566 | + buildConfigurationList = 3C1231E01AAE64A400CE8F6C /* Build configuration list for PBXProject "srs_xcode" */; | ||
567 | + compatibilityVersion = "Xcode 3.2"; | ||
568 | + developmentRegion = English; | ||
569 | + hasScannedForEncodings = 0; | ||
570 | + knownRegions = ( | ||
571 | + en, | ||
572 | + ); | ||
573 | + mainGroup = 3C1231DC1AAE64A400CE8F6C; | ||
574 | + productRefGroup = 3C1231E61AAE64A400CE8F6C /* Products */; | ||
575 | + projectDirPath = ""; | ||
576 | + projectRoot = ""; | ||
577 | + targets = ( | ||
578 | + 3C1231E41AAE64A400CE8F6C /* srs_xcode */, | ||
579 | + ); | ||
580 | + }; | ||
581 | +/* End PBXProject section */ | ||
582 | + | ||
583 | +/* Begin PBXSourcesBuildPhase section */ | ||
584 | + 3C1231E11AAE64A400CE8F6C /* Sources */ = { | ||
585 | + isa = PBXSourcesBuildPhase; | ||
586 | + buildActionMask = 2147483647; | ||
587 | + files = ( | ||
588 | + 3C1232951AAE81D900CE8F6C /* srs_app_config.cpp in Sources */, | ||
589 | + 3C1232961AAE81D900CE8F6C /* srs_app_conn.cpp in Sources */, | ||
590 | + 3C12322A1AAE814D00CE8F6C /* srs_kernel_ts.cpp in Sources */, | ||
591 | + 3C12329E1AAE81D900CE8F6C /* srs_app_hls.cpp in Sources */, | ||
592 | + 3C1232971AAE81D900CE8F6C /* srs_app_dvr.cpp in Sources */, | ||
593 | + 3C1232271AAE814D00CE8F6C /* srs_kernel_log.cpp in Sources */, | ||
594 | + 3C1232A81AAE81D900CE8F6C /* srs_app_log.cpp in Sources */, | ||
595 | + 3C1232A41AAE81D900CE8F6C /* srs_app_ingest.cpp in Sources */, | ||
596 | + 3C1232B41AAE81D900CE8F6C /* srs_app_st.cpp in Sources */, | ||
597 | + 3C1232481AAE81A400CE8F6C /* srs_rtmp_stack.cpp in Sources */, | ||
598 | + 3C1232B01AAE81D900CE8F6C /* srs_app_security.cpp in Sources */, | ||
599 | + 3C12322B1AAE814D00CE8F6C /* srs_kernel_utility.cpp in Sources */, | ||
600 | + 3C12324A1AAE81A400CE8F6C /* srs_rtsp_stack.cpp in Sources */, | ||
601 | + 3C1232A51AAE81D900CE8F6C /* srs_app_json.cpp in Sources */, | ||
602 | + 3C12329F1AAE81D900CE8F6C /* srs_app_http_api.cpp in Sources */, | ||
603 | + 3C1232A11AAE81D900CE8F6C /* srs_app_http_conn.cpp in Sources */, | ||
604 | + 3C1232AC1AAE81D900CE8F6C /* srs_app_refer.cpp in Sources */, | ||
605 | + 3C1232991AAE81D900CE8F6C /* srs_app_empty.cpp in Sources */, | ||
606 | + 3C1232201AAE814D00CE8F6C /* srs_kernel_aac.cpp in Sources */, | ||
607 | + 3C1232941AAE81D900CE8F6C /* srs_app_bandwidth.cpp in Sources */, | ||
608 | + 3C1232221AAE814D00CE8F6C /* srs_kernel_codec.cpp in Sources */, | ||
609 | + 3C1232B71AAE81D900CE8F6C /* srs_app_utility.cpp in Sources */, | ||
610 | + 3C1232AB1AAE81D900CE8F6C /* srs_app_recv_thread.cpp in Sources */, | ||
611 | + 3C1231F61AAE652D00CE8F6C /* srs_core_autofree.cpp in Sources */, | ||
612 | + 3C1232411AAE81A400CE8F6C /* srs_raw_avc.cpp in Sources */, | ||
613 | + 3C1232491AAE81A400CE8F6C /* srs_rtmp_utility.cpp in Sources */, | ||
614 | + 3C1232A01AAE81D900CE8F6C /* srs_app_http_client.cpp in Sources */, | ||
615 | + 3C12329B1AAE81D900CE8F6C /* srs_app_ffmpeg.cpp in Sources */, | ||
616 | + 3C1232421AAE81A400CE8F6C /* srs_rtmp_amf0.cpp in Sources */, | ||
617 | + 3C1232AA1AAE81D900CE8F6C /* srs_app_pithy_print.cpp in Sources */, | ||
618 | + 3C12329C1AAE81D900CE8F6C /* srs_app_forward.cpp in Sources */, | ||
619 | + 3C1232251AAE814D00CE8F6C /* srs_kernel_file.cpp in Sources */, | ||
620 | + 3C1232AD1AAE81D900CE8F6C /* srs_app_reload.cpp in Sources */, | ||
621 | + 3C1231F81AAE652D00CE8F6C /* srs_core.cpp in Sources */, | ||
622 | + 3C1232A21AAE81D900CE8F6C /* srs_app_http_hooks.cpp in Sources */, | ||
623 | + 3C1232B11AAE81D900CE8F6C /* srs_app_server.cpp in Sources */, | ||
624 | + 3C1232B31AAE81D900CE8F6C /* srs_app_st_socket.cpp in Sources */, | ||
625 | + 3C1232061AAE812C00CE8F6C /* srs_main_server.cpp in Sources */, | ||
626 | + 3C1232281AAE814D00CE8F6C /* srs_kernel_mp3.cpp in Sources */, | ||
627 | + 3C1232B21AAE81D900CE8F6C /* srs_app_source.cpp in Sources */, | ||
628 | + 3C1231F71AAE652D00CE8F6C /* srs_core_performance.cpp in Sources */, | ||
629 | + 3C1232981AAE81D900CE8F6C /* srs_app_edge.cpp in Sources */, | ||
630 | + 3C1232461AAE81A400CE8F6C /* srs_rtmp_msg_array.cpp in Sources */, | ||
631 | + 3C1232A71AAE81D900CE8F6C /* srs_app_listener.cpp in Sources */, | ||
632 | + 3C1232261AAE814D00CE8F6C /* srs_kernel_flv.cpp in Sources */, | ||
633 | + 3C1232241AAE814D00CE8F6C /* srs_kernel_error.cpp in Sources */, | ||
634 | + 3C1232441AAE81A400CE8F6C /* srs_rtmp_handshake.cpp in Sources */, | ||
635 | + 3C1232291AAE814D00CE8F6C /* srs_kernel_stream.cpp in Sources */, | ||
636 | + 3C1232B61AAE81D900CE8F6C /* srs_app_thread.cpp in Sources */, | ||
637 | + 3C1232A91AAE81D900CE8F6C /* srs_app_mpegts_udp.cpp in Sources */, | ||
638 | + 3C1232AE1AAE81D900CE8F6C /* srs_app_rtmp_conn.cpp in Sources */, | ||
639 | + 3C1232B51AAE81D900CE8F6C /* srs_app_statistic.cpp in Sources */, | ||
640 | + 3C1232451AAE81A400CE8F6C /* srs_rtmp_io.cpp in Sources */, | ||
641 | + 3C1232431AAE81A400CE8F6C /* srs_rtmp_buffer.cpp in Sources */, | ||
642 | + 3C1232211AAE814D00CE8F6C /* srs_kernel_buffer.cpp in Sources */, | ||
643 | + 3C1232471AAE81A400CE8F6C /* srs_rtmp_sdk.cpp in Sources */, | ||
644 | + 3C1232A61AAE81D900CE8F6C /* srs_app_kbps.cpp in Sources */, | ||
645 | + 3C12329D1AAE81D900CE8F6C /* srs_app_heartbeat.cpp in Sources */, | ||
646 | + 3C1232231AAE814D00CE8F6C /* srs_kernel_consts.cpp in Sources */, | ||
647 | + 3C1232AF1AAE81D900CE8F6C /* srs_app_rtsp.cpp in Sources */, | ||
648 | + 3C1232A31AAE81D900CE8F6C /* srs_app_http.cpp in Sources */, | ||
649 | + 3C12329A1AAE81D900CE8F6C /* srs_app_encoder.cpp in Sources */, | ||
650 | + ); | ||
651 | + runOnlyForDeploymentPostprocessing = 0; | ||
652 | + }; | ||
653 | +/* End PBXSourcesBuildPhase section */ | ||
654 | + | ||
655 | +/* Begin XCBuildConfiguration section */ | ||
656 | + 3C1231EA1AAE64A400CE8F6C /* Debug */ = { | ||
657 | + isa = XCBuildConfiguration; | ||
658 | + buildSettings = { | ||
659 | + ALWAYS_SEARCH_USER_PATHS = NO; | ||
660 | + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; | ||
661 | + CLANG_CXX_LIBRARY = "libc++"; | ||
662 | + CLANG_ENABLE_MODULES = YES; | ||
663 | + CLANG_ENABLE_OBJC_ARC = YES; | ||
664 | + CLANG_WARN_BOOL_CONVERSION = YES; | ||
665 | + CLANG_WARN_CONSTANT_CONVERSION = YES; | ||
666 | + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; | ||
667 | + CLANG_WARN_EMPTY_BODY = YES; | ||
668 | + CLANG_WARN_ENUM_CONVERSION = YES; | ||
669 | + CLANG_WARN_INT_CONVERSION = YES; | ||
670 | + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; | ||
671 | + CLANG_WARN_UNREACHABLE_CODE = YES; | ||
672 | + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; | ||
673 | + COPY_PHASE_STRIP = NO; | ||
674 | + ENABLE_STRICT_OBJC_MSGSEND = YES; | ||
675 | + GCC_C_LANGUAGE_STANDARD = gnu99; | ||
676 | + GCC_DYNAMIC_NO_PIC = NO; | ||
677 | + GCC_OPTIMIZATION_LEVEL = 0; | ||
678 | + GCC_PREPROCESSOR_DEFINITIONS = ( | ||
679 | + "DEBUG=1", | ||
680 | + "$(inherited)", | ||
681 | + ); | ||
682 | + GCC_SYMBOLS_PRIVATE_EXTERN = NO; | ||
683 | + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; | ||
684 | + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; | ||
685 | + GCC_WARN_UNDECLARED_SELECTOR = YES; | ||
686 | + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; | ||
687 | + GCC_WARN_UNUSED_FUNCTION = YES; | ||
688 | + GCC_WARN_UNUSED_VARIABLE = YES; | ||
689 | + MACOSX_DEPLOYMENT_TARGET = 10.10; | ||
690 | + MTL_ENABLE_DEBUG_INFO = YES; | ||
691 | + ONLY_ACTIVE_ARCH = YES; | ||
692 | + SDKROOT = macosx; | ||
693 | + }; | ||
694 | + name = Debug; | ||
695 | + }; | ||
696 | + 3C1231EB1AAE64A400CE8F6C /* Release */ = { | ||
697 | + isa = XCBuildConfiguration; | ||
698 | + buildSettings = { | ||
699 | + ALWAYS_SEARCH_USER_PATHS = NO; | ||
700 | + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; | ||
701 | + CLANG_CXX_LIBRARY = "libc++"; | ||
702 | + CLANG_ENABLE_MODULES = YES; | ||
703 | + CLANG_ENABLE_OBJC_ARC = YES; | ||
704 | + CLANG_WARN_BOOL_CONVERSION = YES; | ||
705 | + CLANG_WARN_CONSTANT_CONVERSION = YES; | ||
706 | + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; | ||
707 | + CLANG_WARN_EMPTY_BODY = YES; | ||
708 | + CLANG_WARN_ENUM_CONVERSION = YES; | ||
709 | + CLANG_WARN_INT_CONVERSION = YES; | ||
710 | + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; | ||
711 | + CLANG_WARN_UNREACHABLE_CODE = YES; | ||
712 | + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; | ||
713 | + COPY_PHASE_STRIP = YES; | ||
714 | + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; | ||
715 | + ENABLE_NS_ASSERTIONS = NO; | ||
716 | + ENABLE_STRICT_OBJC_MSGSEND = YES; | ||
717 | + GCC_C_LANGUAGE_STANDARD = gnu99; | ||
718 | + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; | ||
719 | + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; | ||
720 | + GCC_WARN_UNDECLARED_SELECTOR = YES; | ||
721 | + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; | ||
722 | + GCC_WARN_UNUSED_FUNCTION = YES; | ||
723 | + GCC_WARN_UNUSED_VARIABLE = YES; | ||
724 | + MACOSX_DEPLOYMENT_TARGET = 10.10; | ||
725 | + MTL_ENABLE_DEBUG_INFO = NO; | ||
726 | + SDKROOT = macosx; | ||
727 | + }; | ||
728 | + name = Release; | ||
729 | + }; | ||
730 | + 3C1231ED1AAE64A400CE8F6C /* Debug */ = { | ||
731 | + isa = XCBuildConfiguration; | ||
732 | + buildSettings = { | ||
733 | + ALWAYS_SEARCH_USER_PATHS = YES; | ||
734 | + CLANG_CXX_LANGUAGE_STANDARD = "c++98"; | ||
735 | + CLANG_CXX_LIBRARY = "libstdc++"; | ||
736 | + LIBRARY_SEARCH_PATHS = ( | ||
737 | + "../../objs/**", | ||
738 | + "/Users/winlin/Desktop/git/simple-rtmp-server/trunk/objs/http-parser-2.1", | ||
739 | + ); | ||
740 | + PRODUCT_NAME = "$(TARGET_NAME)"; | ||
741 | + "USER_HEADER_SEARCH_PATHS[arch=*]" = "../../src/** ../../objs ../../objs/st ../../objs/hp ../../objs/openssl"; | ||
742 | + }; | ||
743 | + name = Debug; | ||
744 | + }; | ||
745 | + 3C1231EE1AAE64A400CE8F6C /* Release */ = { | ||
746 | + isa = XCBuildConfiguration; | ||
747 | + buildSettings = { | ||
748 | + ALWAYS_SEARCH_USER_PATHS = YES; | ||
749 | + CLANG_CXX_LANGUAGE_STANDARD = "c++98"; | ||
750 | + CLANG_CXX_LIBRARY = "libstdc++"; | ||
751 | + LIBRARY_SEARCH_PATHS = ( | ||
752 | + "../../objs/**", | ||
753 | + "/Users/winlin/Desktop/git/simple-rtmp-server/trunk/objs/http-parser-2.1", | ||
754 | + ); | ||
755 | + PRODUCT_NAME = "$(TARGET_NAME)"; | ||
756 | + }; | ||
757 | + name = Release; | ||
758 | + }; | ||
759 | +/* End XCBuildConfiguration section */ | ||
760 | + | ||
761 | +/* Begin XCConfigurationList section */ | ||
762 | + 3C1231E01AAE64A400CE8F6C /* Build configuration list for PBXProject "srs_xcode" */ = { | ||
763 | + isa = XCConfigurationList; | ||
764 | + buildConfigurations = ( | ||
765 | + 3C1231EA1AAE64A400CE8F6C /* Debug */, | ||
766 | + 3C1231EB1AAE64A400CE8F6C /* Release */, | ||
767 | + ); | ||
768 | + defaultConfigurationIsVisible = 0; | ||
769 | + defaultConfigurationName = Release; | ||
770 | + }; | ||
771 | + 3C1231EC1AAE64A400CE8F6C /* Build configuration list for PBXNativeTarget "srs_xcode" */ = { | ||
772 | + isa = XCConfigurationList; | ||
773 | + buildConfigurations = ( | ||
774 | + 3C1231ED1AAE64A400CE8F6C /* Debug */, | ||
775 | + 3C1231EE1AAE64A400CE8F6C /* Release */, | ||
776 | + ); | ||
777 | + defaultConfigurationIsVisible = 0; | ||
778 | + defaultConfigurationName = Release; | ||
779 | + }; | ||
780 | +/* End XCConfigurationList section */ | ||
781 | + }; | ||
782 | + rootObject = 3C1231DD1AAE64A400CE8F6C /* Project object */; | ||
783 | +} |
不能预览此文件类型
trunk/ide/srs_xcode/srs_xcode/readme.txt
0 → 100644
1 | +the xcode project for osx. |
@@ -26,6 +26,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | @@ -26,6 +26,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
26 | #include <srs_kernel_error.hpp> | 26 | #include <srs_kernel_error.hpp> |
27 | #include <srs_kernel_log.hpp> | 27 | #include <srs_kernel_log.hpp> |
28 | 28 | ||
29 | +#ifndef SRS_OSX | ||
29 | #include <sys/epoll.h> | 30 | #include <sys/epoll.h> |
30 | bool srs_st_epoll_is_supported(void) | 31 | bool srs_st_epoll_is_supported(void) |
31 | { | 32 | { |
@@ -38,11 +39,13 @@ bool srs_st_epoll_is_supported(void) | @@ -38,11 +39,13 @@ bool srs_st_epoll_is_supported(void) | ||
38 | 39 | ||
39 | return (errno != ENOSYS); | 40 | return (errno != ENOSYS); |
40 | } | 41 | } |
42 | +#endif | ||
41 | 43 | ||
42 | int srs_init_st() | 44 | int srs_init_st() |
43 | { | 45 | { |
44 | int ret = ERROR_SUCCESS; | 46 | int ret = ERROR_SUCCESS; |
45 | 47 | ||
48 | +#ifndef SRS_OSX | ||
46 | // check epoll, some old linux donot support epoll. | 49 | // check epoll, some old linux donot support epoll. |
47 | // @see https://github.com/winlinvip/simple-rtmp-server/issues/162 | 50 | // @see https://github.com/winlinvip/simple-rtmp-server/issues/162 |
48 | if (!srs_st_epoll_is_supported()) { | 51 | if (!srs_st_epoll_is_supported()) { |
@@ -58,6 +61,7 @@ int srs_init_st() | @@ -58,6 +61,7 @@ int srs_init_st() | ||
58 | return ret; | 61 | return ret; |
59 | } | 62 | } |
60 | srs_verbose("st_set_eventsys use linux epoll success"); | 63 | srs_verbose("st_set_eventsys use linux epoll success"); |
64 | +#endif | ||
61 | 65 | ||
62 | if(st_init() != 0){ | 66 | if(st_init() != 0){ |
63 | ret = ERROR_ST_INITIALIZE; | 67 | ret = ERROR_ST_INITIALIZE; |
@@ -31,7 +31,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | @@ -31,7 +31,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
31 | // current release version | 31 | // current release version |
32 | #define VERSION_MAJOR 2 | 32 | #define VERSION_MAJOR 2 |
33 | #define VERSION_MINOR 0 | 33 | #define VERSION_MINOR 0 |
34 | -#define VERSION_REVISION 136 | 34 | +#define VERSION_REVISION 137 |
35 | 35 | ||
36 | // server info. | 36 | // server info. |
37 | #define RTMP_SIG_SRS_KEY "SRS" | 37 | #define RTMP_SIG_SRS_KEY "SRS" |
@@ -437,7 +437,9 @@ u_int32_t srs_crc32(const void* buf, int size) | @@ -437,7 +437,9 @@ u_int32_t srs_crc32(const void* buf, int size) | ||
437 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | 437 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
438 | */ | 438 | */ |
439 | 439 | ||
440 | +#ifndef UINT_MAX | ||
440 | #define UINT_MAX 0xffffffff | 441 | #define UINT_MAX 0xffffffff |
442 | +#endif | ||
441 | 443 | ||
442 | #ifndef AV_RB32 | 444 | #ifndef AV_RB32 |
443 | # define AV_RB32(x) \ | 445 | # define AV_RB32(x) \ |
@@ -177,6 +177,23 @@ void show_macro_features() | @@ -177,6 +177,23 @@ void show_macro_features() | ||
177 | 177 | ||
178 | void check_macro_features() | 178 | void check_macro_features() |
179 | { | 179 | { |
180 | + // important preset. | ||
181 | +#ifdef SRS_OSX | ||
182 | + srs_trace("SRS for OSX"); | ||
183 | +#endif | ||
184 | +#ifdef SRS_PI | ||
185 | + srs_trace("SRS for pi"); | ||
186 | +#endif | ||
187 | +#ifdef SRS_CUBIE | ||
188 | + srs_trace("SRS for cubieboard"); | ||
189 | +#endif | ||
190 | +#ifdef SRS_ARM_UBUNTU12 | ||
191 | + srs_trace("SRS for arm(build on ubuntu)"); | ||
192 | +#endif | ||
193 | +#ifdef SRS_MIPS_UBUNTU12 | ||
194 | + srs_trace("SRS for mips(build on ubuntu)"); | ||
195 | +#endif | ||
196 | + | ||
180 | // for special features. | 197 | // for special features. |
181 | #ifndef SRS_PERF_MERGED_READ | 198 | #ifndef SRS_PERF_MERGED_READ |
182 | srs_warn("MR(merged-read) is disabled, hurts read performance. @see %s", RTMP_SIG_SRS_ISSUES(241)); | 199 | srs_warn("MR(merged-read) is disabled, hurts read performance. @see %s", RTMP_SIG_SRS_ISSUES(241)); |
@@ -252,8 +269,8 @@ int main(int argc, char** argv) | @@ -252,8 +269,8 @@ int main(int argc, char** argv) | ||
252 | srs_trace("conf: %s, limit: %d", _srs_config->config().c_str(), _srs_config->get_max_connections()); | 269 | srs_trace("conf: %s, limit: %d", _srs_config->config().c_str(), _srs_config->get_max_connections()); |
253 | 270 | ||
254 | // features | 271 | // features |
255 | - show_macro_features(); | ||
256 | check_macro_features(); | 272 | check_macro_features(); |
273 | + show_macro_features(); | ||
257 | 274 | ||
258 | /** | 275 | /** |
259 | * we do nothing in the constructor of server, | 276 | * we do nothing in the constructor of server, |
@@ -73,7 +73,7 @@ namespace _srs_internal | @@ -73,7 +73,7 @@ namespace _srs_internal | ||
73 | int __openssl_HMACsha256(HMAC_CTX* ctx, const void* data, int data_size, void* digest, unsigned int* digest_size) | 73 | int __openssl_HMACsha256(HMAC_CTX* ctx, const void* data, int data_size, void* digest, unsigned int* digest_size) |
74 | { | 74 | { |
75 | int ret = ERROR_SUCCESS; | 75 | int ret = ERROR_SUCCESS; |
76 | - | 76 | +#ifndef SRS_OSX |
77 | if (HMAC_Update(ctx, (unsigned char *) data, data_size) < 0) { | 77 | if (HMAC_Update(ctx, (unsigned char *) data, data_size) < 0) { |
78 | ret = ERROR_OpenSslSha256Update; | 78 | ret = ERROR_OpenSslSha256Update; |
79 | return ret; | 79 | return ret; |
@@ -83,6 +83,10 @@ namespace _srs_internal | @@ -83,6 +83,10 @@ namespace _srs_internal | ||
83 | ret = ERROR_OpenSslSha256Final; | 83 | ret = ERROR_OpenSslSha256Final; |
84 | return ret; | 84 | return ret; |
85 | } | 85 | } |
86 | +#else | ||
87 | + HMAC_Update(ctx, (unsigned char *) data, data_size); | ||
88 | + HMAC_Final(ctx, (unsigned char *) digest, digest_size); | ||
89 | +#endif | ||
86 | 90 | ||
87 | return ret; | 91 | return ret; |
88 | } | 92 | } |
@@ -117,10 +121,14 @@ namespace _srs_internal | @@ -117,10 +121,14 @@ namespace _srs_internal | ||
117 | // for instance, in python, hashlib.sha256(data).digest(). | 121 | // for instance, in python, hashlib.sha256(data).digest(). |
118 | HMAC_CTX_init(&ctx); | 122 | HMAC_CTX_init(&ctx); |
119 | 123 | ||
124 | +#ifndef SRS_OSX | ||
120 | if (HMAC_Init_ex(&ctx, __key, key_size, EVP_sha256(), NULL) < 0) { | 125 | if (HMAC_Init_ex(&ctx, __key, key_size, EVP_sha256(), NULL) < 0) { |
121 | ret = ERROR_OpenSslSha256Init; | 126 | ret = ERROR_OpenSslSha256Init; |
122 | return ret; | 127 | return ret; |
123 | } | 128 | } |
129 | +#else | ||
130 | + HMAC_Init_ex(&ctx, __key, key_size, EVP_sha256(), NULL); | ||
131 | +#endif | ||
124 | 132 | ||
125 | ret = __openssl_HMACsha256(&ctx, data, data_size, __digest, &digest_size); | 133 | ret = __openssl_HMACsha256(&ctx, data, data_size, __digest, &digest_size); |
126 | HMAC_CTX_cleanup(&ctx); | 134 | HMAC_CTX_cleanup(&ctx); |
-
请 注册 或 登录 后发表评论