From 3a6c4bd146cc6647daf458bbc048bd861e702f62 Mon Sep 17 00:00:00 2001 From: Jacopo Mondi Date: Wed, 12 Jun 2019 13:09:57 +0100 Subject: libcamera: Rename V4L2Device to V4L2VideoDevice MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In preparation of creating a new V4L2Device base class, rename V4L2Device to V4L2VideoDevice. This is a project wide rename without any intended functional change. Signed-off-by: Jacopo Mondi Signed-off-by: Kieran Bingham Reviewed-by: Kieran Bingham Reviewed-by: Niklas Söderlund Reviewed-by: Laurent Pinchart --- test/v4l2_device/buffer_sharing.cpp | 186 ------------------------------------ 1 file changed, 186 deletions(-) delete mode 100644 test/v4l2_device/buffer_sharing.cpp (limited to 'test/v4l2_device/buffer_sharing.cpp') diff --git a/test/v4l2_device/buffer_sharing.cpp b/test/v4l2_device/buffer_sharing.cpp deleted file mode 100644 index e63ddff8..00000000 --- a/test/v4l2_device/buffer_sharing.cpp +++ /dev/null @@ -1,186 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0-or-later */ -/* - * Copyright (C) 2019, Google Inc. - * - * libcamera V4L2 API tests - * - * Validate the function of exporting buffers from a V4L2Device and - * the ability to import them to another V4L2Device instance. - * Ensure that the Buffers can successfully be queued and dequeued - * between both devices. - */ - -#include - -#include -#include -#include -#include - -#include "v4l2_device_test.h" - -class BufferSharingTest : public V4L2DeviceTest -{ -public: - BufferSharingTest() - : V4L2DeviceTest("vivid", "vivid-000-vid-cap"), - output_(nullptr), framesCaptured_(0), framesOutput_(0) {} - -protected: - int init() - { - int ret = V4L2DeviceTest::init(); - if (ret) - return ret; - - /* media_ already represents VIVID */ - MediaEntity *entity = media_->getEntityByName("vivid-000-vid-out"); - if (!entity) - return TestSkip; - - output_ = new V4L2Device(entity); - if (!output_) { - std::cout << "Failed to create output device" << std::endl; - return TestFail; - } - - ret = output_->open(); - if (ret) { - std::cout << "Failed to open output device" << std::endl; - return TestFail; - } - - V4L2DeviceFormat format = {}; - - ret = capture_->getFormat(&format); - if (ret) { - std::cout << "Failed to get capture format" << std::endl; - return TestFail; - } - - ret = output_->setFormat(&format); - if (ret) { - std::cout << "Failed to set output format" << std::endl; - return TestFail; - } - - pool_.createBuffers(bufferCount); - - ret = capture_->exportBuffers(&pool_); - if (ret) { - std::cout << "Failed to export buffers" << std::endl; - return TestFail; - } - - ret = output_->importBuffers(&pool_); - if (ret) { - std::cout << "Failed to import buffers" << std::endl; - return TestFail; - } - - return 0; - } - - void captureBufferReady(Buffer *buffer) - { - std::cout << "Received capture buffer: " << buffer->index() - << " sequence " << buffer->sequence() << std::endl; - - output_->queueBuffer(buffer); - framesCaptured_++; - } - - void outputBufferReady(Buffer *buffer) - { - std::cout << "Received output buffer: " << buffer->index() - << " sequence " << buffer->sequence() << std::endl; - - capture_->queueBuffer(buffer); - framesOutput_++; - } - - int run() - { - EventDispatcher *dispatcher = CameraManager::instance()->eventDispatcher(); - Timer timeout; - int ret; - - capture_->bufferReady.connect(this, &BufferSharingTest::captureBufferReady); - output_->bufferReady.connect(this, &BufferSharingTest::outputBufferReady); - - /* Queue all the buffers to the capture device. */ - for (Buffer &buffer : pool_.buffers()) { - if (capture_->queueBuffer(&buffer)) - return TestFail; - } - - ret = capture_->streamOn(); - if (ret) { - std::cout << "Failed to start streaming on the capture device" << std::endl; - return TestFail; - } - - ret = output_->streamOn(); - if (ret) { - std::cout << "Failed to start streaming on the output device" << std::endl; - return TestFail; - } - - timeout.start(10000); - while (timeout.isRunning()) { - dispatcher->processEvents(); - if (framesCaptured_ > 30 && framesOutput_ > 30) - break; - } - - if ((framesCaptured_ < 1) || (framesOutput_ < 1)) { - std::cout << "Failed to process any frames within timeout." << std::endl; - return TestFail; - } - - if ((framesCaptured_ < 30) || (framesOutput_ < 30)) { - std::cout << "Failed to process 30 frames within timeout." << std::endl; - return TestFail; - } - - ret = capture_->streamOff(); - if (ret) { - std::cout << "Failed to stop streaming on the capture device" << std::endl; - return TestFail; - } - - ret = output_->streamOff(); - if (ret) { - std::cout << "Failed to stop streaming on the output device" << std::endl; - return TestFail; - } - - return TestPass; - } - - void cleanup() - { - std::cout - << "Captured " << framesCaptured_ << " frames and " - << "output " << framesOutput_ << " frames" - << std::endl; - - output_->streamOff(); - output_->releaseBuffers(); - output_->close(); - - delete output_; - - V4L2DeviceTest::cleanup(); - } - -private: - const unsigned int bufferCount = 4; - - V4L2Device *output_; - - unsigned int framesCaptured_; - unsigned int framesOutput_; -}; - -TEST_REGISTER(BufferSharingTest); -- cgit v1.2.1