summaryrefslogtreecommitdiff
path: root/src/gstreamer/gstlibcamera-utils.cpp
AgeCommit message (Expand)Author
2024-05-14gstreamer: Fix string memory leakBarnabás Pőcze
2024-05-09libcamera: Drop remaining file name from header comment blocksLaurent Pinchart
2024-02-02gstreamer: Map 10/12/14/16 bayer formats supportsNicolas Dufresne
2024-02-02gstreamer: Map R8/R16 pixel formatNicolas Dufresne
2023-01-05libcamera: Use C++17 [[fallthrough]] everywhereMatti Lehtimäki
2022-12-24gstreamer: Add bayer8 support to libcamerasrc elementPavel Machek
2022-11-21gstreamer: Do not lookup controls by idJacopo Mondi
2022-11-12gstreamer: Provide framerate support for libcamerasrcRishikesh Donadkar
2022-09-12gstreamer: Check gstreamer version before using newer macrosVedant Paranjape
2022-09-01gstreamer: Provide colorimetry <> ColorSpace mappingsRishikesh Donadkar
2022-08-24gstreamer: Add support for additional RGB formatsLaurent Pinchart
2022-07-04gstreamer: Use gst_task_resume() when availableLaurent Pinchart
2021-09-28gstreamer: Fix spelling of the work manager used in a util functionVedant Paranjape
2021-09-22gstreamer: Convert cm_singleton_ptr to static variableVedant Paranjape
2021-09-22gstreamer: Support planar formatsKieran Bingham
2021-08-26gstreamer: Fix usage of default size for fixationNicolas Dufresne
2021-08-26gstreamer: Fix concurrent access issues to CameraManagerNicolas Dufresne
2020-06-18gst: Replace explicit DRM FourCCs with libcamera formatsLaurent Pinchart
2020-03-18libcamera: PixelFormat: Make constructor explicitLaurent Pinchart
2020-03-18libcamera: Use PixelFormat instead of unsigned int where appropriateNiklas Söderlund
2020-03-07gst: utils: Factor-out the task resume helperJakub Adam
2020-03-07gst: utils: Add StreamConfiguration helpersNicolas Dufresne
2020-03-07gst: Add utility to convert StreamFormats to GstCapsNicolas Dufresne
formed synchronously, and * the return value contained in the pack may be used. For queued invocations, * the return value is stored at an undefined point of time and shall thus not * be used by the caller. * * \return True if the return value contained in the \a pack may be used by the * caller, false otherwise */ bool BoundMethodBase::activatePack(std::shared_ptr<BoundMethodPackBase> pack, bool deleteMethod) { ConnectionType type = connectionType_; if (type == ConnectionTypeAuto) { if (Thread::current() == object_->thread()) type = ConnectionTypeDirect; else type = ConnectionTypeQueued; } else if (type == ConnectionTypeBlocking) { if (Thread::current() == object_->thread()) type = ConnectionTypeDirect; } switch (type) { case ConnectionTypeDirect: default: invokePack(pack.get()); if (deleteMethod) delete this; return true; case ConnectionTypeQueued: { std::unique_ptr<Message> msg = std::make_unique<InvokeMessage>(this, pack, nullptr, deleteMethod); object_->postMessage(std::move(msg)); return false; } case ConnectionTypeBlocking: { Semaphore semaphore; std::unique_ptr<Message> msg = std::make_unique<InvokeMessage>(this, pack, &semaphore, deleteMethod); object_->postMessage(std::move(msg)); semaphore.acquire(); return true; } } } } /* namespace libcamera */