Index: webrtc/modules/video_coding/main/source/session_info.cc |
diff --git a/webrtc/modules/video_coding/main/source/session_info.cc b/webrtc/modules/video_coding/main/source/session_info.cc |
index bf6bcb3c00e0f7176ebf7aa49870d6ed0eb5a45a..42284b1ce045becc4066f1b8fa5f548d7e1034d5 100644 |
--- a/webrtc/modules/video_coding/main/source/session_info.cc |
+++ b/webrtc/modules/video_coding/main/source/session_info.cc |
@@ -114,6 +114,24 @@ bool VCMSessionInfo::NonReference() const { |
return packets_.front().codecSpecificHeader.codecHeader.VP8.nonReference; |
} |
+void VCMSessionInfo::SetGofInfo(const GofInfoVP9& gof_info, size_t idx) { |
+ if (packets_.empty() || |
+ packets_.front().codecSpecificHeader.codec != kRtpVideoVp9 || |
+ packets_.front().codecSpecificHeader.codecHeader.VP9.flexible_mode) { |
+ return; |
stefan-webrtc
2015/10/13 13:49:43
Should we get here if flexible_mode is true? Other
åsapersson
2015/10/14 15:13:51
If switching between flexible and non-flexible mod
|
+ } |
+ packets_.front().codecSpecificHeader.codecHeader.VP9.temporal_idx = |
+ gof_info.temporal_idx[idx]; |
+ packets_.front().codecSpecificHeader.codecHeader.VP9.temporal_up_switch = |
+ gof_info.temporal_up_switch[idx]; |
+ packets_.front().codecSpecificHeader.codecHeader.VP9.num_ref_pics = |
+ gof_info.num_ref_pics[idx]; |
+ for (size_t i = 0; i < gof_info.num_ref_pics[idx]; ++i) { |
+ packets_.front().codecSpecificHeader.codecHeader.VP9.pid_diff[i] = |
+ gof_info.pid_diff[idx][i]; |
+ } |
+} |
+ |
void VCMSessionInfo::Reset() { |
session_nack_ = false; |
complete_ = false; |