Make SetFirstSubFrameInFrame and SetLastSubFrameInFrame protected
These methods should only be used when parsing frames produced by an older client; newer clients should not attempt to set these values. (When talking to older clients, TRUE is hard-coded. When talking to newer clients, these flags are deprecated.) Bug: webrtc:10214 Change-Id: I8537869ef3112f4ce9531c6becc33951715685a1 Reviewed-on: https://webrtc-review.googlesource.com/c/118421 Reviewed-by: Erik Språng <sprang@webrtc.org> Reviewed-by: Danil Chapovalov <danilchap@webrtc.org> Commit-Queue: Elad Alon <eladalon@webrtc.org> Cr-Commit-Position: refs/heads/master@{#26360}
This commit is contained in:
@ -18,6 +18,8 @@
|
||||
|
||||
namespace webrtc {
|
||||
|
||||
class RtpGenericFrameDescriptorExtension;
|
||||
|
||||
// Data to put on the wire for FrameDescriptor rtp header extension.
|
||||
class RtpGenericFrameDescriptor {
|
||||
public:
|
||||
@ -35,9 +37,7 @@ class RtpGenericFrameDescriptor {
|
||||
void SetLastPacketInSubFrame(bool last) { end_of_subframe_ = last; }
|
||||
|
||||
bool FirstSubFrameInFrame() const { return beginning_of_frame_; }
|
||||
void SetFirstSubFrameInFrame(bool first) { beginning_of_frame_ = first; }
|
||||
bool LastSubFrameInFrame() const { return end_of_frame_; }
|
||||
void SetLastSubFrameInFrame(bool last) { end_of_frame_ = last; }
|
||||
|
||||
// Properties below undefined if !FirstPacketInSubFrame()
|
||||
// Valid range for temporal layer: [0, 7]
|
||||
@ -66,6 +66,10 @@ class RtpGenericFrameDescriptor {
|
||||
rtc::ArrayView<const uint8_t> GetByteRepresentation();
|
||||
|
||||
private:
|
||||
friend class RtpGenericFrameDescriptorExtension;
|
||||
void SetFirstSubFrameInFrame(bool first) { beginning_of_frame_ = first; }
|
||||
void SetLastSubFrameInFrame(bool last) { end_of_frame_ = last; }
|
||||
|
||||
bool beginning_of_subframe_ = false;
|
||||
bool end_of_subframe_ = false;
|
||||
bool beginning_of_frame_ = true;
|
||||
|
@ -82,8 +82,6 @@ void AddRtpHeaderExtensions(const RTPVideoHeader& video_header,
|
||||
RtpGenericFrameDescriptor generic_descriptor;
|
||||
generic_descriptor.SetFirstPacketInSubFrame(first_packet);
|
||||
generic_descriptor.SetLastPacketInSubFrame(last_packet);
|
||||
generic_descriptor.SetFirstSubFrameInFrame(true);
|
||||
generic_descriptor.SetLastSubFrameInFrame(true);
|
||||
|
||||
if (first_packet) {
|
||||
generic_descriptor.SetFrameId(
|
||||
|
@ -517,8 +517,6 @@ TEST_F(RtpVideoStreamReceiverTest, ParseGenericDescriptorOnePacket) {
|
||||
RtpGenericFrameDescriptor generic_descriptor;
|
||||
generic_descriptor.SetFirstPacketInSubFrame(true);
|
||||
generic_descriptor.SetLastPacketInSubFrame(true);
|
||||
generic_descriptor.SetFirstSubFrameInFrame(true);
|
||||
generic_descriptor.SetLastSubFrameInFrame(true);
|
||||
generic_descriptor.SetFrameId(100);
|
||||
generic_descriptor.SetSpatialLayersBitmask(1 << kSpatialIndex);
|
||||
generic_descriptor.AddFrameDependencyDiff(90);
|
||||
@ -564,8 +562,6 @@ TEST_F(RtpVideoStreamReceiverTest, ParseGenericDescriptorTwoPackets) {
|
||||
RtpGenericFrameDescriptor first_packet_descriptor;
|
||||
first_packet_descriptor.SetFirstPacketInSubFrame(true);
|
||||
first_packet_descriptor.SetLastPacketInSubFrame(false);
|
||||
first_packet_descriptor.SetFirstSubFrameInFrame(true);
|
||||
first_packet_descriptor.SetLastSubFrameInFrame(true);
|
||||
first_packet_descriptor.SetFrameId(100);
|
||||
first_packet_descriptor.SetSpatialLayersBitmask(1 << kSpatialIndex);
|
||||
first_packet_descriptor.SetResolution(480, 360);
|
||||
@ -586,8 +582,6 @@ TEST_F(RtpVideoStreamReceiverTest, ParseGenericDescriptorTwoPackets) {
|
||||
RtpGenericFrameDescriptor second_packet_descriptor;
|
||||
second_packet_descriptor.SetFirstPacketInSubFrame(false);
|
||||
second_packet_descriptor.SetLastPacketInSubFrame(true);
|
||||
second_packet_descriptor.SetFirstSubFrameInFrame(true);
|
||||
second_packet_descriptor.SetLastSubFrameInFrame(true);
|
||||
EXPECT_TRUE(second_packet.SetExtension<RtpGenericFrameDescriptorExtension>(
|
||||
second_packet_descriptor));
|
||||
|
||||
|
Reference in New Issue
Block a user