Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(803)

Side by Side Diff: ui/gl/gl_image_linux_dma_buffer.cc

Issue 1062853002: Add gfx::GpuMemoryBuffer::YUV_420 and GpuMemoryBufferImplSharedMemory support (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 #include "ui/gl/gl_image_linux_dma_buffer.h" 5 #include "ui/gl/gl_image_linux_dma_buffer.h"
6 6
7 #include <unistd.h> 7 #include <unistd.h>
8 8
9 #define FOURCC(a, b, c, d) \ 9 #define FOURCC(a, b, c, d) \
10 ((static_cast<uint32>(a)) | (static_cast<uint32>(b) << 8) | \ 10 ((static_cast<uint32>(a)) | (static_cast<uint32>(b) << 8) | \
(...skipping 21 matching lines...) Expand all
32 switch (format) { 32 switch (format) {
33 case gfx::GpuMemoryBuffer::RGBX_8888: 33 case gfx::GpuMemoryBuffer::RGBX_8888:
34 return true; 34 return true;
35 case gfx::GpuMemoryBuffer::ATC: 35 case gfx::GpuMemoryBuffer::ATC:
36 case gfx::GpuMemoryBuffer::ATCIA: 36 case gfx::GpuMemoryBuffer::ATCIA:
37 case gfx::GpuMemoryBuffer::DXT1: 37 case gfx::GpuMemoryBuffer::DXT1:
38 case gfx::GpuMemoryBuffer::DXT5: 38 case gfx::GpuMemoryBuffer::DXT5:
39 case gfx::GpuMemoryBuffer::ETC1: 39 case gfx::GpuMemoryBuffer::ETC1:
40 case gfx::GpuMemoryBuffer::RGBA_8888: 40 case gfx::GpuMemoryBuffer::RGBA_8888:
41 case gfx::GpuMemoryBuffer::BGRA_8888: 41 case gfx::GpuMemoryBuffer::BGRA_8888:
42 case gfx::GpuMemoryBuffer::YUV_420:
42 return false; 43 return false;
43 } 44 }
44 NOTREACHED(); 45 NOTREACHED();
45 return false; 46 return false;
46 case GL_RGBA: 47 case GL_RGBA:
47 switch (format) { 48 switch (format) {
48 case gfx::GpuMemoryBuffer::BGRA_8888: 49 case gfx::GpuMemoryBuffer::BGRA_8888:
49 return true; 50 return true;
50 case gfx::GpuMemoryBuffer::ATC: 51 case gfx::GpuMemoryBuffer::ATC:
51 case gfx::GpuMemoryBuffer::ATCIA: 52 case gfx::GpuMemoryBuffer::ATCIA:
52 case gfx::GpuMemoryBuffer::DXT1: 53 case gfx::GpuMemoryBuffer::DXT1:
53 case gfx::GpuMemoryBuffer::DXT5: 54 case gfx::GpuMemoryBuffer::DXT5:
54 case gfx::GpuMemoryBuffer::ETC1: 55 case gfx::GpuMemoryBuffer::ETC1:
55 case gfx::GpuMemoryBuffer::RGBX_8888: 56 case gfx::GpuMemoryBuffer::RGBX_8888:
56 case gfx::GpuMemoryBuffer::RGBA_8888: 57 case gfx::GpuMemoryBuffer::RGBA_8888:
58 case gfx::GpuMemoryBuffer::YUV_420:
57 return false; 59 return false;
58 } 60 }
59 NOTREACHED(); 61 NOTREACHED();
60 return false; 62 return false;
61 default: 63 default:
62 return false; 64 return false;
63 } 65 }
64 } 66 }
65 67
66 EGLint FourCC(gfx::GpuMemoryBuffer::Format format) { 68 EGLint FourCC(gfx::GpuMemoryBuffer::Format format) {
67 switch (format) { 69 switch (format) {
68 case gfx::GpuMemoryBuffer::BGRA_8888: 70 case gfx::GpuMemoryBuffer::BGRA_8888:
69 return DRM_FORMAT_ARGB8888; 71 return DRM_FORMAT_ARGB8888;
70 case gfx::GpuMemoryBuffer::RGBX_8888: 72 case gfx::GpuMemoryBuffer::RGBX_8888:
71 return DRM_FORMAT_XRGB8888; 73 return DRM_FORMAT_XRGB8888;
72 case gfx::GpuMemoryBuffer::ATC: 74 case gfx::GpuMemoryBuffer::ATC:
73 case gfx::GpuMemoryBuffer::ATCIA: 75 case gfx::GpuMemoryBuffer::ATCIA:
74 case gfx::GpuMemoryBuffer::DXT1: 76 case gfx::GpuMemoryBuffer::DXT1:
75 case gfx::GpuMemoryBuffer::DXT5: 77 case gfx::GpuMemoryBuffer::DXT5:
76 case gfx::GpuMemoryBuffer::ETC1: 78 case gfx::GpuMemoryBuffer::ETC1:
77 case gfx::GpuMemoryBuffer::RGBA_8888: 79 case gfx::GpuMemoryBuffer::RGBA_8888:
80 case gfx::GpuMemoryBuffer::YUV_420:
78 NOTREACHED(); 81 NOTREACHED();
79 return 0; 82 return 0;
80 } 83 }
81 84
82 NOTREACHED(); 85 NOTREACHED();
83 return 0; 86 return 0;
84 } 87 }
85 88
86 bool IsHandleValid(const base::FileDescriptor& handle) { 89 bool IsHandleValid(const base::FileDescriptor& handle) {
87 return handle.fd >= 0; 90 return handle.fd >= 0;
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
123 EGL_DMA_BUF_PLANE0_OFFSET_EXT, 126 EGL_DMA_BUF_PLANE0_OFFSET_EXT,
124 0, 127 0,
125 EGL_DMA_BUF_PLANE0_PITCH_EXT, 128 EGL_DMA_BUF_PLANE0_PITCH_EXT,
126 pitch, 129 pitch,
127 EGL_NONE}; 130 EGL_NONE};
128 return GLImageEGL::Initialize( 131 return GLImageEGL::Initialize(
129 EGL_LINUX_DMA_BUF_EXT, static_cast<EGLClientBuffer>(NULL), attrs); 132 EGL_LINUX_DMA_BUF_EXT, static_cast<EGLClientBuffer>(NULL), attrs);
130 } 133 }
131 134
132 } // namespace gfx 135 } // namespace gfx
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698