Thread annotations for vie_encoder.cc/.h
Review URL: https://webrtc-codereview.appspot.com/8739005 git-svn-id: http://webrtc.googlecode.com/svn/trunk@6638 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
parent
e7771d07c8
commit
7af12be781
@ -553,16 +553,19 @@ void ViEEncoder::DeliverFrame(int id,
|
|||||||
if (vcm_.SendCodec() == webrtc::kVideoCodecVP8) {
|
if (vcm_.SendCodec() == webrtc::kVideoCodecVP8) {
|
||||||
webrtc::CodecSpecificInfo codec_specific_info;
|
webrtc::CodecSpecificInfo codec_specific_info;
|
||||||
codec_specific_info.codecType = webrtc::kVideoCodecVP8;
|
codec_specific_info.codecType = webrtc::kVideoCodecVP8;
|
||||||
codec_specific_info.codecSpecific.VP8.hasReceivedRPSI =
|
{
|
||||||
has_received_rpsi_;
|
CriticalSectionScoped cs(data_cs_.get());
|
||||||
codec_specific_info.codecSpecific.VP8.hasReceivedSLI =
|
codec_specific_info.codecSpecific.VP8.hasReceivedRPSI =
|
||||||
has_received_sli_;
|
has_received_rpsi_;
|
||||||
codec_specific_info.codecSpecific.VP8.pictureIdRPSI =
|
codec_specific_info.codecSpecific.VP8.hasReceivedSLI =
|
||||||
picture_id_rpsi_;
|
has_received_sli_;
|
||||||
codec_specific_info.codecSpecific.VP8.pictureIdSLI =
|
codec_specific_info.codecSpecific.VP8.pictureIdRPSI =
|
||||||
picture_id_sli_;
|
picture_id_rpsi_;
|
||||||
has_received_sli_ = false;
|
codec_specific_info.codecSpecific.VP8.pictureIdSLI =
|
||||||
has_received_rpsi_ = false;
|
picture_id_sli_;
|
||||||
|
has_received_sli_ = false;
|
||||||
|
has_received_rpsi_ = false;
|
||||||
|
}
|
||||||
|
|
||||||
vcm_.AddVideoFrame(*decimated_frame, vpm_.ContentMetrics(),
|
vcm_.AddVideoFrame(*decimated_frame, vpm_.ContentMetrics(),
|
||||||
&codec_specific_info);
|
&codec_specific_info);
|
||||||
@ -744,12 +747,14 @@ int32_t ViEEncoder::RegisterCodecObserver(ViEEncoderObserver* observer) {
|
|||||||
|
|
||||||
void ViEEncoder::OnReceivedSLI(uint32_t /*ssrc*/,
|
void ViEEncoder::OnReceivedSLI(uint32_t /*ssrc*/,
|
||||||
uint8_t picture_id) {
|
uint8_t picture_id) {
|
||||||
|
CriticalSectionScoped cs(data_cs_.get());
|
||||||
picture_id_sli_ = picture_id;
|
picture_id_sli_ = picture_id;
|
||||||
has_received_sli_ = true;
|
has_received_sli_ = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ViEEncoder::OnReceivedRPSI(uint32_t /*ssrc*/,
|
void ViEEncoder::OnReceivedRPSI(uint32_t /*ssrc*/,
|
||||||
uint64_t picture_id) {
|
uint64_t picture_id) {
|
||||||
|
CriticalSectionScoped cs(data_cs_.get());
|
||||||
picture_id_rpsi_ = picture_id;
|
picture_id_rpsi_ = picture_id;
|
||||||
has_received_rpsi_ = true;
|
has_received_rpsi_ = true;
|
||||||
}
|
}
|
||||||
|
@ -189,7 +189,7 @@ class ViEEncoder
|
|||||||
int64_t capture_time_ms, bool retransmission);
|
int64_t capture_time_ms, bool retransmission);
|
||||||
int TimeToSendPadding(int bytes);
|
int TimeToSendPadding(int bytes);
|
||||||
private:
|
private:
|
||||||
bool EncoderPaused() const;
|
bool EncoderPaused() const EXCLUSIVE_LOCKS_REQUIRED(data_cs_);
|
||||||
|
|
||||||
int32_t engine_id_;
|
int32_t engine_id_;
|
||||||
const int channel_id_;
|
const int channel_id_;
|
||||||
@ -206,32 +206,33 @@ class ViEEncoder
|
|||||||
|
|
||||||
BitrateController* bitrate_controller_;
|
BitrateController* bitrate_controller_;
|
||||||
|
|
||||||
int64_t time_of_last_incoming_frame_ms_;
|
int64_t time_of_last_incoming_frame_ms_ GUARDED_BY(data_cs_);
|
||||||
bool send_padding_;
|
bool send_padding_ GUARDED_BY(data_cs_);
|
||||||
int min_transmit_bitrate_kbps_ GUARDED_BY(data_cs_);
|
int min_transmit_bitrate_kbps_ GUARDED_BY(data_cs_);
|
||||||
int target_delay_ms_;
|
int target_delay_ms_ GUARDED_BY(data_cs_);
|
||||||
bool network_is_transmitting_;
|
bool network_is_transmitting_ GUARDED_BY(data_cs_);
|
||||||
bool encoder_paused_;
|
bool encoder_paused_ GUARDED_BY(data_cs_);
|
||||||
bool encoder_paused_and_dropped_frame_;
|
bool encoder_paused_and_dropped_frame_ GUARDED_BY(data_cs_);
|
||||||
std::map<unsigned int, int64_t> time_last_intra_request_ms_;
|
std::map<unsigned int, int64_t> time_last_intra_request_ms_
|
||||||
|
GUARDED_BY(data_cs_);
|
||||||
|
|
||||||
bool fec_enabled_;
|
bool fec_enabled_;
|
||||||
bool nack_enabled_;
|
bool nack_enabled_;
|
||||||
|
|
||||||
ViEEncoderObserver* codec_observer_ GUARDED_BY(callback_cs_);
|
ViEEncoderObserver* codec_observer_ GUARDED_BY(callback_cs_);
|
||||||
ViEEffectFilter* effect_filter_;
|
ViEEffectFilter* effect_filter_ GUARDED_BY(callback_cs_);
|
||||||
ProcessThread& module_process_thread_;
|
ProcessThread& module_process_thread_;
|
||||||
|
|
||||||
bool has_received_sli_;
|
bool has_received_sli_ GUARDED_BY(data_cs_);
|
||||||
uint8_t picture_id_sli_;
|
uint8_t picture_id_sli_ GUARDED_BY(data_cs_);
|
||||||
bool has_received_rpsi_;
|
bool has_received_rpsi_ GUARDED_BY(data_cs_);
|
||||||
uint64_t picture_id_rpsi_;
|
uint64_t picture_id_rpsi_ GUARDED_BY(data_cs_);
|
||||||
std::map<unsigned int, int> ssrc_streams_;
|
std::map<unsigned int, int> ssrc_streams_ GUARDED_BY(data_cs_);
|
||||||
|
|
||||||
// Quality modes callback
|
// Quality modes callback
|
||||||
QMVideoSettingsCallback* qm_callback_;
|
QMVideoSettingsCallback* qm_callback_;
|
||||||
bool video_suspended_;
|
bool video_suspended_ GUARDED_BY(data_cs_);
|
||||||
I420FrameCallback* pre_encode_callback_;
|
I420FrameCallback* pre_encode_callback_ GUARDED_BY(callback_cs_);
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace webrtc
|
} // namespace webrtc
|
||||||
|
Loading…
x
Reference in New Issue
Block a user