11#include <promeki/config.h>
12#if PROMEKI_ENABLE_PROAV
21PROMEKI_NAMESPACE_BEGIN
61class JpegGeometryProbe {
83 bool isValid()
const {
return width > 0 && height > 0; }
101 PixelFormat pixelFormat;
115 ImageDesc imageDesc()
const {
116 return valid ? ImageDesc(size, pixelFormat) : ImageDesc();
120 JpegGeometryProbe() =
default;
135 static SofData parseSof(
const uint8_t *data,
size_t size);
149 bool hasGeometry()
const {
return _last.valid; }
156 const Result &lastResult()
const {
return _last; }
186 const Result &probe(
const Buffer &reassembled, uint8_t rfc2435Type,
194 uint32_t _cachedWidth = 0;
195 uint32_t _cachedHeight = 0;
197 uint8_t _cachedYsf = 0;
198 uint8_t _cachedRfc2435Type = 0xFFu;
200 bool _hasCacheKey =
false;