diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-04-21 19:56:55 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-04-21 19:56:55 +0000 |
commit | ddd0cff3eb5acdc581c8f6f5b36b1bf8b90c8bed (patch) | |
tree | 77daebc4c4c41dae651a3425504a52dd1ccc21b1 /service/src/com/android/telephony/imsmedia/lib/libimsmedia/core/video/VideoStreamGraphRtcp.cpp | |
parent | cad0938b23a933110df171fb7c9f96721f606cd2 (diff) | |
parent | 1879ee137ede0d62b88cd16da3d46138ca540dfa (diff) | |
download | ImsMedia-ddd0cff3eb5acdc581c8f6f5b36b1bf8b90c8bed.tar.gz |
Snap for 9989322 from 1879ee137ede0d62b88cd16da3d46138ca540dfa to mainline-rkpd-release
Change-Id: I35046c7ba53f650c5d42314f226f1df5b7cd8dc1
Diffstat (limited to 'service/src/com/android/telephony/imsmedia/lib/libimsmedia/core/video/VideoStreamGraphRtcp.cpp')
-rw-r--r-- | service/src/com/android/telephony/imsmedia/lib/libimsmedia/core/video/VideoStreamGraphRtcp.cpp | 29 |
1 files changed, 27 insertions, 2 deletions
diff --git a/service/src/com/android/telephony/imsmedia/lib/libimsmedia/core/video/VideoStreamGraphRtcp.cpp b/service/src/com/android/telephony/imsmedia/lib/libimsmedia/core/video/VideoStreamGraphRtcp.cpp index 28ef246a..03a6f728 100644 --- a/service/src/com/android/telephony/imsmedia/lib/libimsmedia/core/video/VideoStreamGraphRtcp.cpp +++ b/service/src/com/android/telephony/imsmedia/lib/libimsmedia/core/video/VideoStreamGraphRtcp.cpp @@ -94,7 +94,7 @@ ImsMediaResult VideoStreamGraphRtcp::update(RtpConfig* config) if (*reinterpret_cast<VideoConfig*>(mConfig) == *pConfig) { - IMLOGD0("[update] no update"); + IMLOGI0("[update] no update"); return RESULT_SUCCESS; } @@ -105,6 +105,12 @@ ImsMediaResult VideoStreamGraphRtcp::update(RtpConfig* config) mConfig = new VideoConfig(pConfig); + if (mConfig->getMediaDirection() == RtpConfig::MEDIA_DIRECTION_NO_FLOW) + { + IMLOGI0("[update] pause RTCP"); + return stop(); + } + ImsMediaResult ret = ImsMediaResult::RESULT_NOT_READY; // stop scheduler if (mGraphState == kStreamStateRunning) @@ -125,7 +131,8 @@ ImsMediaResult VideoStreamGraphRtcp::update(RtpConfig* config) } } - if (mGraphState == kStreamStateCreated && mConfig->getRtcpConfig().getIntervalSec() != 0) + if (mGraphState == kStreamStateCreated && + mConfig->getMediaDirection() != RtpConfig::MEDIA_DIRECTION_NO_FLOW) { IMLOGI0("[update] resume RTCP"); return start(); @@ -140,6 +147,24 @@ ImsMediaResult VideoStreamGraphRtcp::update(RtpConfig* config) return ret; } +ImsMediaResult VideoStreamGraphRtcp::start() +{ + IMLOGI1("[start] state[%d]", mGraphState); + + if (mConfig == nullptr) + { + return RESULT_INVALID_PARAM; + } + + if (mConfig->getMediaDirection() != RtpConfig::MEDIA_DIRECTION_NO_FLOW) + { + return BaseStreamGraph::start(); + } + + // not started + return RESULT_SUCCESS; +} + bool VideoStreamGraphRtcp::setMediaQualityThreshold(MediaQualityThreshold* threshold) { if (threshold != nullptr) |