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

Unified Diff: media/video/capture/linux/v4l2_capture_delegate_single_plane.h

Issue 1124723006: VideoCaptureDeviceLinux: Add support for SPLANE+DMABUF V4L2 type capture (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: posciak@ review and rebase (AsPlatformFile(), ...BufferPoolUtilization...)). Created 5 years, 6 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: media/video/capture/linux/v4l2_capture_delegate_single_plane.h
diff --git a/media/video/capture/linux/v4l2_capture_delegate_single_plane.h b/media/video/capture/linux/v4l2_capture_delegate_single_plane.h
index 8d4dc91f5206a2e8bb0a23c5b106768ca7e86bd4..90000d899a0fbd1d49161f5f1af52bf85678141f 100644
--- a/media/video/capture/linux/v4l2_capture_delegate_single_plane.h
+++ b/media/video/capture/linux/v4l2_capture_delegate_single_plane.h
@@ -16,15 +16,13 @@ class SingleThreadTaskRunner;
namespace media {
// V4L2 specifics for SPLANE API.
-class V4L2CaptureDelegateSinglePlane final : public V4L2CaptureDelegate {
+class V4L2CaptureDelegateSinglePlane : public V4L2CaptureDelegate {
public:
V4L2CaptureDelegateSinglePlane(
const VideoCaptureDevice::Name& device_name,
const scoped_refptr<base::SingleThreadTaskRunner>& v4l2_task_runner,
- int power_line_frequency)
- : V4L2CaptureDelegate(device_name,
- v4l2_task_runner,
- power_line_frequency) {}
+ int power_line_frequency,
+ bool allow_using_dma_bufs);
private:
// BufferTracker derivation to implement construction semantics for SPLANE.
@@ -36,7 +34,7 @@ class V4L2CaptureDelegateSinglePlane final : public V4L2CaptureDelegate {
~BufferTrackerSPlane() override {}
};
- ~V4L2CaptureDelegateSinglePlane() override {}
+ ~V4L2CaptureDelegateSinglePlane() override;
// V4L2CaptureDelegate virtual methods implementation.
scoped_refptr<BufferTracker> CreateBufferTracker() const override;
@@ -44,11 +42,15 @@ class V4L2CaptureDelegateSinglePlane final : public V4L2CaptureDelegate {
uint32_t width,
uint32_t height,
uint32_t pixelformat_fourcc) const override;
- void FinishFillingV4L2Buffer(v4l2_buffer* buffer) const override;
void SetPayloadSize(const scoped_refptr<BufferTracker>& buffer_tracker,
const v4l2_buffer& buffer) const override;
+ void FinishFillingV4L2Buffer(v4l2_buffer* buffer,
+ bool for_enqueue) const override;
void SendBuffer(const scoped_refptr<BufferTracker>& buffer_tracker,
const v4l2_format& format) const override;
+
+ private:
+ mutable ScopedVector<VideoCaptureDevice::Client::Buffer> allocated_buffers_;
};
} // namespace media

Powered by Google App Engine
This is Rietveld 408576698