Chromium Code Reviews| Index: webrtc/modules/video_coding/main/source/encoded_frame.cc |
| diff --git a/webrtc/modules/video_coding/main/source/encoded_frame.cc b/webrtc/modules/video_coding/main/source/encoded_frame.cc |
| index 2830399dd6ed129e742b67dac2cb3ca848f2ccb2..a0e788e3b302409c96c7de501c3f6971a8d366a2 100644 |
| --- a/webrtc/modules/video_coding/main/source/encoded_frame.cc |
| +++ b/webrtc/modules/video_coding/main/source/encoded_frame.cc |
| @@ -132,6 +132,70 @@ void VCMEncodedFrame::CopyCodecSpecific(const RTPVideoHeader* header) |
| } |
| break; |
| } |
| + case kRtpVideoVp9: { |
| + if (_codecSpecificInfo.codecType != kVideoCodecVP9) { |
| + // This is the first packet for this frame. |
| + _codecSpecificInfo.codecSpecific.VP9.picture_id = -1; |
| + _codecSpecificInfo.codecSpecific.VP9.temporal_idx = 0; |
| + _codecSpecificInfo.codecSpecific.VP9.spatial_idx = 0; |
| + _codecSpecificInfo.codecSpecific.VP9.gof_idx = 0; |
| + _codecSpecificInfo.codecSpecific.VP9.inter_layer_predicted = false; |
| + _codecSpecificInfo.codecSpecific.VP9.tl0_pic_idx = -1; |
| + _codecSpecificInfo.codecType = kVideoCodecVP9; |
| + } |
| + _codecSpecificInfo.codecSpecific.VP9.inter_pic_predicted = |
| + header->codecHeader.VP9.inter_pic_predicted; |
| + _codecSpecificInfo.codecSpecific.VP9.flexible_mode = |
| + header->codecHeader.VP9.flexible_mode; |
| + _codecSpecificInfo.codecSpecific.VP9.beginning_of_frame = |
| + header->codecHeader.VP9.beginning_of_frame; |
| + _codecSpecificInfo.codecSpecific.VP9.end_of_frame = |
| + header->codecHeader.VP9.end_of_frame; |
| + _codecSpecificInfo.codecSpecific.VP9.ss_data_available = |
| + header->codecHeader.VP9.ss_data_available; |
| + if (header->codecHeader.VP9.picture_id != kNoPictureId) { |
| + _codecSpecificInfo.codecSpecific.VP9.picture_id = |
| + header->codecHeader.VP9.picture_id; |
| + } |
| + if (header->codecHeader.VP9.tl0_pic_idx != kNoTl0PicIdx) { |
| + _codecSpecificInfo.codecSpecific.VP9.tl0_pic_idx = |
| + header->codecHeader.VP9.tl0_pic_idx; |
| + } |
| + if (header->codecHeader.VP9.temporal_idx != kNoTemporalIdx) { |
| + _codecSpecificInfo.codecSpecific.VP9.temporal_idx = |
| + header->codecHeader.VP9.temporal_idx; |
| + _codecSpecificInfo.codecSpecific.VP9.temporal_up_switch = |
| + header->codecHeader.VP9.temporal_up_switch; |
| + } |
| + if (header->codecHeader.VP9.spatial_idx != kNoSpatialIdx) { |
| + _codecSpecificInfo.codecSpecific.VP9.spatial_idx = |
| + header->codecHeader.VP9.spatial_idx; |
| + _codecSpecificInfo.codecSpecific.VP9.inter_layer_predicted = |
| + header->codecHeader.VP9.inter_layer_predicted; |
| + } |
| + if (header->codecHeader.VP9.gof_idx != kNoGofIdx) { |
| + _codecSpecificInfo.codecSpecific.VP9.gof_idx = |
| + header->codecHeader.VP9.gof_idx; |
| + } |
| + if (header->codecHeader.VP9.ss_data_available) { |
| + _codecSpecificInfo.codecSpecific.VP9.num_spatial_layers = |
| + header->codecHeader.VP9.num_spatial_layers; |
| + _codecSpecificInfo.codecSpecific.VP9.spatial_layer_resolution_present= |
|
stefan-webrtc
2015/07/29 13:13:05
Space before =
åsapersson
2015/07/30 11:42:19
long line, changed format
|
| + header->codecHeader.VP9.spatial_layer_resolution_present; |
| + if (header->codecHeader.VP9.spatial_layer_resolution_present) { |
| + for (size_t i = 0; i < header->codecHeader.VP9.num_spatial_layers; |
| + ++i) { |
| + _codecSpecificInfo.codecSpecific.VP9.width[i] = |
| + header->codecHeader.VP9.width[i]; |
| + _codecSpecificInfo.codecSpecific.VP9.height[i] = |
| + header->codecHeader.VP9.height[i]; |
| + } |
| + } |
| + _codecSpecificInfo.codecSpecific.VP9.gof.CopyGofInfoVP9( |
| + header->codecHeader.VP9.gof); |
| + } |
| + break; |
| + } |
| case kRtpVideoH264: { |
| _codecSpecificInfo.codecType = kVideoCodecH264; |
| break; |