dctEmbed method
Implementation
Uint8List? dctEmbed(Uint8List jpegBytes, Uint8List payload) {
final jpegPtr = calloc<ffi.Uint8>(jpegBytes.length);
final payloadPtr = calloc<ffi.Uint8>(payload.length);
final outLenPtr = calloc<ffi.Size>();
try {
jpegPtr.asTypedList(jpegBytes.length).setAll(0, jpegBytes);
payloadPtr.asTypedList(payload.length).setAll(0, payload);
final resultPtr = _dctEmbed(
jpegPtr,
jpegBytes.length,
payloadPtr,
payload.length,
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(payloadPtr);
calloc.free(outLenPtr);
}
}