From 5c2bed1eb2cf18f1f772b7352997bd65b6a3fa40 Mon Sep 17 00:00:00 2001 From: chundonglinlin Date: Tue, 11 Jan 2022 20:15:03 +0800 Subject: [PATCH] RTC: fix play rtc judge for config rtc2rtmp on.(#2863) --- trunk/src/app/srs_app_rtc_api.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/trunk/src/app/srs_app_rtc_api.cpp b/trunk/src/app/srs_app_rtc_api.cpp index d72b192e1b8..9ce07466f1a 100644 --- a/trunk/src/app/srs_app_rtc_api.cpp +++ b/trunk/src/app/srs_app_rtc_api.cpp @@ -188,9 +188,12 @@ srs_error_t SrsGoApiRtcPlay::do_serve_http(ISrsHttpResponseWriter* w, ISrsHttpMe // For RTMP to RTC, fail if disabled and RTMP is active, see https://github.com/ossrs/srs/issues/2728 if (!_srs_config->get_rtc_from_rtmp(ruc.req_->vhost)) { - SrsLiveSource* rtmp = _srs_sources->fetch(ruc.req_); - if (rtmp && !rtmp->inactive()) { - return srs_error_new(ERROR_RTC_DISABLED, "Disabled rtmp_to_rtc of %s, see #2728", ruc.req_->vhost.c_str()); + // FIX ERR: when config is { rtmp_to_rtc off; rtc_to_rtmp on; }, playing rtc will be rejected if publishing rtc stream. + if (!_srs_config->get_rtc_to_rtmp(ruc.req_->vhost)) { + SrsLiveSource* rtmp = _srs_sources->fetch(ruc.req_); + if (rtmp && !rtmp->inactive()) { + return srs_error_new(ERROR_RTC_DISABLED, "Disabled rtmp_to_rtc of %s, see #2728", ruc.req_->vhost.c_str()); + } } }