Support VP8 encoder settings in VideoSendStream.
Stop-gap solution to support VP8 codec settings in the new API until
encoder settings can be passed on to the VideoEncoder without requiring
explicit support for the codec.
BUG=3424
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/17929004
git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6650 4adac7df-926f-26a2-2b94-8c16560cd09d
diff --git a/video/video_send_stream.cc b/video/video_send_stream.cc
index ff3fe50..be3fa5c 100644
--- a/video/video_send_stream.cc
+++ b/video/video_send_stream.cc
@@ -298,8 +298,6 @@
const void* encoder_settings) {
assert(!streams.empty());
assert(config_.rtp.ssrcs.size() >= streams.size());
- // TODO(pbos): Wire encoder_settings.
- assert(encoder_settings == NULL);
VideoCodec video_codec;
memset(&video_codec, 0, sizeof(video_codec));
@@ -317,6 +315,16 @@
video_codec.codecSpecific.VP8.keyFrameInterval = 3000;
}
+ if (video_codec.codecType == kVideoCodecVP8) {
+ if (encoder_settings != NULL) {
+ video_codec.codecSpecific.VP8 =
+ *reinterpret_cast<const VideoCodecVP8*>(encoder_settings);
+ }
+ } else {
+ // TODO(pbos): Support encoder_settings codec-agnostically.
+ assert(encoder_settings == NULL);
+ }
+
strncpy(video_codec.plName,
config_.encoder_settings.payload_name.c_str(),
kPayloadNameSize - 1);