OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
(...skipping 26 matching lines...) Expand all Loading... |
37 public: | 37 public: |
38 explicit VCMEncodedFrameCallback(EncodedImageCallback* post_encode_callback); | 38 explicit VCMEncodedFrameCallback(EncodedImageCallback* post_encode_callback); |
39 virtual ~VCMEncodedFrameCallback(); | 39 virtual ~VCMEncodedFrameCallback(); |
40 | 40 |
41 // Implements EncodedImageCallback. | 41 // Implements EncodedImageCallback. |
42 int32_t Encoded(const EncodedImage& encoded_image, | 42 int32_t Encoded(const EncodedImage& encoded_image, |
43 const CodecSpecificInfo* codec_specific, | 43 const CodecSpecificInfo* codec_specific, |
44 const RTPFragmentationHeader* fragmentation_header) override; | 44 const RTPFragmentationHeader* fragmentation_header) override; |
45 int32_t SetTransportCallback(VCMPacketizationCallback* transport); | 45 int32_t SetTransportCallback(VCMPacketizationCallback* transport); |
46 void SetMediaOpt(media_optimization::MediaOptimization* media_opt); | 46 void SetMediaOpt(media_optimization::MediaOptimization* media_opt); |
| 47 void SetPayloadType(uint8_t payload_type) { payload_type_ = payload_type; } |
47 void SetInternalSource(bool internal_source) { | 48 void SetInternalSource(bool internal_source) { |
48 internal_source_ = internal_source; | 49 internal_source_ = internal_source; |
49 } | 50 } |
50 void SignalLastEncoderImplementationUsed( | 51 void SignalLastEncoderImplementationUsed( |
51 const char* encoder_implementation_name); | 52 const char* encoder_implementation_name); |
52 | 53 |
53 private: | 54 private: |
54 VCMPacketizationCallback* send_callback_; | 55 VCMPacketizationCallback* send_callback_; |
55 media_optimization::MediaOptimization* media_opt_; | 56 media_optimization::MediaOptimization* media_opt_; |
| 57 uint8_t payload_type_; |
56 bool internal_source_; | 58 bool internal_source_; |
57 | 59 |
58 EncodedImageCallback* post_encode_callback_; | 60 EncodedImageCallback* post_encode_callback_; |
59 }; | 61 }; |
60 | 62 |
61 class VCMGenericEncoder { | 63 class VCMGenericEncoder { |
62 friend class VCMCodecDataBase; | 64 friend class VCMCodecDataBase; |
63 | 65 |
64 public: | 66 public: |
65 VCMGenericEncoder(VideoEncoder* encoder, | 67 VCMGenericEncoder(VideoEncoder* encoder, |
(...skipping 25 matching lines...) Expand all Loading... |
91 VCMEncodedFrameCallback* const vcm_encoded_frame_callback_; | 93 VCMEncodedFrameCallback* const vcm_encoded_frame_callback_; |
92 const bool internal_source_; | 94 const bool internal_source_; |
93 rtc::CriticalSection params_lock_; | 95 rtc::CriticalSection params_lock_; |
94 EncoderParameters encoder_params_ GUARDED_BY(params_lock_); | 96 EncoderParameters encoder_params_ GUARDED_BY(params_lock_); |
95 bool is_screenshare_; | 97 bool is_screenshare_; |
96 }; | 98 }; |
97 | 99 |
98 } // namespace webrtc | 100 } // namespace webrtc |
99 | 101 |
100 #endif // WEBRTC_MODULES_VIDEO_CODING_GENERIC_ENCODER_H_ | 102 #endif // WEBRTC_MODULES_VIDEO_CODING_GENERIC_ENCODER_H_ |
OLD | NEW |