Index: webrtc/modules/video_coding/video_coding_impl.h |
diff --git a/webrtc/modules/video_coding/video_coding_impl.h b/webrtc/modules/video_coding/video_coding_impl.h |
index 581eb4ecdeebcbe97a49b11d1ef6009f9731805c..f66e3aa3d982908a1b63cf725ca878dcd09d0de2 100644 |
--- a/webrtc/modules/video_coding/video_coding_impl.h |
+++ b/webrtc/modules/video_coding/video_coding_impl.h |
@@ -27,9 +27,9 @@ |
#include "webrtc/modules/video_coding/media_optimization.h" |
#include "webrtc/modules/video_coding/receiver.h" |
#include "webrtc/modules/video_coding/timing.h" |
+#include "webrtc/modules/video_coding/utility/ivf_file_writer.h" |
#include "webrtc/modules/video_coding/utility/qp_parser.h" |
#include "webrtc/system_wrappers/include/clock.h" |
-#include "webrtc/system_wrappers/include/critical_section_wrapper.h" |
namespace webrtc { |
@@ -103,12 +103,12 @@ class VideoSender { |
Clock* const clock_; |
- std::unique_ptr<CriticalSectionWrapper> process_crit_sect_; |
+ rtc::CriticalSection process_lock_; |
rtc::CriticalSection encoder_crit_; |
VCMGenericEncoder* _encoder; |
VCMEncodedFrameCallback _encodedFrameCallback GUARDED_BY(encoder_crit_); |
media_optimization::MediaOptimization _mediaOpt; |
- VCMSendStatisticsCallback* _sendStatsCallback GUARDED_BY(process_crit_sect_); |
+ VCMSendStatisticsCallback* _sendStatsCallback GUARDED_BY(process_lock_); |
VCMCodecDataBase _codecDataBase GUARDED_BY(encoder_crit_); |
bool frame_dropper_enabled_ GUARDED_BY(encoder_crit_); |
VCMProcessTimer _sendStatsTimer; |
@@ -184,43 +184,44 @@ class VideoReceiver { |
protected: |
int32_t Decode(const webrtc::VCMEncodedFrame& frame) |
- EXCLUSIVE_LOCKS_REQUIRED(_receiveCritSect); |
+ EXCLUSIVE_LOCKS_REQUIRED(receive_lock_); |
int32_t RequestKeyFrame(); |
int32_t RequestSliceLossIndication(const uint64_t pictureID) const; |
private: |
+ static const bool kEnableFrameRecording = false; |
+ |
Clock* const clock_; |
- std::unique_ptr<CriticalSectionWrapper> process_crit_sect_; |
- CriticalSectionWrapper* _receiveCritSect; |
+ rtc::CriticalSection process_lock_; |
pbos-webrtc
2016/04/12 11:20:55
s/lock/crit for consistency
sprang_webrtc
2016/04/12 14:06:17
Done.
|
+ rtc::CriticalSection receive_lock_; |
VCMTiming _timing; |
VCMReceiver _receiver; |
VCMDecodedFrameCallback _decodedFrameCallback; |
- VCMFrameTypeCallback* _frameTypeCallback GUARDED_BY(process_crit_sect_); |
- VCMReceiveStatisticsCallback* _receiveStatsCallback |
- GUARDED_BY(process_crit_sect_); |
- VCMDecoderTimingCallback* _decoderTimingCallback |
- GUARDED_BY(process_crit_sect_); |
- VCMPacketRequestCallback* _packetRequestCallback |
- GUARDED_BY(process_crit_sect_); |
+ VCMFrameTypeCallback* _frameTypeCallback GUARDED_BY(process_lock_); |
+ VCMReceiveStatisticsCallback* _receiveStatsCallback GUARDED_BY(process_lock_); |
+ VCMDecoderTimingCallback* _decoderTimingCallback GUARDED_BY(process_lock_); |
+ VCMPacketRequestCallback* _packetRequestCallback GUARDED_BY(process_lock_); |
VCMRenderBufferSizeCallback* render_buffer_callback_ |
- GUARDED_BY(process_crit_sect_); |
+ GUARDED_BY(process_lock_); |
VCMGenericDecoder* _decoder; |
-#ifdef DEBUG_DECODER_BIT_STREAM |
- FILE* _bitStreamBeforeDecoder; |
-#endif |
+ |
VCMFrameBuffer _frameFromFile; |
- bool _scheduleKeyRequest GUARDED_BY(process_crit_sect_); |
- bool drop_frames_until_keyframe_ GUARDED_BY(process_crit_sect_); |
- size_t max_nack_list_size_ GUARDED_BY(process_crit_sect_); |
+ bool _scheduleKeyRequest GUARDED_BY(process_lock_); |
+ bool drop_frames_until_keyframe_ GUARDED_BY(process_lock_); |
+ size_t max_nack_list_size_ GUARDED_BY(process_lock_); |
- VCMCodecDataBase _codecDataBase GUARDED_BY(_receiveCritSect); |
- EncodedImageCallback* pre_decode_image_callback_ GUARDED_BY(_receiveCritSect); |
+ VCMCodecDataBase _codecDataBase GUARDED_BY(receive_lock_); |
+ EncodedImageCallback* pre_decode_image_callback_ GUARDED_BY(receive_lock_); |
VCMProcessTimer _receiveStatsTimer; |
VCMProcessTimer _retransmissionTimer; |
VCMProcessTimer _keyRequestTimer; |
QpParser qp_parser_; |
ThreadUnsafeOneTimeEvent first_frame_received_; |
+ |
+ rtc::CriticalSection file_write_lock_; |
pbos-webrtc
2016/04/12 11:20:55
crit_, but I think all of this should be moved to
sprang_webrtc
2016/04/12 14:06:17
Done.
|
+ uint32_t ssrc_; |
pbos-webrtc
2016/04/12 11:20:55
There shouldn't be a SSRC for a video-coding modul
sprang_webrtc
2016/04/12 14:06:17
Acknowledged.
|
+ std::unique_ptr<IvfFileWriter> file_writer_ GUARDED_BY(file_write_lock_); |
}; |
} // namespace vcm |