| 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 |
| 53 // A feedback signal that indicates the fraction of the tolerable maximum | 62 // A feedback signal that indicates the fraction of the tolerable maximum |
| 54 // amount of resources that were utilized to process this frame. A producer | 63 // amount of resources that were utilized to process this frame. A producer |
| 55 // can check this value after-the-fact, usually via a VideoFrame destruction | 64 // can check this value after-the-fact, usually via a VideoFrame destruction |
| 56 // observer, to determine whether the consumer can handle more or less data | 65 // observer, to determine whether the consumer can handle more or less data |
| 57 // volume, and achieve the right quality versus performance trade-off. | 66 // volume, and achieve the right quality versus performance trade-off. |
| 58 // | 67 // |
| 59 // Use Get/SetDouble() for this key. Values are interpreted as follows: | 68 // Use Get/SetDouble() for this key. Values are interpreted as follows: |
| 60 // Less than 0.0 is meaningless and should be ignored. 1.0 indicates a | 69 // Less than 0.0 is meaningless and should be ignored. 1.0 indicates a |
| 61 // maximum sustainable utilization. Greater than 1.0 indicates the consumer | 70 // maximum sustainable utilization. Greater than 1.0 indicates the consumer |
| 62 // is likely to stall or drop frames if the data volume is not reduced. | 71 // 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... |
| 109 const base::BinaryValue* GetBinaryValue(Key key) const; | 118 const base::BinaryValue* GetBinaryValue(Key key) const; |
| 110 | 119 |
| 111 base::DictionaryValue dictionary_; | 120 base::DictionaryValue dictionary_; |
| 112 | 121 |
| 113 DISALLOW_COPY_AND_ASSIGN(VideoFrameMetadata); | 122 DISALLOW_COPY_AND_ASSIGN(VideoFrameMetadata); |
| 114 }; | 123 }; |
| 115 | 124 |
| 116 } // namespace media | 125 } // namespace media |
| 117 | 126 |
| 118 #endif // MEDIA_BASE_VIDEO_FRAME_METADATA_H_ | 127 #endif // MEDIA_BASE_VIDEO_FRAME_METADATA_H_ |
| OLD | NEW |