| Index: webrtc/video/video_quality_test.cc
|
| diff --git a/webrtc/video/video_quality_test.cc b/webrtc/video/video_quality_test.cc
|
| index fad7e0764b3df3de718b55f69597421a0490f1a4..23487f49e8deb8e4affce33e7c353396785414ef 100644
|
| --- a/webrtc/video/video_quality_test.cc
|
| +++ b/webrtc/video/video_quality_test.cc
|
| @@ -134,6 +134,7 @@ class VideoAnalyzer : public PacketReceiver,
|
| FILE* graph_data_output_file,
|
| const std::string& graph_title,
|
| uint32_t ssrc_to_analyze,
|
| + uint32_t rtx_ssrc_to_analyze,
|
| uint32_t selected_width,
|
| uint32_t selected_height)
|
| : transport_(transport),
|
| @@ -145,6 +146,7 @@ class VideoAnalyzer : public PacketReceiver,
|
| graph_data_output_file_(graph_data_output_file),
|
| graph_title_(graph_title),
|
| ssrc_to_analyze_(ssrc_to_analyze),
|
| + rtx_ssrc_to_analyze_(rtx_ssrc_to_analyze),
|
| selected_width_(selected_width),
|
| selected_height_(selected_height),
|
| pre_encode_proxy_(this),
|
| @@ -230,11 +232,13 @@ class VideoAnalyzer : public PacketReceiver,
|
| RtpUtility::RtpHeaderParser parser(packet, length);
|
| RTPHeader header;
|
| parser.Parse(&header);
|
| - if (!IsFlexfec(header.payloadType) && header.ssrc == ssrc_to_analyze_) {
|
| + if (!IsFlexfec(header.payloadType) &&
|
| + (header.ssrc == ssrc_to_analyze_ ||
|
| + header.ssrc == rtx_ssrc_to_analyze_)) {
|
| // Ignore FlexFEC timestamps, to avoid collisions with media timestamps.
|
| // (FlexFEC and media are sent on different SSRCs, which have different
|
| // timestamps spaces.)
|
| - // Also ignore packets from wrong SSRC.
|
| + // Also ignore packets from wrong SSRC, but include retransmits.
|
| rtc::CritScope lock(&crit_);
|
| int64_t timestamp =
|
| wrap_handler_.Unwrap(header.timestamp - rtp_timestamp_delta_);
|
| @@ -293,7 +297,7 @@ class VideoAnalyzer : public PacketReceiver,
|
| // Ignore FlexFEC timestamps, to avoid collisions with media timestamps.
|
| // (FlexFEC and media are sent on different SSRCs, which have different
|
| // timestamps spaces.)
|
| - // Also ignore packets from wrong SSRC.
|
| + // Also ignore packets from wrong SSRC and retransmits.
|
| int64_t timestamp =
|
| wrap_handler_.Unwrap(header.timestamp - rtp_timestamp_delta_);
|
| send_times_[timestamp] = current_time;
|
| @@ -845,6 +849,7 @@ class VideoAnalyzer : public PacketReceiver,
|
| FILE* const graph_data_output_file_;
|
| const std::string graph_title_;
|
| const uint32_t ssrc_to_analyze_;
|
| + const uint32_t rtx_ssrc_to_analyze_;
|
| const uint32_t selected_width_;
|
| const uint32_t selected_height_;
|
| PreEncodeProxy pre_encode_proxy_;
|
| @@ -1341,6 +1346,7 @@ void VideoQualityTest::RunWithAnalyzer(const Params& params) {
|
| params_.analyzer.test_durations_secs * params_.video.fps,
|
| graph_data_output_file, graph_title,
|
| kVideoSendSsrcs[params_.ss.selected_stream],
|
| + kSendRtxSsrcs[params_.ss.selected_stream],
|
| static_cast<uint32_t>(selected_stream.width),
|
| static_cast<uint32_t>(selected_stream.height));
|
|
|
|
|