11#include <promeki/config.h>
12#if PROMEKI_ENABLE_PROAV
21PROMEKI_NAMESPACE_BEGIN
53class JpegVideoEncoder :
public VideoEncoder {
63 ~JpegVideoEncoder()
override;
72 static List<int> supportedInputList();
74 void onConfigure(
const MediaConfig &config)
override;
75 Error submitFrame(
const Frame &frame)
override;
76 Frame receiveFrame()
override;
77 Error flush()
override;
78 Error reset()
override;
81 int quality()
const {
return _quality; }
84 Subsampling subsampling()
const {
return _subsampling; }
88 using ImplPtr = UniquePtr<Impl>;
92 Subsampling _subsampling = Subsampling422;
93 PixelFormat _outputPd;
96 bool _capacityWarned =
false;
118class JpegVideoDecoder :
public VideoDecoder {
121 ~JpegVideoDecoder()
override;
128 static List<int> supportedOutputList();
130 void onConfigure(
const MediaConfig &config)
override;
131 Error submitFrame(
const Frame &frame)
override;
132 Frame receiveFrame()
override;
133 Error flush()
override;
134 Error reset()
override;
138 using ImplPtr = UniquePtr<Impl>;
141 PixelFormat _outputPd;
144 bool _capacityWarned =
false;