Add log messages for Unified Plan processing
Bug: None
Change-Id: Iab993e24aa87b8363d6ae0313e6361172cab5a39
Reviewed-on: https://webrtc-review.googlesource.com/65883
Reviewed-by: Seth Hampson <shampson@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22698}diff --git a/pc/peerconnection.cc b/pc/peerconnection.cc
index ca54c44..bad0926 100644
--- a/pc/peerconnection.cc
+++ b/pc/peerconnection.cc
@@ -1225,6 +1225,9 @@
const std::vector<std::string>& stream_ids) {
auto transceiver = FindFirstTransceiverForAddedTrack(track);
if (transceiver) {
+ RTC_LOG(LS_INFO) << "Reusing an existing "
+ << cricket::MediaTypeToString(transceiver->media_type())
+ << " transceiver for AddTrack.";
if (transceiver->direction() == RtpTransceiverDirection::kRecvOnly) {
transceiver->internal()->set_direction(
RtpTransceiverDirection::kSendRecv);
@@ -1239,6 +1242,8 @@
(track->kind() == MediaStreamTrackInterface::kAudioKind
? cricket::MEDIA_TYPE_AUDIO
: cricket::MEDIA_TYPE_VIDEO);
+ RTC_LOG(LS_INFO) << "Adding " << cricket::MediaTypeToString(media_type)
+ << " transceiver in response to a call to AddTrack.";
auto sender = CreateSender(media_type, track, stream_ids);
auto receiver = CreateReceiver(media_type, rtc::CreateRandomUuid());
transceiver = CreateAndAddTransceiver(sender, receiver);
@@ -1390,6 +1395,8 @@
std::vector<std::string> stream_ids = {
!init.stream_ids.empty() ? init.stream_ids[0] : rtc::CreateRandomUuid()};
+ RTC_LOG(LS_INFO) << "Adding " << cricket::MediaTypeToString(media_type)
+ << " transceiver in response to a call to AddTransceiver.";
auto sender = CreateSender(media_type, track, stream_ids);
auto receiver = CreateReceiver(media_type, rtc::CreateRandomUuid());
auto transceiver = CreateAndAddTransceiver(sender, receiver);
@@ -1794,14 +1801,28 @@
void PeerConnection::RemoveRecvDirectionFromReceivingTransceiversOfType(
cricket::MediaType media_type) {
for (auto transceiver : GetReceivingTransceiversOfType(media_type)) {
- transceiver->internal()->set_direction(
- RtpTransceiverDirectionWithRecvSet(transceiver->direction(), false));
+ RtpTransceiverDirection new_direction =
+ RtpTransceiverDirectionWithRecvSet(transceiver->direction(), false);
+ if (new_direction != transceiver->direction()) {
+ RTC_LOG(LS_INFO) << "Changing " << cricket::MediaTypeToString(media_type)
+ << " transceiver (MID="
+ << transceiver->mid().value_or("<not set>") << ") from "
+ << RtpTransceiverDirectionToString(
+ transceiver->direction())
+ << " to "
+ << RtpTransceiverDirectionToString(new_direction)
+ << " since CreateOffer specified offer_to_receive=0";
+ transceiver->internal()->set_direction(new_direction);
+ }
}
}
void PeerConnection::AddUpToOneReceivingTransceiverOfType(
cricket::MediaType media_type) {
if (GetReceivingTransceiversOfType(media_type).empty()) {
+ RTC_LOG(LS_INFO)
+ << "Adding one recvonly " << cricket::MediaTypeToString(media_type)
+ << " transceiver since CreateOffer specified offer_to_receive=1";
RtpTransceiverInit init;
init.direction = RtpTransceiverDirection::kRecvOnly;
AddTransceiver(media_type, nullptr, init, /*fire_callback=*/false);
@@ -2032,6 +2053,8 @@
transceiver->internal()->set_current_direction(media_desc->direction());
}
if (content->rejected && !transceiver->stopped()) {
+ RTC_LOG(LS_INFO) << "Stopping transceiver for MID=" << content->name
+ << " since the media section was rejected.";
transceiver->Stop();
}
}
@@ -2080,9 +2103,6 @@
if (!content) {
continue;
}
- if (content->rejected && !transceiver->stopped()) {
- transceiver->Stop();
- }
const auto& streams = content->media_description()->streams();
if (!content->rejected && !streams.empty()) {
transceiver->internal()->sender_internal()->set_stream_ids(
@@ -2373,6 +2393,9 @@
(!transceiver->current_direction() ||
!RtpTransceiverDirectionHasRecv(
*transceiver->current_direction()))) {
+ RTC_LOG(LS_INFO) << "Processing the addition of a new track for MID="
+ << content->name << " (added to stream=" << sync_label
+ << ").";
rtc::scoped_refptr<MediaStreamInterface> stream =
remote_streams_->find(sync_label);
if (!stream) {
@@ -2390,12 +2413,16 @@
if (!RtpTransceiverDirectionHasRecv(local_direction) &&
(transceiver->current_direction() &&
RtpTransceiverDirectionHasRecv(*transceiver->current_direction()))) {
+ RTC_LOG(LS_INFO) << "Processing the removal of a track for MID="
+ << content->name;
transceiver->internal()->receiver_internal()->SetStreams({});
}
if (type == SdpType::kPrAnswer || type == SdpType::kAnswer) {
transceiver->internal()->set_current_direction(local_direction);
}
if (content->rejected && !transceiver->stopped()) {
+ RTC_LOG(LS_INFO) << "Stopping transceiver for MID=" << content->name
+ << " since the media section was rejected.";
transceiver->Stop();
}
if (!content->rejected &&
@@ -2555,6 +2582,8 @@
} else if (media_type == cricket::MEDIA_TYPE_DATA) {
if (GetDataMid() && new_content.name != *GetDataMid()) {
// Ignore all but the first data section.
+ RTC_LOG(LS_INFO) << "Ignoring data media section with MID="
+ << new_content.name;
continue;
}
RTCError error = UpdateDataChannel(source, new_content, bundle_group);
@@ -2652,6 +2681,8 @@
: old_remote_content->name;
auto old_transceiver = GetAssociatedTransceiver(old_mid);
if (old_transceiver) {
+ RTC_LOG(LS_INFO) << "Dissociating transceiver for MID=" << old_mid
+ << " since the media section is being recycled.";
old_transceiver->internal()->set_mid(rtc::nullopt);
old_transceiver->internal()->set_mline_index(rtc::nullopt);
}
@@ -2680,6 +2711,11 @@
// If no RtpTransceiver was found in the previous step, create one with a
// recvonly direction.
if (!transceiver) {
+ RTC_LOG(LS_INFO) << "Adding "
+ << cricket::MediaTypeToString(media_desc->type())
+ << " transceiver for MID=" << content.name
+ << " at i=" << mline_index
+ << " in response to the remote description.";
auto sender =
CreateSender(media_desc->type(), nullptr, {rtc::CreateRandomUuid()});
std::string receiver_id;
@@ -4065,8 +4101,11 @@
void PeerConnection::OnRemoteSenderAdded(const RtpSenderInfo& sender_info,
cricket::MediaType media_type) {
- MediaStreamInterface* stream = remote_streams_->find(sender_info.stream_id);
+ RTC_LOG(LS_INFO) << "Creating " << cricket::MediaTypeToString(media_type)
+ << " receiver for track_id=" << sender_info.sender_id
+ << " and stream_id=" << sender_info.stream_id;
+ MediaStreamInterface* stream = remote_streams_->find(sender_info.stream_id);
if (media_type == cricket::MEDIA_TYPE_AUDIO) {
CreateAudioReceiver(stream, sender_info);
} else if (media_type == cricket::MEDIA_TYPE_VIDEO) {
diff --git a/pc/rtptransceiver.cc b/pc/rtptransceiver.cc
index 7ef6ab2..41ee487 100644
--- a/pc/rtptransceiver.cc
+++ b/pc/rtptransceiver.cc
@@ -175,6 +175,13 @@
}
void RtpTransceiver::set_current_direction(RtpTransceiverDirection direction) {
+ RTC_LOG(LS_INFO) << "Changing transceiver (MID=" << mid_.value_or("<not set>")
+ << ") current direction from "
+ << (current_direction_ ? RtpTransceiverDirectionToString(
+ *current_direction_)
+ : "<not set>")
+ << " to " << RtpTransceiverDirectionToString(direction)
+ << ".";
current_direction_ = direction;
if (RtpTransceiverDirectionHasSend(*current_direction_)) {
has_ever_been_used_to_send_ = true;