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 <memory> | 8 #include <memory> |
9 #include <string> | 9 #include <string> |
10 | 10 |
(...skipping 24 matching lines...) Expand all Loading... |
35 // Some VideoFrames have an indication of the color space used. Use | 35 // Some VideoFrames have an indication of the color space used. Use |
36 // GetInteger()/SetInteger() and ColorSpace enumeration. | 36 // GetInteger()/SetInteger() and ColorSpace enumeration. |
37 COLOR_SPACE, | 37 COLOR_SPACE, |
38 | 38 |
39 // Indicates that this frame must be copied to a new texture before use, | 39 // Indicates that this frame must be copied to a new texture before use, |
40 // rather than being used directly. Specifically this is required for | 40 // rather than being used directly. Specifically this is required for |
41 // WebView because of limitations about sharing surface textures between GL | 41 // WebView because of limitations about sharing surface textures between GL |
42 // contexts. | 42 // contexts. |
43 COPY_REQUIRED, | 43 COPY_REQUIRED, |
44 | 44 |
45 // Indicates that the frame is owned by the decoder and that destroying the | |
46 // decoder will make the frame unrenderable. TODO(sandersd): Remove once OSX | |
47 // and Windows hardware decoders support frames which outlive the decoder. | |
48 // http://crbug.com/595716 and http://crbug.com/602708. | |
49 DECODER_OWNS_FRAME, | |
50 | |
51 // Indicates if the current frame is the End of its current Stream. Use | 45 // Indicates if the current frame is the End of its current Stream. Use |
52 // Get/SetBoolean() for this Key. | 46 // Get/SetBoolean() for this Key. |
53 END_OF_STREAM, | 47 END_OF_STREAM, |
54 | 48 |
55 // The estimated duration of this frame (i.e., the amount of time between | 49 // The estimated duration of this frame (i.e., the amount of time between |
56 // the media timestamp of this frame and the next). Note that this is not | 50 // the media timestamp of this frame and the next). Note that this is not |
57 // the same information provided by FRAME_RATE as the FRAME_DURATION can | 51 // the same information provided by FRAME_RATE as the FRAME_DURATION can |
58 // vary unpredictably for every frame. Consumers can use this to optimize | 52 // vary unpredictably for every frame. Consumers can use this to optimize |
59 // playback scheduling, make encoding quality decisions, and/or compute | 53 // playback scheduling, make encoding quality decisions, and/or compute |
60 // frame-level resource utilization stats. Use Get/SetTimeDelta() for this | 54 // frame-level resource utilization stats. Use Get/SetTimeDelta() for this |
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
166 const base::Value* GetBinaryValue(Key key) const; | 160 const base::Value* GetBinaryValue(Key key) const; |
167 | 161 |
168 base::DictionaryValue dictionary_; | 162 base::DictionaryValue dictionary_; |
169 | 163 |
170 DISALLOW_COPY_AND_ASSIGN(VideoFrameMetadata); | 164 DISALLOW_COPY_AND_ASSIGN(VideoFrameMetadata); |
171 }; | 165 }; |
172 | 166 |
173 } // namespace media | 167 } // namespace media |
174 | 168 |
175 #endif // MEDIA_BASE_VIDEO_FRAME_METADATA_H_ | 169 #endif // MEDIA_BASE_VIDEO_FRAME_METADATA_H_ |
OLD | NEW |