11#include <promeki/config.h>
12#if PROMEKI_ENABLE_JPEGXS
21PROMEKI_NAMESPACE_BEGIN
62class JpegXsVideoEncoder :
public VideoEncoder {
67 static constexpr int DefaultBpp = 3;
72 static constexpr int DefaultDecomposition = 5;
75 ~JpegXsVideoEncoder()
override;
84 static List<int> supportedInputList();
86 void onConfigure(
const MediaConfig &config)
override;
87 Error submitFrame(
const Frame &frame)
override;
88 Frame receiveFrame()
override;
89 Error flush()
override;
90 Error reset()
override;
93 int bpp()
const {
return _bpp; }
96 int decomposition()
const {
return _decomposition; }
106 using ImplPtr = UniquePtr<Impl>;
109 int _bpp = DefaultBpp;
110 int _decomposition = DefaultDecomposition;
111 PixelFormat _outputPd;
114 bool _capacityWarned =
false;
130class JpegXsVideoDecoder :
public VideoDecoder {
132 JpegXsVideoDecoder();
133 ~JpegXsVideoDecoder()
override;
140 static List<int> supportedOutputList();
142 void onConfigure(
const MediaConfig &config)
override;
143 Error submitFrame(
const Frame &frame)
override;
144 Frame receiveFrame()
override;
145 Error flush()
override;
146 Error reset()
override;
153 using ImplPtr = UniquePtr<Impl>;
156 PixelFormat _outputPd;
159 bool _capacityWarned =
false;