Index: webrtc/modules/video_coding/codecs/vp8/simulcast_encoder_adapter.h |
diff --git a/webrtc/modules/video_coding/codecs/vp8/simulcast_encoder_adapter.h b/webrtc/modules/video_coding/codecs/vp8/simulcast_encoder_adapter.h |
index 777ac1ba368c5546000ba1b78601549d3689357b..83f5af7d212b25edec464aae4a3982dc869e35e7 100644 |
--- a/webrtc/modules/video_coding/codecs/vp8/simulcast_encoder_adapter.h |
+++ b/webrtc/modules/video_coding/codecs/vp8/simulcast_encoder_adapter.h |
@@ -12,14 +12,18 @@ |
#ifndef WEBRTC_MODULES_VIDEO_CODING_CODECS_VP8_SIMULCAST_ENCODER_ADAPTER_H_ |
#define WEBRTC_MODULES_VIDEO_CODING_CODECS_VP8_SIMULCAST_ENCODER_ADAPTER_H_ |
+#include <map> |
#include <memory> |
#include <string> |
+#include <utility> |
#include <vector> |
#include "webrtc/modules/video_coding/codecs/vp8/include/vp8.h" |
namespace webrtc { |
+class SimulcastState; |
+ |
class VideoEncoderFactory { |
public: |
virtual VideoEncoder* Create() = 0; |
@@ -91,29 +95,15 @@ class SimulcastEncoderAdapter : public VP8Encoder { |
bool send_stream; |
}; |
- // Get the stream bitrate, for the stream |stream_idx|, given the bitrate |
- // |new_bitrate_kbit| and the actual configured stream count in |
- // |total_number_of_streams|. The function also returns whether there's enough |
- // bandwidth to send this stream via |send_stream|. |
- uint32_t GetStreamBitrate(int stream_idx, |
- size_t total_number_of_streams, |
- uint32_t new_bitrate_kbit, |
- bool* send_stream) const; |
- |
- // Populate the codec settings for each stream. |
- void PopulateStreamCodec(const webrtc::VideoCodec* inst, |
- int stream_index, |
- size_t total_number_of_streams, |
- bool highest_resolution_stream, |
- webrtc::VideoCodec* stream_codec, |
- bool* send_stream); |
- |
bool Initialized() const; |
std::unique_ptr<VideoEncoderFactory> factory_; |
std::unique_ptr<TemporalLayersFactory> screensharing_tl_factory_; |
VideoCodec codec_; |
- std::vector<StreamInfo> streaminfos_; |
+ std::unique_ptr<SimulcastState> stream_states_; |
pbos-webrtc
2016/04/29 21:23:27
Can you stack allocate this (e.g. SimulcastState s
|
+ typedef std::pair<VideoEncoder*, std::unique_ptr<EncodedImageCallback>> |
+ EncoderContext; |
+ std::map<uint8_t, EncoderContext> encoders_; |
EncodedImageCallback* encoded_complete_callback_; |
std::string implementation_name_; |
}; |