OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 #include "webrtc/video/video_quality_test.h" | 10 #include "webrtc/video/video_quality_test.h" |
(...skipping 1269 matching lines...) Loading... |
1280 | 1280 |
1281 video_send_config_.rtp.extensions.clear(); | 1281 video_send_config_.rtp.extensions.clear(); |
1282 if (params_.call.send_side_bwe) { | 1282 if (params_.call.send_side_bwe) { |
1283 video_send_config_.rtp.extensions.push_back( | 1283 video_send_config_.rtp.extensions.push_back( |
1284 RtpExtension(RtpExtension::kTransportSequenceNumberUri, | 1284 RtpExtension(RtpExtension::kTransportSequenceNumberUri, |
1285 test::kTransportSequenceNumberExtensionId)); | 1285 test::kTransportSequenceNumberExtensionId)); |
1286 } else { | 1286 } else { |
1287 video_send_config_.rtp.extensions.push_back(RtpExtension( | 1287 video_send_config_.rtp.extensions.push_back(RtpExtension( |
1288 RtpExtension::kAbsSendTimeUri, test::kAbsSendTimeExtensionId)); | 1288 RtpExtension::kAbsSendTimeUri, test::kAbsSendTimeExtensionId)); |
1289 } | 1289 } |
| 1290 video_send_config_.rtp.extensions.push_back(RtpExtension( |
| 1291 RtpExtension::kVideoContentTypeUri, test::kVideoContentTypeExtensionId)); |
1290 | 1292 |
1291 video_encoder_config_.min_transmit_bitrate_bps = | 1293 video_encoder_config_.min_transmit_bitrate_bps = |
1292 params_.video.min_transmit_bps; | 1294 params_.video.min_transmit_bps; |
1293 | 1295 |
1294 video_send_config_.suspend_below_min_bitrate = | 1296 video_send_config_.suspend_below_min_bitrate = |
1295 params_.video.suspend_below_min_bitrate; | 1297 params_.video.suspend_below_min_bitrate; |
1296 | 1298 |
1297 video_encoder_config_.number_of_streams = params_.ss.streams.size(); | 1299 video_encoder_config_.number_of_streams = params_.ss.streams.size(); |
1298 video_encoder_config_.max_bitrate_bps = 0; | 1300 video_encoder_config_.max_bitrate_bps = 0; |
1299 for (size_t i = 0; i < params_.ss.streams.size(); ++i) { | 1301 for (size_t i = 0; i < params_.ss.streams.size(); ++i) { |
1300 video_encoder_config_.max_bitrate_bps += | 1302 video_encoder_config_.max_bitrate_bps += |
1301 params_.ss.streams[i].max_bitrate_bps; | 1303 params_.ss.streams[i].max_bitrate_bps; |
1302 } | 1304 } |
1303 video_encoder_config_.video_stream_factory = | 1305 video_encoder_config_.video_stream_factory = |
1304 new rtc::RefCountedObject<VideoStreamFactory>(params_.ss.streams); | 1306 new rtc::RefCountedObject<VideoStreamFactory>(params_.ss.streams); |
1305 | 1307 |
1306 video_encoder_config_.spatial_layers = params_.ss.spatial_layers; | 1308 video_encoder_config_.spatial_layers = params_.ss.spatial_layers; |
1307 | 1309 |
1308 CreateMatchingReceiveConfigs(recv_transport); | 1310 CreateMatchingReceiveConfigs(recv_transport); |
1309 | 1311 |
1310 for (size_t i = 0; i < num_video_streams; ++i) { | 1312 for (size_t i = 0; i < num_video_streams; ++i) { |
1311 video_receive_configs_[i].rtp.nack.rtp_history_ms = kNackRtpHistoryMs; | 1313 video_receive_configs_[i].rtp.nack.rtp_history_ms = kNackRtpHistoryMs; |
1312 video_receive_configs_[i].rtp.rtx_ssrc = kSendRtxSsrcs[i]; | 1314 video_receive_configs_[i].rtp.rtx_ssrc = kSendRtxSsrcs[i]; |
1313 video_receive_configs_[i].rtp.rtx_payload_types[payload_type] = | 1315 video_receive_configs_[i].rtp.rtx_payload_types[payload_type] = |
1314 kSendRtxPayloadType; | 1316 kSendRtxPayloadType; |
1315 video_receive_configs_[i].rtp.transport_cc = params_.call.send_side_bwe; | 1317 video_receive_configs_[i].rtp.transport_cc = params_.call.send_side_bwe; |
1316 video_receive_configs_[i].rtp.remb = !params_.call.send_side_bwe; | 1318 video_receive_configs_[i].rtp.remb = !params_.call.send_side_bwe; |
| 1319 // Enable RTT calculation so NTP time estimator will work. |
| 1320 video_receive_configs_[i].rtp.rtcp_xr.receiver_reference_time_report = true; |
1317 // Force fake decoders on non-selected simulcast streams. | 1321 // Force fake decoders on non-selected simulcast streams. |
1318 if (i != params_.ss.selected_stream) { | 1322 if (i != params_.ss.selected_stream) { |
1319 VideoReceiveStream::Decoder decoder; | 1323 VideoReceiveStream::Decoder decoder; |
1320 decoder.decoder = new test::FakeDecoder(); | 1324 decoder.decoder = new test::FakeDecoder(); |
1321 decoder.payload_type = video_send_config_.encoder_settings.payload_type; | 1325 decoder.payload_type = video_send_config_.encoder_settings.payload_type; |
1322 decoder.payload_name = video_send_config_.encoder_settings.payload_name; | 1326 decoder.payload_name = video_send_config_.encoder_settings.payload_name; |
1323 video_receive_configs_[i].decoders.clear(); | 1327 video_receive_configs_[i].decoders.clear(); |
1324 allocated_decoders_.emplace_back(decoder.decoder); | 1328 allocated_decoders_.emplace_back(decoder.decoder); |
1325 video_receive_configs_[i].decoders.push_back(decoder); | 1329 video_receive_configs_[i].decoders.push_back(decoder); |
1326 } | 1330 } |
(...skipping 555 matching lines...) Loading... |
1882 if (!params_.video.encoded_frame_base_path.empty()) { | 1886 if (!params_.video.encoded_frame_base_path.empty()) { |
1883 std::ostringstream str; | 1887 std::ostringstream str; |
1884 str << receive_logs_++; | 1888 str << receive_logs_++; |
1885 std::string path = | 1889 std::string path = |
1886 params_.video.encoded_frame_base_path + "." + str.str() + ".recv.ivf"; | 1890 params_.video.encoded_frame_base_path + "." + str.str() + ".recv.ivf"; |
1887 stream->EnableEncodedFrameRecording(rtc::CreatePlatformFile(path), | 1891 stream->EnableEncodedFrameRecording(rtc::CreatePlatformFile(path), |
1888 10000000); | 1892 10000000); |
1889 } | 1893 } |
1890 } | 1894 } |
1891 } // namespace webrtc | 1895 } // namespace webrtc |
OLD | NEW |