| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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_H_ | 5 #ifndef MEDIA_BASE_VIDEO_FRAME_H_ |
| 6 #define MEDIA_BASE_VIDEO_FRAME_H_ | 6 #define MEDIA_BASE_VIDEO_FRAME_H_ |
| 7 | 7 |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/callback.h" | 10 #include "base/callback.h" |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 55 YV24 = 5, // 24bpp YUV planar, no subsampling. | 55 YV24 = 5, // 24bpp YUV planar, no subsampling. |
| 56 #if defined(OS_MACOSX) || defined(OS_CHROMEOS) | 56 #if defined(OS_MACOSX) || defined(OS_CHROMEOS) |
| 57 NV12 = 6, // 12bpp with Y plane followed by a 2x2 interleaved UV plane. | 57 NV12 = 6, // 12bpp with Y plane followed by a 2x2 interleaved UV plane. |
| 58 #endif | 58 #endif |
| 59 ARGB = 7, // 32bpp ARGB, 1 plane. | 59 ARGB = 7, // 32bpp ARGB, 1 plane. |
| 60 XRGB = 8, // 24bpp XRGB, 1 plane. | 60 XRGB = 8, // 24bpp XRGB, 1 plane. |
| 61 // Please update UMA histogram enumeration when adding new formats here. | 61 // Please update UMA histogram enumeration when adding new formats here. |
| 62 FORMAT_MAX = XRGB, // Must always be equal to largest entry logged. | 62 FORMAT_MAX = XRGB, // Must always be equal to largest entry logged. |
| 63 }; | 63 }; |
| 64 | 64 |
| 65 // Color space or color range used for the pixels. | 65 // Color space or color range used for the pixels, in general this is left |
| 66 // unspecified, meaning Rec601 (SD) is assumed. |
| 66 // Logged to UMA, so never reuse values. Leave gaps if necessary. | 67 // Logged to UMA, so never reuse values. Leave gaps if necessary. |
| 67 enum ColorSpace { | 68 enum ColorSpace { |
| 68 COLOR_SPACE_UNSPECIFIED = 0, // In general this is Rec601. | 69 COLOR_SPACE_UNSPECIFIED = 0, // In general this is Rec601. |
| 69 COLOR_SPACE_JPEG = 1, // JPEG color range. | 70 COLOR_SPACE_JPEG = 1, // JPEG color range. |
| 70 COLOR_SPACE_HD_REC709 = 2, // Rec709 "HD" color space. | 71 COLOR_SPACE_HD_REC709 = 2, // Rec709 "HD" color space. |
| 71 COLOR_SPACE_SD_REC601 = 3, // Rec601 "SD" color space. | 72 COLOR_SPACE_MAX = COLOR_SPACE_HD_REC709, |
| 72 COLOR_SPACE_MAX = COLOR_SPACE_SD_REC601, | |
| 73 }; | 73 }; |
| 74 | 74 |
| 75 // Defines the pixel storage type. Differentiates between directly accessible | 75 // Defines the pixel storage type. Differentiates between directly accessible |
| 76 // |data_| and pixels that are only indirectly accessible and not via mappable | 76 // |data_| and pixels that are only indirectly accessible and not via mappable |
| 77 // memory. | 77 // memory. |
| 78 // Note that VideoFrames of any StorageType can also have Texture backing, | 78 // Note that VideoFrames of any StorageType can also have Texture backing, |
| 79 // with "classical" GPU Driver-only textures identified as STORAGE_OPAQUE. | 79 // with "classical" GPU Driver-only textures identified as STORAGE_OPAQUE. |
| 80 enum StorageType { | 80 enum StorageType { |
| 81 STORAGE_UNKNOWN = 0, | 81 STORAGE_UNKNOWN = 0, |
| 82 STORAGE_OPAQUE = 1, // We don't know how VideoFrame's pixels are stored. | 82 STORAGE_OPAQUE = 1, // We don't know how VideoFrame's pixels are stored. |
| (...skipping 429 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 512 uint32 release_sync_point_; | 512 uint32 release_sync_point_; |
| 513 | 513 |
| 514 VideoFrameMetadata metadata_; | 514 VideoFrameMetadata metadata_; |
| 515 | 515 |
| 516 DISALLOW_IMPLICIT_CONSTRUCTORS(VideoFrame); | 516 DISALLOW_IMPLICIT_CONSTRUCTORS(VideoFrame); |
| 517 }; | 517 }; |
| 518 | 518 |
| 519 } // namespace media | 519 } // namespace media |
| 520 | 520 |
| 521 #endif // MEDIA_BASE_VIDEO_FRAME_H_ | 521 #endif // MEDIA_BASE_VIDEO_FRAME_H_ |
| OLD | NEW |