diff --git a/README.md b/README.md index a2b7499a5..0c542103c 100755 --- a/README.md +++ b/README.md @@ -1100,6 +1100,7 @@ Winlin [bug #474]: https://github.com/simple-rtmp-server/srs/issues/474 [bug #484]: https://github.com/simple-rtmp-server/srs/issues/484 [bug #485]: https://github.com/simple-rtmp-server/srs/issues/485 +[bug #495]: https://github.com/simple-rtmp-server/srs/issues/495 [bug #475]: https://github.com/simple-rtmp-server/srs/issues/475 [bug #458]: https://github.com/simple-rtmp-server/srs/issues/458 [bug #454]: https://github.com/simple-rtmp-server/srs/issues/454 diff --git a/trunk/auto/auto_headers.sh b/trunk/auto/auto_headers.sh index 7297cb33f..4fa2ecd9a 100755 --- a/trunk/auto/auto_headers.sh +++ b/trunk/auto/auto_headers.sh @@ -58,6 +58,11 @@ fi if [ $SRS_CUBIE = YES ]; then srs_define_macro "SRS_CUBIE" $SRS_AUTO_HEADERS_H fi +if [ $SRS_EXPORT_LIBRTMP_PROJECT != NO ]; then + echo "#define SRS_EXPORT_LIBRTMP" >> $SRS_AUTO_HEADERS_H +else + echo "#undef SRS_EXPORT_LIBRTMP" >> $SRS_AUTO_HEADERS_H +fi echo "" >> $SRS_AUTO_HEADERS_H diff --git a/trunk/src/kernel/srs_kernel_aac.cpp b/trunk/src/kernel/srs_kernel_aac.cpp index fcd1b18e5..34e65bc8c 100644 --- a/trunk/src/kernel/srs_kernel_aac.cpp +++ b/trunk/src/kernel/srs_kernel_aac.cpp @@ -23,6 +23,8 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #include +#if !defined(SRS_EXPORT_LIBRTMP) + // for srs-librtmp, @see https://github.com/simple-rtmp-server/srs/issues/213 #ifndef _WIN32 #include @@ -218,3 +220,5 @@ int SrsAacEncoder::write_audio(int64_t timestamp, char* data, int size) return ret; } +#endif + diff --git a/trunk/src/kernel/srs_kernel_aac.hpp b/trunk/src/kernel/srs_kernel_aac.hpp index b334726c2..30c08511d 100644 --- a/trunk/src/kernel/srs_kernel_aac.hpp +++ b/trunk/src/kernel/srs_kernel_aac.hpp @@ -29,6 +29,8 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ #include +#if !defined(SRS_EXPORT_LIBRTMP) + #include #include @@ -71,3 +73,5 @@ public: #endif +#endif + diff --git a/trunk/src/kernel/srs_kernel_codec.cpp b/trunk/src/kernel/srs_kernel_codec.cpp index 6035caf26..d7d8535b9 100644 --- a/trunk/src/kernel/srs_kernel_codec.cpp +++ b/trunk/src/kernel/srs_kernel_codec.cpp @@ -380,6 +380,8 @@ int SrsCodecSample::add_sample_unit(char* bytes, int size) return ret; } +#if !defined(SRS_EXPORT_LIBRTMP) + SrsAvcAacCodec::SrsAvcAacCodec() { avc_parse_sps = true; @@ -1225,3 +1227,5 @@ int SrsAvcAacCodec::avc_demux_ibmf_format(SrsBuffer* stream, SrsCodecSample* sam return ret; } +#endif + diff --git a/trunk/src/kernel/srs_kernel_codec.hpp b/trunk/src/kernel/srs_kernel_codec.hpp index 4b5d4d50b..9cd191716 100644 --- a/trunk/src/kernel/srs_kernel_codec.hpp +++ b/trunk/src/kernel/srs_kernel_codec.hpp @@ -525,6 +525,8 @@ enum SrsAvcLevel }; std::string srs_codec_avc_level2str(SrsAvcLevel level); +#if !defined(SRS_EXPORT_LIBRTMP) + /** * the h264/avc and aac codec, for media stream. * @@ -663,3 +665,6 @@ private: }; #endif + +#endif + diff --git a/trunk/src/kernel/srs_kernel_mp3.cpp b/trunk/src/kernel/srs_kernel_mp3.cpp index 857e3d001..17c94e848 100644 --- a/trunk/src/kernel/srs_kernel_mp3.cpp +++ b/trunk/src/kernel/srs_kernel_mp3.cpp @@ -23,6 +23,8 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #include +#if !defined(SRS_EXPORT_LIBRTMP) + // for srs-librtmp, @see https://github.com/simple-rtmp-server/srs/issues/213 #ifndef _WIN32 #include @@ -125,3 +127,5 @@ int SrsMp3Encoder::write_audio(int64_t timestamp, char* data, int size) return writer->write(data + stream->pos(), size - stream->pos(), NULL); } +#endif + diff --git a/trunk/src/kernel/srs_kernel_mp3.hpp b/trunk/src/kernel/srs_kernel_mp3.hpp index 144aed9ce..8dab0ed33 100644 --- a/trunk/src/kernel/srs_kernel_mp3.hpp +++ b/trunk/src/kernel/srs_kernel_mp3.hpp @@ -29,6 +29,8 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ #include +#if !defined(SRS_EXPORT_LIBRTMP) + #include class SrsBuffer; @@ -68,3 +70,5 @@ public: #endif +#endif + diff --git a/trunk/src/kernel/srs_kernel_ts.cpp b/trunk/src/kernel/srs_kernel_ts.cpp index 5f4b5af27..1b3f144a1 100644 --- a/trunk/src/kernel/srs_kernel_ts.cpp +++ b/trunk/src/kernel/srs_kernel_ts.cpp @@ -23,6 +23,8 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #include +#if !defined(SRS_EXPORT_LIBRTMP) + // for srs-librtmp, @see https://github.com/simple-rtmp-server/srs/issues/213 #ifndef _WIN32 #include @@ -3224,4 +3226,5 @@ int SrsTsEncoder::flush_video() return ret; } +#endif diff --git a/trunk/src/kernel/srs_kernel_ts.hpp b/trunk/src/kernel/srs_kernel_ts.hpp index 2e33501ab..0d090d881 100644 --- a/trunk/src/kernel/srs_kernel_ts.hpp +++ b/trunk/src/kernel/srs_kernel_ts.hpp @@ -29,6 +29,8 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ #include +#if !defined(SRS_EXPORT_LIBRTMP) + #include #include #include @@ -1664,3 +1666,5 @@ private: #endif +#endif + diff --git a/trunk/src/protocol/srs_http_stack.cpp b/trunk/src/protocol/srs_http_stack.cpp index e1fd3a310..b19c8519b 100755 --- a/trunk/src/protocol/srs_http_stack.cpp +++ b/trunk/src/protocol/srs_http_stack.cpp @@ -23,6 +23,8 @@ #include +#if !defined(SRS_EXPORT_LIBRTMP) + #include #include #include @@ -777,3 +779,6 @@ char* ISrsHttpMessage::http_ts_send_buffer() { return _http_ts_send_buffer; } + +#endif + diff --git a/trunk/src/protocol/srs_http_stack.hpp b/trunk/src/protocol/srs_http_stack.hpp index be8200c80..9116d51d5 100644 --- a/trunk/src/protocol/srs_http_stack.hpp +++ b/trunk/src/protocol/srs_http_stack.hpp @@ -29,6 +29,8 @@ */ #include +#if !defined(SRS_EXPORT_LIBRTMP) + #include #include #include @@ -536,3 +538,6 @@ public: }; #endif + +#endif + diff --git a/trunk/src/protocol/srs_rtsp_stack.cpp b/trunk/src/protocol/srs_rtsp_stack.cpp index 90c478d36..772957fee 100644 --- a/trunk/src/protocol/srs_rtsp_stack.cpp +++ b/trunk/src/protocol/srs_rtsp_stack.cpp @@ -23,6 +23,8 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #include +#if !defined(SRS_EXPORT_LIBRTMP) + #include #include using namespace std; @@ -1182,3 +1184,5 @@ int SrsRtspStack::recv_token(std::string& token, SrsRtspTokenState& state, char #endif +#endif + diff --git a/trunk/src/protocol/srs_rtsp_stack.hpp b/trunk/src/protocol/srs_rtsp_stack.hpp index d8b83c82f..a814033c7 100644 --- a/trunk/src/protocol/srs_rtsp_stack.hpp +++ b/trunk/src/protocol/srs_rtsp_stack.hpp @@ -30,6 +30,8 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #include +#if !defined(SRS_EXPORT_LIBRTMP) + #include #include @@ -714,3 +716,5 @@ private: #endif +#endif +