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

Unified Diff: content/common/gpu/media/exynos_v4l2_video_device.h

Issue 137023008: Add support for Tegra V4L2 VDA (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 9 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 side-by-side diff with in-line comments
Download patch
Index: content/common/gpu/media/exynos_v4l2_video_device.h
diff --git a/content/common/gpu/media/exynos_v4l2_video_device.h b/content/common/gpu/media/exynos_v4l2_video_device.h
index 39c3428523ec1fca2ec8a05d8430416e70dd2fbf..da758de1b08077e9fccb9f062134b31e0f652391 100644
--- a/content/common/gpu/media/exynos_v4l2_video_device.h
+++ b/content/common/gpu/media/exynos_v4l2_video_device.h
@@ -18,21 +18,39 @@ class ExynosV4L2Device : public V4L2Device {
virtual ~ExynosV4L2Device();
// V4L2Device implementation.
- int Ioctl(int request, void* arg) OVERRIDE;
- bool Poll(bool poll_device, bool* event_pending) OVERRIDE;
- bool SetDevicePollInterrupt() OVERRIDE;
- bool ClearDevicePollInterrupt() OVERRIDE;
- void* Mmap(void* addr,
- unsigned int len,
- int prot,
- int flags,
- unsigned int offset) OVERRIDE;
- void Munmap(void* addr, unsigned int len) OVERRIDE;
-
- // Does all the initialization of device fds, returns true on success.
- bool Initialize();
+ virtual int Ioctl(int request, void* arg) OVERRIDE;
+ virtual bool Poll(bool poll_device, bool* event_pending) OVERRIDE;
+ virtual bool SetDevicePollInterrupt() OVERRIDE;
+ virtual bool ClearDevicePollInterrupt() OVERRIDE;
+ virtual void* Mmap(void* addr,
+ unsigned int len,
+ int prot,
+ int flags,
+ unsigned int offset) OVERRIDE;
+ virtual void Munmap(void* addr, unsigned int len) OVERRIDE;
+ virtual bool Initialize() OVERRIDE;
+ virtual EGLImageKHR CreateEGLImage(EGLDisplay egl_display,
+ GLuint texture_id,
+ gfx::Size frame_buffer_size,
+ unsigned int buffer_index,
+ unsigned int total_buffers) OVERRIDE;
+ virtual void DestroyEGLImage(unsigned int buffer_index) OVERRIDE;
+ virtual GLenum GetTextureTarget() OVERRIDE;
+ virtual uint32 GetCapturePixelFormat() OVERRIDE;
+ virtual uint8 GetNumberOfPlanes() OVERRIDE;
private:
+ // Record for output buffer.
+ struct DeviceOutputRecord {
+ DeviceOutputRecord();
+ ~DeviceOutputRecord();
+ int fds[2]; // file descriptors for each plane.
+ EGLImageKHR egl_image; // EGLImageKHR for the output buffer.
+ };
sheu 2014/03/27 02:00:23 Since we already have the output buffers being tra
shivdasp 2014/03/27 02:41:04 Ohh I did not know that the fd can be closed immed
Pawel Osciak 2014/03/27 05:18:06 John is right. To add more detail: the owner of b
+
+ // Mapping of int index to output buffer record.
+ std::vector<DeviceOutputRecord> device_output_buffer_map_;
+
// The actual device fd.
int device_fd_;

Powered by Google App Engine
This is Rietveld 408576698