dctExtract method
Implementation
Uint8List? dctExtract(Uint8List jpegBytes, int maxBytes) {
final jpegPtr = calloc<ffi.Uint8>(jpegBytes.length);
final outLenPtr = calloc<ffi.Size>();
try {
jpegPtr.asTypedList(jpegBytes.length).setAll(0, jpegBytes);
final resultPtr = _dctExtract(
jpegPtr,
jpegBytes.length,
maxBytes,
outLenPtr,
);
if (resultPtr == ffi.nullptr) return null;
try {
final len = outLenPtr.value;
return Uint8List.fromList(resultPtr.asTypedList(len));
} finally {
_dctFree(resultPtr);
}
} finally {
calloc.free(jpegPtr);
calloc.free(outLenPtr);
}
}