Store PacketBuffer by value instead of as reference counted object

Bug: None
Change-Id: I5a594972e8a8dad731c927a1a374301e549f5d71
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/153887
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29267}
This commit is contained in:
Danil Chapovalov
2019-09-20 17:57:15 +02:00
committed by Commit Bot
parent 3c5f91b748
commit f7457e55fe
9 changed files with 120 additions and 155 deletions

View File

@ -27,8 +27,7 @@ void FuzzOneInput(const uint8_t* data, size_t size) {
VCMPacket packet;
NullCallback callback;
SimulatedClock clock(0);
rtc::scoped_refptr<video_coding::PacketBuffer> packet_buffer(
video_coding::PacketBuffer::Create(&clock, 8, 1024, &callback));
video_coding::PacketBuffer packet_buffer(&clock, 8, 1024, &callback);
test::FuzzDataHelper helper(rtc::ArrayView<const uint8_t>(data, size));
while (helper.BytesLeft()) {
@ -60,7 +59,7 @@ void FuzzOneInput(const uint8_t* data, size_t size) {
packet.sizeBytes = payload_size;
packet.dataPtr = new uint8_t[payload_size];
packet_buffer->InsertPacket(&packet);
packet_buffer.InsertPacket(&packet);
}
}

View File

@ -112,7 +112,7 @@ void FuzzOneInput(const uint8_t* data, size_t size) {
return;
}
DataReader reader(data, size);
rtc::scoped_refptr<FuzzyPacketBuffer> pb(new FuzzyPacketBuffer(&reader));
FuzzyPacketBuffer packet_buffer(&reader);
NullCallback cb;
video_coding::RtpFrameReferenceFinder reference_finder(&cb);
@ -120,13 +120,13 @@ void FuzzOneInput(const uint8_t* data, size_t size) {
// Make sure that these packets fulfill the contract of RtpFrameObject.
uint16_t first_seq_num = reader.GetNum<uint16_t>();
uint16_t last_seq_num = reader.GetNum<uint16_t>();
VCMPacket* first_packet = pb->GetPacket(first_seq_num);
VCMPacket* last_packet = pb->GetPacket(last_seq_num);
VCMPacket* first_packet = packet_buffer.GetPacket(first_seq_num);
VCMPacket* last_packet = packet_buffer.GetPacket(last_seq_num);
first_packet->video_header.is_first_packet_in_frame = true;
last_packet->video_header.is_last_packet_in_frame = true;
auto frame = std::make_unique<video_coding::RtpFrameObject>(
pb, first_seq_num, last_seq_num, 0, 0, 0, RtpPacketInfos(),
&packet_buffer, first_seq_num, last_seq_num, 0, 0, 0, RtpPacketInfos(),
EncodedImageBuffer::Create(/*size=*/0));
reference_finder.ManageFrame(std::move(frame));
}