diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 3447c962fa..2ccac42d8b 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -18,7 +18,8 @@ on: # The branches below must be a subset of the branches above branches: [ 4.0release, develop ] schedule: - - cron: '43 11 * * 0' + # '20 19 * * 6' means 'At 19:20, only on Saturday' @see https://crontab.cronhub.io/ + - cron: '20 19 * * 6' jobs: analyze: diff --git a/.gitignore b/.gitignore index f7e6541ffa..02e8ffa578 100644 --- a/.gitignore +++ b/.gitignore @@ -34,5 +34,10 @@ .idea .DS_Store -/cmake-build-debug/ -/CMakeLists.txt +cmake-build-debug +/trunk/ide/srs_clion/CMakeCache.txt +/trunk/ide/srs_clion/CMakeFiles +/trunk/ide/srs_clion/Makefile +/trunk/ide/srs_clion/cmake_install.cmake +/trunk/ide/srs_clion/srs +/trunk/ide/srs_clion/Testing/ \ No newline at end of file diff --git a/.run/srs.run.xml b/.run/srs.run.xml new file mode 100644 index 0000000000..858897679c --- /dev/null +++ b/.run/srs.run.xml @@ -0,0 +1,7 @@ + + + + + + \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index fbeba27cb6..9e506ea5f7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,6 +20,8 @@ The changelog for SRS. ## SRS 4.0 Changelog +* v4.0, 2021-07-17, Fix bugs and enhance code. 4.0.142 +* v4.0, 2021-07-16, Support [CLion and cmake](https://github.com/ossrs/srs/wiki/v4_CN_IDE#clion) to build and debug SRS. 4.0.141 * v4.0, 2021-07-08, For [#2403](https://github.com/ossrs/srs/issues/2403), fix padding packets for RTMP2RTC. 4.0.140 * v4.0, 2021-07-04, For [#2424](https://github.com/ossrs/srs/issues/2424), use srandom/random to generate. 4.0.139 * v4.0, 2021-07-01, Merge [#2452](https://github.com/ossrs/srs/pull/2452), fix FFmpeg bug by updating channel_layout. 4.0.138 diff --git a/README.md b/README.md index 14709ce44a..1f14439be6 100755 --- a/README.md +++ b/README.md @@ -136,6 +136,7 @@ Other API used by [ossrs.net](https://ossrs.net): * `/service/v1/` The latest available version API. * `/ws-service/v1/` The latest available version API, by websocket. * `/im-service/v1/` The latest available version API, by IM. +* `/code-service/v1/` The latest available version API, by Code verification. ## Features diff --git a/trunk/.gitignore b/trunk/.gitignore index ae78e3ae07..75a270884f 100644 --- a/trunk/.gitignore +++ b/trunk/.gitignore @@ -49,4 +49,3 @@ bug /research/thread-model/thread-local *.gcp *.svg - diff --git a/trunk/conf/clion.conf b/trunk/conf/clion.conf new file mode 100644 index 0000000000..0a3360c9fc --- /dev/null +++ b/trunk/conf/clion.conf @@ -0,0 +1,41 @@ + +listen 1935; +max_connections 1000; +daemon off; +srs_log_tank console; + +http_server { + enabled on; + listen 8080; + dir ./objs/nginx/html; +} + +http_api { + enabled on; + listen 1985; +} +stats { + network 0; +} +rtc_server { + enabled on; + # Listen at udp://8000 + listen 8000; + # + # The $CANDIDATE means fetch from env, if not configed, use * as default. + # + # The * means retrieving server IP automatically, from all network interfaces, + # @see https://github.com/ossrs/srs/wiki/v4_CN_RTCWiki#config-candidate + candidate $CANDIDATE; +} + +vhost __defaultVhost__ { + rtc { + enabled on; + } + http_remux { + enabled on; + mount [vhost]/[app]/[stream].flv; + } +} + diff --git a/trunk/ide/readme.txt b/trunk/ide/readme.txt deleted file mode 100644 index a979100719..0000000000 --- a/trunk/ide/readme.txt +++ /dev/null @@ -1,5 +0,0 @@ -提供了各种ide。 - -1. UPP添加Assembly时,路径指向ide即可,譬如:\\dev\winlin\srs\ide - -2015.3 winlin diff --git a/trunk/ide/srs_clion/CMakeLists.txt b/trunk/ide/srs_clion/CMakeLists.txt index 60a16040ac..4f2b417e75 100755 --- a/trunk/ide/srs_clion/CMakeLists.txt +++ b/trunk/ide/srs_clion/CMakeLists.txt @@ -1,49 +1,66 @@ -cmake_minimum_required(VERSION 2.6.4) +cmake_minimum_required(VERSION 2.8.12) project(srs CXX) -INCLUDE_DIRECTORIES(../../objs - ../../objs/st - ../../objs/hp - ../../objs/openssl/include - ../../src/core - ../../src/kernel - ../../src/protocol - ../../src/app - ../../src/service - ../../objs/srtp2/include - ../../objs/opus/include - ../../objs/ffmpeg/include) - -set(SOURCE_FILES ../../src/main/srs_main_server.cpp) -AUX_SOURCE_DIRECTORY(../../src/core SOURCE_FILES) -AUX_SOURCE_DIRECTORY(../../src/kernel SOURCE_FILES) -AUX_SOURCE_DIRECTORY(../../src/protocol SOURCE_FILES) -AUX_SOURCE_DIRECTORY(../../src/app SOURCE_FILES) -AUX_SOURCE_DIRECTORY(../../src/service SOURCE_FILES) +########################################################### +execute_process( + COMMAND bash -c "cd ${PROJECT_SOURCE_DIR}/../../ && pwd" + OUTPUT_VARIABLE SRS_DIR +) +string(STRIP ${SRS_DIR} SRS_DIR) +message("SRS home is ${SRS_DIR}") + +########################################################### +# Start to configure SRS with jobs of number of CPUs. +include(ProcessorCount) +ProcessorCount(JOBS) + +set(DEPS_LIBS ${SRS_DIR}/objs/st/libst.a + ${SRS_DIR}/objs/openssl/lib/libssl.a + ${SRS_DIR}/objs/openssl/lib/libcrypto.a + ${SRS_DIR}/objs/srtp2/lib/libsrtp2.a + ${SRS_DIR}/objs/opus/lib/libopus.a + ${SRS_DIR}/objs/ffmpeg/lib/libavutil.a + ${SRS_DIR}/objs/ffmpeg/lib/libavcodec.a + ${SRS_DIR}/objs/ffmpeg/lib/libswresample.a) +foreach(DEPS_LIB ${DEPS_LIBS}) + IF (NOT EXISTS ${DEPS_LIB}) + MESSAGE("${DEPS_LIB} not found") + IF (${CMAKE_SYSTEM_NAME} MATCHES "Darwin") + EXEC_PROGRAM("cd ${SRS_DIR} && ./configure --osx --jobs=${JOBS}") + ELSE () + EXEC_PROGRAM("cd ${SRS_DIR} && ./configure --jobs=${JOBS}") + ENDIF () + ELSE () + MESSAGE("${DEPS_LIB} is ok") + ENDIF () +endforeach() + +########################################################### +# Setup SRS project +INCLUDE_DIRECTORIES(${SRS_DIR}/objs + ${SRS_DIR}/objs/st + ${SRS_DIR}/objs/openssl/include + ${SRS_DIR}/objs/srtp2/include + ${SRS_DIR}/objs/opus/include + ${SRS_DIR}/objs/ffmpeg/include + ${SRS_DIR}/src/core + ${SRS_DIR}/src/kernel + ${SRS_DIR}/src/protocol + ${SRS_DIR}/src/app + ${SRS_DIR}/src/service) + +set(SOURCE_FILES ${SRS_DIR}/src/main/srs_main_server.cpp) +AUX_SOURCE_DIRECTORY(${SRS_DIR}/src/core SOURCE_FILES) +AUX_SOURCE_DIRECTORY(${SRS_DIR}/src/kernel SOURCE_FILES) +AUX_SOURCE_DIRECTORY(${SRS_DIR}/src/protocol SOURCE_FILES) +AUX_SOURCE_DIRECTORY(${SRS_DIR}/src/app SOURCE_FILES) ADD_DEFINITIONS("-g -O0") ADD_EXECUTABLE(srs ${SOURCE_FILES}) TARGET_LINK_LIBRARIES(srs dl) -TARGET_LINK_LIBRARIES(srs ${PROJECT_SOURCE_DIR}/../../objs/st/libst.a) -TARGET_LINK_LIBRARIES(srs ${PROJECT_SOURCE_DIR}/../../objs/openssl/lib/libssl.a) -TARGET_LINK_LIBRARIES(srs ${PROJECT_SOURCE_DIR}/../../objs/openssl/lib/libcrypto.a) -TARGET_LINK_LIBRARIES(srs ${PROJECT_SOURCE_DIR}/../../objs/srtp2/lib/libsrtp2.a) -TARGET_LINK_LIBRARIES(srs ${PROJECT_SOURCE_DIR}/../../objs/opus/lib/libopus.a) -TARGET_LINK_LIBRARIES(srs ${PROJECT_SOURCE_DIR}/../../objs/ffmpeg/lib/libavutil.a) -TARGET_LINK_LIBRARIES(srs ${PROJECT_SOURCE_DIR}/../../objs/ffmpeg/lib/libavcodec.a) -TARGET_LINK_LIBRARIES(srs ${PROJECT_SOURCE_DIR}/../../objs/ffmpeg/lib/libswresample.a) +TARGET_LINK_LIBRARIES(srs ${DEPS_LIBS}) TARGET_LINK_LIBRARIES(srs -ldl) -IF (NOT EXISTS ${PROJECT_SOURCE_DIR}/../../objs/st/libst.a) - MESSAGE("srs_libs not found") - EXEC_PROGRAM("cd .. && ./configure") -ELSE (NOT EXISTS ${PROJECT_SOURCE_DIR}/../../objs/st/libst.a) - MESSAGE("srs_libs is ok") -ENDIF (NOT EXISTS ${PROJECT_SOURCE_DIR}/../../objs/st/libst.a) - -MESSAGE(STATUS "only for jetbrains IDE, @see https://github.com/ossrs/srs/wiki/v1_CN_IDE#jetbrains") -MESSAGE(STATUS "only for jetbrains IDE, @see https://github.com/ossrs/srs/wiki/v1_CN_IDE#jetbrains") -MESSAGE(STATUS "only for jetbrains IDE, @see https://github.com/ossrs/srs/wiki/v1_CN_IDE#jetbrains") -MESSAGE(STATUS "use ./configure && make, @see https://github.com/ossrs/srs#usage") +MESSAGE(STATUS "@see https://github.com/ossrs/srs/wiki/v4_CN_IDE") diff --git a/trunk/ide/srs_qt/srs-qt.pro b/trunk/ide/srs_qt/srs-qt.pro deleted file mode 100755 index a1933712d6..0000000000 --- a/trunk/ide/srs_qt/srs-qt.pro +++ /dev/null @@ -1,35 +0,0 @@ -TEMPLATE = app -CONFIG += console -CONFIG -= app_bundle -CONFIG -= qt - -HEADERS += \ - ../../src/core/*.hpp \ - ../../src/kernel/*.hpp \ - ../../src/app/*.hpp \ - ../../src/protocol/*.hpp - -SOURCES += \ - ../../src/core/*.cpp \ - ../../src/kernel/*.cpp \ - ../../src/app/*.cpp \ - ../../src/protocol/*.cpp \ - ../../src/main/*.cpp - -INCLUDEPATH += \ - ../../src/core \ - ../../src/kernel \ - ../../src/app \ - ../../src/protocol \ - ../../objs \ - ../../objs/st \ - ../../objs/hp \ - ../../objs/openssl/include - -LIBS += \ - ../../objs/st/libst.a \ - ../../objs/hp/libhttp_parser.a \ - ../../objs/openssl/lib/libssl.a \ - ../../objs/openssl/lib/libcrypto.a \ - -ldl - diff --git a/trunk/ide/srs_qt/srs-qt.pro.user b/trunk/ide/srs_qt/srs-qt.pro.user deleted file mode 100755 index 18d3d0d7a5..0000000000 --- a/trunk/ide/srs_qt/srs-qt.pro.user +++ /dev/null @@ -1,263 +0,0 @@ - - - - - - ProjectExplorer.Project.ActiveTarget - 0 - - - ProjectExplorer.Project.EditorSettings - - true - false - true - - Cpp - - CppGlobal - - - - QmlJS - - QmlJSGlobal - - - 2 - UTF-8 - false - 4 - false - 80 - true - true - 1 - true - false - 0 - true - 0 - 8 - true - 1 - true - true - true - false - - - - ProjectExplorer.Project.PluginSettings - - - - ProjectExplorer.Project.Target.0 - - Desktop - Desktop - {fdda5a74-8ef6-4e67-b28c-c5be6c667578} - 0 - 0 - 0 - - /home/winlin/git/ossrs/trunk/ide/build-srs-qt-Desktop-Debug - - - true - qmake - - QtProjectManager.QMakeBuildStep - false - true - - false - - - true - Make - - Qt4ProjectManager.MakeStep - - -w - -r - - false - - - - 2 - Build - - ProjectExplorer.BuildSteps.Build - - - - true - Make - - Qt4ProjectManager.MakeStep - - -w - -r - - true - clean - - - 1 - Clean - - ProjectExplorer.BuildSteps.Clean - - 2 - false - - Debug - - Qt4ProjectManager.Qt4BuildConfiguration - 2 - true - - - /home/winlin/git/ossrs/trunk/ide/build-srs-qt-Desktop-Release - - - true - qmake - - QtProjectManager.QMakeBuildStep - false - true - - false - - - true - Make - - Qt4ProjectManager.MakeStep - - -w - -r - - false - - - - 2 - Build - - ProjectExplorer.BuildSteps.Build - - - - true - Make - - Qt4ProjectManager.MakeStep - - -w - -r - - true - clean - - - 1 - Clean - - ProjectExplorer.BuildSteps.Clean - - 2 - false - - Release - - Qt4ProjectManager.Qt4BuildConfiguration - 0 - true - - 2 - - - 0 - Deploy - - ProjectExplorer.BuildSteps.Deploy - - 1 - Deploy locally - - ProjectExplorer.DefaultDeployConfiguration - - 1 - - - - false - false - false - false - true - 0.01 - 10 - true - 1 - 25 - - 1 - true - false - true - valgrind - - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 11 - 12 - 13 - 14 - - 2 - - srs-qt - - Qt4ProjectManager.Qt4RunConfiguration:/home/winlin/git/ossrs/trunk/ide/srs_qt/srs-qt.pro - - srs-qt.pro - false - true - - 3768 - false - true - false - false - true - - 1 - - - - ProjectExplorer.Project.TargetCount - 1 - - - ProjectExplorer.Project.Updater.EnvironmentId - {67c55164-ec8b-40af-90ff-d8b0b02de43a} - - - ProjectExplorer.Project.Updater.FileVersion - 15 - - diff --git a/trunk/ide/srs_upp/init b/trunk/ide/srs_upp/init deleted file mode 100755 index cf8175cb41..0000000000 --- a/trunk/ide/srs_upp/init +++ /dev/null @@ -1,3 +0,0 @@ -#ifndef _ide_srs_upp_icpp_init_stub -#define _ide_srs_upp_icpp_init_stub -#endif diff --git a/trunk/ide/srs_upp/srs_upp.upp b/trunk/ide/srs_upp/srs_upp.upp deleted file mode 100755 index 36f931238e..0000000000 --- a/trunk/ide/srs_upp/srs_upp.upp +++ /dev/null @@ -1,163 +0,0 @@ -file - main readonly separator, - ../../src/main/srs_main_server.cpp, - ../../src/main/srs_main_ingest_hls.cpp, - auto readonly separator, - ../../objs/srs_auto_headers.hpp, - core readonly separator, - ../../src/core/srs_core.hpp, - ../../src/core/srs_core.cpp, - ../../src/core/srs_core_autofree.hpp, - ../../src/core/srs_core_autofree.cpp, - ../../src/core/srs_core_performance.hpp, - ../../src/core/srs_core_performance.cpp, - kernel readonly separator, - ../../src/kernel/srs_kernel_aac.hpp, - ../../src/kernel/srs_kernel_aac.cpp, - ../../src/kernel/srs_kernel_balance.hpp, - ../../src/kernel/srs_kernel_balance.cpp, - ../../src/kernel/srs_kernel_stream.hpp, - ../../src/kernel/srs_kernel_stream.cpp, - ../../src/kernel/srs_kernel_codec.hpp, - ../../src/kernel/srs_kernel_codec.cpp, - ../../src/kernel/srs_kernel_consts.hpp, - ../../src/kernel/srs_kernel_consts.cpp, - ../../src/kernel/srs_kernel_error.hpp, - ../../src/kernel/srs_kernel_error.cpp, - ../../src/kernel/srs_kernel_file.hpp, - ../../src/kernel/srs_kernel_file.cpp, - ../../src/kernel/srs_kernel_flv.hpp, - ../../src/kernel/srs_kernel_flv.cpp, - ../../src/kernel/srs_kernel_log.hpp, - ../../src/kernel/srs_kernel_log.cpp, - ../../src/kernel/srs_kernel_mp3.hpp, - ../../src/kernel/srs_kernel_mp3.cpp, - ../../src/kernel/srs_rtsp_stack.hpp, - ../../src/kernel/srs_rtsp_stack.cpp, - ../../src/kernel/srs_kernel_buffer.hpp, - ../../src/kernel/srs_kernel_buffer.cpp, - ../../src/kernel/srs_kernel_ts.cpp, - ../../src/kernel/srs_kernel_ts.hpp, - ../../src/kernel/srs_kernel_utility.hpp, - ../../src/kernel/srs_kernel_utility.cpp, - protocol readonly separator, - ../../src/protocol/srs_http_stack.hpp, - ../../src/protocol/srs_http_stack.cpp, - ../../src/protocol/srs_kafka_stack.hpp, - ../../src/protocol/srs_kafka_stack.cpp, - ../../src/protocol/srs_protocol_kbps.hpp, - ../../src/protocol/srs_protocol_kbps.cpp, - ../../src/protocol/srs_raw_avc.hpp, - ../../src/protocol/srs_raw_avc.cpp, - ../../src/protocol/srs_protocol_amf0.hpp, - ../../src/protocol/srs_protocol_amf0.cpp, - ../../src/protocol/srs_protocol_stream.hpp, - ../../src/protocol/srs_protocol_stream.cpp, - ../../src/protocol/srs_protocol_json.hpp, - ../../src/protocol/srs_protocol_json.cpp, - ../../src/protocol/srs_rtmp_handshake.hpp, - ../../src/protocol/srs_rtmp_handshake.cpp, - ../../src/protocol/srs_protocol_io.hpp, - ../../src/protocol/srs_protocol_io.cpp, - ../../src/protocol/srs_rtmp_msg_array.hpp, - ../../src/protocol/srs_rtmp_msg_array.cpp, - ../../src/protocol/srs_rtmp_stack.hpp, - ../../src/protocol/srs_rtmp_stack.cpp, - ../../src/protocol/srs_protocol_utility.hpp, - ../../src/protocol/srs_protocol_utility.cpp, - app readonly separator, - ../../src/app/srs_app_async_call.hpp, - ../../src/app/srs_app_async_call.cpp, - ../../src/app/srs_app_bandwidth.hpp, - ../../src/app/srs_app_bandwidth.cpp, - ../../src/app/srs_app_caster_flv.hpp, - ../../src/app/srs_app_caster_flv.cpp, - ../../src/app/srs_app_conn.hpp, - ../../src/app/srs_app_conn.cpp, - ../../src/app/srs_app_config.hpp, - ../../src/app/srs_app_config.cpp, - ../../src/app/srs_app_dvr.hpp, - ../../src/app/srs_app_dvr.cpp, - ../../src/app/srs_app_edge.hpp, - ../../src/app/srs_app_edge.cpp, - ../../src/app/srs_app_empty.hpp, - ../../src/app/srs_app_empty.cpp, - ../../src/app/srs_app_encoder.hpp, - ../../src/app/srs_app_encoder.cpp, - ../../src/app/srs_app_ffmpeg.hpp, - ../../src/app/srs_app_ffmpeg.cpp, - ../../src/app/srs_app_forward.hpp, - ../../src/app/srs_app_forward.cpp, - ../../src/app/srs_app_heartbeat.hpp, - ../../src/app/srs_app_heartbeat.cpp, - ../../src/app/srs_app_hls.hpp, - ../../src/app/srs_app_hls.cpp, - ../../src/app/srs_app_http_api.hpp, - ../../src/app/srs_app_http_api.cpp, - ../../src/app/srs_app_http_client.hpp, - ../../src/app/srs_app_http_client.cpp, - ../../src/app/srs_app_http_conn.hpp, - ../../src/app/srs_app_http_conn.cpp, - ../../src/app/srs_app_http_hooks.hpp, - ../../src/app/srs_app_http_hooks.cpp, - ../../src/app/srs_app_http_stream.hpp, - ../../src/app/srs_app_http_stream.cpp, - ../../src/app/srs_app_http_static.hpp, - ../../src/app/srs_app_http_static.cpp, - ../../src/app/srs_app_ingest.hpp, - ../../src/app/srs_app_ingest.cpp, - ../../src/app/srs_app_kafka.hpp, - ../../src/app/srs_app_kafka.cpp, - ../../src/app/srs_app_listener.hpp, - ../../src/app/srs_app_listener.cpp, - ../../src/app/srs_app_log.hpp, - ../../src/app/srs_app_log.cpp, - ../../src/app/srs_app_mpegts_udp.hpp, - ../../src/app/srs_app_mpegts_udp.cpp, - ../../src/app/srs_app_ng_exec.hpp, - ../../src/app/srs_app_ng_exec.cpp, - ../../src/app/srs_app_process.hpp, - ../../src/app/srs_app_process.cpp, - ../../src/app/srs_app_recv_thread.hpp, - ../../src/app/srs_app_recv_thread.cpp, - ../../src/app/srs_app_refer.hpp, - ../../src/app/srs_app_refer.cpp, - ../../src/app/srs_app_reload.hpp, - ../../src/app/srs_app_reload.cpp, - ../../src/app/srs_app_rtmp_conn.hpp, - ../../src/app/srs_app_rtmp_conn.cpp, - ../../src/app/srs_app_rtsp.hpp, - ../../src/app/srs_app_rtsp.cpp, - ../../src/app/srs_app_pithy_print.hpp, - ../../src/app/srs_app_pithy_print.cpp, - ../../src/app/srs_app_security.hpp, - ../../src/app/srs_app_security.cpp, - ../../src/app/srs_app_server.hpp, - ../../src/app/srs_app_server.cpp, - ../../src/app/srs_app_st.hpp, - ../../src/app/srs_app_st.cpp, - ../../src/app/srs_app_statistic.hpp, - ../../src/app/srs_app_statistic.cpp, - ../../src/app/srs_app_source.hpp, - ../../src/app/srs_app_source.cpp, - ../../src/app/srs_app_utility.hpp, - ../../src/app/srs_app_utility.cpp, - utest readonly separator, - ../../src/utest/srs_utest.hpp, - ../../src/utest/srs_utest.cpp, - ../../src/utest/srs_utest_amf0.hpp, - ../../src/utest/srs_utest_amf0.cpp, - ../../src/utest/srs_utest_config.hpp, - ../../src/utest/srs_utest_config.cpp, - ../../src/utest/srs_utest_core.hpp, - ../../src/utest/srs_utest_core.cpp, - ../../src/utest/srs_utest_kernel.hpp, - ../../src/utest/srs_utest_kernel.cpp, - ../../src/utest/srs_utest_protocol.hpp, - ../../src/utest/srs_utest_protocol.cpp, - ../../src/utest/srs_utest_reload.hpp, - ../../src/utest/srs_utest_reload.cpp; - -mainconfig - "" = "MAIN"; - diff --git a/trunk/ide/srs_vs2010/srs.sln b/trunk/ide/srs_vs2010/srs.sln deleted file mode 100755 index 4834750859..0000000000 --- a/trunk/ide/srs_vs2010/srs.sln +++ /dev/null @@ -1,18 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 11.00 -# Visual Studio 2010 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "srs", "srs.vcxproj", "{74591348-C63A-4E00-B85E-62A9D8544F6F}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Win32 = Debug|Win32 - Release|Win32 = Release|Win32 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {74591348-C63A-4E00-B85E-62A9D8544F6F}.Debug|Win32.ActiveCfg = Debug|Win32 - {74591348-C63A-4E00-B85E-62A9D8544F6F}.Release|Win32.ActiveCfg = Release|Win32 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/trunk/ide/srs_vs2010/srs.vcxproj b/trunk/ide/srs_vs2010/srs.vcxproj deleted file mode 100755 index 5c153cca3e..0000000000 --- a/trunk/ide/srs_vs2010/srs.vcxproj +++ /dev/null @@ -1,199 +0,0 @@ - - - - - Debug - Win32 - - - Release - Win32 - - - - {74591348-C63A-4E00-B85E-62A9D8544F6F} - srs - - - - Application - true - MultiByte - - - Application - false - true - MultiByte - - - - - - - - - - - - - $(ProjectDir)/../../src/core;$(ProjectDir)/../../src/kernel;$(ProjectDir)/../../src/protocol;$(ProjectDir)/../../src/app;$(ProjectDir)/../../src/libs;$(ProjectDir)/../../objs;$(IncludePath) - - - - Level3 - Disabled - - - true - - - - - Level3 - MaxSpeed - true - true - - - true - true - true - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/trunk/ide/srs_vs2010/srs.vcxproj.filters b/trunk/ide/srs_vs2010/srs.vcxproj.filters deleted file mode 100755 index 8ccac35959..0000000000 --- a/trunk/ide/srs_vs2010/srs.vcxproj.filters +++ /dev/null @@ -1,384 +0,0 @@ - - - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - srs - - - - - {0919b792-be75-49ed-b15a-2dc521e8394f} - - - diff --git a/trunk/ide/srs_xcode/srs_xcode.xcodeproj/project.pbxproj b/trunk/ide/srs_xcode/srs_xcode.xcodeproj/project.pbxproj deleted file mode 100644 index 091a53f44b..0000000000 --- a/trunk/ide/srs_xcode/srs_xcode.xcodeproj/project.pbxproj +++ /dev/null @@ -1,1184 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 46; - objects = { - -/* Begin PBXBuildFile section */ - 3C036B551B2D0AC10078E2E0 /* srs_app_http_static.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C036B511B2D0AC10078E2E0 /* srs_app_http_static.cpp */; }; - 3C036B561B2D0AC10078E2E0 /* srs_app_http_stream.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C036B531B2D0AC10078E2E0 /* srs_app_http_stream.cpp */; }; - 3C068D6A1B10149F00AA722C /* srs_protocol_kbps.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C068D681B10149F00AA722C /* srs_protocol_kbps.cpp */; }; - 3C068D6D1B10175500AA722C /* srs_protocol_stream.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C068D6B1B10175500AA722C /* srs_protocol_stream.cpp */; }; - 3C0D422E1B87165900C2508B /* srs_protocol_json.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C0D422C1B87165900C2508B /* srs_protocol_json.cpp */; }; - 3C0E1B8D1B0F5ADF003ADEF7 /* srs_http_stack.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C0E1B8B1B0F5ADF003ADEF7 /* srs_http_stack.cpp */; }; - 3C1231F61AAE652D00CE8F6C /* srs_core_autofree.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1231F01AAE652C00CE8F6C /* srs_core_autofree.cpp */; }; - 3C1231F71AAE652D00CE8F6C /* srs_core_performance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1231F21AAE652C00CE8F6C /* srs_core_performance.cpp */; }; - 3C1231F81AAE652D00CE8F6C /* srs_core.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1231F41AAE652D00CE8F6C /* srs_core.cpp */; }; - 3C1232061AAE812C00CE8F6C /* srs_main_server.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232051AAE812C00CE8F6C /* srs_main_server.cpp */; }; - 3C1232201AAE814D00CE8F6C /* srs_kernel_aac.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232081AAE814D00CE8F6C /* srs_kernel_aac.cpp */; }; - 3C1232211AAE814D00CE8F6C /* srs_kernel_stream.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12320A1AAE814D00CE8F6C /* srs_kernel_stream.cpp */; }; - 3C1232221AAE814D00CE8F6C /* srs_kernel_codec.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12320C1AAE814D00CE8F6C /* srs_kernel_codec.cpp */; }; - 3C1232231AAE814D00CE8F6C /* srs_kernel_consts.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12320E1AAE814D00CE8F6C /* srs_kernel_consts.cpp */; }; - 3C1232241AAE814D00CE8F6C /* srs_kernel_error.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232101AAE814D00CE8F6C /* srs_kernel_error.cpp */; }; - 3C1232251AAE814D00CE8F6C /* srs_kernel_file.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232121AAE814D00CE8F6C /* srs_kernel_file.cpp */; }; - 3C1232261AAE814D00CE8F6C /* srs_kernel_flv.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232141AAE814D00CE8F6C /* srs_kernel_flv.cpp */; }; - 3C1232271AAE814D00CE8F6C /* srs_kernel_log.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232161AAE814D00CE8F6C /* srs_kernel_log.cpp */; }; - 3C1232281AAE814D00CE8F6C /* srs_kernel_mp3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232181AAE814D00CE8F6C /* srs_kernel_mp3.cpp */; }; - 3C1232291AAE814D00CE8F6C /* srs_kernel_buffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12321A1AAE814D00CE8F6C /* srs_kernel_buffer.cpp */; }; - 3C12322A1AAE814D00CE8F6C /* srs_kernel_ts.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12321C1AAE814D00CE8F6C /* srs_kernel_ts.cpp */; }; - 3C12322B1AAE814D00CE8F6C /* srs_kernel_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12321E1AAE814D00CE8F6C /* srs_kernel_utility.cpp */; }; - 3C1232411AAE81A400CE8F6C /* srs_raw_avc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12322D1AAE81A400CE8F6C /* srs_raw_avc.cpp */; }; - 3C1232421AAE81A400CE8F6C /* srs_protocol_amf0.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12322F1AAE81A400CE8F6C /* srs_protocol_amf0.cpp */; }; - 3C1232441AAE81A400CE8F6C /* srs_rtmp_handshake.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232331AAE81A400CE8F6C /* srs_rtmp_handshake.cpp */; }; - 3C1232451AAE81A400CE8F6C /* srs_protocol_io.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232351AAE81A400CE8F6C /* srs_protocol_io.cpp */; }; - 3C1232461AAE81A400CE8F6C /* srs_rtmp_msg_array.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232371AAE81A400CE8F6C /* srs_rtmp_msg_array.cpp */; }; - 3C1232481AAE81A400CE8F6C /* srs_rtmp_stack.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12323B1AAE81A400CE8F6C /* srs_rtmp_stack.cpp */; }; - 3C1232491AAE81A400CE8F6C /* srs_protocol_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12323D1AAE81A400CE8F6C /* srs_protocol_utility.cpp */; }; - 3C12324A1AAE81A400CE8F6C /* srs_rtsp_stack.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12323F1AAE81A400CE8F6C /* srs_rtsp_stack.cpp */; }; - 3C1232941AAE81D900CE8F6C /* srs_app_bandwidth.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12324C1AAE81D900CE8F6C /* srs_app_bandwidth.cpp */; }; - 3C1232951AAE81D900CE8F6C /* srs_app_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12324E1AAE81D900CE8F6C /* srs_app_config.cpp */; }; - 3C1232961AAE81D900CE8F6C /* srs_app_conn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232501AAE81D900CE8F6C /* srs_app_conn.cpp */; }; - 3C1232981AAE81D900CE8F6C /* srs_app_edge.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232541AAE81D900CE8F6C /* srs_app_edge.cpp */; }; - 3C1232991AAE81D900CE8F6C /* srs_app_empty.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232561AAE81D900CE8F6C /* srs_app_empty.cpp */; }; - 3C12329A1AAE81D900CE8F6C /* srs_app_encoder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232581AAE81D900CE8F6C /* srs_app_encoder.cpp */; }; - 3C12329B1AAE81D900CE8F6C /* srs_app_ffmpeg.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12325A1AAE81D900CE8F6C /* srs_app_ffmpeg.cpp */; }; - 3C12329C1AAE81D900CE8F6C /* srs_app_forward.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12325C1AAE81D900CE8F6C /* srs_app_forward.cpp */; }; - 3C12329D1AAE81D900CE8F6C /* srs_app_heartbeat.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12325E1AAE81D900CE8F6C /* srs_app_heartbeat.cpp */; }; - 3C12329E1AAE81D900CE8F6C /* srs_app_hls.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232601AAE81D900CE8F6C /* srs_app_hls.cpp */; }; - 3C12329F1AAE81D900CE8F6C /* srs_app_http_api.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232621AAE81D900CE8F6C /* srs_app_http_api.cpp */; }; - 3C1232A01AAE81D900CE8F6C /* srs_app_http_client.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232641AAE81D900CE8F6C /* srs_app_http_client.cpp */; }; - 3C1232A11AAE81D900CE8F6C /* srs_app_http_conn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232661AAE81D900CE8F6C /* srs_app_http_conn.cpp */; }; - 3C1232A21AAE81D900CE8F6C /* srs_app_http_hooks.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232681AAE81D900CE8F6C /* srs_app_http_hooks.cpp */; }; - 3C1232A41AAE81D900CE8F6C /* srs_app_ingest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12326C1AAE81D900CE8F6C /* srs_app_ingest.cpp */; }; - 3C1232A71AAE81D900CE8F6C /* srs_app_listener.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232721AAE81D900CE8F6C /* srs_app_listener.cpp */; }; - 3C1232A81AAE81D900CE8F6C /* srs_app_log.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232741AAE81D900CE8F6C /* srs_app_log.cpp */; }; - 3C1232A91AAE81D900CE8F6C /* srs_app_mpegts_udp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232761AAE81D900CE8F6C /* srs_app_mpegts_udp.cpp */; }; - 3C1232AA1AAE81D900CE8F6C /* srs_app_pithy_print.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232781AAE81D900CE8F6C /* srs_app_pithy_print.cpp */; }; - 3C1232AB1AAE81D900CE8F6C /* srs_app_recv_thread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12327A1AAE81D900CE8F6C /* srs_app_recv_thread.cpp */; }; - 3C1232AC1AAE81D900CE8F6C /* srs_app_refer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12327C1AAE81D900CE8F6C /* srs_app_refer.cpp */; }; - 3C1232AD1AAE81D900CE8F6C /* srs_app_reload.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12327E1AAE81D900CE8F6C /* srs_app_reload.cpp */; }; - 3C1232AE1AAE81D900CE8F6C /* srs_app_rtmp_conn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232801AAE81D900CE8F6C /* srs_app_rtmp_conn.cpp */; }; - 3C1232AF1AAE81D900CE8F6C /* srs_app_rtsp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232821AAE81D900CE8F6C /* srs_app_rtsp.cpp */; }; - 3C1232B01AAE81D900CE8F6C /* srs_app_security.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232841AAE81D900CE8F6C /* srs_app_security.cpp */; }; - 3C1232B11AAE81D900CE8F6C /* srs_app_server.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232861AAE81D900CE8F6C /* srs_app_server.cpp */; }; - 3C1232B21AAE81D900CE8F6C /* srs_app_source.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232881AAE81D900CE8F6C /* srs_app_source.cpp */; }; - 3C1232B41AAE81D900CE8F6C /* srs_app_st.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12328C1AAE81D900CE8F6C /* srs_app_st.cpp */; }; - 3C1232B51AAE81D900CE8F6C /* srs_app_statistic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C12328E1AAE81D900CE8F6C /* srs_app_statistic.cpp */; }; - 3C1232B61AAE81D900CE8F6C /* srs_app_thread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232901AAE81D900CE8F6C /* srs_app_thread.cpp */; }; - 3C1232B71AAE81D900CE8F6C /* srs_app_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1232921AAE81D900CE8F6C /* srs_app_utility.cpp */; }; - 3C1232D31AAEA56B00CE8F6C /* libst.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3C1232D21AAEA56B00CE8F6C /* libst.a */; }; - 3C1232E91AAEA5D000CE8F6C /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3C1232E71AAEA5D000CE8F6C /* libcrypto.a */; }; - 3C1232EA1AAEA5D000CE8F6C /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3C1232E81AAEA5D000CE8F6C /* libssl.a */; }; - 3C1EE6AE1AB1055800576EE9 /* srs_app_hds.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C1EE6AC1AB1055800576EE9 /* srs_app_hds.cpp */; }; - 3C1EE6D71AB1367D00576EE9 /* README.md in Sources */ = {isa = PBXBuildFile; fileRef = 3C1EE6D61AB1367D00576EE9 /* README.md */; }; - 3C24ECCD1C3B824800460622 /* memory.error.notcmalloc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C24ECCB1C3B824800460622 /* memory.error.notcmalloc.cpp */; }; - 3C24ECCE1C3B824800460622 /* memory.error.tcmalloc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C24ECCC1C3B824800460622 /* memory.error.tcmalloc.cpp */; }; - 3C26E3C61BB146FF00D0F9DB /* srs_app_kafka.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C26E3C41BB146FF00D0F9DB /* srs_app_kafka.cpp */; }; - 3C28EDDF1AF5C43F00A3AEAC /* srs_app_caster_flv.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C28EDDD1AF5C43F00A3AEAC /* srs_app_caster_flv.cpp */; }; - 3C44AACF1E3AF50200D4ABC3 /* srs_kernel_mp4.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C44AACD1E3AF50200D4ABC3 /* srs_kernel_mp4.cpp */; }; - 3C4AB9331B8C9148006627D3 /* srs_app_ng_exec.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C4AB9311B8C9148006627D3 /* srs_app_ng_exec.cpp */; }; - 3C4D184C1E73F133008806F7 /* srs_app_fragment.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C4D184A1E73F133008806F7 /* srs_app_fragment.cpp */; }; - 3C4F97121B8B466D00FF0E46 /* srs_app_process.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C4F97101B8B466D00FF0E46 /* srs_app_process.cpp */; }; - 3C663F0F1AB0155100286D8B /* srs_aac_raw_publish.c in Sources */ = {isa = PBXBuildFile; fileRef = 3C663F021AB0155100286D8B /* srs_aac_raw_publish.c */; }; - 3C663F101AB0155100286D8B /* srs_audio_raw_publish.c in Sources */ = {isa = PBXBuildFile; fileRef = 3C663F031AB0155100286D8B /* srs_audio_raw_publish.c */; }; - 3C6F2D751E8653BF003D0805 /* srs_main_mp4_parser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C6F2D741E8653BF003D0805 /* srs_main_mp4_parser.cpp */; }; - 3C82802C1BAFF8CC004A1794 /* srs_kafka_stack.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C82802A1BAFF8CC004A1794 /* srs_kafka_stack.cpp */; }; - 3C8CE01E1C3F482100548CC6 /* srs_app_hourglass.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C8CE01D1C3F482100548CC6 /* srs_app_hourglass.cpp */; }; - 3C9F82221E4ECA8200F5B2D2 /* srs_app_dash.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C9F82201E4ECA8200F5B2D2 /* srs_app_dash.cpp */; }; - 3C9F82251E4F5D2A00F5B2D2 /* srs_protocol_format.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3C9F82231E4F5D2A00F5B2D2 /* srs_protocol_format.cpp */; }; - 3CA432A81E3F46DD001DA0C6 /* srs_kernel_io.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CA432A61E3F46DD001DA0C6 /* srs_kernel_io.cpp */; }; - 3CA432AB1E40AEBC001DA0C6 /* Makefile in Sources */ = {isa = PBXBuildFile; fileRef = 3CA432A91E40AEBC001DA0C6 /* Makefile */; }; - 3CA432AC1E40AEBC001DA0C6 /* srs_ingest_mp4.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CA432AA1E40AEBC001DA0C6 /* srs_ingest_mp4.c */; }; - 3CB25C2A1BB269FD00C97A63 /* jmp_sp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CB25C291BB269FD00C97A63 /* jmp_sp.cpp */; }; - 3CC52DD81ACE4023006FEB01 /* srs_utest_amf0.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CC52DCA1ACE4023006FEB01 /* srs_utest_amf0.cpp */; }; - 3CC52DD91ACE4023006FEB01 /* srs_utest_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CC52DCC1ACE4023006FEB01 /* srs_utest_config.cpp */; }; - 3CC52DDA1ACE4023006FEB01 /* srs_utest_core.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CC52DCE1ACE4023006FEB01 /* srs_utest_core.cpp */; }; - 3CC52DDB1ACE4023006FEB01 /* srs_utest_kernel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CC52DD01ACE4023006FEB01 /* srs_utest_kernel.cpp */; }; - 3CC52DDC1ACE4023006FEB01 /* srs_utest_protocol.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CC52DD21ACE4023006FEB01 /* srs_utest_protocol.cpp */; }; - 3CC52DDD1ACE4023006FEB01 /* srs_utest_reload.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CC52DD41ACE4023006FEB01 /* srs_utest_reload.cpp */; }; - 3CC52DDE1ACE4023006FEB01 /* srs_utest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CC52DD61ACE4023006FEB01 /* srs_utest.cpp */; }; - 3CD247C31BB3F14100DC1922 /* srs_kernel_balance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CD247C11BB3F14000DC1922 /* srs_kernel_balance.cpp */; }; - 3CD88B3F1ACA9C58000359E0 /* srs_app_async_call.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CD88B3D1ACA9C58000359E0 /* srs_app_async_call.cpp */; }; - 3CE6CD311AE4AFB800706E07 /* srs_main_ingest_hls.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CE6CD301AE4AFB800706E07 /* srs_main_ingest_hls.cpp */; }; - 3CE893B51E87508D000B742D /* srs_app_dvr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CE893B31E87508D000B742D /* srs_app_dvr.cpp */; }; - 3CE893B91E8750A9000B742D /* srs_service_log.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CE893B71E8750A9000B742D /* srs_service_log.cpp */; }; - 3CE893BC1E875108000B742D /* srs_service_st.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CE893BA1E875108000B742D /* srs_service_st.cpp */; }; - 3CE893BF1E876A97000B742D /* srs_service_http_client.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CE893BD1E876A97000B742D /* srs_service_http_client.cpp */; }; - 3CE893C21E876B9E000B742D /* srs_service_http_conn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CE893C01E876B9E000B742D /* srs_service_http_conn.cpp */; }; - 3CE893C51E876C39000B742D /* srs_service_rtmp_conn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CE893C31E876C39000B742D /* srs_service_rtmp_conn.cpp */; }; - 3CE893C81E876D04000B742D /* srs_service_utility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CE893C61E876D04000B742D /* srs_service_utility.cpp */; }; - 3CE893CB1E8770E2000B742D /* srs_service_conn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3CE893C91E8770E2000B742D /* srs_service_conn.cpp */; }; - 3CECAF991EDC100F00C50501 /* event.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CECAF8F1EDC100F00C50501 /* event.c */; }; - 3CECAF9A1EDC100F00C50501 /* io.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CECAF901EDC100F00C50501 /* io.c */; }; - 3CECAF9B1EDC100F00C50501 /* key.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CECAF911EDC100F00C50501 /* key.c */; }; - 3CECAF9C1EDC100F00C50501 /* Makefile in Sources */ = {isa = PBXBuildFile; fileRef = 3CECAF921EDC100F00C50501 /* Makefile */; }; - 3CECAF9D1EDC100F00C50501 /* md.S in Sources */ = {isa = PBXBuildFile; fileRef = 3CECAF941EDC100F00C50501 /* md.S */; }; - 3CECAF9E1EDC100F00C50501 /* sched.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CECAF961EDC100F00C50501 /* sched.c */; }; - 3CECAF9F1EDC100F00C50501 /* stk.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CECAF971EDC100F00C50501 /* stk.c */; }; - 3CECAFA01EDC100F00C50501 /* sync.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CECAF981EDC100F00C50501 /* sync.c */; }; - 8C0652B12035B5BA000B0661 /* srs_app_coworkers.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8C0652B02035B5B9000B0661 /* srs_app_coworkers.cpp */; }; -/* End PBXBuildFile section */ - -/* Begin PBXCopyFilesBuildPhase section */ - 3C1231E31AAE64A400CE8F6C /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = /usr/share/man/man1/; - dstSubfolderSpec = 0; - files = ( - ); - runOnlyForDeploymentPostprocessing = 1; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 3C036B511B2D0AC10078E2E0 /* srs_app_http_static.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_http_static.cpp; path = ../../../src/app/srs_app_http_static.cpp; sourceTree = ""; }; - 3C036B521B2D0AC10078E2E0 /* srs_app_http_static.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_http_static.hpp; path = ../../../src/app/srs_app_http_static.hpp; sourceTree = ""; }; - 3C036B531B2D0AC10078E2E0 /* srs_app_http_stream.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_http_stream.cpp; path = ../../../src/app/srs_app_http_stream.cpp; sourceTree = ""; }; - 3C036B541B2D0AC10078E2E0 /* srs_app_http_stream.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_http_stream.hpp; path = ../../../src/app/srs_app_http_stream.hpp; sourceTree = ""; }; - 3C068D681B10149F00AA722C /* srs_protocol_kbps.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_protocol_kbps.cpp; path = ../../../src/protocol/srs_protocol_kbps.cpp; sourceTree = ""; }; - 3C068D691B10149F00AA722C /* srs_protocol_kbps.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_protocol_kbps.hpp; path = ../../../src/protocol/srs_protocol_kbps.hpp; sourceTree = ""; }; - 3C068D6B1B10175500AA722C /* srs_protocol_stream.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_protocol_stream.cpp; path = ../../../src/protocol/srs_protocol_stream.cpp; sourceTree = ""; }; - 3C068D6C1B10175500AA722C /* srs_protocol_stream.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_protocol_stream.hpp; path = ../../../src/protocol/srs_protocol_stream.hpp; sourceTree = ""; }; - 3C0D422C1B87165900C2508B /* srs_protocol_json.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_protocol_json.cpp; path = ../../../src/protocol/srs_protocol_json.cpp; sourceTree = ""; }; - 3C0D422D1B87165900C2508B /* srs_protocol_json.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_protocol_json.hpp; path = ../../../src/protocol/srs_protocol_json.hpp; sourceTree = ""; }; - 3C0E1B8B1B0F5ADF003ADEF7 /* srs_http_stack.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_http_stack.cpp; path = ../../../src/protocol/srs_http_stack.cpp; sourceTree = ""; }; - 3C0E1B8C1B0F5ADF003ADEF7 /* srs_http_stack.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_http_stack.hpp; path = ../../../src/protocol/srs_http_stack.hpp; sourceTree = ""; }; - 3C1231E51AAE64A400CE8F6C /* srs_xcode */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = srs_xcode; sourceTree = BUILT_PRODUCTS_DIR; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 3C1231F41AAE652D00CE8F6C /* srs_core.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_core.cpp; path = ../../../src/core/srs_core.cpp; sourceTree = ""; }; - 3C1231F51AAE652D00CE8F6C /* srs_core.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_core.hpp; path = ../../../src/core/srs_core.hpp; sourceTree = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 3C12320A1AAE814D00CE8F6C /* 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 = ""; }; - 3C12320B1AAE814D00CE8F6C /* 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 3C12321A1AAE814D00CE8F6C /* 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 = ""; }; - 3C12321B1AAE814D00CE8F6C /* 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 3C12322F1AAE81A400CE8F6C /* srs_protocol_amf0.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_protocol_amf0.cpp; path = ../../../src/protocol/srs_protocol_amf0.cpp; sourceTree = ""; }; - 3C1232301AAE81A400CE8F6C /* srs_protocol_amf0.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_protocol_amf0.hpp; path = ../../../src/protocol/srs_protocol_amf0.hpp; sourceTree = ""; }; - 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 = ""; }; - 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 = ""; }; - 3C1232351AAE81A400CE8F6C /* srs_protocol_io.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_protocol_io.cpp; path = ../../../src/protocol/srs_protocol_io.cpp; sourceTree = ""; }; - 3C1232361AAE81A400CE8F6C /* srs_protocol_io.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_protocol_io.hpp; path = ../../../src/protocol/srs_protocol_io.hpp; sourceTree = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 3C12323D1AAE81A400CE8F6C /* srs_protocol_utility.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_protocol_utility.cpp; path = ../../../src/protocol/srs_protocol_utility.cpp; sourceTree = ""; }; - 3C12323E1AAE81A400CE8F6C /* srs_protocol_utility.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_protocol_utility.hpp; path = ../../../src/protocol/srs_protocol_utility.hpp; sourceTree = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 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 = ""; }; - 3C1232B81AAE824500CE8F6C /* configure */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = configure; path = ../../../configure; sourceTree = ""; }; - 3C1232BB1AAE827E00CE8F6C /* apps.sh */ = {isa = PBXFileReference; explicitFileType = text.script.sh; fileEncoding = 4; name = apps.sh; path = ../../../auto/apps.sh; sourceTree = ""; }; - 3C1232BC1AAE827E00CE8F6C /* auto_headers.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = auto_headers.sh; path = ../../../auto/auto_headers.sh; sourceTree = ""; }; - 3C1232BD1AAE827E00CE8F6C /* build_ffmpeg.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = build_ffmpeg.sh; path = ../../../auto/build_ffmpeg.sh; sourceTree = ""; }; - 3C1232BE1AAE827E00CE8F6C /* depends.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = depends.sh; path = ../../../auto/depends.sh; sourceTree = ""; }; - 3C1232BF1AAE827E00CE8F6C /* generate_header.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = generate_header.sh; path = ../../../auto/generate_header.sh; sourceTree = ""; }; - 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 = ""; }; - 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 = ""; }; - 3C1232C21AAE827E00CE8F6C /* libs.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = libs.sh; path = ../../../auto/libs.sh; sourceTree = ""; }; - 3C1232C31AAE827E00CE8F6C /* local_ip.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = local_ip.sh; path = ../../../auto/local_ip.sh; sourceTree = ""; }; - 3C1232C41AAE827E00CE8F6C /* modules.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = modules.sh; path = ../../../auto/modules.sh; sourceTree = ""; }; - 3C1232C51AAE827E00CE8F6C /* options.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = options.sh; path = ../../../auto/options.sh; sourceTree = ""; wrapsLines = 0; }; - 3C1232C61AAE827E00CE8F6C /* summary.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = summary.sh; path = ../../../auto/summary.sh; sourceTree = ""; }; - 3C1232C71AAE827E00CE8F6C /* utest.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = utest.sh; path = ../../../auto/utest.sh; sourceTree = ""; }; - 3C1232C81AAE833300CE8F6C /* _log.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = _log.sh; path = ../../../scripts/_log.sh; sourceTree = ""; }; - 3C1232C91AAE833300CE8F6C /* build.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = build.sh; path = ../../../scripts/build.sh; sourceTree = ""; }; - 3C1232CA1AAE833300CE8F6C /* git.commit.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = git.commit.sh; path = ../../../scripts/git.commit.sh; sourceTree = ""; }; - 3C1232CB1AAE833300CE8F6C /* git2unix.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = git2unix.sh; path = ../../../scripts/git2unix.sh; sourceTree = ""; }; - 3C1232CC1AAE833300CE8F6C /* install.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = install.sh; path = ../../../scripts/install.sh; sourceTree = ""; }; - 3C1232CD1AAE833300CE8F6C /* package.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = package.sh; path = ../../../scripts/package.sh; sourceTree = ""; }; - 3C1232CE1AAE833300CE8F6C /* run.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = run.sh; path = ../../../scripts/run.sh; sourceTree = ""; }; - 3C1232CF1AAE833300CE8F6C /* srs.test */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = srs.test; path = ../../../scripts/srs.test; sourceTree = ""; }; - 3C1232D01AAE833300CE8F6C /* stop.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = stop.sh; path = ../../../scripts/stop.sh; sourceTree = ""; }; - 3C1232D11AAE833300CE8F6C /* test_configure.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = test_configure.sh; path = ../../../scripts/test_configure.sh; sourceTree = ""; }; - 3C1232D21AAEA56B00CE8F6C /* libst.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libst.a; path = "../../objs/st-1.9/DARWIN_14.0.0_DBG/libst.a"; sourceTree = ""; }; - 3C1232E71AAEA5D000CE8F6C /* libcrypto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcrypto.a; path = "../../objs/openssl-1.1.0e/_release/lib/libcrypto.a"; sourceTree = ""; }; - 3C1232E81AAEA5D000CE8F6C /* libssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libssl.a; path = "../../objs/openssl-1.1.0e/_release/lib/libssl.a"; sourceTree = ""; }; - 3C1232EC1AAEA70F00CE8F6C /* libhttp_parser.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libhttp_parser.a; path = "../../objs/http-parser-2.1/libhttp_parser.a"; sourceTree = ""; }; - 3C1232F11AAEAC7000CE8F6C /* srs */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = srs; path = ../../../etc/init.d/srs; sourceTree = ""; }; - 3C1232F21AAEAC7000CE8F6C /* srs-api */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = "srs-api"; path = "../../../etc/init.d/srs-api"; sourceTree = ""; }; - 3C1232F31AAEAC7000CE8F6C /* srs-demo */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = "srs-demo"; path = "../../../etc/init.d/srs-demo"; sourceTree = ""; }; - 3C1232F41AAEAC7000CE8F6C /* srs-demo-19350 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = "srs-demo-19350"; path = "../../../etc/init.d/srs-demo-19350"; sourceTree = ""; }; - 3C1CDBFB2205CE0300A8C08E /* coverage.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = coverage.sh; path = ../../../auto/coverage.sh; sourceTree = ""; }; - 3C1EE6AC1AB1055800576EE9 /* srs_app_hds.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_hds.cpp; path = ../../../src/app/srs_app_hds.cpp; sourceTree = ""; }; - 3C1EE6AD1AB1055800576EE9 /* srs_app_hds.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_hds.hpp; path = ../../../src/app/srs_app_hds.hpp; sourceTree = ""; }; - 3C1EE6B01AB1080900576EE9 /* bandwidth.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = bandwidth.conf; path = ../../../conf/bandwidth.conf; sourceTree = ""; }; - 3C1EE6B11AB1080900576EE9 /* console.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = console.conf; path = ../../../conf/console.conf; sourceTree = ""; }; - 3C1EE6B21AB1080900576EE9 /* demo.19350.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = demo.19350.conf; path = ../../../conf/demo.19350.conf; sourceTree = ""; }; - 3C1EE6B31AB1080900576EE9 /* demo.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = demo.conf; path = ../../../conf/demo.conf; sourceTree = ""; }; - 3C1EE6B41AB1080900576EE9 /* dvr.path.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = dvr.path.conf; path = ../../../conf/dvr.path.conf; sourceTree = ""; }; - 3C1EE6B51AB1080900576EE9 /* dvr.segment.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = dvr.segment.conf; path = ../../../conf/dvr.segment.conf; sourceTree = ""; }; - 3C1EE6B61AB1080900576EE9 /* dvr.session.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = dvr.session.conf; path = ../../../conf/dvr.session.conf; sourceTree = ""; }; - 3C1EE6B71AB1080900576EE9 /* edge.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = edge.conf; path = ../../../conf/edge.conf; sourceTree = ""; }; - 3C1EE6B81AB1080900576EE9 /* edge.token.traverse.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = edge.token.traverse.conf; path = ../../../conf/edge.token.traverse.conf; sourceTree = ""; }; - 3C1EE6B91AB1080900576EE9 /* ffmpeg.transcode.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = ffmpeg.transcode.conf; path = ../../../conf/ffmpeg.transcode.conf; sourceTree = ""; }; - 3C1EE6BA1AB1080900576EE9 /* forward.master.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = forward.master.conf; path = ../../../conf/forward.master.conf; sourceTree = ""; }; - 3C1EE6BB1AB1080900576EE9 /* forward.slave.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = forward.slave.conf; path = ../../../conf/forward.slave.conf; sourceTree = ""; }; - 3C1EE6BC1AB1080900576EE9 /* full.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = full.conf; path = ../../../conf/full.conf; sourceTree = ""; }; - 3C1EE6BD1AB1080900576EE9 /* hds.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = hds.conf; path = ../../../conf/hds.conf; sourceTree = ""; }; - 3C1EE6BE1AB1080900576EE9 /* hls.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = hls.conf; path = ../../../conf/hls.conf; sourceTree = ""; }; - 3C1EE6BF1AB1080900576EE9 /* http.aac.live.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = http.aac.live.conf; path = ../../../conf/http.aac.live.conf; sourceTree = ""; }; - 3C1EE6C01AB1080900576EE9 /* http.flv.live.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = http.flv.live.conf; path = ../../../conf/http.flv.live.conf; sourceTree = ""; }; - 3C1EE6C11AB1080900576EE9 /* http.heartbeat.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = http.heartbeat.conf; path = ../../../conf/http.heartbeat.conf; sourceTree = ""; }; - 3C1EE6C21AB1080900576EE9 /* http.hls.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = http.hls.conf; path = ../../../conf/http.hls.conf; sourceTree = ""; }; - 3C1EE6C31AB1080900576EE9 /* http.hooks.callback.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = http.hooks.callback.conf; path = ../../../conf/http.hooks.callback.conf; sourceTree = ""; }; - 3C1EE6C41AB1080900576EE9 /* http.mp3.live.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = http.mp3.live.conf; path = ../../../conf/http.mp3.live.conf; sourceTree = ""; }; - 3C1EE6C51AB1080900576EE9 /* http.server.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = http.server.conf; path = ../../../conf/http.server.conf; sourceTree = ""; }; - 3C1EE6C61AB1080900576EE9 /* http.ts.live.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = http.ts.live.conf; path = ../../../conf/http.ts.live.conf; sourceTree = ""; }; - 3C1EE6C71AB1080900576EE9 /* ingest.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = ingest.conf; path = ../../../conf/ingest.conf; sourceTree = ""; }; - 3C1EE6C81AB1080900576EE9 /* mac.dev.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = mac.dev.conf; path = ../../../conf/mac.dev.conf; sourceTree = ""; }; - 3C1EE6C91AB1080900576EE9 /* origin.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = origin.conf; path = ../../../conf/origin.conf; sourceTree = ""; }; - 3C1EE6CA1AB1080900576EE9 /* push.mpegts.over.udp.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = push.mpegts.over.udp.conf; path = ../../../conf/push.mpegts.over.udp.conf; sourceTree = ""; }; - 3C1EE6CB1AB1080900576EE9 /* push.rtsp.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = push.rtsp.conf; path = ../../../conf/push.rtsp.conf; sourceTree = ""; }; - 3C1EE6CD1AB1080900576EE9 /* realtime.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = realtime.conf; path = ../../../conf/realtime.conf; sourceTree = ""; }; - 3C1EE6CE1AB1080900576EE9 /* rtmp.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = rtmp.conf; path = ../../../conf/rtmp.conf; sourceTree = ""; }; - 3C1EE6CF1AB1080900576EE9 /* security.deny.publish.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = security.deny.publish.conf; path = ../../../conf/security.deny.publish.conf; sourceTree = ""; }; - 3C1EE6D01AB1080900576EE9 /* srs.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = srs.conf; path = ../../../conf/srs.conf; sourceTree = ""; }; - 3C1EE6D11AB1080900576EE9 /* transcode2hls.audio.only.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = transcode2hls.audio.only.conf; path = ../../../conf/transcode2hls.audio.only.conf; sourceTree = ""; }; - 3C1EE6D31AB1367D00576EE9 /* AUTHORS.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = AUTHORS.txt; path = ../../../AUTHORS.txt; sourceTree = ""; }; - 3C1EE6D51AB1367D00576EE9 /* LICENSE */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = LICENSE; path = ../../../LICENSE; sourceTree = ""; }; - 3C1EE6D61AB1367D00576EE9 /* README.md */ = {isa = PBXFileReference; explicitFileType = net.daringfireball.markdown; fileEncoding = 4; name = README.md; path = ../../../README.md; sourceTree = ""; wrapsLines = 0; }; - 3C26E3C41BB146FF00D0F9DB /* srs_app_kafka.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_kafka.cpp; path = ../../../src/app/srs_app_kafka.cpp; sourceTree = ""; }; - 3C26E3C51BB146FF00D0F9DB /* srs_app_kafka.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_kafka.hpp; path = ../../../src/app/srs_app_kafka.hpp; sourceTree = ""; }; - 3C28EDDD1AF5C43F00A3AEAC /* srs_app_caster_flv.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_caster_flv.cpp; path = ../../../src/app/srs_app_caster_flv.cpp; sourceTree = ""; }; - 3C28EDDE1AF5C43F00A3AEAC /* srs_app_caster_flv.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_caster_flv.hpp; path = ../../../src/app/srs_app_caster_flv.hpp; sourceTree = ""; }; - 3C4468E81BB0E31300589C9D /* sources_replace.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = sources_replace.sh; path = ../../../scripts/sources_replace.sh; sourceTree = ""; }; - 3C44AACD1E3AF50200D4ABC3 /* srs_kernel_mp4.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_kernel_mp4.cpp; path = ../../../src/kernel/srs_kernel_mp4.cpp; sourceTree = ""; }; - 3C44AACE1E3AF50200D4ABC3 /* srs_kernel_mp4.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_kernel_mp4.hpp; path = ../../../src/kernel/srs_kernel_mp4.hpp; sourceTree = ""; }; - 3C4AB9311B8C9148006627D3 /* srs_app_ng_exec.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_ng_exec.cpp; path = ../../../src/app/srs_app_ng_exec.cpp; sourceTree = ""; }; - 3C4AB9321B8C9148006627D3 /* srs_app_ng_exec.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_ng_exec.hpp; path = ../../../src/app/srs_app_ng_exec.hpp; sourceTree = ""; }; - 3C4AB9341B8C9FF9006627D3 /* exec.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = exec.conf; path = ../../../conf/exec.conf; sourceTree = ""; }; - 3C4D184A1E73F133008806F7 /* srs_app_fragment.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_fragment.cpp; path = ../../../src/app/srs_app_fragment.cpp; sourceTree = ""; }; - 3C4D184B1E73F133008806F7 /* srs_app_fragment.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_fragment.hpp; path = ../../../src/app/srs_app_fragment.hpp; sourceTree = ""; }; - 3C4F97101B8B466D00FF0E46 /* srs_app_process.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_process.cpp; path = ../../../src/app/srs_app_process.cpp; sourceTree = ""; }; - 3C4F97111B8B466D00FF0E46 /* srs_app_process.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_process.hpp; path = ../../../src/app/srs_app_process.hpp; sourceTree = ""; }; - 3C6673CF1DF7B93200A6DF57 /* readme.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = readme.txt; path = ../../../modules/readme.txt; sourceTree = ""; }; - 3C6673D11DF7B95E00A6DF57 /* config */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = config; path = "../../../modules/hls-ingester/config"; sourceTree = ""; }; - 3C6F2D731E86536B003D0805 /* config */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = config; path = "../../../modules/mp4-parser/config"; sourceTree = ""; }; - 3C6F2D741E8653BF003D0805 /* srs_main_mp4_parser.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_main_mp4_parser.cpp; path = ../../../src/main/srs_main_mp4_parser.cpp; sourceTree = ""; }; - 3C8280241BAFF896004A1794 /* compatible.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = compatible.conf; path = ../../../conf/compatible.conf; sourceTree = ""; }; - 3C8280261BAFF896004A1794 /* http.flv.live.edge1.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = http.flv.live.edge1.conf; path = ../../../conf/http.flv.live.edge1.conf; sourceTree = ""; }; - 3C8280271BAFF896004A1794 /* http.flv.live.edge2.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = http.flv.live.edge2.conf; path = ../../../conf/http.flv.live.edge2.conf; sourceTree = ""; }; - 3C8280281BAFF896004A1794 /* push.flv.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = push.flv.conf; path = ../../../conf/push.flv.conf; sourceTree = ""; }; - 3C8280291BAFF896004A1794 /* transform.edge.conf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = transform.edge.conf; path = ../../../conf/transform.edge.conf; sourceTree = ""; }; - 3C82802A1BAFF8CC004A1794 /* srs_kafka_stack.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_kafka_stack.cpp; path = ../../../src/protocol/srs_kafka_stack.cpp; sourceTree = ""; }; - 3C82802B1BAFF8CC004A1794 /* srs_kafka_stack.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_kafka_stack.hpp; path = ../../../src/protocol/srs_kafka_stack.hpp; sourceTree = ""; }; - 3C8CE01C1C3F482100548CC6 /* srs_app_hourglass.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_hourglass.hpp; path = ../../../src/app/srs_app_hourglass.hpp; sourceTree = ""; }; - 3C8CE01D1C3F482100548CC6 /* srs_app_hourglass.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_hourglass.cpp; path = ../../../src/app/srs_app_hourglass.cpp; sourceTree = ""; }; - 3C9F82201E4ECA8200F5B2D2 /* srs_app_dash.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_dash.cpp; path = ../../../src/app/srs_app_dash.cpp; sourceTree = ""; }; - 3C9F82211E4ECA8200F5B2D2 /* srs_app_dash.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_dash.hpp; path = ../../../src/app/srs_app_dash.hpp; sourceTree = ""; }; - 3C9F82231E4F5D2A00F5B2D2 /* srs_protocol_format.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_protocol_format.cpp; path = ../../../src/protocol/srs_protocol_format.cpp; sourceTree = ""; }; - 3C9F82241E4F5D2A00F5B2D2 /* srs_protocol_format.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_protocol_format.hpp; path = ../../../src/protocol/srs_protocol_format.hpp; sourceTree = ""; }; - 3CA432A61E3F46DD001DA0C6 /* srs_kernel_io.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_kernel_io.cpp; path = ../../../src/kernel/srs_kernel_io.cpp; sourceTree = ""; }; - 3CA432A71E3F46DD001DA0C6 /* srs_kernel_io.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_kernel_io.hpp; path = ../../../src/kernel/srs_kernel_io.hpp; sourceTree = ""; }; - 3CB25C281BB2596300C97A63 /* setup_variables.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = setup_variables.sh; path = ../../../auto/setup_variables.sh; sourceTree = ""; }; - 3CC52DCA1ACE4023006FEB01 /* srs_utest_amf0.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_utest_amf0.cpp; path = ../../src/utest/srs_utest_amf0.cpp; sourceTree = ""; }; - 3CC52DCB1ACE4023006FEB01 /* srs_utest_amf0.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_utest_amf0.hpp; path = ../../src/utest/srs_utest_amf0.hpp; sourceTree = ""; }; - 3CC52DCC1ACE4023006FEB01 /* srs_utest_config.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_utest_config.cpp; path = ../../src/utest/srs_utest_config.cpp; sourceTree = ""; }; - 3CC52DCD1ACE4023006FEB01 /* srs_utest_config.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_utest_config.hpp; path = ../../src/utest/srs_utest_config.hpp; sourceTree = ""; }; - 3CC52DCE1ACE4023006FEB01 /* srs_utest_core.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_utest_core.cpp; path = ../../src/utest/srs_utest_core.cpp; sourceTree = ""; }; - 3CC52DCF1ACE4023006FEB01 /* srs_utest_core.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_utest_core.hpp; path = ../../src/utest/srs_utest_core.hpp; sourceTree = ""; }; - 3CC52DD01ACE4023006FEB01 /* srs_utest_kernel.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_utest_kernel.cpp; path = ../../src/utest/srs_utest_kernel.cpp; sourceTree = ""; }; - 3CC52DD11ACE4023006FEB01 /* srs_utest_kernel.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_utest_kernel.hpp; path = ../../src/utest/srs_utest_kernel.hpp; sourceTree = ""; }; - 3CC52DD21ACE4023006FEB01 /* srs_utest_protocol.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_utest_protocol.cpp; path = ../../src/utest/srs_utest_protocol.cpp; sourceTree = ""; }; - 3CC52DD31ACE4023006FEB01 /* srs_utest_protocol.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_utest_protocol.hpp; path = ../../src/utest/srs_utest_protocol.hpp; sourceTree = ""; }; - 3CC52DD41ACE4023006FEB01 /* srs_utest_reload.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_utest_reload.cpp; path = ../../src/utest/srs_utest_reload.cpp; sourceTree = ""; }; - 3CC52DD51ACE4023006FEB01 /* srs_utest_reload.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_utest_reload.hpp; path = ../../src/utest/srs_utest_reload.hpp; sourceTree = ""; }; - 3CC52DD61ACE4023006FEB01 /* srs_utest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_utest.cpp; path = ../../src/utest/srs_utest.cpp; sourceTree = ""; }; - 3CC52DD71ACE4023006FEB01 /* srs_utest.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_utest.hpp; path = ../../src/utest/srs_utest.hpp; sourceTree = ""; }; - 3CD247C11BB3F14000DC1922 /* srs_kernel_balance.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_kernel_balance.cpp; path = ../../../src/kernel/srs_kernel_balance.cpp; sourceTree = ""; }; - 3CD247C21BB3F14000DC1922 /* srs_kernel_balance.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_kernel_balance.hpp; path = ../../../src/kernel/srs_kernel_balance.hpp; sourceTree = ""; }; - 3CD88B3D1ACA9C58000359E0 /* srs_app_async_call.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_async_call.cpp; path = ../../../src/app/srs_app_async_call.cpp; sourceTree = ""; }; - 3CD88B3E1ACA9C58000359E0 /* srs_app_async_call.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_async_call.hpp; path = ../../../src/app/srs_app_async_call.hpp; sourceTree = ""; }; - 3CE6CD301AE4AFB800706E07 /* srs_main_ingest_hls.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_main_ingest_hls.cpp; path = ../../../src/main/srs_main_ingest_hls.cpp; sourceTree = ""; }; - 3CE893B31E87508D000B742D /* 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 = ""; }; - 3CE893B41E87508D000B742D /* 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 = ""; }; - 3CE893B71E8750A9000B742D /* srs_service_log.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_service_log.cpp; path = ../../../src/service/srs_service_log.cpp; sourceTree = ""; }; - 3CE893B81E8750A9000B742D /* srs_service_log.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_service_log.hpp; path = ../../../src/service/srs_service_log.hpp; sourceTree = ""; }; - 3CE893BA1E875108000B742D /* srs_service_st.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_service_st.cpp; path = ../../../src/service/srs_service_st.cpp; sourceTree = ""; }; - 3CE893BB1E875108000B742D /* srs_service_st.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_service_st.hpp; path = ../../../src/service/srs_service_st.hpp; sourceTree = ""; }; - 3CE893BD1E876A97000B742D /* srs_service_http_client.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_service_http_client.cpp; path = ../../../src/service/srs_service_http_client.cpp; sourceTree = ""; }; - 3CE893BE1E876A97000B742D /* srs_service_http_client.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_service_http_client.hpp; path = ../../../src/service/srs_service_http_client.hpp; sourceTree = ""; }; - 3CE893C01E876B9E000B742D /* srs_service_http_conn.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_service_http_conn.cpp; path = ../../../src/service/srs_service_http_conn.cpp; sourceTree = ""; }; - 3CE893C11E876B9E000B742D /* srs_service_http_conn.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_service_http_conn.hpp; path = ../../../src/service/srs_service_http_conn.hpp; sourceTree = ""; }; - 3CE893C31E876C39000B742D /* srs_service_rtmp_conn.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_service_rtmp_conn.cpp; path = ../../../src/service/srs_service_rtmp_conn.cpp; sourceTree = ""; }; - 3CE893C41E876C39000B742D /* srs_service_rtmp_conn.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_service_rtmp_conn.hpp; path = ../../../src/service/srs_service_rtmp_conn.hpp; sourceTree = ""; }; - 3CE893C61E876D04000B742D /* srs_service_utility.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_service_utility.cpp; path = ../../../src/service/srs_service_utility.cpp; sourceTree = ""; }; - 3CE893C71E876D04000B742D /* srs_service_utility.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_service_utility.hpp; path = ../../../src/service/srs_service_utility.hpp; sourceTree = ""; }; - 3CE893C91E8770E2000B742D /* srs_service_conn.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_service_conn.cpp; path = ../../../src/service/srs_service_conn.cpp; sourceTree = ""; }; - 3CE893CA1E8770E2000B742D /* srs_service_conn.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_service_conn.hpp; path = ../../../src/service/srs_service_conn.hpp; sourceTree = ""; }; - 3CECAF8E1EDC100F00C50501 /* common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = common.h; path = "../../../objs/state-threads-1.9.1/common.h"; sourceTree = ""; }; - 3CECAF8F1EDC100F00C50501 /* event.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = event.c; path = "../../../objs/state-threads-1.9.1/event.c"; sourceTree = ""; }; - 3CECAF901EDC100F00C50501 /* io.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = io.c; path = "../../../objs/state-threads-1.9.1/io.c"; sourceTree = ""; }; - 3CECAF911EDC100F00C50501 /* key.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = key.c; path = "../../../objs/state-threads-1.9.1/key.c"; sourceTree = ""; }; - 3CECAF921EDC100F00C50501 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; name = Makefile; path = "../../../objs/state-threads-1.9.1/Makefile"; sourceTree = ""; }; - 3CECAF931EDC100F00C50501 /* md.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = md.h; path = "../../../objs/state-threads-1.9.1/md.h"; sourceTree = ""; }; - 3CECAF941EDC100F00C50501 /* md.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = md.S; path = "../../../objs/state-threads-1.9.1/md.S"; sourceTree = ""; }; - 3CECAF951EDC100F00C50501 /* public.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = public.h; path = "../../../objs/state-threads-1.9.1/public.h"; sourceTree = ""; }; - 3CECAF961EDC100F00C50501 /* sched.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = sched.c; path = "../../../objs/state-threads-1.9.1/sched.c"; sourceTree = ""; }; - 3CECAF971EDC100F00C50501 /* stk.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = stk.c; path = "../../../objs/state-threads-1.9.1/stk.c"; sourceTree = ""; }; - 3CECAF981EDC100F00C50501 /* sync.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = sync.c; path = "../../../objs/state-threads-1.9.1/sync.c"; sourceTree = ""; }; - 8C0652AF2035B5B9000B0661 /* srs_app_coworkers.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = srs_app_coworkers.hpp; path = ../../../src/app/srs_app_coworkers.hpp; sourceTree = ""; }; - 8C0652B02035B5B9000B0661 /* srs_app_coworkers.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = srs_app_coworkers.cpp; path = ../../../src/app/srs_app_coworkers.cpp; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 3C1231E21AAE64A400CE8F6C /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 3C1232E91AAEA5D000CE8F6C /* libcrypto.a in Frameworks */, - 3C1232EA1AAEA5D000CE8F6C /* libssl.a in Frameworks */, - 3C1232D31AAEA56B00CE8F6C /* libst.a in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 3C1231DC1AAE64A400CE8F6C = { - isa = PBXGroup; - children = ( - 3C1EE6D21AB1366500576EE9 /* doc */, - 3C1231E61AAE64A400CE8F6C /* Products */, - 3C1232EE1AAEA71C00CE8F6C /* links */, - 3C1231E71AAE64A400CE8F6C /* srs_xcode */, - 3CC52DC91ACE4006006FEB01 /* utest */, - ); - sourceTree = ""; - }; - 3C1231E61AAE64A400CE8F6C /* Products */ = { - isa = PBXGroup; - children = ( - 3C1231E51AAE64A400CE8F6C /* srs_xcode */, - ); - name = Products; - sourceTree = ""; - }; - 3C1231E71AAE64A400CE8F6C /* srs_xcode */ = { - isa = PBXGroup; - children = ( - 3C1232B81AAE824500CE8F6C /* configure */, - 3C1232BA1AAE826F00CE8F6C /* auto */, - 3C1231EF1AAE651100CE8F6C /* core */, - 3C1232071AAE814200CE8F6C /* kernel */, - 3C12322C1AAE819900CE8F6C /* protocol */, - 3CE893B61E875095000B742D /* service */, - 3C12324B1AAE81CE00CE8F6C /* app */, - 3C96ADC41B00A71000885304 /* modules */, - 3C1232041AAE80CB00CE8F6C /* main */, - 3C1231F91AAE670E00CE8F6C /* objs */, - 3C1EE6AF1AB107EE00576EE9 /* conf */, - 3C1232EF1AAEAC5800CE8F6C /* etc */, - 3C1232B91AAE825100CE8F6C /* scripts */, - 3C7175A61E1DEA0500E8C49F /* st */, - ); - path = srs_xcode; - sourceTree = ""; - }; - 3C1231EF1AAE651100CE8F6C /* core */ = { - isa = PBXGroup; - children = ( - 3C1231F01AAE652C00CE8F6C /* srs_core_autofree.cpp */, - 3C1231F11AAE652C00CE8F6C /* srs_core_autofree.hpp */, - 3C1231F21AAE652C00CE8F6C /* srs_core_performance.cpp */, - 3C1231F31AAE652C00CE8F6C /* srs_core_performance.hpp */, - 3C1231F41AAE652D00CE8F6C /* srs_core.cpp */, - 3C1231F51AAE652D00CE8F6C /* srs_core.hpp */, - ); - name = core; - sourceTree = ""; - }; - 3C1231F91AAE670E00CE8F6C /* objs */ = { - isa = PBXGroup; - children = ( - 3C1231FB1AAE673100CE8F6C /* srs_auto_headers.hpp */, - ); - name = objs; - sourceTree = ""; - }; - 3C1232041AAE80CB00CE8F6C /* main */ = { - isa = PBXGroup; - children = ( - 3CE6CD301AE4AFB800706E07 /* srs_main_ingest_hls.cpp */, - 3C6F2D741E8653BF003D0805 /* srs_main_mp4_parser.cpp */, - 3C1232051AAE812C00CE8F6C /* srs_main_server.cpp */, - ); - name = main; - sourceTree = ""; - }; - 3C1232071AAE814200CE8F6C /* kernel */ = { - isa = PBXGroup; - children = ( - 3C1232081AAE814D00CE8F6C /* srs_kernel_aac.cpp */, - 3C1232091AAE814D00CE8F6C /* srs_kernel_aac.hpp */, - 3CD247C11BB3F14000DC1922 /* srs_kernel_balance.cpp */, - 3CD247C21BB3F14000DC1922 /* srs_kernel_balance.hpp */, - 3C12321A1AAE814D00CE8F6C /* srs_kernel_buffer.cpp */, - 3C12321B1AAE814D00CE8F6C /* srs_kernel_buffer.hpp */, - 3C12320C1AAE814D00CE8F6C /* srs_kernel_codec.cpp */, - 3C12320D1AAE814D00CE8F6C /* srs_kernel_codec.hpp */, - 3C12320E1AAE814D00CE8F6C /* srs_kernel_consts.cpp */, - 3C12320F1AAE814D00CE8F6C /* srs_kernel_consts.hpp */, - 3C1232101AAE814D00CE8F6C /* srs_kernel_error.cpp */, - 3C1232111AAE814D00CE8F6C /* srs_kernel_error.hpp */, - 3C1232121AAE814D00CE8F6C /* srs_kernel_file.cpp */, - 3C1232131AAE814D00CE8F6C /* srs_kernel_file.hpp */, - 3C1232141AAE814D00CE8F6C /* srs_kernel_flv.cpp */, - 3C1232151AAE814D00CE8F6C /* srs_kernel_flv.hpp */, - 3CA432A61E3F46DD001DA0C6 /* srs_kernel_io.cpp */, - 3CA432A71E3F46DD001DA0C6 /* srs_kernel_io.hpp */, - 3C1232161AAE814D00CE8F6C /* srs_kernel_log.cpp */, - 3C1232171AAE814D00CE8F6C /* srs_kernel_log.hpp */, - 3C1232181AAE814D00CE8F6C /* srs_kernel_mp3.cpp */, - 3C1232191AAE814D00CE8F6C /* srs_kernel_mp3.hpp */, - 3C44AACD1E3AF50200D4ABC3 /* srs_kernel_mp4.cpp */, - 3C44AACE1E3AF50200D4ABC3 /* srs_kernel_mp4.hpp */, - 3C12320A1AAE814D00CE8F6C /* srs_kernel_stream.cpp */, - 3C12320B1AAE814D00CE8F6C /* srs_kernel_stream.hpp */, - 3C12321C1AAE814D00CE8F6C /* srs_kernel_ts.cpp */, - 3C12321D1AAE814D00CE8F6C /* srs_kernel_ts.hpp */, - 3C12321E1AAE814D00CE8F6C /* srs_kernel_utility.cpp */, - 3C12321F1AAE814D00CE8F6C /* srs_kernel_utility.hpp */, - ); - name = kernel; - sourceTree = ""; - }; - 3C12322C1AAE819900CE8F6C /* protocol */ = { - isa = PBXGroup; - children = ( - 3C0E1B8B1B0F5ADF003ADEF7 /* srs_http_stack.cpp */, - 3C0E1B8C1B0F5ADF003ADEF7 /* srs_http_stack.hpp */, - 3C82802A1BAFF8CC004A1794 /* srs_kafka_stack.cpp */, - 3C82802B1BAFF8CC004A1794 /* srs_kafka_stack.hpp */, - 3C12322F1AAE81A400CE8F6C /* srs_protocol_amf0.cpp */, - 3C1232301AAE81A400CE8F6C /* srs_protocol_amf0.hpp */, - 3C9F82231E4F5D2A00F5B2D2 /* srs_protocol_format.cpp */, - 3C9F82241E4F5D2A00F5B2D2 /* srs_protocol_format.hpp */, - 3C1232351AAE81A400CE8F6C /* srs_protocol_io.cpp */, - 3C1232361AAE81A400CE8F6C /* srs_protocol_io.hpp */, - 3C0D422C1B87165900C2508B /* srs_protocol_json.cpp */, - 3C0D422D1B87165900C2508B /* srs_protocol_json.hpp */, - 3C068D681B10149F00AA722C /* srs_protocol_kbps.cpp */, - 3C068D691B10149F00AA722C /* srs_protocol_kbps.hpp */, - 3C068D6B1B10175500AA722C /* srs_protocol_stream.cpp */, - 3C068D6C1B10175500AA722C /* srs_protocol_stream.hpp */, - 3C12323D1AAE81A400CE8F6C /* srs_protocol_utility.cpp */, - 3C12323E1AAE81A400CE8F6C /* srs_protocol_utility.hpp */, - 3C12322D1AAE81A400CE8F6C /* srs_raw_avc.cpp */, - 3C12322E1AAE81A400CE8F6C /* srs_raw_avc.hpp */, - 3C1232331AAE81A400CE8F6C /* srs_rtmp_handshake.cpp */, - 3C1232341AAE81A400CE8F6C /* srs_rtmp_handshake.hpp */, - 3C1232371AAE81A400CE8F6C /* srs_rtmp_msg_array.cpp */, - 3C1232381AAE81A400CE8F6C /* srs_rtmp_msg_array.hpp */, - 3C12323B1AAE81A400CE8F6C /* srs_rtmp_stack.cpp */, - 3C12323C1AAE81A400CE8F6C /* srs_rtmp_stack.hpp */, - 3C12323F1AAE81A400CE8F6C /* srs_rtsp_stack.cpp */, - 3C1232401AAE81A400CE8F6C /* srs_rtsp_stack.hpp */, - ); - name = protocol; - sourceTree = ""; - }; - 3C12324B1AAE81CE00CE8F6C /* app */ = { - isa = PBXGroup; - children = ( - 3CD88B3D1ACA9C58000359E0 /* srs_app_async_call.cpp */, - 3CD88B3E1ACA9C58000359E0 /* srs_app_async_call.hpp */, - 3C12324C1AAE81D900CE8F6C /* srs_app_bandwidth.cpp */, - 3C12324D1AAE81D900CE8F6C /* srs_app_bandwidth.hpp */, - 3C28EDDD1AF5C43F00A3AEAC /* srs_app_caster_flv.cpp */, - 3C28EDDE1AF5C43F00A3AEAC /* srs_app_caster_flv.hpp */, - 3C12324E1AAE81D900CE8F6C /* srs_app_config.cpp */, - 3C12324F1AAE81D900CE8F6C /* srs_app_config.hpp */, - 3C1232501AAE81D900CE8F6C /* srs_app_conn.cpp */, - 3C1232511AAE81D900CE8F6C /* srs_app_conn.hpp */, - 8C0652B02035B5B9000B0661 /* srs_app_coworkers.cpp */, - 8C0652AF2035B5B9000B0661 /* srs_app_coworkers.hpp */, - 3C9F82201E4ECA8200F5B2D2 /* srs_app_dash.cpp */, - 3C9F82211E4ECA8200F5B2D2 /* srs_app_dash.hpp */, - 3CE893B31E87508D000B742D /* srs_app_dvr.cpp */, - 3CE893B41E87508D000B742D /* srs_app_dvr.hpp */, - 3C1232541AAE81D900CE8F6C /* srs_app_edge.cpp */, - 3C1232551AAE81D900CE8F6C /* srs_app_edge.hpp */, - 3C1232561AAE81D900CE8F6C /* srs_app_empty.cpp */, - 3C1232571AAE81D900CE8F6C /* srs_app_empty.hpp */, - 3C1232581AAE81D900CE8F6C /* srs_app_encoder.cpp */, - 3C1232591AAE81D900CE8F6C /* srs_app_encoder.hpp */, - 3C12325A1AAE81D900CE8F6C /* srs_app_ffmpeg.cpp */, - 3C12325B1AAE81D900CE8F6C /* srs_app_ffmpeg.hpp */, - 3C12325C1AAE81D900CE8F6C /* srs_app_forward.cpp */, - 3C12325D1AAE81D900CE8F6C /* srs_app_forward.hpp */, - 3C4D184A1E73F133008806F7 /* srs_app_fragment.cpp */, - 3C4D184B1E73F133008806F7 /* srs_app_fragment.hpp */, - 3C1EE6AC1AB1055800576EE9 /* srs_app_hds.cpp */, - 3C1EE6AD1AB1055800576EE9 /* srs_app_hds.hpp */, - 3C12325E1AAE81D900CE8F6C /* srs_app_heartbeat.cpp */, - 3C12325F1AAE81D900CE8F6C /* srs_app_heartbeat.hpp */, - 3C1232601AAE81D900CE8F6C /* srs_app_hls.cpp */, - 3C1232611AAE81D900CE8F6C /* srs_app_hls.hpp */, - 3C8CE01D1C3F482100548CC6 /* srs_app_hourglass.cpp */, - 3C8CE01C1C3F482100548CC6 /* srs_app_hourglass.hpp */, - 3C1232621AAE81D900CE8F6C /* srs_app_http_api.cpp */, - 3C1232631AAE81D900CE8F6C /* srs_app_http_api.hpp */, - 3C1232641AAE81D900CE8F6C /* srs_app_http_client.cpp */, - 3C1232651AAE81D900CE8F6C /* srs_app_http_client.hpp */, - 3C1232661AAE81D900CE8F6C /* srs_app_http_conn.cpp */, - 3C1232671AAE81D900CE8F6C /* srs_app_http_conn.hpp */, - 3C1232681AAE81D900CE8F6C /* srs_app_http_hooks.cpp */, - 3C1232691AAE81D900CE8F6C /* srs_app_http_hooks.hpp */, - 3C036B511B2D0AC10078E2E0 /* srs_app_http_static.cpp */, - 3C036B521B2D0AC10078E2E0 /* srs_app_http_static.hpp */, - 3C036B531B2D0AC10078E2E0 /* srs_app_http_stream.cpp */, - 3C036B541B2D0AC10078E2E0 /* srs_app_http_stream.hpp */, - 3C12326C1AAE81D900CE8F6C /* srs_app_ingest.cpp */, - 3C12326D1AAE81D900CE8F6C /* srs_app_ingest.hpp */, - 3C26E3C41BB146FF00D0F9DB /* srs_app_kafka.cpp */, - 3C26E3C51BB146FF00D0F9DB /* srs_app_kafka.hpp */, - 3C1232721AAE81D900CE8F6C /* srs_app_listener.cpp */, - 3C1232731AAE81D900CE8F6C /* srs_app_listener.hpp */, - 3C1232741AAE81D900CE8F6C /* srs_app_log.cpp */, - 3C1232751AAE81D900CE8F6C /* srs_app_log.hpp */, - 3C1232761AAE81D900CE8F6C /* srs_app_mpegts_udp.cpp */, - 3C1232771AAE81D900CE8F6C /* srs_app_mpegts_udp.hpp */, - 3C4AB9311B8C9148006627D3 /* srs_app_ng_exec.cpp */, - 3C4AB9321B8C9148006627D3 /* srs_app_ng_exec.hpp */, - 3C1232781AAE81D900CE8F6C /* srs_app_pithy_print.cpp */, - 3C1232791AAE81D900CE8F6C /* srs_app_pithy_print.hpp */, - 3C4F97101B8B466D00FF0E46 /* srs_app_process.cpp */, - 3C4F97111B8B466D00FF0E46 /* srs_app_process.hpp */, - 3C12327A1AAE81D900CE8F6C /* srs_app_recv_thread.cpp */, - 3C12327B1AAE81D900CE8F6C /* srs_app_recv_thread.hpp */, - 3C12327C1AAE81D900CE8F6C /* srs_app_refer.cpp */, - 3C12327D1AAE81D900CE8F6C /* srs_app_refer.hpp */, - 3C12327E1AAE81D900CE8F6C /* srs_app_reload.cpp */, - 3C12327F1AAE81D900CE8F6C /* srs_app_reload.hpp */, - 3C1232801AAE81D900CE8F6C /* srs_app_rtmp_conn.cpp */, - 3C1232811AAE81D900CE8F6C /* srs_app_rtmp_conn.hpp */, - 3C1232821AAE81D900CE8F6C /* srs_app_rtsp.cpp */, - 3C1232831AAE81D900CE8F6C /* srs_app_rtsp.hpp */, - 3C1232841AAE81D900CE8F6C /* srs_app_security.cpp */, - 3C1232851AAE81D900CE8F6C /* srs_app_security.hpp */, - 3C1232861AAE81D900CE8F6C /* srs_app_server.cpp */, - 3C1232871AAE81D900CE8F6C /* srs_app_server.hpp */, - 3C1232881AAE81D900CE8F6C /* srs_app_source.cpp */, - 3C1232891AAE81D900CE8F6C /* srs_app_source.hpp */, - 3C12328C1AAE81D900CE8F6C /* srs_app_st.cpp */, - 3C12328D1AAE81D900CE8F6C /* srs_app_st.hpp */, - 3C12328E1AAE81D900CE8F6C /* srs_app_statistic.cpp */, - 3C12328F1AAE81D900CE8F6C /* srs_app_statistic.hpp */, - 3C1232901AAE81D900CE8F6C /* srs_app_thread.cpp */, - 3C1232911AAE81D900CE8F6C /* srs_app_thread.hpp */, - 3C1232921AAE81D900CE8F6C /* srs_app_utility.cpp */, - 3C1232931AAE81D900CE8F6C /* srs_app_utility.hpp */, - ); - name = app; - sourceTree = ""; - }; - 3C1232B91AAE825100CE8F6C /* scripts */ = { - isa = PBXGroup; - children = ( - 3C1232C81AAE833300CE8F6C /* _log.sh */, - 3C1232C91AAE833300CE8F6C /* build.sh */, - 3C1232CA1AAE833300CE8F6C /* git.commit.sh */, - 3C1232CB1AAE833300CE8F6C /* git2unix.sh */, - 3C1232CC1AAE833300CE8F6C /* install.sh */, - 3C1232CD1AAE833300CE8F6C /* package.sh */, - 3C1232CE1AAE833300CE8F6C /* run.sh */, - 3C4468E81BB0E31300589C9D /* sources_replace.sh */, - 3C1232CF1AAE833300CE8F6C /* srs.test */, - 3C1232D01AAE833300CE8F6C /* stop.sh */, - 3C1232D11AAE833300CE8F6C /* test_configure.sh */, - ); - name = scripts; - sourceTree = ""; - }; - 3C1232BA1AAE826F00CE8F6C /* auto */ = { - isa = PBXGroup; - children = ( - 3C1232BB1AAE827E00CE8F6C /* apps.sh */, - 3C1232BC1AAE827E00CE8F6C /* auto_headers.sh */, - 3C1232BD1AAE827E00CE8F6C /* build_ffmpeg.sh */, - 3C1CDBFB2205CE0300A8C08E /* coverage.sh */, - 3C1232BE1AAE827E00CE8F6C /* depends.sh */, - 3C1232BF1AAE827E00CE8F6C /* generate_header.sh */, - 3C1232C01AAE827E00CE8F6C /* generate-srs-librtmp-project.sh */, - 3C1232C11AAE827E00CE8F6C /* generate-srs-librtmp-single.sh */, - 3C1232C21AAE827E00CE8F6C /* libs.sh */, - 3C1232C31AAE827E00CE8F6C /* local_ip.sh */, - 3C1232C41AAE827E00CE8F6C /* modules.sh */, - 3C1232C51AAE827E00CE8F6C /* options.sh */, - 3CB25C281BB2596300C97A63 /* setup_variables.sh */, - 3C1232C61AAE827E00CE8F6C /* summary.sh */, - 3C1232C71AAE827E00CE8F6C /* utest.sh */, - ); - name = auto; - sourceTree = ""; - }; - 3C1232EE1AAEA71C00CE8F6C /* links */ = { - isa = PBXGroup; - children = ( - 3C1232EC1AAEA70F00CE8F6C /* libhttp_parser.a */, - 3C1232D21AAEA56B00CE8F6C /* libst.a */, - 3C1232E81AAEA5D000CE8F6C /* libssl.a */, - 3C1232E71AAEA5D000CE8F6C /* libcrypto.a */, - ); - name = links; - sourceTree = ""; - }; - 3C1232EF1AAEAC5800CE8F6C /* etc */ = { - isa = PBXGroup; - children = ( - 3C1232F01AAEAC5D00CE8F6C /* init.d */, - ); - name = etc; - sourceTree = ""; - }; - 3C1232F01AAEAC5D00CE8F6C /* init.d */ = { - isa = PBXGroup; - children = ( - 3C1232F11AAEAC7000CE8F6C /* srs */, - 3C1232F21AAEAC7000CE8F6C /* srs-api */, - 3C1232F31AAEAC7000CE8F6C /* srs-demo */, - 3C1232F41AAEAC7000CE8F6C /* srs-demo-19350 */, - ); - name = init.d; - sourceTree = ""; - }; - 3C1EE6AF1AB107EE00576EE9 /* conf */ = { - isa = PBXGroup; - children = ( - 3C1EE6B01AB1080900576EE9 /* bandwidth.conf */, - 3C8280241BAFF896004A1794 /* compatible.conf */, - 3C1EE6B11AB1080900576EE9 /* console.conf */, - 3C1EE6B21AB1080900576EE9 /* demo.19350.conf */, - 3C1EE6B31AB1080900576EE9 /* demo.conf */, - 3C1EE6B41AB1080900576EE9 /* dvr.path.conf */, - 3C1EE6B51AB1080900576EE9 /* dvr.segment.conf */, - 3C1EE6B61AB1080900576EE9 /* dvr.session.conf */, - 3C1EE6B71AB1080900576EE9 /* edge.conf */, - 3C1EE6B81AB1080900576EE9 /* edge.token.traverse.conf */, - 3C4AB9341B8C9FF9006627D3 /* exec.conf */, - 3C1EE6B91AB1080900576EE9 /* ffmpeg.transcode.conf */, - 3C1EE6BA1AB1080900576EE9 /* forward.master.conf */, - 3C1EE6BB1AB1080900576EE9 /* forward.slave.conf */, - 3C1EE6BC1AB1080900576EE9 /* full.conf */, - 3C1EE6BD1AB1080900576EE9 /* hds.conf */, - 3C1EE6BE1AB1080900576EE9 /* hls.conf */, - 3C1EE6BF1AB1080900576EE9 /* http.aac.live.conf */, - 3C1EE6C01AB1080900576EE9 /* http.flv.live.conf */, - 3C8280261BAFF896004A1794 /* http.flv.live.edge1.conf */, - 3C8280271BAFF896004A1794 /* http.flv.live.edge2.conf */, - 3C1EE6C11AB1080900576EE9 /* http.heartbeat.conf */, - 3C1EE6C21AB1080900576EE9 /* http.hls.conf */, - 3C1EE6C31AB1080900576EE9 /* http.hooks.callback.conf */, - 3C1EE6C41AB1080900576EE9 /* http.mp3.live.conf */, - 3C1EE6C51AB1080900576EE9 /* http.server.conf */, - 3C1EE6C61AB1080900576EE9 /* http.ts.live.conf */, - 3C1EE6C71AB1080900576EE9 /* ingest.conf */, - 3C1EE6C81AB1080900576EE9 /* mac.dev.conf */, - 3C1EE6C91AB1080900576EE9 /* origin.conf */, - 3C8280281BAFF896004A1794 /* push.flv.conf */, - 3C1EE6CA1AB1080900576EE9 /* push.mpegts.over.udp.conf */, - 3C1EE6CB1AB1080900576EE9 /* push.rtsp.conf */, - 3C1EE6CD1AB1080900576EE9 /* realtime.conf */, - 3C1EE6CE1AB1080900576EE9 /* rtmp.conf */, - 3C1EE6CF1AB1080900576EE9 /* security.deny.publish.conf */, - 3C1EE6D01AB1080900576EE9 /* srs.conf */, - 3C1EE6D11AB1080900576EE9 /* transcode2hls.audio.only.conf */, - 3C8280291BAFF896004A1794 /* transform.edge.conf */, - ); - name = conf; - sourceTree = ""; - }; - 3C1EE6D21AB1366500576EE9 /* doc */ = { - isa = PBXGroup; - children = ( - 3C1EE6D31AB1367D00576EE9 /* AUTHORS.txt */, - 3C1EE6D51AB1367D00576EE9 /* LICENSE */, - 3C1EE6D61AB1367D00576EE9 /* README.md */, - ); - name = doc; - sourceTree = ""; - }; - 3C6673D01DF7B95000A6DF57 /* hls-ingester */ = { - isa = PBXGroup; - children = ( - 3C6673D11DF7B95E00A6DF57 /* config */, - ); - name = "hls-ingester"; - sourceTree = ""; - }; - 3C6F2D721E86535D003D0805 /* mp4-parser */ = { - isa = PBXGroup; - children = ( - 3C6F2D731E86536B003D0805 /* config */, - ); - name = "mp4-parser"; - sourceTree = ""; - }; - 3C7175A61E1DEA0500E8C49F /* st */ = { - isa = PBXGroup; - children = ( - 3CECAF8E1EDC100F00C50501 /* common.h */, - 3CECAF8F1EDC100F00C50501 /* event.c */, - 3CECAF901EDC100F00C50501 /* io.c */, - 3CECAF911EDC100F00C50501 /* key.c */, - 3CECAF921EDC100F00C50501 /* Makefile */, - 3CECAF931EDC100F00C50501 /* md.h */, - 3CECAF941EDC100F00C50501 /* md.S */, - 3CECAF951EDC100F00C50501 /* public.h */, - 3CECAF961EDC100F00C50501 /* sched.c */, - 3CECAF971EDC100F00C50501 /* stk.c */, - 3CECAF981EDC100F00C50501 /* sync.c */, - ); - name = st; - sourceTree = ""; - }; - 3C96ADC41B00A71000885304 /* modules */ = { - isa = PBXGroup; - children = ( - 3C6673D01DF7B95000A6DF57 /* hls-ingester */, - 3C6F2D721E86535D003D0805 /* mp4-parser */, - 3C6673CF1DF7B93200A6DF57 /* readme.txt */, - ); - name = modules; - sourceTree = ""; - }; - 3CC52DC91ACE4006006FEB01 /* utest */ = { - isa = PBXGroup; - children = ( - 3CC52DCA1ACE4023006FEB01 /* srs_utest_amf0.cpp */, - 3CC52DCB1ACE4023006FEB01 /* srs_utest_amf0.hpp */, - 3CC52DCC1ACE4023006FEB01 /* srs_utest_config.cpp */, - 3CC52DCD1ACE4023006FEB01 /* srs_utest_config.hpp */, - 3CC52DCE1ACE4023006FEB01 /* srs_utest_core.cpp */, - 3CC52DCF1ACE4023006FEB01 /* srs_utest_core.hpp */, - 3CC52DD01ACE4023006FEB01 /* srs_utest_kernel.cpp */, - 3CC52DD11ACE4023006FEB01 /* srs_utest_kernel.hpp */, - 3CC52DD21ACE4023006FEB01 /* srs_utest_protocol.cpp */, - 3CC52DD31ACE4023006FEB01 /* srs_utest_protocol.hpp */, - 3CC52DD41ACE4023006FEB01 /* srs_utest_reload.cpp */, - 3CC52DD51ACE4023006FEB01 /* srs_utest_reload.hpp */, - 3CC52DD61ACE4023006FEB01 /* srs_utest.cpp */, - 3CC52DD71ACE4023006FEB01 /* srs_utest.hpp */, - ); - name = utest; - sourceTree = ""; - }; - 3CE893B61E875095000B742D /* service */ = { - isa = PBXGroup; - children = ( - 3CE893C91E8770E2000B742D /* srs_service_conn.cpp */, - 3CE893CA1E8770E2000B742D /* srs_service_conn.hpp */, - 3CE893BD1E876A97000B742D /* srs_service_http_client.cpp */, - 3CE893BE1E876A97000B742D /* srs_service_http_client.hpp */, - 3CE893C01E876B9E000B742D /* srs_service_http_conn.cpp */, - 3CE893C11E876B9E000B742D /* srs_service_http_conn.hpp */, - 3CE893B71E8750A9000B742D /* srs_service_log.cpp */, - 3CE893B81E8750A9000B742D /* srs_service_log.hpp */, - 3CE893C31E876C39000B742D /* srs_service_rtmp_conn.cpp */, - 3CE893C41E876C39000B742D /* srs_service_rtmp_conn.hpp */, - 3CE893BA1E875108000B742D /* srs_service_st.cpp */, - 3CE893BB1E875108000B742D /* srs_service_st.hpp */, - 3CE893C61E876D04000B742D /* srs_service_utility.cpp */, - 3CE893C71E876D04000B742D /* srs_service_utility.hpp */, - ); - name = service; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 3C1231E41AAE64A400CE8F6C /* srs_xcode */ = { - isa = PBXNativeTarget; - buildConfigurationList = 3C1231EC1AAE64A400CE8F6C /* Build configuration list for PBXNativeTarget "srs_xcode" */; - buildPhases = ( - 3C1231E11AAE64A400CE8F6C /* Sources */, - 3C1231E21AAE64A400CE8F6C /* Frameworks */, - 3C1231E31AAE64A400CE8F6C /* CopyFiles */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = srs_xcode; - productName = srs_xcode; - productReference = 3C1231E51AAE64A400CE8F6C /* srs_xcode */; - productType = "com.apple.product-type.tool"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 3C1231DD1AAE64A400CE8F6C /* Project object */ = { - isa = PBXProject; - attributes = { - LastUpgradeCheck = 0610; - ORGANIZATIONNAME = winlin; - TargetAttributes = { - 3C1231E41AAE64A400CE8F6C = { - CreatedOnToolsVersion = 6.1.1; - }; - }; - }; - buildConfigurationList = 3C1231E01AAE64A400CE8F6C /* Build configuration list for PBXProject "srs_xcode" */; - compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; - hasScannedForEncodings = 0; - knownRegions = ( - en, - ); - mainGroup = 3C1231DC1AAE64A400CE8F6C; - productRefGroup = 3C1231E61AAE64A400CE8F6C /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 3C1231E41AAE64A400CE8F6C /* srs_xcode */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXSourcesBuildPhase section */ - 3C1231E11AAE64A400CE8F6C /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 3C1232951AAE81D900CE8F6C /* srs_app_config.cpp in Sources */, - 3C663F0F1AB0155100286D8B /* srs_aac_raw_publish.c in Sources */, - 3CD88B3F1ACA9C58000359E0 /* srs_app_async_call.cpp in Sources */, - 3C1232961AAE81D900CE8F6C /* srs_app_conn.cpp in Sources */, - 3C12322A1AAE814D00CE8F6C /* srs_kernel_ts.cpp in Sources */, - 3C12329E1AAE81D900CE8F6C /* srs_app_hls.cpp in Sources */, - 3CC52DD91ACE4023006FEB01 /* srs_utest_config.cpp in Sources */, - 3C663F171AB0155100286D8B /* srs_ingest_rtmp.c in Sources */, - 3C26E3C61BB146FF00D0F9DB /* srs_app_kafka.cpp in Sources */, - 3C663F131AB0155100286D8B /* srs_flv_injecter.c in Sources */, - 3C24ECCD1C3B824800460622 /* memory.error.notcmalloc.cpp in Sources */, - 3CD247C31BB3F14100DC1922 /* srs_kernel_balance.cpp in Sources */, - 3C1232271AAE814D00CE8F6C /* srs_kernel_log.cpp in Sources */, - 3C1232A81AAE81D900CE8F6C /* srs_app_log.cpp in Sources */, - 3CECAF9D1EDC100F00C50501 /* md.S in Sources */, - 3C1232A41AAE81D900CE8F6C /* srs_app_ingest.cpp in Sources */, - 3CE893B51E87508D000B742D /* srs_app_dvr.cpp in Sources */, - 3C0D422E1B87165900C2508B /* srs_protocol_json.cpp in Sources */, - 3C1232B41AAE81D900CE8F6C /* srs_app_st.cpp in Sources */, - 3C9F82221E4ECA8200F5B2D2 /* srs_app_dash.cpp in Sources */, - 3C1232481AAE81A400CE8F6C /* srs_rtmp_stack.cpp in Sources */, - 3C1232B01AAE81D900CE8F6C /* srs_app_security.cpp in Sources */, - 3C12322B1AAE814D00CE8F6C /* srs_kernel_utility.cpp in Sources */, - 3C12324A1AAE81A400CE8F6C /* srs_rtsp_stack.cpp in Sources */, - 3CE893BF1E876A97000B742D /* srs_service_http_client.cpp in Sources */, - 3C12329F1AAE81D900CE8F6C /* srs_app_http_api.cpp in Sources */, - 3CECAF991EDC100F00C50501 /* event.c in Sources */, - 3C1EE6AE1AB1055800576EE9 /* srs_app_hds.cpp in Sources */, - 3C663F101AB0155100286D8B /* srs_audio_raw_publish.c in Sources */, - 3CECAFA01EDC100F00C50501 /* sync.c in Sources */, - 3C663F111AB0155100286D8B /* srs_bandwidth_check.c in Sources */, - 3CC52DDE1ACE4023006FEB01 /* srs_utest.cpp in Sources */, - 3C1232A11AAE81D900CE8F6C /* srs_app_http_conn.cpp in Sources */, - 3C1232AC1AAE81D900CE8F6C /* srs_app_refer.cpp in Sources */, - 3C1232991AAE81D900CE8F6C /* srs_app_empty.cpp in Sources */, - 3CC52DDA1ACE4023006FEB01 /* srs_utest_core.cpp in Sources */, - 3C36DB5C1ABD1CB90066CCAF /* srs_lib_simple_socket.cpp in Sources */, - 3C1232201AAE814D00CE8F6C /* srs_kernel_aac.cpp in Sources */, - 3C8CE01E1C3F482100548CC6 /* srs_app_hourglass.cpp in Sources */, - 3C1232941AAE81D900CE8F6C /* srs_app_bandwidth.cpp in Sources */, - 3C1232221AAE814D00CE8F6C /* srs_kernel_codec.cpp in Sources */, - 3C1232B71AAE81D900CE8F6C /* srs_app_utility.cpp in Sources */, - 3C1232AB1AAE81D900CE8F6C /* srs_app_recv_thread.cpp in Sources */, - 3CE893C51E876C39000B742D /* srs_service_rtmp_conn.cpp in Sources */, - 3CC52DDC1ACE4023006FEB01 /* srs_utest_protocol.cpp in Sources */, - 3C663F151AB0155100286D8B /* srs_h264_raw_publish.c in Sources */, - 3C1231F61AAE652D00CE8F6C /* srs_core_autofree.cpp in Sources */, - 8C0652B12035B5BA000B0661 /* srs_app_coworkers.cpp in Sources */, - 3C1EE6D71AB1367D00576EE9 /* README.md in Sources */, - 3C82802C1BAFF8CC004A1794 /* srs_kafka_stack.cpp in Sources */, - 3C1232411AAE81A400CE8F6C /* srs_raw_avc.cpp in Sources */, - 3C1232491AAE81A400CE8F6C /* srs_protocol_utility.cpp in Sources */, - 3C663F191AB0155100286D8B /* srs_publish.c in Sources */, - 3C9F82251E4F5D2A00F5B2D2 /* srs_protocol_format.cpp in Sources */, - 3C0E1B8D1B0F5ADF003ADEF7 /* srs_http_stack.cpp in Sources */, - 3C1232A01AAE81D900CE8F6C /* srs_app_http_client.cpp in Sources */, - 3C12329B1AAE81D900CE8F6C /* srs_app_ffmpeg.cpp in Sources */, - 3C1232421AAE81A400CE8F6C /* srs_protocol_amf0.cpp in Sources */, - 3C4AB9331B8C9148006627D3 /* srs_app_ng_exec.cpp in Sources */, - 3C1232AA1AAE81D900CE8F6C /* srs_app_pithy_print.cpp in Sources */, - 3CECAF9F1EDC100F00C50501 /* stk.c in Sources */, - 3C12329C1AAE81D900CE8F6C /* srs_app_forward.cpp in Sources */, - 3C1232251AAE814D00CE8F6C /* srs_kernel_file.cpp in Sources */, - 3CECAF9A1EDC100F00C50501 /* io.c in Sources */, - 3C1232AD1AAE81D900CE8F6C /* srs_app_reload.cpp in Sources */, - 3CE893C81E876D04000B742D /* srs_service_utility.cpp in Sources */, - 3C1231F81AAE652D00CE8F6C /* srs_core.cpp in Sources */, - 3C1232A21AAE81D900CE8F6C /* srs_app_http_hooks.cpp in Sources */, - 3C663F121AB0155100286D8B /* srs_detect_rtmp.c in Sources */, - 3CE893CB1E8770E2000B742D /* srs_service_conn.cpp in Sources */, - 3C1232B11AAE81D900CE8F6C /* srs_app_server.cpp in Sources */, - 3C1232061AAE812C00CE8F6C /* srs_main_server.cpp in Sources */, - 3C1232281AAE814D00CE8F6C /* srs_kernel_mp3.cpp in Sources */, - 3CA432AC1E40AEBC001DA0C6 /* srs_ingest_mp4.c in Sources */, - 3C24ECCE1C3B824800460622 /* memory.error.tcmalloc.cpp in Sources */, - 3CA432AB1E40AEBC001DA0C6 /* Makefile in Sources */, - 3C1232B21AAE81D900CE8F6C /* srs_app_source.cpp in Sources */, - 3C1231F71AAE652D00CE8F6C /* srs_core_performance.cpp in Sources */, - 3C4D184C1E73F133008806F7 /* srs_app_fragment.cpp in Sources */, - 3CECAF9B1EDC100F00C50501 /* key.c in Sources */, - 3CE893BC1E875108000B742D /* srs_service_st.cpp in Sources */, - 3CC52DD81ACE4023006FEB01 /* srs_utest_amf0.cpp in Sources */, - 3C4F97121B8B466D00FF0E46 /* srs_app_process.cpp in Sources */, - 3C1232981AAE81D900CE8F6C /* srs_app_edge.cpp in Sources */, - 3CC52DDB1ACE4023006FEB01 /* srs_utest_kernel.cpp in Sources */, - 3C1232461AAE81A400CE8F6C /* srs_rtmp_msg_array.cpp in Sources */, - 3C1232A71AAE81D900CE8F6C /* srs_app_listener.cpp in Sources */, - 3C1232261AAE814D00CE8F6C /* srs_kernel_flv.cpp in Sources */, - 3C036B551B2D0AC10078E2E0 /* srs_app_http_static.cpp in Sources */, - 3C663F1A1AB0155100286D8B /* srs_rtmp_dump.c in Sources */, - 3CE6CD311AE4AFB800706E07 /* srs_main_ingest_hls.cpp in Sources */, - 3C6F2D751E8653BF003D0805 /* srs_main_mp4_parser.cpp in Sources */, - 3C28EDDF1AF5C43F00A3AEAC /* srs_app_caster_flv.cpp in Sources */, - 3C1232241AAE814D00CE8F6C /* srs_kernel_error.cpp in Sources */, - 3C036B561B2D0AC10078E2E0 /* srs_app_http_stream.cpp in Sources */, - 3CE893C21E876B9E000B742D /* srs_service_http_conn.cpp in Sources */, - 3C068D6D1B10175500AA722C /* srs_protocol_stream.cpp in Sources */, - 3CB25C2A1BB269FD00C97A63 /* jmp_sp.cpp in Sources */, - 3C068D6D1B10175500AA722C /* srs_protocol_stream.cpp in Sources */, - 3C1232441AAE81A400CE8F6C /* srs_rtmp_handshake.cpp in Sources */, - 3C1232291AAE814D00CE8F6C /* srs_kernel_buffer.cpp in Sources */, - 3C663F181AB0155100286D8B /* srs_play.c in Sources */, - 3CECAF9E1EDC100F00C50501 /* sched.c in Sources */, - 3C1232B61AAE81D900CE8F6C /* srs_app_thread.cpp in Sources */, - 3C1232A91AAE81D900CE8F6C /* srs_app_mpegts_udp.cpp in Sources */, - 3CE893B91E8750A9000B742D /* srs_service_log.cpp in Sources */, - 3CECAF9C1EDC100F00C50501 /* Makefile in Sources */, - 3C1232AE1AAE81D900CE8F6C /* srs_app_rtmp_conn.cpp in Sources */, - 3C1232B51AAE81D900CE8F6C /* srs_app_statistic.cpp in Sources */, - 3C663F161AB0155100286D8B /* srs_ingest_flv.c in Sources */, - 3C663F141AB0155100286D8B /* srs_flv_parser.c in Sources */, - 3C1232451AAE81A400CE8F6C /* srs_protocol_io.cpp in Sources */, - 3C1232211AAE814D00CE8F6C /* srs_kernel_stream.cpp in Sources */, - 3C36DB5B1ABD1CB90066CCAF /* srs_lib_bandwidth.cpp in Sources */, - 3C12329D1AAE81D900CE8F6C /* srs_app_heartbeat.cpp in Sources */, - 3C1232231AAE814D00CE8F6C /* srs_kernel_consts.cpp in Sources */, - 3C1232AF1AAE81D900CE8F6C /* srs_app_rtsp.cpp in Sources */, - 3CA432A81E3F46DD001DA0C6 /* srs_kernel_io.cpp in Sources */, - 3CC52DDD1ACE4023006FEB01 /* srs_utest_reload.cpp in Sources */, - 3C068D6A1B10149F00AA722C /* srs_protocol_kbps.cpp in Sources */, - 3C12329A1AAE81D900CE8F6C /* srs_app_encoder.cpp in Sources */, - 3C44AACF1E3AF50200D4ABC3 /* srs_kernel_mp4.cpp in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin XCBuildConfiguration section */ - 3C1231EA1AAE64A400CE8F6C /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - COPY_PHASE_STRIP = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.10; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = macosx; - }; - name = Debug; - }; - 3C1231EB1AAE64A400CE8F6C /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - COPY_PHASE_STRIP = YES; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.10; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = macosx; - }; - name = Release; - }; - 3C1231ED1AAE64A400CE8F6C /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = YES; - CLANG_CXX_LANGUAGE_STANDARD = "c++98"; - CLANG_CXX_LIBRARY = "libstdc++"; - LIBRARY_SEARCH_PATHS = "../../objs/**"; - PRODUCT_NAME = "$(TARGET_NAME)"; - "USER_HEADER_SEARCH_PATHS[arch=*]" = "../../src/** ../../objs ../../objs/st ../../objs/openssl"; - }; - name = Debug; - }; - 3C1231EE1AAE64A400CE8F6C /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = YES; - CLANG_CXX_LANGUAGE_STANDARD = "c++98"; - CLANG_CXX_LIBRARY = "libstdc++"; - LIBRARY_SEARCH_PATHS = "../../objs/**"; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 3C1231E01AAE64A400CE8F6C /* Build configuration list for PBXProject "srs_xcode" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 3C1231EA1AAE64A400CE8F6C /* Debug */, - 3C1231EB1AAE64A400CE8F6C /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 3C1231EC1AAE64A400CE8F6C /* Build configuration list for PBXNativeTarget "srs_xcode" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 3C1231ED1AAE64A400CE8F6C /* Debug */, - 3C1231EE1AAE64A400CE8F6C /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 3C1231DD1AAE64A400CE8F6C /* Project object */; -} diff --git a/trunk/ide/srs_xcode/srs_xcode.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/trunk/ide/srs_xcode/srs_xcode.xcodeproj/project.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 60847b6bd4..0000000000 --- a/trunk/ide/srs_xcode/srs_xcode.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/trunk/ide/srs_xcode/srs_xcode/readme.txt b/trunk/ide/srs_xcode/srs_xcode/readme.txt deleted file mode 100644 index 94cb20b467..0000000000 --- a/trunk/ide/srs_xcode/srs_xcode/readme.txt +++ /dev/null @@ -1 +0,0 @@ -the xcode project for osx. diff --git a/trunk/src/app/srs_app_utility.cpp b/trunk/src/app/srs_app_utility.cpp index 5a283a5bba..61adc36c68 100644 --- a/trunk/src/app/srs_app_utility.cpp +++ b/trunk/src/app/srs_app_utility.cpp @@ -80,13 +80,14 @@ string srs_path_build_timestamp(string template_path) } // to calendar time - struct tm* tm; + struct tm now; + // Each of these functions returns NULL in case an error was detected. @see https://linux.die.net/man/3/localtime_r if (_srs_config->get_utc_time()) { - if ((tm = gmtime(&tv.tv_sec)) == NULL) { + if (gmtime_r(&tv.tv_sec, &now) == NULL) { return path; } } else { - if ((tm = localtime(&tv.tv_sec)) == NULL) { + if (localtime_r(&tv.tv_sec, &now) == NULL) { return path; } } @@ -96,32 +97,32 @@ string srs_path_build_timestamp(string template_path) // [2006], replace with current year. if (true) { - snprintf(buf, sizeof(buf), "%04d", 1900 + tm->tm_year); + snprintf(buf, sizeof(buf), "%04d", 1900 + now.tm_year); path = srs_string_replace(path, "[2006]", buf); } // [01], replace this const to current month. if (true) { - snprintf(buf, sizeof(buf), "%02d", 1 + tm->tm_mon); + snprintf(buf, sizeof(buf), "%02d", 1 + now.tm_mon); path = srs_string_replace(path, "[01]", buf); } // [02], replace this const to current date. if (true) { - snprintf(buf, sizeof(buf), "%02d", tm->tm_mday); + snprintf(buf, sizeof(buf), "%02d", now.tm_mday); path = srs_string_replace(path, "[02]", buf); } // [15], replace this const to current hour. if (true) { - snprintf(buf, sizeof(buf), "%02d", tm->tm_hour); + snprintf(buf, sizeof(buf), "%02d", now.tm_hour); path = srs_string_replace(path, "[15]", buf); } // [04], repleace this const to current minute. if (true) { - snprintf(buf, sizeof(buf), "%02d", tm->tm_min); + snprintf(buf, sizeof(buf), "%02d", now.tm_min); path = srs_string_replace(path, "[04]", buf); } // [05], repleace this const to current second. if (true) { - snprintf(buf, sizeof(buf), "%02d", tm->tm_sec); + snprintf(buf, sizeof(buf), "%02d", now.tm_sec); path = srs_string_replace(path, "[05]", buf); } // [999], repleace this const to current millisecond. diff --git a/trunk/src/core/srs_core_version4.hpp b/trunk/src/core/srs_core_version4.hpp index 46bfd26bee..9c8bf0b2a2 100644 --- a/trunk/src/core/srs_core_version4.hpp +++ b/trunk/src/core/srs_core_version4.hpp @@ -9,6 +9,6 @@ #define VERSION_MAJOR 4 #define VERSION_MINOR 0 -#define VERSION_REVISION 140 +#define VERSION_REVISION 142 #endif diff --git a/trunk/src/protocol/srs_service_log.cpp b/trunk/src/protocol/srs_service_log.cpp index 47ce892235..11921034b9 100644 --- a/trunk/src/protocol/srs_service_log.cpp +++ b/trunk/src/protocol/srs_service_log.cpp @@ -236,13 +236,14 @@ bool srs_log_header(char* buffer, int size, bool utc, bool dangerous, const char } // to calendar time - struct tm* tm; + struct tm now; + // Each of these functions returns NULL in case an error was detected. @see https://linux.die.net/man/3/localtime_r if (utc) { - if ((tm = gmtime(&tv.tv_sec)) == NULL) { + if (gmtime_r(&tv.tv_sec, &now) == NULL) { return false; } } else { - if ((tm = localtime(&tv.tv_sec)) == NULL) { + if (localtime_r(&tv.tv_sec, &now) == NULL) { return false; } } @@ -252,24 +253,24 @@ bool srs_log_header(char* buffer, int size, bool utc, bool dangerous, const char if (tag) { written = snprintf(buffer, size, "[%d-%02d-%02d %02d:%02d:%02d.%03d][%s][%d][%s][%d][%s] ", - 1900 + tm->tm_year, 1 + tm->tm_mon, tm->tm_mday, tm->tm_hour, tm->tm_min, tm->tm_sec, (int)(tv.tv_usec / 1000), + 1900 + now.tm_year, 1 + now.tm_mon, now.tm_mday, now.tm_hour, now.tm_min, now.tm_sec, (int)(tv.tv_usec / 1000), level, getpid(), cid.c_str(), errno, tag); } else { written = snprintf(buffer, size, "[%d-%02d-%02d %02d:%02d:%02d.%03d][%s][%d][%s][%d] ", - 1900 + tm->tm_year, 1 + tm->tm_mon, tm->tm_mday, tm->tm_hour, tm->tm_min, tm->tm_sec, (int)(tv.tv_usec / 1000), + 1900 + now.tm_year, 1 + now.tm_mon, now.tm_mday, now.tm_hour, now.tm_min, now.tm_sec, (int)(tv.tv_usec / 1000), level, getpid(), cid.c_str(), errno); } } else { if (tag) { written = snprintf(buffer, size, "[%d-%02d-%02d %02d:%02d:%02d.%03d][%s][%d][%s][%s] ", - 1900 + tm->tm_year, 1 + tm->tm_mon, tm->tm_mday, tm->tm_hour, tm->tm_min, tm->tm_sec, (int)(tv.tv_usec / 1000), + 1900 + now.tm_year, 1 + now.tm_mon, now.tm_mday, now.tm_hour, now.tm_min, now.tm_sec, (int)(tv.tv_usec / 1000), level, getpid(), cid.c_str(), tag); } else { written = snprintf(buffer, size, "[%d-%02d-%02d %02d:%02d:%02d.%03d][%s][%d][%s] ", - 1900 + tm->tm_year, 1 + tm->tm_mon, tm->tm_mday, tm->tm_hour, tm->tm_min, tm->tm_sec, (int)(tv.tv_usec / 1000), + 1900 + now.tm_year, 1 + now.tm_mon, now.tm_mday, now.tm_hour, now.tm_min, now.tm_sec, (int)(tv.tv_usec / 1000), level, getpid(), cid.c_str()); } }