Add stereo codec header and pass it through RTP
- Defines CodecSpecificInfoStereo that carries stereo specific header info from encoded image. - Defines RTPVideoHeaderStereo that carries the above info to packetizer, see module_common_types.h. - Adds an RTPPacketizer and RTPDepacketizer that supports passing specific stereo header. - Uses new data containers in StereoAdapter classes. This CL is the step 3 for adding alpha channel support over the wire in webrtc. See https://webrtc-review.googlesource.com/c/src/+/7800 for the experimental CL that gives an idea about how it will come together. Design Doc: https://goo.gl/sFeSUT Bug: webrtc:7671 Change-Id: Ia932568fdd7065ba104afd2bc0ecf25a765748ab Reviewed-on: https://webrtc-review.googlesource.com/22900 Reviewed-by: Emircan Uysaler <emircan@webrtc.org> Reviewed-by: Erik Språng <sprang@webrtc.org> Reviewed-by: Danil Chapovalov <danilchap@webrtc.org> Reviewed-by: Niklas Enbom <niklas.enbom@webrtc.org> Commit-Queue: Emircan Uysaler <emircan@webrtc.org> Cr-Commit-Position: refs/heads/master@{#20920}
This commit is contained in:
committed by
Commit Bot
parent
ceec4d0a97
commit
20f2133d5d
@ -43,9 +43,14 @@ RtpFrameObject::RtpFrameObject(PacketBuffer* packet_buffer,
|
||||
frame_type_ = first_packet->frameType;
|
||||
codec_type_ = first_packet->codec;
|
||||
|
||||
// Stereo codec appends CopyCodecSpecific to last packet to avoid copy.
|
||||
VCMPacket* packet_with_codec_specific =
|
||||
codec_type_ == kVideoCodecStereo ? packet_buffer_->GetPacket(last_seq_num)
|
||||
: first_packet;
|
||||
|
||||
// TODO(philipel): Remove when encoded image is replaced by FrameObject.
|
||||
// VCMEncodedFrame members
|
||||
CopyCodecSpecific(&first_packet->video_header);
|
||||
CopyCodecSpecific(&packet_with_codec_specific->video_header);
|
||||
_completeFrame = true;
|
||||
_payloadType = first_packet->payloadType;
|
||||
_timeStamp = first_packet->timestamp;
|
||||
|
||||
Reference in New Issue
Block a user