OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef MEDIA_BASE_VIDEO_FRAME_METADATA_H_ | 5 #ifndef MEDIA_BASE_VIDEO_FRAME_METADATA_H_ |
6 #define MEDIA_BASE_VIDEO_FRAME_METADATA_H_ | 6 #define MEDIA_BASE_VIDEO_FRAME_METADATA_H_ |
7 | 7 |
8 #include "base/compiler_specific.h" | 8 #include "base/compiler_specific.h" |
9 #include "base/time/time.h" | 9 #include "base/time/time.h" |
10 #include "base/values.h" | 10 #include "base/values.h" |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
43 // frame-level resource utilization stats. Use Get/SetTimeDelta() for this | 43 // frame-level resource utilization stats. Use Get/SetTimeDelta() for this |
44 // key. | 44 // key. |
45 FRAME_DURATION, | 45 FRAME_DURATION, |
46 | 46 |
47 // Represents either the fixed frame rate, or the maximum frame rate to | 47 // Represents either the fixed frame rate, or the maximum frame rate to |
48 // expect from a variable-rate source. This value generally remains the | 48 // expect from a variable-rate source. This value generally remains the |
49 // same for all frames in the same session. Use Get/SetDouble() for this | 49 // same for all frames in the same session. Use Get/SetDouble() for this |
50 // key. | 50 // key. |
51 FRAME_RATE, | 51 FRAME_RATE, |
52 | 52 |
53 // This field represents the local time at which either: 1) the frame was | |
54 // generated, if it was done so locally; or 2) the targeted play-out time | |
55 // of the frame, if it was generated from a remote source. This value is NOT | |
56 // a high-resolution timestamp, and so it should not be used as a | |
57 // presentation time; but, instead, it should be used for buffering playback | |
58 // and for A/V synchronization purposes. | |
59 // Use Get/SetTimeTicks() for this key. | |
60 REFERENCE_TIME, | |
61 | |
62 // A feedback signal that indicates the fraction of the tolerable maximum | 53 // A feedback signal that indicates the fraction of the tolerable maximum |
63 // amount of resources that were utilized to process this frame. A producer | 54 // amount of resources that were utilized to process this frame. A producer |
64 // can check this value after-the-fact, usually via a VideoFrame destruction | 55 // can check this value after-the-fact, usually via a VideoFrame destruction |
65 // observer, to determine whether the consumer can handle more or less data | 56 // observer, to determine whether the consumer can handle more or less data |
66 // volume, and achieve the right quality versus performance trade-off. | 57 // volume, and achieve the right quality versus performance trade-off. |
67 // | 58 // |
68 // Use Get/SetDouble() for this key. Values are interpreted as follows: | 59 // Use Get/SetDouble() for this key. Values are interpreted as follows: |
69 // Less than 0.0 is meaningless and should be ignored. 1.0 indicates a | 60 // Less than 0.0 is meaningless and should be ignored. 1.0 indicates a |
70 // maximum sustainable utilization. Greater than 1.0 indicates the consumer | 61 // maximum sustainable utilization. Greater than 1.0 indicates the consumer |
71 // is likely to stall or drop frames if the data volume is not reduced. | 62 // is likely to stall or drop frames if the data volume is not reduced. |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
118 const base::BinaryValue* GetBinaryValue(Key key) const; | 109 const base::BinaryValue* GetBinaryValue(Key key) const; |
119 | 110 |
120 base::DictionaryValue dictionary_; | 111 base::DictionaryValue dictionary_; |
121 | 112 |
122 DISALLOW_COPY_AND_ASSIGN(VideoFrameMetadata); | 113 DISALLOW_COPY_AND_ASSIGN(VideoFrameMetadata); |
123 }; | 114 }; |
124 | 115 |
125 } // namespace media | 116 } // namespace media |
126 | 117 |
127 #endif // MEDIA_BASE_VIDEO_FRAME_METADATA_H_ | 118 #endif // MEDIA_BASE_VIDEO_FRAME_METADATA_H_ |
OLD | NEW |