OLD | NEW |
---|---|
1 /* | 1 /* |
2 * Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2014 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 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
47 uint32_t _encodedHeight = 0; | 47 uint32_t _encodedHeight = 0; |
48 uint32_t _timeStamp = 0; | 48 uint32_t _timeStamp = 0; |
49 // NTP time of the capture time in local timebase in milliseconds. | 49 // NTP time of the capture time in local timebase in milliseconds. |
50 int64_t ntp_time_ms_ = 0; | 50 int64_t ntp_time_ms_ = 0; |
51 int64_t capture_time_ms_ = 0; | 51 int64_t capture_time_ms_ = 0; |
52 FrameType _frameType = kVideoFrameDelta; | 52 FrameType _frameType = kVideoFrameDelta; |
53 uint8_t* _buffer; | 53 uint8_t* _buffer; |
54 size_t _length; | 54 size_t _length; |
55 size_t _size; | 55 size_t _size; |
56 VideoRotation rotation_ = kVideoRotation_0; | 56 VideoRotation rotation_ = kVideoRotation_0; |
57 VideoContentType content_type_ = VideoContentType::UNSPECIFIED; | 57 mutable VideoContentType content_type_ = VideoContentType::UNSPECIFIED; |
sprang_webrtc
2017/08/24 09:13:16
Why does it need to be mutable?
ilnik
2017/08/25 12:35:07
Because it's modified in the VCMEncodedFrameCallba
| |
58 bool _completeFrame = false; | 58 bool _completeFrame = false; |
59 AdaptReason adapt_reason_; | 59 AdaptReason adapt_reason_; |
60 int qp_ = -1; // Quantizer value. | 60 int qp_ = -1; // Quantizer value. |
61 | 61 |
62 // When an application indicates non-zero values here, it is taken as an | 62 // When an application indicates non-zero values here, it is taken as an |
63 // indication that all future frames will be constrained with those limits | 63 // indication that all future frames will be constrained with those limits |
64 // until the application indicates a change again. | 64 // until the application indicates a change again. |
65 PlayoutDelay playout_delay_ = {-1, -1}; | 65 PlayoutDelay playout_delay_ = {-1, -1}; |
66 | 66 |
67 // Timing information should be updatable on const instances. | 67 // Timing information should be updatable on const instances. |
68 mutable struct Timing { | 68 mutable struct Timing { |
69 uint8_t flags = TimingFrameFlags::kInvalid; | 69 uint8_t flags = TimingFrameFlags::kInvalid; |
70 int64_t encode_start_ms = 0; | 70 int64_t encode_start_ms = 0; |
71 int64_t encode_finish_ms = 0; | 71 int64_t encode_finish_ms = 0; |
72 int64_t packetization_finish_ms = 0; | 72 int64_t packetization_finish_ms = 0; |
73 int64_t pacer_exit_ms = 0; | 73 int64_t pacer_exit_ms = 0; |
74 int64_t network_timestamp_ms = 0; | 74 int64_t network_timestamp_ms = 0; |
75 int64_t network2_timestamp_ms = 0; | 75 int64_t network2_timestamp_ms = 0; |
76 int64_t receive_start_ms = 0; | 76 int64_t receive_start_ms = 0; |
77 int64_t receive_finish_ms = 0; | 77 int64_t receive_finish_ms = 0; |
78 } timing_; | 78 } timing_; |
79 }; | 79 }; |
80 | 80 |
81 } // namespace webrtc | 81 } // namespace webrtc |
82 | 82 |
83 #endif // WEBRTC_COMMON_VIDEO_INCLUDE_VIDEO_FRAME_H_ | 83 #endif // WEBRTC_COMMON_VIDEO_INCLUDE_VIDEO_FRAME_H_ |
OLD | NEW |