Replace more instances of rtc::RefCountedObject with make_ref_counted.

This is essentially replacing `new rtc::RefCountedObject` with
`rtc::make_ref_counted` in many files. In a couple of places I
made minor tweaks to make things compile such as adding parenthesis
when they were missing.

Bug: webrtc:12701
Change-Id: I3828dbf3ee0eb0232f3a47067474484ac2f4aed2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/215973
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33852}
This commit is contained in:
Tommi 2021-04-27 14:43:08 +02:00 committed by WebRTC LUCI CQ
parent e644c09ff3
commit 87f7090fd9
81 changed files with 255 additions and 340 deletions

View File

@ -27,15 +27,14 @@ using ::testing::Invoke;
namespace webrtc {
TEST(DecoderDatabase, CreateAndDestroy) {
DecoderDatabase db(new rtc::RefCountedObject<MockAudioDecoderFactory>,
DecoderDatabase db(rtc::make_ref_counted<MockAudioDecoderFactory>(),
absl::nullopt);
EXPECT_EQ(0, db.Size());
EXPECT_TRUE(db.Empty());
}
TEST(DecoderDatabase, InsertAndRemove) {
rtc::scoped_refptr<MockAudioDecoderFactory> factory(
new rtc::RefCountedObject<MockAudioDecoderFactory>);
auto factory = rtc::make_ref_counted<MockAudioDecoderFactory>();
DecoderDatabase db(factory, absl::nullopt);
const uint8_t kPayloadType = 0;
const std::string kCodecName = "Robert\'); DROP TABLE Students;";
@ -50,8 +49,7 @@ TEST(DecoderDatabase, InsertAndRemove) {
}
TEST(DecoderDatabase, InsertAndRemoveAll) {
rtc::scoped_refptr<MockAudioDecoderFactory> factory(
new rtc::RefCountedObject<MockAudioDecoderFactory>);
auto factory = rtc::make_ref_counted<MockAudioDecoderFactory>();
DecoderDatabase db(factory, absl::nullopt);
const std::string kCodecName1 = "Robert\'); DROP TABLE Students;";
const std::string kCodecName2 = "https://xkcd.com/327/";
@ -67,8 +65,7 @@ TEST(DecoderDatabase, InsertAndRemoveAll) {
}
TEST(DecoderDatabase, GetDecoderInfo) {
rtc::scoped_refptr<MockAudioDecoderFactory> factory(
new rtc::RefCountedObject<MockAudioDecoderFactory>);
auto factory = rtc::make_ref_counted<MockAudioDecoderFactory>();
auto* decoder = new MockAudioDecoder;
EXPECT_CALL(*factory, MakeAudioDecoderMock(_, _, _))
.WillOnce(Invoke([decoder](const SdpAudioFormat& format,
@ -103,8 +100,7 @@ TEST(DecoderDatabase, GetDecoder) {
}
TEST(DecoderDatabase, TypeTests) {
rtc::scoped_refptr<MockAudioDecoderFactory> factory(
new rtc::RefCountedObject<MockAudioDecoderFactory>);
auto factory = rtc::make_ref_counted<MockAudioDecoderFactory>();
DecoderDatabase db(factory, absl::nullopt);
const uint8_t kPayloadTypePcmU = 0;
const uint8_t kPayloadTypeCng = 13;
@ -140,8 +136,7 @@ TEST(DecoderDatabase, TypeTests) {
TEST(DecoderDatabase, CheckPayloadTypes) {
constexpr int kNumPayloads = 10;
rtc::scoped_refptr<MockAudioDecoderFactory> factory(
new rtc::RefCountedObject<MockAudioDecoderFactory>);
auto factory = rtc::make_ref_counted<MockAudioDecoderFactory>();
DecoderDatabase db(factory, absl::nullopt);
// Load a number of payloads into the database. Payload types are 0, 1, ...,
// while the decoder type is the same for all payload types (this does not

View File

@ -208,7 +208,7 @@ TestStatistics RunTest(int loss_cadence,
NetEqTest neteq_test(
config, /*decoder_factory=*/
new rtc::RefCountedObject<test::AudioDecoderProxyFactory>(&dec),
rtc::make_ref_counted<test::AudioDecoderProxyFactory>(&dec),
/*codecs=*/decoders, /*text_log=*/nullptr, /*neteq_factory=*/nullptr,
/*input=*/std::move(lossy_input), std::move(output), callbacks);
EXPECT_LE(kRunTimeMs, neteq_test.Run());

View File

@ -303,8 +303,7 @@ TEST_F(NetEqImplTest, InsertPacket) {
fake_packet.sequence_number = kFirstSequenceNumber;
fake_packet.timestamp = kFirstTimestamp;
rtc::scoped_refptr<MockAudioDecoderFactory> mock_decoder_factory(
new rtc::RefCountedObject<MockAudioDecoderFactory>);
auto mock_decoder_factory = rtc::make_ref_counted<MockAudioDecoderFactory>();
EXPECT_CALL(*mock_decoder_factory, MakeAudioDecoderMock(_, _, _))
.WillOnce(Invoke([&](const SdpAudioFormat& format,
absl::optional<AudioCodecPairId> codec_pair_id,
@ -487,8 +486,8 @@ TEST_F(NetEqImplTest, VerifyTimestampPropagation) {
int16_t next_value_;
} decoder_;
rtc::scoped_refptr<AudioDecoderFactory> decoder_factory =
new rtc::RefCountedObject<test::AudioDecoderProxyFactory>(&decoder_);
auto decoder_factory =
rtc::make_ref_counted<test::AudioDecoderProxyFactory>(&decoder_);
UseNoMocks();
CreateInstance(decoder_factory);
@ -555,7 +554,7 @@ TEST_F(NetEqImplTest, ReorderedPacket) {
MockAudioDecoder mock_decoder;
CreateInstance(
new rtc::RefCountedObject<test::AudioDecoderProxyFactory>(&mock_decoder));
rtc::make_ref_counted<test::AudioDecoderProxyFactory>(&mock_decoder));
const uint8_t kPayloadType = 17; // Just an arbitrary number.
const int kSampleRateHz = 8000;
@ -927,7 +926,7 @@ TEST_F(NetEqImplTest, CodecInternalCng) {
// Create a mock decoder object.
MockAudioDecoder mock_decoder;
CreateInstance(
new rtc::RefCountedObject<test::AudioDecoderProxyFactory>(&mock_decoder));
rtc::make_ref_counted<test::AudioDecoderProxyFactory>(&mock_decoder));
const uint8_t kPayloadType = 17; // Just an arbitrary number.
const int kSampleRateKhz = 48;
@ -1066,7 +1065,7 @@ TEST_F(NetEqImplTest, UnsupportedDecoder) {
::testing::NiceMock<MockAudioDecoder> decoder;
CreateInstance(
new rtc::RefCountedObject<test::AudioDecoderProxyFactory>(&decoder));
rtc::make_ref_counted<test::AudioDecoderProxyFactory>(&decoder));
static const size_t kNetEqMaxFrameSize = 5760; // 120 ms @ 48 kHz.
static const size_t kChannels = 2;
@ -1193,7 +1192,7 @@ TEST_F(NetEqImplTest, DecodedPayloadTooShort) {
MockAudioDecoder mock_decoder;
CreateInstance(
new rtc::RefCountedObject<test::AudioDecoderProxyFactory>(&mock_decoder));
rtc::make_ref_counted<test::AudioDecoderProxyFactory>(&mock_decoder));
const uint8_t kPayloadType = 17; // Just an arbitrary number.
const int kSampleRateHz = 8000;
@ -1252,7 +1251,7 @@ TEST_F(NetEqImplTest, DecodingError) {
MockAudioDecoder mock_decoder;
CreateInstance(
new rtc::RefCountedObject<test::AudioDecoderProxyFactory>(&mock_decoder));
rtc::make_ref_counted<test::AudioDecoderProxyFactory>(&mock_decoder));
const uint8_t kPayloadType = 17; // Just an arbitrary number.
const int kSampleRateHz = 8000;
@ -1364,7 +1363,7 @@ TEST_F(NetEqImplTest, DecodingErrorDuringInternalCng) {
// Create a mock decoder object.
MockAudioDecoder mock_decoder;
CreateInstance(
new rtc::RefCountedObject<test::AudioDecoderProxyFactory>(&mock_decoder));
rtc::make_ref_counted<test::AudioDecoderProxyFactory>(&mock_decoder));
const uint8_t kPayloadType = 17; // Just an arbitrary number.
const int kSampleRateHz = 8000;
@ -1658,14 +1657,13 @@ class NetEqImplTest120ms : public NetEqImplTest {
void Register120msCodec(AudioDecoder::SpeechType speech_type) {
const uint32_t sampling_freq = kSamplingFreq_;
decoder_factory_ =
new rtc::RefCountedObject<test::FunctionAudioDecoderFactory>(
[sampling_freq, speech_type]() {
std::unique_ptr<AudioDecoder> decoder =
std::make_unique<Decoder120ms>(sampling_freq, speech_type);
RTC_CHECK_EQ(2, decoder->Channels());
return decoder;
});
decoder_factory_ = rtc::make_ref_counted<test::FunctionAudioDecoderFactory>(
[sampling_freq, speech_type]() {
std::unique_ptr<AudioDecoder> decoder =
std::make_unique<Decoder120ms>(sampling_freq, speech_type);
RTC_CHECK_EQ(2, decoder->Channels());
return decoder;
});
}
rtc::scoped_refptr<AudioDecoderFactory> decoder_factory_;

View File

@ -162,7 +162,7 @@ class NetEqNetworkStatsTest {
NetEqNetworkStatsTest(const SdpAudioFormat& format, MockAudioDecoder* decoder)
: decoder_(decoder),
decoder_factory_(
new rtc::RefCountedObject<AudioDecoderProxyFactory>(decoder)),
rtc::make_ref_counted<AudioDecoderProxyFactory>(decoder)),
samples_per_ms_(format.clockrate_hz / 1000),
frame_size_samples_(kFrameSizeMs * samples_per_ms_),
rtp_generator_(new RtpGenerator(samples_per_ms_)),

View File

@ -298,7 +298,7 @@ TEST(RedPayloadSplitter, CheckRedPayloads) {
// easier to just register the payload types and let the actual implementation
// do its job.
DecoderDatabase decoder_database(
new rtc::RefCountedObject<MockAudioDecoderFactory>, absl::nullopt);
rtc::make_ref_counted<MockAudioDecoderFactory>(), absl::nullopt);
decoder_database.RegisterPayload(0, SdpAudioFormat("cn", 8000, 1));
decoder_database.RegisterPayload(1, SdpAudioFormat("pcmu", 8000, 1));
decoder_database.RegisterPayload(2,
@ -333,7 +333,7 @@ TEST(RedPayloadSplitter, CheckRedPayloadsRecursiveRed) {
// easier to just register the payload types and let the actual implementation
// do its job.
DecoderDatabase decoder_database(
new rtc::RefCountedObject<MockAudioDecoderFactory>, absl::nullopt);
rtc::make_ref_counted<MockAudioDecoderFactory>(), absl::nullopt);
decoder_database.RegisterPayload(kRedPayloadType,
SdpAudioFormat("red", 8000, 1));

View File

@ -285,7 +285,7 @@ std::unique_ptr<NetEqTest> NetEqTestFactory::InitializeTest(
// Note that capture-by-copy implies that the lambda captures the value of
// decoder_factory before it's reassigned on the left-hand side.
decoder_factory = new rtc::RefCountedObject<FunctionAudioDecoderFactory>(
decoder_factory = rtc::make_ref_counted<FunctionAudioDecoderFactory>(
[decoder_factory, config](
const SdpAudioFormat& format,
absl::optional<AudioCodecPairId> codec_pair_id) {

View File

@ -301,9 +301,8 @@ class ADMWrapper : public AudioDeviceModule, public AudioTransport {
rtc::scoped_refptr<AudioDeviceModule> CreateAudioDeviceWithDataObserver(
rtc::scoped_refptr<AudioDeviceModule> impl,
std::unique_ptr<AudioDeviceDataObserver> observer) {
rtc::scoped_refptr<ADMWrapper> audio_device(
new rtc::RefCountedObject<ADMWrapper>(impl, observer.get(),
std::move(observer)));
auto audio_device = rtc::make_ref_counted<ADMWrapper>(impl, observer.get(),
std::move(observer));
if (!audio_device->IsValid()) {
return nullptr;
@ -315,8 +314,8 @@ rtc::scoped_refptr<AudioDeviceModule> CreateAudioDeviceWithDataObserver(
rtc::scoped_refptr<AudioDeviceModule> CreateAudioDeviceWithDataObserver(
rtc::scoped_refptr<AudioDeviceModule> impl,
AudioDeviceDataObserver* legacy_observer) {
rtc::scoped_refptr<ADMWrapper> audio_device(
new rtc::RefCountedObject<ADMWrapper>(impl, legacy_observer, nullptr));
auto audio_device =
rtc::make_ref_counted<ADMWrapper>(impl, legacy_observer, nullptr);
if (!audio_device->IsValid()) {
return nullptr;
@ -329,10 +328,8 @@ rtc::scoped_refptr<AudioDeviceModule> CreateAudioDeviceWithDataObserver(
AudioDeviceModule::AudioLayer audio_layer,
TaskQueueFactory* task_queue_factory,
std::unique_ptr<AudioDeviceDataObserver> observer) {
rtc::scoped_refptr<ADMWrapper> audio_device(
new rtc::RefCountedObject<ADMWrapper>(audio_layer, task_queue_factory,
observer.get(),
std::move(observer)));
auto audio_device = rtc::make_ref_counted<ADMWrapper>(
audio_layer, task_queue_factory, observer.get(), std::move(observer));
if (!audio_device->IsValid()) {
return nullptr;
@ -345,9 +342,8 @@ rtc::scoped_refptr<AudioDeviceModule> CreateAudioDeviceWithDataObserver(
AudioDeviceModule::AudioLayer audio_layer,
TaskQueueFactory* task_queue_factory,
AudioDeviceDataObserver* legacy_observer) {
rtc::scoped_refptr<ADMWrapper> audio_device(
new rtc::RefCountedObject<ADMWrapper>(audio_layer, task_queue_factory,
legacy_observer, nullptr));
auto audio_device = rtc::make_ref_counted<ADMWrapper>(
audio_layer, task_queue_factory, legacy_observer, nullptr);
if (!audio_device->IsValid()) {
return nullptr;

View File

@ -92,27 +92,26 @@ rtc::scoped_refptr<AudioDeviceModuleForTest> AudioDeviceModule::CreateForTest(
}
// Create the generic reference counted (platform independent) implementation.
rtc::scoped_refptr<AudioDeviceModuleImpl> audioDevice(
new rtc::RefCountedObject<AudioDeviceModuleImpl>(audio_layer,
task_queue_factory));
auto audio_device = rtc::make_ref_counted<AudioDeviceModuleImpl>(
audio_layer, task_queue_factory);
// Ensure that the current platform is supported.
if (audioDevice->CheckPlatform() == -1) {
if (audio_device->CheckPlatform() == -1) {
return nullptr;
}
// Create the platform-dependent implementation.
if (audioDevice->CreatePlatformSpecificObjects() == -1) {
if (audio_device->CreatePlatformSpecificObjects() == -1) {
return nullptr;
}
// Ensure that the generic audio buffer can communicate with the platform
// specific parts.
if (audioDevice->AttachAudioBuffer() == -1) {
if (audio_device->AttachAudioBuffer() == -1) {
return nullptr;
}
return audioDevice;
return audio_device;
}
AudioDeviceModuleImpl::AudioDeviceModuleImpl(

View File

@ -23,11 +23,10 @@ namespace test {
class MockAudioDeviceModule : public AudioDeviceModule {
public:
static rtc::scoped_refptr<MockAudioDeviceModule> CreateNice() {
return new rtc::RefCountedObject<
::testing::NiceMock<MockAudioDeviceModule>>();
return rtc::make_ref_counted<::testing::NiceMock<MockAudioDeviceModule>>();
}
static rtc::scoped_refptr<MockAudioDeviceModule> CreateStrict() {
return new rtc::RefCountedObject<
return rtc::make_ref_counted<
::testing::StrictMock<MockAudioDeviceModule>>();
}

View File

@ -447,7 +447,7 @@ rtc::scoped_refptr<TestAudioDeviceModule> TestAudioDeviceModule::Create(
std::unique_ptr<TestAudioDeviceModule::Capturer> capturer,
std::unique_ptr<TestAudioDeviceModule::Renderer> renderer,
float speed) {
return new rtc::RefCountedObject<TestAudioDeviceModuleImpl>(
return rtc::make_ref_counted<TestAudioDeviceModuleImpl>(
task_queue_factory, std::move(capturer), std::move(renderer), speed);
}

View File

@ -514,7 +514,7 @@ CreateWindowsCoreAudioAudioDeviceModuleFromInputAndOutput(
std::unique_ptr<AudioOutput> audio_output,
TaskQueueFactory* task_queue_factory) {
RTC_DLOG(INFO) << __FUNCTION__;
return new rtc::RefCountedObject<WindowsAudioDeviceModule>(
return rtc::make_ref_counted<WindowsAudioDeviceModule>(
std::move(audio_input), std::move(audio_output), task_queue_factory);
}

View File

@ -147,9 +147,8 @@ rtc::scoped_refptr<AudioMixerImpl> AudioMixerImpl::Create() {
rtc::scoped_refptr<AudioMixerImpl> AudioMixerImpl::Create(
std::unique_ptr<OutputRateCalculator> output_rate_calculator,
bool use_limiter) {
return rtc::scoped_refptr<AudioMixerImpl>(
new rtc::RefCountedObject<AudioMixerImpl>(
std::move(output_rate_calculator), use_limiter));
return rtc::make_ref_counted<AudioMixerImpl>(
std::move(output_rate_calculator), use_limiter);
}
void AudioMixerImpl::Mix(size_t number_of_channels,

View File

@ -290,8 +290,7 @@ AudioProcessingImpl::AudioProcessingImpl(
// If no echo detector is injected, use the ResidualEchoDetector.
if (!submodules_.echo_detector) {
submodules_.echo_detector =
new rtc::RefCountedObject<ResidualEchoDetector>();
submodules_.echo_detector = rtc::make_ref_counted<ResidualEchoDetector>();
}
#if !(defined(WEBRTC_ANDROID) || defined(WEBRTC_IOS))

View File

@ -544,8 +544,7 @@ TEST(AudioProcessingImplTest, EchoControllerObservesPlayoutVolumeChange) {
TEST(AudioProcessingImplTest, RenderPreProcessorBeforeEchoDetector) {
// Make sure that signal changes caused by a render pre-processing sub-module
// take place before any echo detector analysis.
rtc::scoped_refptr<TestEchoDetector> test_echo_detector(
new rtc::RefCountedObject<TestEchoDetector>());
auto test_echo_detector = rtc::make_ref_counted<TestEchoDetector>();
std::unique_ptr<CustomProcessing> test_render_pre_processor(
new TestRenderPreProcessor());
// Create APM injecting the test echo detector and render pre-processor.
@ -605,8 +604,7 @@ TEST(AudioProcessingImplTest, RenderPreProcessorBeforeEchoDetector) {
// config should be bit-exact with running APM with said submodules disabled.
// This mainly tests that SetCreateOptionalSubmodulesForTesting has an effect.
TEST(ApmWithSubmodulesExcludedTest, BitexactWithDisabledModules) {
rtc::scoped_refptr<AudioProcessingImpl> apm =
new rtc::RefCountedObject<AudioProcessingImpl>(webrtc::Config());
auto apm = rtc::make_ref_counted<AudioProcessingImpl>(webrtc::Config());
ASSERT_EQ(apm->Initialize(), AudioProcessing::kNoError);
ApmSubmoduleCreationOverrides overrides;
@ -654,8 +652,7 @@ TEST(ApmWithSubmodulesExcludedTest, BitexactWithDisabledModules) {
// Disable transient suppressor creation and run APM in ways that should trigger
// calls to the transient suppressor API.
TEST(ApmWithSubmodulesExcludedTest, ReinitializeTransientSuppressor) {
rtc::scoped_refptr<AudioProcessingImpl> apm =
new rtc::RefCountedObject<AudioProcessingImpl>(webrtc::Config());
auto apm = rtc::make_ref_counted<AudioProcessingImpl>(webrtc::Config());
ASSERT_EQ(apm->Initialize(), kNoErr);
ApmSubmoduleCreationOverrides overrides;
@ -716,8 +713,7 @@ TEST(ApmWithSubmodulesExcludedTest, ReinitializeTransientSuppressor) {
// Disable transient suppressor creation and run APM in ways that should trigger
// calls to the transient suppressor API.
TEST(ApmWithSubmodulesExcludedTest, ToggleTransientSuppressor) {
rtc::scoped_refptr<AudioProcessingImpl> apm =
new rtc::RefCountedObject<AudioProcessingImpl>(webrtc::Config());
auto apm = rtc::make_ref_counted<AudioProcessingImpl>(webrtc::Config());
ASSERT_EQ(apm->Initialize(), AudioProcessing::kNoError);
ApmSubmoduleCreationOverrides overrides;

View File

@ -18,8 +18,7 @@
namespace webrtc {
TEST(ResidualEchoDetectorTests, Echo) {
rtc::scoped_refptr<ResidualEchoDetector> echo_detector =
new rtc::RefCountedObject<ResidualEchoDetector>();
auto echo_detector = rtc::make_ref_counted<ResidualEchoDetector>();
echo_detector->SetReliabilityForTest(1.0f);
std::vector<float> ones(160, 1.f);
std::vector<float> zeros(160, 0.f);
@ -46,8 +45,7 @@ TEST(ResidualEchoDetectorTests, Echo) {
}
TEST(ResidualEchoDetectorTests, NoEcho) {
rtc::scoped_refptr<ResidualEchoDetector> echo_detector =
new rtc::RefCountedObject<ResidualEchoDetector>();
auto echo_detector = rtc::make_ref_counted<ResidualEchoDetector>();
echo_detector->SetReliabilityForTest(1.0f);
std::vector<float> ones(160, 1.f);
std::vector<float> zeros(160, 0.f);
@ -69,8 +67,7 @@ TEST(ResidualEchoDetectorTests, NoEcho) {
}
TEST(ResidualEchoDetectorTests, EchoWithRenderClockDrift) {
rtc::scoped_refptr<ResidualEchoDetector> echo_detector =
new rtc::RefCountedObject<ResidualEchoDetector>();
auto echo_detector = rtc::make_ref_counted<ResidualEchoDetector>();
echo_detector->SetReliabilityForTest(1.0f);
std::vector<float> ones(160, 1.f);
std::vector<float> zeros(160, 0.f);
@ -107,8 +104,7 @@ TEST(ResidualEchoDetectorTests, EchoWithRenderClockDrift) {
}
TEST(ResidualEchoDetectorTests, EchoWithCaptureClockDrift) {
rtc::scoped_refptr<ResidualEchoDetector> echo_detector =
new rtc::RefCountedObject<ResidualEchoDetector>();
auto echo_detector = rtc::make_ref_counted<ResidualEchoDetector>();
echo_detector->SetReliabilityForTest(1.0f);
std::vector<float> ones(160, 1.f);
std::vector<float> zeros(160, 0.f);

View File

@ -169,8 +169,7 @@ RTPSenderVideo::RTPSenderVideo(const Config& config)
absolute_capture_time_sender_(config.clock),
frame_transformer_delegate_(
config.frame_transformer
? new rtc::RefCountedObject<
RTPSenderVideoFrameTransformerDelegate>(
? rtc::make_ref_counted<RTPSenderVideoFrameTransformerDelegate>(
this,
config.frame_transformer,
rtp_sender_->SSRC(),

View File

@ -34,8 +34,7 @@ namespace webrtc {
namespace videocapturemodule {
rtc::scoped_refptr<VideoCaptureModule> VideoCaptureImpl::Create(
const char* deviceUniqueId) {
rtc::scoped_refptr<VideoCaptureModuleV4L2> implementation(
new rtc::RefCountedObject<VideoCaptureModuleV4L2>());
auto implementation = rtc::make_ref_counted<VideoCaptureModuleV4L2>();
if (implementation->Init(deviceUniqueId) != 0)
return nullptr;

View File

@ -27,8 +27,7 @@ rtc::scoped_refptr<VideoCaptureModule> VideoCaptureImpl::Create(
return nullptr;
// TODO(tommi): Use Media Foundation implementation for Vista and up.
rtc::scoped_refptr<VideoCaptureDS> capture(
new rtc::RefCountedObject<VideoCaptureDS>());
auto capture = rtc::make_ref_counted<VideoCaptureDS>();
if (capture->Init(device_id) != 0) {
return nullptr;
}

View File

@ -248,9 +248,8 @@ void MultiplexDecoderAdapter::MergeAlphaImages(
[yuv_buffer, alpha_buffer] {});
}
if (supports_augmenting_data_) {
merged_buffer = rtc::scoped_refptr<webrtc::AugmentedVideoFrameBuffer>(
new rtc::RefCountedObject<AugmentedVideoFrameBuffer>(
merged_buffer, std::move(augmenting_data), augmenting_data_length));
merged_buffer = rtc::make_ref_counted<AugmentedVideoFrameBuffer>(
merged_buffer, std::move(augmenting_data), augmenting_data_length);
}
VideoFrame merged_image = VideoFrame::Builder()

View File

@ -90,9 +90,9 @@ class TestMultiplexAdapter : public VideoCodecUnitTest,
for (int i = 0; i < 16; i++) {
data[i] = i;
}
rtc::scoped_refptr<AugmentedVideoFrameBuffer> augmented_video_frame_buffer =
new rtc::RefCountedObject<AugmentedVideoFrameBuffer>(
video_buffer, std::move(data), 16);
auto augmented_video_frame_buffer =
rtc::make_ref_counted<AugmentedVideoFrameBuffer>(video_buffer,
std::move(data), 16);
return std::make_unique<VideoFrame>(
VideoFrame::Builder()
.set_video_frame_buffer(augmented_video_frame_buffer)

View File

@ -74,13 +74,13 @@ class VideoCodecInitializerTest : public ::testing::Test {
config_.number_of_streams = num_spatial_streams;
VideoCodecVP8 vp8_settings = VideoEncoder::GetDefaultVp8Settings();
vp8_settings.numberOfTemporalLayers = num_temporal_streams;
config_.encoder_specific_settings = new rtc::RefCountedObject<
config_.encoder_specific_settings = rtc::make_ref_counted<
webrtc::VideoEncoderConfig::Vp8EncoderSpecificSettings>(vp8_settings);
} else if (type == VideoCodecType::kVideoCodecVP9) {
VideoCodecVP9 vp9_settings = VideoEncoder::GetDefaultVp9Settings();
vp9_settings.numberOfSpatialLayers = num_spatial_streams;
vp9_settings.numberOfTemporalLayers = num_temporal_streams;
config_.encoder_specific_settings = new rtc::RefCountedObject<
config_.encoder_specific_settings = rtc::make_ref_counted<
webrtc::VideoEncoderConfig::Vp9EncoderSpecificSettings>(vp9_settings);
} else if (type != VideoCodecType::kVideoCodecMultiplex) {
ADD_FAILURE() << "Unexpected codec type: " << type;

View File

@ -42,7 +42,7 @@ AudioRtpReceiver::AudioRtpReceiver(
bool is_unified_plan)
: worker_thread_(worker_thread),
id_(receiver_id),
source_(new rtc::RefCountedObject<RemoteAudioSource>(
source_(rtc::make_ref_counted<RemoteAudioSource>(
worker_thread,
is_unified_plan
? RemoteAudioSource::OnAudioChannelGoneAction::kSurvive
@ -55,7 +55,7 @@ AudioRtpReceiver::AudioRtpReceiver(
delay_(JitterBufferDelayProxy::Create(
rtc::Thread::Current(),
worker_thread_,
new rtc::RefCountedObject<JitterBufferDelay>(worker_thread))) {
rtc::make_ref_counted<JitterBufferDelay>(worker_thread))) {
RTC_DCHECK(worker_thread_);
RTC_DCHECK(track_->GetSource()->remote());
track_->RegisterObserver(this);

View File

@ -19,7 +19,7 @@ namespace webrtc {
rtc::scoped_refptr<AudioTrack> AudioTrack::Create(
const std::string& id,
const rtc::scoped_refptr<AudioSourceInterface>& source) {
return new rtc::RefCountedObject<AudioTrack>(id, source);
return rtc::make_ref_counted<AudioTrack>(id, source);
}
AudioTrack::AudioTrack(const std::string& label,

View File

@ -48,7 +48,7 @@ DtlsTransport::DtlsTransport(
: owner_thread_(rtc::Thread::Current()),
info_(DtlsTransportState::kNew),
internal_dtls_transport_(std::move(internal)),
ice_transport_(new rtc::RefCountedObject<IceTransportWithPointer>(
ice_transport_(rtc::make_ref_counted<IceTransportWithPointer>(
internal_dtls_transport_->ice_transport())) {
RTC_DCHECK(internal_dtls_transport_.get());
internal_dtls_transport_->SubscribeDtlsState(

View File

@ -63,7 +63,7 @@ class DtlsTransportTest : public ::testing::Test {
}
cricket_transport->SetSslCipherSuite(kNonsenseCipherSuite);
transport_ =
new rtc::RefCountedObject<DtlsTransport>(std::move(cricket_transport));
rtc::make_ref_counted<DtlsTransport>(std::move(cricket_transport));
}
void CompleteDtlsHandshake() {
@ -86,8 +86,8 @@ class DtlsTransportTest : public ::testing::Test {
TEST_F(DtlsTransportTest, CreateClearDelete) {
auto cricket_transport = std::make_unique<FakeDtlsTransport>(
"audio", cricket::ICE_CANDIDATE_COMPONENT_RTP);
rtc::scoped_refptr<DtlsTransport> webrtc_transport =
new rtc::RefCountedObject<DtlsTransport>(std::move(cricket_transport));
auto webrtc_transport =
rtc::make_ref_counted<DtlsTransport>(std::move(cricket_transport));
ASSERT_TRUE(webrtc_transport->internal());
ASSERT_EQ(DtlsTransportState::kNew, webrtc_transport->Information().state());
webrtc_transport->Clear();

View File

@ -65,9 +65,7 @@ rtc::scoped_refptr<DtmfSender> DtmfSender::Create(
if (!signaling_thread) {
return nullptr;
}
rtc::scoped_refptr<DtmfSender> dtmf_sender(
new rtc::RefCountedObject<DtmfSender>(signaling_thread, provider));
return dtmf_sender;
return rtc::make_ref_counted<DtmfSender>(signaling_thread, provider);
}
DtmfSender::DtmfSender(rtc::Thread* signaling_thread,

View File

@ -28,9 +28,8 @@ class IceTransportTest : public ::testing::Test {};
TEST_F(IceTransportTest, CreateNonSelfDeletingTransport) {
auto cricket_transport =
std::make_unique<cricket::FakeIceTransport>("name", 0, nullptr);
rtc::scoped_refptr<IceTransportWithPointer> ice_transport =
new rtc::RefCountedObject<IceTransportWithPointer>(
cricket_transport.get());
auto ice_transport =
rtc::make_ref_counted<IceTransportWithPointer>(cricket_transport.get());
EXPECT_EQ(ice_transport->internal(), cricket_transport.get());
ice_transport->Clear();
EXPECT_NE(ice_transport->internal(), cricket_transport.get());

View File

@ -31,8 +31,8 @@ namespace webrtc {
class JitterBufferDelayTest : public ::testing::Test {
public:
JitterBufferDelayTest()
: delay_(new rtc::RefCountedObject<JitterBufferDelay>(
rtc::Thread::Current())) {}
: delay_(
rtc::make_ref_counted<JitterBufferDelay>(rtc::Thread::Current())) {}
protected:
rtc::scoped_refptr<JitterBufferDelayInterface> delay_;

View File

@ -88,21 +88,20 @@ JsepTransport::JsepTransport(
unencrypted_rtp_transport_(std::move(unencrypted_rtp_transport)),
sdes_transport_(std::move(sdes_transport)),
dtls_srtp_transport_(std::move(dtls_srtp_transport)),
rtp_dtls_transport_(
rtp_dtls_transport ? new rtc::RefCountedObject<webrtc::DtlsTransport>(
std::move(rtp_dtls_transport))
: nullptr),
rtcp_dtls_transport_(
rtcp_dtls_transport
? new rtc::RefCountedObject<webrtc::DtlsTransport>(
std::move(rtcp_dtls_transport))
: nullptr),
rtp_dtls_transport_(rtp_dtls_transport
? rtc::make_ref_counted<webrtc::DtlsTransport>(
std::move(rtp_dtls_transport))
: nullptr),
rtcp_dtls_transport_(rtcp_dtls_transport
? rtc::make_ref_counted<webrtc::DtlsTransport>(
std::move(rtcp_dtls_transport))
: nullptr),
sctp_data_channel_transport_(
sctp_transport ? std::make_unique<webrtc::SctpDataChannelTransport>(
sctp_transport.get())
: nullptr),
sctp_transport_(sctp_transport
? new rtc::RefCountedObject<webrtc::SctpTransport>(
? rtc::make_ref_counted<webrtc::SctpTransport>(
std::move(sctp_transport))
: nullptr) {
RTC_DCHECK(ice_transport_);

View File

@ -50,7 +50,7 @@ class FakeIceTransportFactory : public webrtc::IceTransportFactory {
const std::string& transport_name,
int component,
IceTransportInit init) override {
return new rtc::RefCountedObject<cricket::FakeIceTransportWrapper>(
return rtc::make_ref_counted<cricket::FakeIceTransportWrapper>(
std::make_unique<cricket::FakeIceTransport>(transport_name, component));
}
};

View File

@ -48,8 +48,7 @@ rtc::scoped_refptr<webrtc::IceTransportInterface> CreateIceTransport(
return nullptr;
}
return new rtc::RefCountedObject<FakeIceTransportWrapper>(
std::move(internal));
return rtc::make_ref_counted<FakeIceTransportWrapper>(std::move(internal));
}
class JsepTransport2Test : public ::testing::Test, public sigslot::has_slots<> {

View File

@ -18,8 +18,7 @@ namespace webrtc {
rtc::scoped_refptr<LocalAudioSource> LocalAudioSource::Create(
const cricket::AudioOptions* audio_options) {
rtc::scoped_refptr<LocalAudioSource> source(
new rtc::RefCountedObject<LocalAudioSource>());
auto source = rtc::make_ref_counted<LocalAudioSource>();
source->Initialize(audio_options);
return source;
}

View File

@ -31,9 +31,7 @@ static typename V::iterator FindTrack(V* vector, const std::string& track_id) {
}
rtc::scoped_refptr<MediaStream> MediaStream::Create(const std::string& id) {
rtc::RefCountedObject<MediaStream>* stream =
new rtc::RefCountedObject<MediaStream>(id);
return stream;
return rtc::make_ref_counted<MediaStream>(id);
}
MediaStream::MediaStream(const std::string& id) : id_(id) {}

View File

@ -465,10 +465,9 @@ RTCErrorOr<rtc::scoped_refptr<PeerConnection>> PeerConnection::Create(
}
// The PeerConnection constructor consumes some, but not all, dependencies.
rtc::scoped_refptr<PeerConnection> pc(
new rtc::RefCountedObject<PeerConnection>(
context, options, is_unified_plan, std::move(event_log),
std::move(call), dependencies, dtls_enabled));
auto pc = rtc::make_ref_counted<PeerConnection>(
context, options, is_unified_plan, std::move(event_log), std::move(call),
dependencies, dtls_enabled);
RTCError init_error = pc->Initialize(configuration, std::move(dependencies));
if (!init_error.ok()) {
RTC_LOG(LS_ERROR) << "PeerConnection initialization failed";

View File

@ -50,7 +50,7 @@ TrackWithPeriodicSource CreateTrackWithPeriodicSource(
periodic_track_source_config.frame_interval_ms = 100;
periodic_track_source_config.timestamp_offset_ms = rtc::TimeMillis();
rtc::scoped_refptr<FakePeriodicVideoTrackSource> periodic_track_source =
new rtc::RefCountedObject<FakePeriodicVideoTrackSource>(
rtc::make_ref_counted<FakePeriodicVideoTrackSource>(
periodic_track_source_config, /* remote */ false);
TrackWithPeriodicSource track_with_source;
track_with_source.track =
@ -83,7 +83,7 @@ class PeerConnectionAdaptationIntegrationTest : public ::testing::Test {
rtc::scoped_refptr<PeerConnectionTestWrapper> CreatePcWrapper(
const char* name) {
rtc::scoped_refptr<PeerConnectionTestWrapper> pc_wrapper =
new rtc::RefCountedObject<PeerConnectionTestWrapper>(
rtc::make_ref_counted<PeerConnectionTestWrapper>(
name, network_thread_.get(), worker_thread_.get());
PeerConnectionInterface::RTCConfiguration config;
config.sdp_semantics = SdpSemantics::kUnifiedPlan;

View File

@ -631,7 +631,7 @@ TEST_P(PeerConnectionCryptoDtlsCertGenTest, TestCertificateGeneration) {
observers;
for (size_t i = 0; i < concurrent_calls_; i++) {
rtc::scoped_refptr<MockCreateSessionDescriptionObserver> observer =
new rtc::RefCountedObject<MockCreateSessionDescriptionObserver>();
rtc::make_ref_counted<MockCreateSessionDescriptionObserver>();
observers.push_back(observer);
if (sdp_type_ == SdpType::kOffer) {
pc->pc()->CreateOffer(observer,

View File

@ -84,8 +84,7 @@ rtc::scoped_refptr<PeerConnectionFactory> PeerConnectionFactory::Create(
if (!context) {
return nullptr;
}
return new rtc::RefCountedObject<PeerConnectionFactory>(context,
&dependencies);
return rtc::make_ref_counted<PeerConnectionFactory>(context, &dependencies);
}
PeerConnectionFactory::PeerConnectionFactory(

View File

@ -768,8 +768,8 @@ TEST_P(PeerConnectionIceTest,
ASSERT_TRUE(callee->SetRemoteDescription(caller->CreateOfferAndSetAsLocal()));
// Chain an operation that will block AddIceCandidate() from executing.
rtc::scoped_refptr<MockCreateSessionDescriptionObserver> answer_observer(
new rtc::RefCountedObject<MockCreateSessionDescriptionObserver>());
auto answer_observer =
rtc::make_ref_counted<MockCreateSessionDescriptionObserver>();
callee->pc()->CreateAnswer(answer_observer, RTCOfferAnswerOptions());
auto jsep_candidate =
@ -816,8 +816,8 @@ TEST_P(PeerConnectionIceTest,
ASSERT_TRUE(callee->SetRemoteDescription(caller->CreateOfferAndSetAsLocal()));
// Chain an operation that will block AddIceCandidate() from executing.
rtc::scoped_refptr<MockCreateSessionDescriptionObserver> answer_observer(
new rtc::RefCountedObject<MockCreateSessionDescriptionObserver>());
auto answer_observer =
rtc::make_ref_counted<MockCreateSessionDescriptionObserver>();
callee->pc()->CreateAnswer(answer_observer, RTCOfferAnswerOptions());
auto jsep_candidate =

View File

@ -2833,8 +2833,7 @@ TEST_P(PeerConnectionIntegrationTest, IceTransportFactoryUsedForConnections) {
/*reset_decoder_factory=*/false);
ASSERT_TRUE(wrapper);
wrapper->CreateDataChannel();
rtc::scoped_refptr<MockSetSessionDescriptionObserver> observer(
new rtc::RefCountedObject<MockSetSessionDescriptionObserver>());
auto observer = rtc::make_ref_counted<MockSetSessionDescriptionObserver>();
wrapper->pc()->SetLocalDescription(observer,
wrapper->CreateOfferAndWait().release());
}
@ -3319,8 +3318,7 @@ TEST_F(PeerConnectionIntegrationTestUnifiedPlan,
SetSignalIceCandidates(false); // Workaround candidate outrace sdp.
caller()->AddVideoTrack();
callee()->AddVideoTrack();
rtc::scoped_refptr<MockSetSessionDescriptionObserver> observer(
new rtc::RefCountedObject<MockSetSessionDescriptionObserver>());
auto observer = rtc::make_ref_counted<MockSetSessionDescriptionObserver>();
callee()->pc()->SetLocalDescription(observer,
callee()->CreateOfferAndWait().release());
EXPECT_TRUE_WAIT(observer->called(), kDefaultTimeout);
@ -3337,15 +3335,15 @@ TEST_F(PeerConnectionIntegrationTestUnifiedPlan,
ASSERT_TRUE(CreatePeerConnectionWrappersWithConfig(config, config));
rtc::scoped_refptr<MockSetSessionDescriptionObserver> sld_observer(
new rtc::RefCountedObject<MockSetSessionDescriptionObserver>());
auto sld_observer =
rtc::make_ref_counted<MockSetSessionDescriptionObserver>();
callee()->pc()->SetLocalDescription(sld_observer,
callee()->CreateOfferAndWait().release());
EXPECT_TRUE_WAIT(sld_observer->called(), kDefaultTimeout);
EXPECT_EQ(sld_observer->error(), "");
rtc::scoped_refptr<MockSetSessionDescriptionObserver> srd_observer(
new rtc::RefCountedObject<MockSetSessionDescriptionObserver>());
auto srd_observer =
rtc::make_ref_counted<MockSetSessionDescriptionObserver>();
callee()->pc()->SetRemoteDescription(
srd_observer, caller()->CreateOfferAndWait().release());
EXPECT_TRUE_WAIT(srd_observer->called(), kDefaultTimeout);

View File

@ -661,7 +661,7 @@ class PeerConnectionFactoryForTest : public webrtc::PeerConnectionFactory {
dependencies.event_log_factory = std::make_unique<RtcEventLogFactory>(
dependencies.task_queue_factory.get());
return new rtc::RefCountedObject<PeerConnectionFactoryForTest>(
return rtc::make_ref_counted<PeerConnectionFactoryForTest>(
std::move(dependencies));
}
@ -879,8 +879,8 @@ class PeerConnectionInterfaceBaseTest : public ::testing::Test {
bool DoCreateOfferAnswer(std::unique_ptr<SessionDescriptionInterface>* desc,
const RTCOfferAnswerOptions* options,
bool offer) {
rtc::scoped_refptr<MockCreateSessionDescriptionObserver> observer(
new rtc::RefCountedObject<MockCreateSessionDescriptionObserver>());
auto observer =
rtc::make_ref_counted<MockCreateSessionDescriptionObserver>();
if (offer) {
pc_->CreateOffer(observer, options ? *options : RTCOfferAnswerOptions());
} else {
@ -904,8 +904,7 @@ class PeerConnectionInterfaceBaseTest : public ::testing::Test {
bool DoSetSessionDescription(
std::unique_ptr<SessionDescriptionInterface> desc,
bool local) {
rtc::scoped_refptr<MockSetSessionDescriptionObserver> observer(
new rtc::RefCountedObject<MockSetSessionDescriptionObserver>());
auto observer = rtc::make_ref_counted<MockSetSessionDescriptionObserver>();
if (local) {
pc_->SetLocalDescription(observer, desc.release());
} else {
@ -931,8 +930,7 @@ class PeerConnectionInterfaceBaseTest : public ::testing::Test {
// It does not verify the values in the StatReports since a RTCP packet might
// be required.
bool DoGetStats(MediaStreamTrackInterface* track) {
rtc::scoped_refptr<MockStatsObserver> observer(
new rtc::RefCountedObject<MockStatsObserver>());
auto observer = rtc::make_ref_counted<MockStatsObserver>();
if (!pc_->GetStats(observer, track,
PeerConnectionInterface::kStatsOutputLevelStandard))
return false;
@ -942,8 +940,8 @@ class PeerConnectionInterfaceBaseTest : public ::testing::Test {
// Call the standards-compliant GetStats function.
bool DoGetRTCStats() {
rtc::scoped_refptr<webrtc::MockRTCStatsCollectorCallback> callback(
new rtc::RefCountedObject<webrtc::MockRTCStatsCollectorCallback>());
auto callback =
rtc::make_ref_counted<webrtc::MockRTCStatsCollectorCallback>();
pc_->GetStats(callback);
EXPECT_TRUE_WAIT(callback->called(), kTimeout);
return callback->called();
@ -1198,8 +1196,8 @@ class PeerConnectionInterfaceBaseTest : public ::testing::Test {
std::unique_ptr<SessionDescriptionInterface> CreateOfferWithOptions(
const RTCOfferAnswerOptions& offer_answer_options) {
RTC_DCHECK(pc_);
rtc::scoped_refptr<MockCreateSessionDescriptionObserver> observer(
new rtc::RefCountedObject<MockCreateSessionDescriptionObserver>());
auto observer =
rtc::make_ref_counted<MockCreateSessionDescriptionObserver>();
pc_->CreateOffer(observer, offer_answer_options);
EXPECT_EQ_WAIT(true, observer->called(), kTimeout);
return observer->MoveDescription();

View File

@ -120,7 +120,7 @@ class PeerConnectionWrapperForRampUpTest : public PeerConnectionWrapper {
FrameGeneratorCapturerVideoTrackSource::Config config,
Clock* clock) {
video_track_sources_.emplace_back(
new rtc::RefCountedObject<FrameGeneratorCapturerVideoTrackSource>(
rtc::make_ref_counted<FrameGeneratorCapturerVideoTrackSource>(
config, clock, /*is_screencast=*/false));
video_track_sources_.back()->Start();
return rtc::scoped_refptr<VideoTrackInterface>(

View File

@ -919,7 +919,7 @@ TEST_P(PeerConnectionRtpTest,
auto callee = CreatePeerConnection();
rtc::scoped_refptr<webrtc::MockSetSessionDescriptionObserver> observer =
new rtc::RefCountedObject<webrtc::MockSetSessionDescriptionObserver>();
rtc::make_ref_counted<webrtc::MockSetSessionDescriptionObserver>();
auto offer = caller->CreateOfferAndSetAsLocal();
callee->pc()->SetRemoteDescription(observer, offer.release());

View File

@ -537,8 +537,7 @@ TEST_P(PeerConnectionSignalingTest, CreateOffersAndShutdown) {
rtc::scoped_refptr<MockCreateSessionDescriptionObserver> observers[100];
for (auto& observer : observers) {
observer =
new rtc::RefCountedObject<MockCreateSessionDescriptionObserver>();
observer = rtc::make_ref_counted<MockCreateSessionDescriptionObserver>();
caller->pc()->CreateOffer(observer, options);
}
@ -559,8 +558,7 @@ TEST_P(PeerConnectionSignalingTest, CreateOffersAndShutdown) {
// the WebRtcSessionDescriptionFactory is responsible for it.
TEST_P(PeerConnectionSignalingTest, CloseCreateOfferAndShutdown) {
auto caller = CreatePeerConnection();
rtc::scoped_refptr<MockCreateSessionDescriptionObserver> observer =
new rtc::RefCountedObject<MockCreateSessionDescriptionObserver>();
auto observer = rtc::make_ref_counted<MockCreateSessionDescriptionObserver>();
caller->pc()->Close();
caller->pc()->CreateOffer(observer, RTCOfferAnswerOptions());
caller.reset(nullptr);
@ -687,8 +685,8 @@ TEST_P(PeerConnectionSignalingTest, CreateOfferBlocksSetRemoteDescription) {
auto offer = caller->CreateOffer(RTCOfferAnswerOptions());
EXPECT_EQ(0u, callee->pc()->GetReceivers().size());
rtc::scoped_refptr<MockCreateSessionDescriptionObserver> offer_observer(
new rtc::RefCountedObject<MockCreateSessionDescriptionObserver>());
auto offer_observer =
rtc::make_ref_counted<MockCreateSessionDescriptionObserver>();
// Synchronously invoke CreateOffer() and SetRemoteDescription(). The
// SetRemoteDescription() operation should be chained to be executed
// asynchronously, when CreateOffer() completes.
@ -985,7 +983,7 @@ TEST_F(PeerConnectionSignalingUnifiedPlanTest,
// waiting for it would not ensure synchronicity.
RTC_DCHECK(!caller->pc()->GetTransceivers()[0]->mid().has_value());
caller->pc()->SetLocalDescription(
new rtc::RefCountedObject<MockSetSessionDescriptionObserver>(),
rtc::make_ref_counted<MockSetSessionDescriptionObserver>(),
offer.release());
EXPECT_TRUE(caller->pc()->GetTransceivers()[0]->mid().has_value());
}
@ -1013,9 +1011,8 @@ TEST_F(PeerConnectionSignalingUnifiedPlanTest,
// This offer will cause transceiver mids to get assigned.
auto offer = caller->CreateOffer(RTCOfferAnswerOptions());
rtc::scoped_refptr<ExecuteFunctionOnCreateSessionDescriptionObserver>
offer_observer(new rtc::RefCountedObject<
ExecuteFunctionOnCreateSessionDescriptionObserver>(
auto offer_observer =
rtc::make_ref_counted<ExecuteFunctionOnCreateSessionDescriptionObserver>(
[pc = caller->pc()](SessionDescriptionInterface* desc) {
// By not waiting for the observer's callback we can verify that the
// operation executed immediately.
@ -1024,7 +1021,7 @@ TEST_F(PeerConnectionSignalingUnifiedPlanTest,
new rtc::RefCountedObject<MockSetSessionDescriptionObserver>(),
desc);
EXPECT_TRUE(pc->GetTransceivers()[0]->mid().has_value());
}));
});
caller->pc()->CreateOffer(offer_observer, RTCOfferAnswerOptions());
EXPECT_TRUE_WAIT(offer_observer->was_called(), kWaitTimeout);
}
@ -1111,8 +1108,7 @@ TEST_F(PeerConnectionSignalingUnifiedPlanTest,
caller->AddTransceiver(cricket::MEDIA_TYPE_AUDIO, RtpTransceiverInit());
EXPECT_TRUE(caller->observer()->has_negotiation_needed_event());
rtc::scoped_refptr<MockCreateSessionDescriptionObserver> observer =
new rtc::RefCountedObject<MockCreateSessionDescriptionObserver>();
auto observer = rtc::make_ref_counted<MockCreateSessionDescriptionObserver>();
caller->pc()->CreateOffer(observer, RTCOfferAnswerOptions());
// For this test to work, the operation has to be pending, i.e. the observer
// has not yet been invoked.

View File

@ -136,8 +136,7 @@ PeerConnectionWrapper::CreateRollback() {
std::unique_ptr<SessionDescriptionInterface> PeerConnectionWrapper::CreateSdp(
rtc::FunctionView<void(CreateSessionDescriptionObserver*)> fn,
std::string* error_out) {
rtc::scoped_refptr<MockCreateSessionDescriptionObserver> observer(
new rtc::RefCountedObject<MockCreateSessionDescriptionObserver>());
auto observer = rtc::make_ref_counted<MockCreateSessionDescriptionObserver>();
fn(observer);
EXPECT_EQ_WAIT(true, observer->called(), kDefaultTimeout);
if (error_out && !observer->result()) {
@ -182,8 +181,7 @@ bool PeerConnectionWrapper::SetRemoteDescription(
bool PeerConnectionWrapper::SetSdp(
rtc::FunctionView<void(SetSessionDescriptionObserver*)> fn,
std::string* error_out) {
rtc::scoped_refptr<MockSetSessionDescriptionObserver> observer(
new rtc::RefCountedObject<MockSetSessionDescriptionObserver>());
auto observer = rtc::make_ref_counted<MockSetSessionDescriptionObserver>();
fn(observer);
EXPECT_EQ_WAIT(true, observer->called(), kDefaultTimeout);
if (error_out && !observer->result()) {
@ -326,8 +324,7 @@ bool PeerConnectionWrapper::IsIceConnected() {
rtc::scoped_refptr<const webrtc::RTCStatsReport>
PeerConnectionWrapper::GetStats() {
rtc::scoped_refptr<webrtc::MockRTCStatsCollectorCallback> callback(
new rtc::RefCountedObject<webrtc::MockRTCStatsCollectorCallback>());
auto callback = rtc::make_ref_counted<MockRTCStatsCollectorCallback>();
pc()->GetStats(callback);
EXPECT_TRUE_WAIT(callback->called(), kDefaultTimeout);
return callback->report();

View File

@ -43,7 +43,7 @@ class FakeInterface : public rtc::RefCountInterface {
class Fake : public FakeInterface {
public:
static rtc::scoped_refptr<Fake> Create() {
return new rtc::RefCountedObject<Fake>();
return rtc::make_ref_counted<Fake>();
}
// Used to verify destructor is called on the correct thread.
MOCK_METHOD(void, Destroy, ());

View File

@ -1097,8 +1097,7 @@ RTCStatsCollector::RequestInfo::RequestInfo(
rtc::scoped_refptr<RTCStatsCollector> RTCStatsCollector::Create(
PeerConnectionInternal* pc,
int64_t cache_lifetime_us) {
return rtc::scoped_refptr<RTCStatsCollector>(
new rtc::RefCountedObject<RTCStatsCollector>(pc, cache_lifetime_us));
return rtc::make_ref_counted<RTCStatsCollector>(pc, cache_lifetime_us);
}
RTCStatsCollector::RTCStatsCollector(PeerConnectionInternal* pc,

View File

@ -114,9 +114,9 @@ class RTCStatsIntegrationTest : public ::testing::Test {
RTC_CHECK(network_thread_->Start());
RTC_CHECK(worker_thread_->Start());
caller_ = new rtc::RefCountedObject<PeerConnectionTestWrapper>(
caller_ = rtc::make_ref_counted<PeerConnectionTestWrapper>(
"caller", network_thread_.get(), worker_thread_.get());
callee_ = new rtc::RefCountedObject<PeerConnectionTestWrapper>(
callee_ = rtc::make_ref_counted<PeerConnectionTestWrapper>(
"callee", network_thread_.get(), worker_thread_.get());
}

View File

@ -424,9 +424,8 @@ rtc::scoped_refptr<AudioRtpSender> AudioRtpSender::Create(
const std::string& id,
StatsCollectorInterface* stats,
SetStreamsObserver* set_streams_observer) {
return rtc::scoped_refptr<AudioRtpSender>(
new rtc::RefCountedObject<AudioRtpSender>(worker_thread, id, stats,
set_streams_observer));
return rtc::make_ref_counted<AudioRtpSender>(worker_thread, id, stats,
set_streams_observer);
}
AudioRtpSender::AudioRtpSender(rtc::Thread* worker_thread,
@ -571,9 +570,8 @@ rtc::scoped_refptr<VideoRtpSender> VideoRtpSender::Create(
rtc::Thread* worker_thread,
const std::string& id,
SetStreamsObserver* set_streams_observer) {
return rtc::scoped_refptr<VideoRtpSender>(
new rtc::RefCountedObject<VideoRtpSender>(worker_thread, id,
set_streams_observer));
return rtc::make_ref_counted<VideoRtpSender>(worker_thread, id,
set_streams_observer);
}
VideoRtpSender::VideoRtpSender(rtc::Thread* worker_thread,

View File

@ -73,8 +73,8 @@ TEST(GoogCcPeerScenarioTest, MAYBE_NoBweChangeFromVideoUnmute) {
ASSERT_EQ(num_video_streams, 1); // Exactly 1 video stream.
auto get_bwe = [&] {
rtc::scoped_refptr<webrtc::MockRTCStatsCollectorCallback> callback(
new rtc::RefCountedObject<webrtc::MockRTCStatsCollectorCallback>());
auto callback =
rtc::make_ref_counted<webrtc::MockRTCStatsCollectorCallback>();
caller->pc()->GetStats(callback);
s.net()->time_controller()->Wait([&] { return callback->called(); });
auto stats =

View File

@ -135,9 +135,8 @@ rtc::scoped_refptr<SctpDataChannel> SctpDataChannel::Create(
const InternalDataChannelInit& config,
rtc::Thread* signaling_thread,
rtc::Thread* network_thread) {
rtc::scoped_refptr<SctpDataChannel> channel(
new rtc::RefCountedObject<SctpDataChannel>(
config, provider, label, signaling_thread, network_thread));
auto channel = rtc::make_ref_counted<SctpDataChannel>(
config, provider, label, signaling_thread, network_thread);
if (!channel->Init()) {
return nullptr;
}

View File

@ -112,8 +112,8 @@ class SctpTransportTest : public ::testing::Test {
void CreateTransport() {
auto cricket_sctp_transport =
absl::WrapUnique(new FakeCricketSctpTransport());
transport_ = new rtc::RefCountedObject<SctpTransport>(
std::move(cricket_sctp_transport));
transport_ =
rtc::make_ref_counted<SctpTransport>(std::move(cricket_sctp_transport));
}
void AddDtlsTransport() {
@ -121,7 +121,7 @@ class SctpTransportTest : public ::testing::Test {
std::make_unique<FakeDtlsTransport>(
"audio", cricket::ICE_CANDIDATE_COMPONENT_RTP);
dtls_transport_ =
new rtc::RefCountedObject<DtlsTransport>(std::move(cricket_transport));
rtc::make_ref_counted<DtlsTransport>(std::move(cricket_transport));
transport_->SetDtlsTransport(dtls_transport_);
}
@ -147,7 +147,7 @@ TEST(SctpTransportSimpleTest, CreateClearDelete) {
std::unique_ptr<cricket::SctpTransportInternal> fake_cricket_sctp_transport =
absl::WrapUnique(new FakeCricketSctpTransport());
rtc::scoped_refptr<SctpTransport> sctp_transport =
new rtc::RefCountedObject<SctpTransport>(
rtc::make_ref_counted<SctpTransport>(
std::move(fake_cricket_sctp_transport));
ASSERT_TRUE(sctp_transport->internal());
ASSERT_EQ(SctpTransportState::kNew, sctp_transport->Information().state());

View File

@ -96,7 +96,7 @@ class FakeAudioTrack : public MediaStreamTrack<AudioTrackInterface> {
public:
explicit FakeAudioTrack(const std::string& id)
: MediaStreamTrack<AudioTrackInterface>(id),
processor_(new rtc::RefCountedObject<FakeAudioProcessor>()) {}
processor_(rtc::make_ref_counted<FakeAudioProcessor>()) {}
std::string kind() const override { return "audio"; }
AudioSourceInterface* GetSource() const override { return NULL; }
void AddSink(AudioTrackSinkInterface* sink) override {}
@ -134,8 +134,7 @@ class FakeAudioTrackWithInitValue
public:
explicit FakeAudioTrackWithInitValue(const std::string& id)
: MediaStreamTrack<AudioTrackInterface>(id),
processor_(
new rtc::RefCountedObject<FakeAudioProcessorWithInitValue>()) {}
processor_(rtc::make_ref_counted<FakeAudioProcessorWithInitValue>()) {}
std::string kind() const override { return "audio"; }
AudioSourceInterface* GetSource() const override { return NULL; }
void AddSink(AudioTrackSinkInterface* sink) override {}
@ -600,7 +599,7 @@ class StatsCollectorForTest : public StatsCollector {
class StatsCollectorTest : public ::testing::Test {
protected:
rtc::scoped_refptr<FakePeerConnectionForStats> CreatePeerConnection() {
return new rtc::RefCountedObject<FakePeerConnectionForStats>();
return rtc::make_ref_counted<FakePeerConnectionForStats>();
}
std::unique_ptr<StatsCollectorForTest> CreateStatsCollector(
@ -738,8 +737,7 @@ class StatsCollectorTest : public ::testing::Test {
static rtc::scoped_refptr<MockRtpSenderInternal> CreateMockSender(
rtc::scoped_refptr<MediaStreamTrackInterface> track,
uint32_t ssrc) {
rtc::scoped_refptr<MockRtpSenderInternal> sender(
new rtc::RefCountedObject<MockRtpSenderInternal>());
auto sender = rtc::make_ref_counted<MockRtpSenderInternal>();
EXPECT_CALL(*sender, track()).WillRepeatedly(Return(track));
EXPECT_CALL(*sender, ssrc()).WillRepeatedly(Return(ssrc));
EXPECT_CALL(*sender, media_type())
@ -753,8 +751,7 @@ static rtc::scoped_refptr<MockRtpSenderInternal> CreateMockSender(
static rtc::scoped_refptr<MockRtpReceiverInternal> CreateMockReceiver(
rtc::scoped_refptr<MediaStreamTrackInterface> track,
uint32_t ssrc) {
rtc::scoped_refptr<MockRtpReceiverInternal> receiver(
new rtc::RefCountedObject<MockRtpReceiverInternal>());
auto receiver = rtc::make_ref_counted<MockRtpReceiverInternal>();
EXPECT_CALL(*receiver, track()).WillRepeatedly(Return(track));
EXPECT_CALL(*receiver, ssrc()).WillRepeatedly(Return(ssrc));
EXPECT_CALL(*receiver, media_type())
@ -808,7 +805,7 @@ class StatsCollectorTrackTest : public StatsCollectorTest,
rtc::scoped_refptr<RtpSenderInterface> AddOutgoingAudioTrack(
FakePeerConnectionForStats* pc,
StatsCollectorForTest* stats) {
audio_track_ = new rtc::RefCountedObject<FakeAudioTrack>(kLocalTrackId);
audio_track_ = rtc::make_ref_counted<FakeAudioTrack>(kLocalTrackId);
if (GetParam()) {
if (!stream_)
stream_ = MediaStream::Create("streamid");
@ -823,7 +820,7 @@ class StatsCollectorTrackTest : public StatsCollectorTest,
// Adds a incoming audio track with a given SSRC into the stats.
void AddIncomingAudioTrack(FakePeerConnectionForStats* pc,
StatsCollectorForTest* stats) {
audio_track_ = new rtc::RefCountedObject<FakeAudioTrack>(kRemoteTrackId);
audio_track_ = rtc::make_ref_counted<FakeAudioTrack>(kRemoteTrackId);
if (GetParam()) {
if (stream_ == NULL)
stream_ = MediaStream::Create("streamid");
@ -1483,8 +1480,8 @@ TEST_P(StatsCollectorTrackTest, FilterOutNegativeInitialValues) {
// Create a local stream with a local audio track and adds it to the stats.
stream_ = MediaStream::Create("streamid");
rtc::scoped_refptr<FakeAudioTrackWithInitValue> local_track(
new rtc::RefCountedObject<FakeAudioTrackWithInitValue>(kLocalTrackId));
auto local_track =
rtc::make_ref_counted<FakeAudioTrackWithInitValue>(kLocalTrackId);
stream_->AddTrack(local_track);
pc->AddSender(CreateMockSender(local_track, kSsrcOfTrack));
if (GetParam()) {
@ -1495,8 +1492,8 @@ TEST_P(StatsCollectorTrackTest, FilterOutNegativeInitialValues) {
// Create a remote stream with a remote audio track and adds it to the stats.
rtc::scoped_refptr<MediaStream> remote_stream(
MediaStream::Create("remotestreamid"));
rtc::scoped_refptr<FakeAudioTrackWithInitValue> remote_track(
new rtc::RefCountedObject<FakeAudioTrackWithInitValue>(kRemoteTrackId));
auto remote_track =
rtc::make_ref_counted<FakeAudioTrackWithInitValue>(kRemoteTrackId);
remote_stream->AddTrack(remote_track);
pc->AddReceiver(CreateMockReceiver(remote_track, kSsrcOfTrack));
if (GetParam()) {
@ -1665,8 +1662,7 @@ TEST_P(StatsCollectorTrackTest, LocalAndRemoteTracksWithSameSsrc) {
// Create a remote stream with a remote audio track and adds it to the stats.
rtc::scoped_refptr<MediaStream> remote_stream(
MediaStream::Create("remotestreamid"));
rtc::scoped_refptr<FakeAudioTrack> remote_track(
new rtc::RefCountedObject<FakeAudioTrack>(kRemoteTrackId));
auto remote_track = rtc::make_ref_counted<FakeAudioTrack>(kRemoteTrackId);
pc->AddReceiver(CreateMockReceiver(remote_track, kSsrcOfTrack));
remote_stream->AddTrack(remote_track);
stats->AddStream(remote_stream);
@ -1755,8 +1751,7 @@ TEST_P(StatsCollectorTrackTest, TwoLocalTracksWithSameSsrc) {
// Create a new audio track and adds it to the stream and stats.
static const std::string kNewTrackId = "new_track_id";
rtc::scoped_refptr<FakeAudioTrack> new_audio_track(
new rtc::RefCountedObject<FakeAudioTrack>(kNewTrackId));
auto new_audio_track = rtc::make_ref_counted<FakeAudioTrack>(kNewTrackId);
pc->AddSender(CreateMockSender(new_audio_track, kSsrcOfTrack));
stream_->AddTrack(new_audio_track);
@ -1785,8 +1780,8 @@ TEST_P(StatsCollectorTrackTest, TwoLocalSendersWithSameTrack) {
auto pc = CreatePeerConnection();
auto stats = CreateStatsCollector(pc);
rtc::scoped_refptr<FakeAudioTrackWithInitValue> local_track(
new rtc::RefCountedObject<FakeAudioTrackWithInitValue>(kLocalTrackId));
auto local_track =
rtc::make_ref_counted<FakeAudioTrackWithInitValue>(kLocalTrackId);
pc->AddSender(CreateMockSender(local_track, kFirstSsrc));
stats->AddLocalAudioTrack(local_track.get(), kFirstSsrc);
pc->AddSender(CreateMockSender(local_track, kSecondSsrc));

View File

@ -22,16 +22,12 @@ namespace webrtc {
class StreamCollection : public StreamCollectionInterface {
public:
static rtc::scoped_refptr<StreamCollection> Create() {
rtc::RefCountedObject<StreamCollection>* implementation =
new rtc::RefCountedObject<StreamCollection>();
return implementation;
return rtc::make_ref_counted<StreamCollection>();
}
static rtc::scoped_refptr<StreamCollection> Create(
StreamCollection* streams) {
rtc::RefCountedObject<StreamCollection>* implementation =
new rtc::RefCountedObject<StreamCollection>(streams);
return implementation;
return rtc::make_ref_counted<StreamCollection>(streams);
}
virtual size_t count() { return media_streams_.size(); }

View File

@ -58,8 +58,7 @@ FakeAudioCaptureModule::~FakeAudioCaptureModule() {
}
rtc::scoped_refptr<FakeAudioCaptureModule> FakeAudioCaptureModule::Create() {
rtc::scoped_refptr<FakeAudioCaptureModule> capture_module(
new rtc::RefCountedObject<FakeAudioCaptureModule>());
auto capture_module = rtc::make_ref_counted<FakeAudioCaptureModule>();
if (!capture_module->Initialize()) {
return nullptr;
}

View File

@ -22,7 +22,7 @@ namespace webrtc {
class FakeVideoTrackSource : public VideoTrackSource {
public:
static rtc::scoped_refptr<FakeVideoTrackSource> Create(bool is_screencast) {
return new rtc::RefCountedObject<FakeVideoTrackSource>(is_screencast);
return rtc::make_ref_counted<FakeVideoTrackSource>(is_screencast);
}
static rtc::scoped_refptr<FakeVideoTrackSource> Create() {

View File

@ -451,8 +451,7 @@ class PeerConnectionIntegrationWrapper : public webrtc::PeerConnectionObserver,
// which can be used to access the gathered stats.
rtc::scoped_refptr<MockStatsObserver> OldGetStatsForTrack(
webrtc::MediaStreamTrackInterface* track) {
rtc::scoped_refptr<MockStatsObserver> observer(
new rtc::RefCountedObject<MockStatsObserver>());
auto observer = rtc::make_ref_counted<MockStatsObserver>();
EXPECT_TRUE(peer_connection_->GetStats(
observer, nullptr, PeerConnectionInterface::kStatsOutputLevelStandard));
EXPECT_TRUE_WAIT(observer->called(), kDefaultTimeout);
@ -467,8 +466,8 @@ class PeerConnectionIntegrationWrapper : public webrtc::PeerConnectionObserver,
// Synchronously gets stats and returns them. If it times out, fails the test
// and returns null.
rtc::scoped_refptr<const webrtc::RTCStatsReport> NewGetStats() {
rtc::scoped_refptr<webrtc::MockRTCStatsCollectorCallback> callback(
new rtc::RefCountedObject<webrtc::MockRTCStatsCollectorCallback>());
auto callback =
rtc::make_ref_counted<webrtc::MockRTCStatsCollectorCallback>();
peer_connection_->GetStats(callback);
EXPECT_TRUE_WAIT(callback->called(), kDefaultTimeout);
return callback->report();
@ -605,8 +604,8 @@ class PeerConnectionIntegrationWrapper : public webrtc::PeerConnectionObserver,
// Returns null on failure.
std::unique_ptr<SessionDescriptionInterface> CreateOfferAndWait() {
rtc::scoped_refptr<MockCreateSessionDescriptionObserver> observer(
new rtc::RefCountedObject<MockCreateSessionDescriptionObserver>());
auto observer =
rtc::make_ref_counted<MockCreateSessionDescriptionObserver>();
pc()->CreateOffer(observer, offer_answer_options_);
return WaitForDescriptionFromObserver(observer);
}
@ -828,7 +827,7 @@ class PeerConnectionIntegrationWrapper : public webrtc::PeerConnectionObserver,
config.frame_interval_ms = 100;
video_track_sources_.emplace_back(
new rtc::RefCountedObject<webrtc::FakePeriodicVideoTrackSource>(
rtc::make_ref_counted<webrtc::FakePeriodicVideoTrackSource>(
config, false /* remote */));
rtc::scoped_refptr<webrtc::VideoTrackInterface> track(
peer_connection_factory_->CreateVideoTrack(
@ -874,8 +873,8 @@ class PeerConnectionIntegrationWrapper : public webrtc::PeerConnectionObserver,
// Returns null on failure.
std::unique_ptr<SessionDescriptionInterface> CreateAnswer() {
rtc::scoped_refptr<MockCreateSessionDescriptionObserver> observer(
new rtc::RefCountedObject<MockCreateSessionDescriptionObserver>());
auto observer =
rtc::make_ref_counted<MockCreateSessionDescriptionObserver>();
pc()->CreateAnswer(observer, offer_answer_options_);
return WaitForDescriptionFromObserver(observer);
}
@ -900,8 +899,7 @@ class PeerConnectionIntegrationWrapper : public webrtc::PeerConnectionObserver,
// don't outrace the description.
bool SetLocalDescriptionAndSendSdpMessage(
std::unique_ptr<SessionDescriptionInterface> desc) {
rtc::scoped_refptr<MockSetSessionDescriptionObserver> observer(
new rtc::RefCountedObject<MockSetSessionDescriptionObserver>());
auto observer = rtc::make_ref_counted<MockSetSessionDescriptionObserver>();
RTC_LOG(LS_INFO) << debug_name_ << ": SetLocalDescriptionAndSendSdpMessage";
SdpType type = desc->GetType();
std::string sdp;
@ -917,8 +915,7 @@ class PeerConnectionIntegrationWrapper : public webrtc::PeerConnectionObserver,
}
bool SetRemoteDescription(std::unique_ptr<SessionDescriptionInterface> desc) {
rtc::scoped_refptr<MockSetSessionDescriptionObserver> observer(
new rtc::RefCountedObject<MockSetSessionDescriptionObserver>());
auto observer = rtc::make_ref_counted<MockSetSessionDescriptionObserver>();
RTC_LOG(LS_INFO) << debug_name_ << ": SetRemoteDescription";
pc()->SetRemoteDescription(observer, desc.release());
RemoveUnusedVideoRenderers();
@ -1322,8 +1319,7 @@ class MockIceTransportFactory : public IceTransportFactory {
int component,
IceTransportInit init) {
RecordIceTransportCreated();
return new rtc::RefCountedObject<MockIceTransport>(transport_name,
component);
return rtc::make_ref_counted<MockIceTransport>(transport_name, component);
}
MOCK_METHOD(void, RecordIceTransportCreated, ());
};

View File

@ -286,7 +286,7 @@ class MockSetSessionDescriptionObserver
: public webrtc::SetSessionDescriptionObserver {
public:
static rtc::scoped_refptr<MockSetSessionDescriptionObserver> Create() {
return new rtc::RefCountedObject<MockSetSessionDescriptionObserver>();
return rtc::make_ref_counted<MockSetSessionDescriptionObserver>();
}
MockSetSessionDescriptionObserver()

View File

@ -221,8 +221,7 @@ void PeerConnectionTestWrapper::SetLocalDescription(SdpType type,
<< ": SetLocalDescription " << webrtc::SdpTypeToString(type)
<< " " << sdp;
rtc::scoped_refptr<MockSetSessionDescriptionObserver> observer(
new rtc::RefCountedObject<MockSetSessionDescriptionObserver>());
auto observer = rtc::make_ref_counted<MockSetSessionDescriptionObserver>();
peer_connection_->SetLocalDescription(
observer, webrtc::CreateSessionDescription(type, sdp).release());
}
@ -233,8 +232,7 @@ void PeerConnectionTestWrapper::SetRemoteDescription(SdpType type,
<< ": SetRemoteDescription " << webrtc::SdpTypeToString(type)
<< " " << sdp;
rtc::scoped_refptr<MockSetSessionDescriptionObserver> observer(
new rtc::RefCountedObject<MockSetSessionDescriptionObserver>());
auto observer = rtc::make_ref_counted<MockSetSessionDescriptionObserver>();
peer_connection_->SetRemoteDescription(
observer, webrtc::CreateSessionDescription(type, sdp).release());
}
@ -331,9 +329,8 @@ PeerConnectionTestWrapper::GetUserMedia(
config.frame_interval_ms = 100;
config.timestamp_offset_ms = rtc::TimeMillis();
rtc::scoped_refptr<webrtc::VideoTrackSourceInterface> source =
new rtc::RefCountedObject<webrtc::FakePeriodicVideoTrackSource>(
config, /* remote */ false);
auto source = rtc::make_ref_counted<webrtc::FakePeriodicVideoTrackSource>(
config, /* remote */ false);
std::string videotrack_label = stream_id + kVideoTrackLabelBase;
rtc::scoped_refptr<webrtc::VideoTrackInterface> video_track(

View File

@ -20,8 +20,7 @@ class RTCStatsObtainer : public RTCStatsCollectorCallback {
public:
static rtc::scoped_refptr<RTCStatsObtainer> Create(
rtc::scoped_refptr<const RTCStatsReport>* report_ptr = nullptr) {
return rtc::scoped_refptr<RTCStatsObtainer>(
new rtc::RefCountedObject<RTCStatsObtainer>(report_ptr));
return rtc::make_ref_counted<RTCStatsObtainer>(report_ptr);
}
void OnStatsDelivered(

View File

@ -52,8 +52,7 @@ rtc::scoped_refptr<MockRtpSenderInternal> CreateMockRtpSender(
} else {
first_ssrc = 0;
}
rtc::scoped_refptr<MockRtpSenderInternal> sender(
new rtc::RefCountedObject<MockRtpSenderInternal>());
auto sender = rtc::make_ref_counted<MockRtpSenderInternal>();
EXPECT_CALL(*sender, track())
.WillRepeatedly(::testing::Return(std::move(track)));
EXPECT_CALL(*sender, ssrc()).WillRepeatedly(::testing::Return(first_ssrc));
@ -69,8 +68,7 @@ rtc::scoped_refptr<MockRtpReceiverInternal> CreateMockRtpReceiver(
cricket::MediaType media_type,
std::initializer_list<uint32_t> ssrcs,
rtc::scoped_refptr<MediaStreamTrackInterface> track) {
rtc::scoped_refptr<MockRtpReceiverInternal> receiver(
new rtc::RefCountedObject<MockRtpReceiverInternal>());
auto receiver = rtc::make_ref_counted<MockRtpReceiverInternal>();
EXPECT_CALL(*receiver, track())
.WillRepeatedly(::testing::Return(std::move(track)));
EXPECT_CALL(*receiver, media_type())

View File

@ -30,9 +30,7 @@ class MockSink : public rtc::VideoSinkInterface<RecordableEncodedFrame> {
rtc::scoped_refptr<VideoRtpTrackSource> MakeSource(
VideoRtpTrackSource::Callback* callback) {
rtc::scoped_refptr<VideoRtpTrackSource> source(
new rtc::RefCountedObject<VideoRtpTrackSource>(callback));
return source;
return rtc::make_ref_counted<VideoRtpTrackSource>(callback);
}
TEST(VideoRtpTrackSourceTest, CreatesWithRemoteAtttributeSet) {

View File

@ -95,9 +95,7 @@ rtc::scoped_refptr<VideoTrack> VideoTrack::Create(
const std::string& id,
VideoTrackSourceInterface* source,
rtc::Thread* worker_thread) {
rtc::RefCountedObject<VideoTrack>* track =
new rtc::RefCountedObject<VideoTrack>(id, source, worker_thread);
return track;
return rtc::make_ref_counted<VideoTrack>(id, source, worker_thread);
}
} // namespace webrtc

View File

@ -32,7 +32,7 @@ class VideoTrackTest : public ::testing::Test {
public:
VideoTrackTest() : frame_source_(640, 480, rtc::kNumMicrosecsPerSec / 30) {
static const char kVideoTrackId[] = "track_id";
video_track_source_ = new rtc::RefCountedObject<FakeVideoTrackSource>(
video_track_source_ = rtc::make_ref_counted<FakeVideoTrackSource>(
/*is_screencast=*/false);
video_track_ = VideoTrack::Create(kVideoTrackId, video_track_source_,
rtc::Thread::Current());

View File

@ -174,8 +174,7 @@ WebRtcSessionDescriptionFactory::WebRtcSessionDescriptionFactory(
// Generate certificate.
certificate_request_state_ = CERTIFICATE_WAITING;
rtc::scoped_refptr<WebRtcCertificateGeneratorCallback> callback(
new rtc::RefCountedObject<WebRtcCertificateGeneratorCallback>());
auto callback = rtc::make_ref_counted<WebRtcCertificateGeneratorCallback>();
callback->SignalRequestFailed.connect(
this, &WebRtcSessionDescriptionFactory::OnCertificateRequestFailed);
callback->SignalCertificateReady.connect(

View File

@ -314,7 +314,7 @@ std::unique_ptr<test::NetEqStatsGetter> CreateNetEqTestAndRun(
std::unique_ptr<test::VoidAudioSink> output(new test::VoidAudioSink());
rtc::scoped_refptr<AudioDecoderFactory> decoder_factory =
new rtc::RefCountedObject<ReplacementAudioDecoderFactory>(
rtc::make_ref_counted<ReplacementAudioDecoderFactory>(
replacement_file_name, file_sample_rate_hz);
test::NetEqTest::DecoderMap codecs = {

View File

@ -188,15 +188,17 @@ RtpGenerator::RtpGenerator(const RtpGeneratorOptions& options)
PayloadStringToCodecType(video_config.rtp.payload_name);
if (video_config.rtp.payload_name == cricket::kVp8CodecName) {
VideoCodecVP8 settings = VideoEncoder::GetDefaultVp8Settings();
encoder_config.encoder_specific_settings = new rtc::RefCountedObject<
VideoEncoderConfig::Vp8EncoderSpecificSettings>(settings);
encoder_config.encoder_specific_settings =
rtc::make_ref_counted<VideoEncoderConfig::Vp8EncoderSpecificSettings>(
settings);
} else if (video_config.rtp.payload_name == cricket::kVp9CodecName) {
VideoCodecVP9 settings = VideoEncoder::GetDefaultVp9Settings();
encoder_config.encoder_specific_settings = new rtc::RefCountedObject<
VideoEncoderConfig::Vp9EncoderSpecificSettings>(settings);
encoder_config.encoder_specific_settings =
rtc::make_ref_counted<VideoEncoderConfig::Vp9EncoderSpecificSettings>(
settings);
} else if (video_config.rtp.payload_name == cricket::kH264CodecName) {
VideoCodecH264 settings = VideoEncoder::GetDefaultH264Settings();
encoder_config.encoder_specific_settings = new rtc::RefCountedObject<
encoder_config.encoder_specific_settings = rtc::make_ref_counted<
VideoEncoderConfig::H264EncoderSpecificSettings>(settings);
}
encoder_config.video_format.name = video_config.rtp.payload_name;
@ -217,7 +219,7 @@ RtpGenerator::RtpGenerator(const RtpGeneratorOptions& options)
}
encoder_config.video_stream_factory =
new rtc::RefCountedObject<cricket::EncoderStreamFactory>(
rtc::make_ref_counted<cricket::EncoderStreamFactory>(
video_config.rtp.payload_name, /*max qp*/ 56, /*screencast*/ false,
/*screenshare enabled*/ false);

View File

@ -224,8 +224,8 @@ rtc::scoped_refptr<Video> OpenY4mFile(const std::string& file_name) {
}
RTC_LOG(LS_INFO) << "Video has " << frame_positions.size() << " frames";
return new rtc::RefCountedObject<VideoFile>(*width, *height, frame_positions,
file);
return rtc::make_ref_counted<VideoFile>(*width, *height, frame_positions,
file);
}
rtc::scoped_refptr<Video> OpenYuvFile(const std::string& file_name,
@ -266,8 +266,7 @@ rtc::scoped_refptr<Video> OpenYuvFile(const std::string& file_name,
}
RTC_LOG(LS_INFO) << "Video has " << frame_positions.size() << " frames";
return new rtc::RefCountedObject<VideoFile>(width, height, frame_positions,
file);
return rtc::make_ref_counted<VideoFile>(width, height, frame_positions, file);
}
rtc::scoped_refptr<Video> OpenYuvOrY4mFile(const std::string& file_name,

View File

@ -29,7 +29,7 @@ class JavaVideoTrackSourceImpl : public JavaVideoTrackSourceInterface {
bool is_screencast,
bool align_timestamps)
: android_video_track_source_(
new rtc::RefCountedObject<jni::AndroidVideoTrackSource>(
rtc::make_ref_counted<jni::AndroidVideoTrackSource>(
signaling_thread,
env,
is_screencast,
@ -109,7 +109,7 @@ rtc::scoped_refptr<JavaVideoTrackSourceInterface> CreateJavaVideoSource(
rtc::Thread* signaling_thread,
bool is_screencast,
bool align_timestamps) {
return new rtc::RefCountedObject<JavaVideoTrackSourceImpl>(
return rtc::make_ref_counted<JavaVideoTrackSourceImpl>(
jni, signaling_thread, is_screencast, align_timestamps);
}

View File

@ -641,7 +641,7 @@ rtc::scoped_refptr<AudioDeviceModule> CreateAudioDeviceModuleFromInputAndOutput(
std::unique_ptr<AudioInput> audio_input,
std::unique_ptr<AudioOutput> audio_output) {
RTC_DLOG(INFO) << __FUNCTION__;
return new rtc::RefCountedObject<AndroidAudioDeviceModule>(
return rtc::make_ref_counted<AndroidAudioDeviceModule>(
audio_layer, is_stereo_playout_supported, is_stereo_record_supported,
playout_delay_ms, std::move(audio_input), std::move(audio_output));
}

View File

@ -90,7 +90,7 @@ EncodedImage JavaToNativeEncodedImage(JNIEnv* env,
const size_t buffer_size = env->GetDirectBufferCapacity(j_buffer.obj());
EncodedImage frame;
frame.SetEncodedData(new rtc::RefCountedObject<JavaEncodedImageBuffer>(
frame.SetEncodedData(rtc::make_ref_counted<JavaEncodedImageBuffer>(
env, j_encoded_image, buffer, buffer_size));
frame._encodedWidth = Java_EncodedImage_getEncodedWidth(env, j_encoded_image);

View File

@ -551,9 +551,8 @@ static void JNI_PeerConnection_CreateOffer(
const JavaParamRef<jobject>& j_constraints) {
std::unique_ptr<MediaConstraints> constraints =
JavaToNativeMediaConstraints(jni, j_constraints);
rtc::scoped_refptr<CreateSdpObserverJni> observer(
new rtc::RefCountedObject<CreateSdpObserverJni>(jni, j_observer,
std::move(constraints)));
auto observer = rtc::make_ref_counted<CreateSdpObserverJni>(
jni, j_observer, std::move(constraints));
PeerConnectionInterface::RTCOfferAnswerOptions options;
CopyConstraintsIntoOfferAnswerOptions(observer->constraints(), &options);
ExtractNativePC(jni, j_pc)->CreateOffer(observer, options);
@ -566,9 +565,8 @@ static void JNI_PeerConnection_CreateAnswer(
const JavaParamRef<jobject>& j_constraints) {
std::unique_ptr<MediaConstraints> constraints =
JavaToNativeMediaConstraints(jni, j_constraints);
rtc::scoped_refptr<CreateSdpObserverJni> observer(
new rtc::RefCountedObject<CreateSdpObserverJni>(jni, j_observer,
std::move(constraints)));
auto observer = rtc::make_ref_counted<CreateSdpObserverJni>(
jni, j_observer, std::move(constraints));
PeerConnectionInterface::RTCOfferAnswerOptions options;
CopyConstraintsIntoOfferAnswerOptions(observer->constraints(), &options);
ExtractNativePC(jni, j_pc)->CreateAnswer(observer, options);
@ -578,8 +576,8 @@ static void JNI_PeerConnection_SetLocalDescriptionAutomatically(
JNIEnv* jni,
const JavaParamRef<jobject>& j_pc,
const JavaParamRef<jobject>& j_observer) {
rtc::scoped_refptr<SetLocalSdpObserverJni> observer(
new rtc::RefCountedObject<SetLocalSdpObserverJni>(jni, j_observer));
auto observer =
rtc::make_ref_counted<SetLocalSdpObserverJni>(jni, j_observer);
ExtractNativePC(jni, j_pc)->SetLocalDescription(observer);
}
@ -588,8 +586,8 @@ static void JNI_PeerConnection_SetLocalDescription(
const JavaParamRef<jobject>& j_pc,
const JavaParamRef<jobject>& j_observer,
const JavaParamRef<jobject>& j_sdp) {
rtc::scoped_refptr<SetLocalSdpObserverJni> observer(
new rtc::RefCountedObject<SetLocalSdpObserverJni>(jni, j_observer));
auto observer =
rtc::make_ref_counted<SetLocalSdpObserverJni>(jni, j_observer);
ExtractNativePC(jni, j_pc)->SetLocalDescription(
JavaToNativeSessionDescription(jni, j_sdp), observer);
}
@ -599,8 +597,8 @@ static void JNI_PeerConnection_SetRemoteDescription(
const JavaParamRef<jobject>& j_pc,
const JavaParamRef<jobject>& j_observer,
const JavaParamRef<jobject>& j_sdp) {
rtc::scoped_refptr<SetRemoteSdpObserverJni> observer(
new rtc::RefCountedObject<SetRemoteSdpObserverJni>(jni, j_observer));
auto observer =
rtc::make_ref_counted<SetRemoteSdpObserverJni>(jni, j_observer);
ExtractNativePC(jni, j_pc)->SetRemoteDescription(
JavaToNativeSessionDescription(jni, j_sdp), observer);
}
@ -799,8 +797,7 @@ static jboolean JNI_PeerConnection_OldGetStats(
const JavaParamRef<jobject>& j_pc,
const JavaParamRef<jobject>& j_observer,
jlong native_track) {
rtc::scoped_refptr<StatsObserverJni> observer(
new rtc::RefCountedObject<StatsObserverJni>(jni, j_observer));
auto observer = rtc::make_ref_counted<StatsObserverJni>(jni, j_observer);
return ExtractNativePC(jni, j_pc)->GetStats(
observer, reinterpret_cast<MediaStreamTrackInterface*>(native_track),
PeerConnectionInterface::kStatsOutputLevelStandard);
@ -810,9 +807,8 @@ static void JNI_PeerConnection_NewGetStats(
JNIEnv* jni,
const JavaParamRef<jobject>& j_pc,
const JavaParamRef<jobject>& j_callback) {
rtc::scoped_refptr<RTCStatsCollectorCallbackWrapper> callback(
new rtc::RefCountedObject<RTCStatsCollectorCallbackWrapper>(jni,
j_callback));
auto callback =
rtc::make_ref_counted<RTCStatsCollectorCallbackWrapper>(jni, j_callback);
ExtractNativePC(jni, j_pc)->GetStats(callback);
}

View File

@ -46,9 +46,8 @@ void* CreateVideoSource(JNIEnv* env,
rtc::Thread* worker_thread,
jboolean is_screencast,
jboolean align_timestamps) {
rtc::scoped_refptr<AndroidVideoTrackSource> source(
new rtc::RefCountedObject<AndroidVideoTrackSource>(
signaling_thread, env, is_screencast, align_timestamps));
auto source = rtc::make_ref_counted<AndroidVideoTrackSource>(
signaling_thread, env, is_screencast, align_timestamps);
return source.release();
}

View File

@ -77,8 +77,8 @@ rtc::scoped_refptr<AndroidVideoI420Buffer> AndroidVideoI420Buffer::Adopt(
int width,
int height,
const JavaRef<jobject>& j_video_frame_buffer) {
return new rtc::RefCountedObject<AndroidVideoI420Buffer>(
jni, width, height, j_video_frame_buffer);
return rtc::make_ref_counted<AndroidVideoI420Buffer>(jni, width, height,
j_video_frame_buffer);
}
AndroidVideoI420Buffer::AndroidVideoI420Buffer(
@ -123,8 +123,7 @@ int64_t GetJavaVideoFrameTimestampNs(JNIEnv* jni,
rtc::scoped_refptr<AndroidVideoBuffer> AndroidVideoBuffer::Adopt(
JNIEnv* jni,
const JavaRef<jobject>& j_video_frame_buffer) {
return new rtc::RefCountedObject<AndroidVideoBuffer>(jni,
j_video_frame_buffer);
return rtc::make_ref_counted<AndroidVideoBuffer>(jni, j_video_frame_buffer);
}
rtc::scoped_refptr<AndroidVideoBuffer> AndroidVideoBuffer::Create(

View File

@ -120,7 +120,7 @@ void FillEncoderConfiguration(VideoCodecType codec_type,
configuration->codec_type = codec_type;
configuration->number_of_streams = num_streams;
configuration->video_stream_factory =
new rtc::RefCountedObject<DefaultVideoStreamFactory>();
rtc::make_ref_counted<DefaultVideoStreamFactory>();
configuration->max_bitrate_bps = 0;
configuration->simulcast_layers = std::vector<VideoStream>(num_streams);
for (size_t i = 0; i < num_streams; ++i) {

View File

@ -23,7 +23,7 @@ VideoFrame FakeNativeBuffer::CreateFrame(int width,
VideoRotation rotation) {
return VideoFrame::Builder()
.set_video_frame_buffer(
new rtc::RefCountedObject<FakeNativeBuffer>(width, height))
rtc::make_ref_counted<FakeNativeBuffer>(width, height))
.set_timestamp_rtp(timestamp)
.set_timestamp_ms(render_time_ms)
.set_rotation(rotation)

View File

@ -34,8 +34,8 @@ void FuzzOneInput(const uint8_t* data, size_t size) {
// Note - we do not do test.ConnectFakeSignaling(); all signals
// generated are discarded.
rtc::scoped_refptr<MockSetSessionDescriptionObserver> srd_observer(
new rtc::RefCountedObject<MockSetSessionDescriptionObserver>());
auto srd_observer =
rtc::make_ref_counted<MockSetSessionDescriptionObserver>();
webrtc::SdpParseError error;
std::unique_ptr<webrtc::SessionDescriptionInterface> sdp(
@ -47,8 +47,8 @@ void FuzzOneInput(const uint8_t* data, size_t size) {
EXPECT_TRUE_WAIT(srd_observer->called(), 100);
// If set-remote-description was successful, try to answer.
rtc::scoped_refptr<MockSetSessionDescriptionObserver> sld_observer(
new rtc::RefCountedObject<MockSetSessionDescriptionObserver>());
auto sld_observer =
rtc::make_ref_counted<MockSetSessionDescriptionObserver>();
if (srd_observer->result()) {
test.caller()->pc()->SetLocalDescription(sld_observer.get());
EXPECT_TRUE_WAIT(sld_observer->called(), 100);

View File

@ -45,14 +45,14 @@ VideoFrame CreateMappableNativeFrame(int64_t ntp_time_ms,
VideoFrameBuffer::Type mappable_type,
int width,
int height) {
VideoFrame frame = VideoFrame::Builder()
.set_video_frame_buffer(
new rtc::RefCountedObject<MappableNativeBuffer>(
mappable_type, width, height))
.set_timestamp_rtp(99)
.set_timestamp_ms(99)
.set_rotation(kVideoRotation_0)
.build();
VideoFrame frame =
VideoFrame::Builder()
.set_video_frame_buffer(rtc::make_ref_counted<MappableNativeBuffer>(
mappable_type, width, height))
.set_timestamp_rtp(99)
.set_timestamp_ms(99)
.set_rotation(kVideoRotation_0)
.build();
frame.set_ntp_time_ms(ntp_time_ms);
return frame;
}
@ -77,9 +77,8 @@ MappableNativeBuffer::ScaledBuffer::CropAndScale(int offset_x,
int crop_height,
int scaled_width,
int scaled_height) {
return rtc::scoped_refptr<VideoFrameBuffer>(
new rtc::RefCountedObject<ScaledBuffer>(parent_, scaled_width,
scaled_height));
return rtc::make_ref_counted<ScaledBuffer>(parent_, scaled_width,
scaled_height);
}
rtc::scoped_refptr<I420BufferInterface>
@ -146,8 +145,7 @@ bool MappableNativeBuffer::DidConvertToI420() const {
rtc::scoped_refptr<MappableNativeBuffer::ScaledBuffer>
MappableNativeBuffer::FullSizeBuffer() {
return rtc::scoped_refptr<MappableNativeBuffer::ScaledBuffer>(
new rtc::RefCountedObject<ScaledBuffer>(this, width_, height_));
return rtc::make_ref_counted<ScaledBuffer>(this, width_, height_);
}
rtc::scoped_refptr<VideoFrameBuffer>
@ -168,11 +166,10 @@ MappableNativeBuffer::GetOrCreateMappedBuffer(int width, int height) {
break;
}
case VideoFrameBuffer::Type::kNV12: {
rtc::scoped_refptr<NV12Buffer> nv12_buffer;
nv12_buffer = new rtc::RefCountedObject<NV12BufferWithDidConvertToI420>(
width, height);
auto nv12_buffer =
rtc::make_ref_counted<NV12BufferWithDidConvertToI420>(width, height);
nv12_buffer->InitializeData();
mapped_buffer = nv12_buffer;
mapped_buffer = std::move(nv12_buffer);
break;
}
default:

View File

@ -52,7 +52,7 @@ class MockAudioDecoderFactory : public AudioDecoderFactory {
using ::testing::Return;
rtc::scoped_refptr<webrtc::MockAudioDecoderFactory> factory =
new rtc::RefCountedObject<webrtc::MockAudioDecoderFactory>;
rtc::make_ref_counted<webrtc::MockAudioDecoderFactory>();
ON_CALL(*factory.get(), GetSupportedDecoders())
.WillByDefault(Return(std::vector<webrtc::AudioCodecSpec>()));
EXPECT_CALL(*factory.get(), GetSupportedDecoders()).Times(AnyNumber());
@ -73,7 +73,7 @@ class MockAudioDecoderFactory : public AudioDecoderFactory {
using ::testing::SetArgPointee;
rtc::scoped_refptr<webrtc::MockAudioDecoderFactory> factory =
new rtc::RefCountedObject<webrtc::MockAudioDecoderFactory>;
rtc::make_ref_counted<webrtc::MockAudioDecoderFactory>();
ON_CALL(*factory.get(), GetSupportedDecoders())
.WillByDefault(Return(std::vector<webrtc::AudioCodecSpec>()));
EXPECT_CALL(*factory.get(), GetSupportedDecoders()).Times(AnyNumber());

View File

@ -64,7 +64,7 @@ MediaHelper::MaybeAddVideo(TestPeer* peer) {
video_config.content_hint ==
VideoTrackInterface::ContentHint::kDetailed;
rtc::scoped_refptr<TestVideoCapturerVideoTrackSource> source =
new rtc::RefCountedObject<TestVideoCapturerVideoTrackSource>(
rtc::make_ref_counted<TestVideoCapturerVideoTrackSource>(
std::move(capturer), is_screencast);
out.push_back(source);
RTC_LOG(INFO) << "Adding video with video_config.stream_label="

View File

@ -31,7 +31,7 @@ void InternalStatsObserver::OnStatsDelivered(
StatsPoller::StatsPoller(std::vector<StatsObserverInterface*> observers,
std::map<std::string, TestPeer*> peers) {
for (auto& peer : peers) {
pollers_.push_back(new rtc::RefCountedObject<InternalStatsObserver>(
pollers_.push_back(rtc::make_ref_counted<InternalStatsObserver>(
peer.first, peer.second, observers));
}
}

View File

@ -175,8 +175,8 @@ CreateVp9SpecificSettings(VideoStreamConfig video_config) {
vp9.automaticResizeOn = conf.single.automatic_scaling;
vp9.denoisingOn = conf.single.denoising;
}
return new rtc::RefCountedObject<
VideoEncoderConfig::Vp9EncoderSpecificSettings>(vp9);
return rtc::make_ref_counted<VideoEncoderConfig::Vp9EncoderSpecificSettings>(
vp9);
}
rtc::scoped_refptr<VideoEncoderConfig::EncoderSpecificSettings>
@ -192,8 +192,8 @@ CreateVp8SpecificSettings(VideoStreamConfig config) {
vp8_settings.automaticResizeOn = config.encoder.single.automatic_scaling;
vp8_settings.denoisingOn = config.encoder.single.denoising;
}
return new rtc::RefCountedObject<
VideoEncoderConfig::Vp8EncoderSpecificSettings>(vp8_settings);
return rtc::make_ref_counted<VideoEncoderConfig::Vp8EncoderSpecificSettings>(
vp8_settings);
}
rtc::scoped_refptr<VideoEncoderConfig::EncoderSpecificSettings>
@ -205,8 +205,8 @@ CreateH264SpecificSettings(VideoStreamConfig config) {
h264_settings.frameDroppingOn = config.encoder.frame_dropping;
h264_settings.keyFrameInterval =
config.encoder.key_frame_interval.value_or(0);
return new rtc::RefCountedObject<
VideoEncoderConfig::H264EncoderSpecificSettings>(h264_settings);
return rtc::make_ref_counted<VideoEncoderConfig::H264EncoderSpecificSettings>(
h264_settings);
}
rtc::scoped_refptr<VideoEncoderConfig::EncoderSpecificSettings>
@ -248,11 +248,11 @@ VideoEncoderConfig CreateVideoEncoderConfig(VideoStreamConfig config) {
bool screenshare = config.encoder.content_type ==
VideoStreamConfig::Encoder::ContentType::kScreen;
encoder_config.video_stream_factory =
new rtc::RefCountedObject<cricket::EncoderStreamFactory>(
rtc::make_ref_counted<cricket::EncoderStreamFactory>(
cricket_codec, kDefaultMaxQp, screenshare, screenshare);
} else {
encoder_config.video_stream_factory =
new rtc::RefCountedObject<DefaultVideoStreamFactory>();
rtc::make_ref_counted<DefaultVideoStreamFactory>();
}
// TODO(srte): Base this on encoder capabilities.