27 lines
741 B
C++
27 lines
741 B
C++
|
|
#ifndef LCAMERA_DEV_PLANAR_YUV_FORMAT_POLICY_H
|
||
|
|
#define LCAMERA_DEV_PLANAR_YUV_FORMAT_POLICY_H
|
||
|
|
|
||
|
|
#include <libcamera/pixel_format.h>
|
||
|
|
#include <optional>
|
||
|
|
#include <vector>
|
||
|
|
|
||
|
|
namespace lcamera_dev {
|
||
|
|
|
||
|
|
bool isFullyPlanarYuv(const libcamera::PixelFormat& pixelFormat);
|
||
|
|
|
||
|
|
bool isKnownYuvCaptureFormat(const libcamera::PixelFormat& pixelFormat);
|
||
|
|
|
||
|
|
unsigned yuvCapturePlaneCount(const libcamera::PixelFormat& pixelFormat);
|
||
|
|
|
||
|
|
std::optional<libcamera::PixelFormat>
|
||
|
|
selectYuvCaptureFormat(
|
||
|
|
const std::vector<libcamera::PixelFormat>& candidates,
|
||
|
|
bool fullPlanarIsOptional);
|
||
|
|
|
||
|
|
std::string formatCandidateListForDiagnostics(
|
||
|
|
const std::vector<libcamera::PixelFormat>& candidates);
|
||
|
|
|
||
|
|
} // namespace lcamera_dev
|
||
|
|
|
||
|
|
#endif // LCAMERA_DEV_PLANAR_YUV_FORMAT_POLICY_H
|