vendor: OpenCV 5.0.0 snapshot at 40738fb16ceddb5fb3fea747585f7ce6abb0605b
This commit is contained in:
Vendored
+63
@@ -0,0 +1,63 @@
|
||||
|
||||
#include "tiffiop.h"
|
||||
|
||||
#if defined(HAVE_JPEGTURBO_DUAL_MODE_8_12)
|
||||
#define JPEG_DUAL_MODE_8_12
|
||||
#endif
|
||||
|
||||
#if defined(JPEG_DUAL_MODE_8_12)
|
||||
|
||||
#define FROM_TIF_JPEG_12
|
||||
|
||||
#ifdef TIFFInitJPEG
|
||||
#undef TIFFInitJPEG
|
||||
#endif
|
||||
#define TIFFInitJPEG TIFFInitJPEG_12
|
||||
|
||||
#ifdef TIFFJPEGIsFullStripRequired
|
||||
#undef TIFFJPEGIsFullStripRequired
|
||||
#endif
|
||||
#define TIFFJPEGIsFullStripRequired TIFFJPEGIsFullStripRequired_12
|
||||
|
||||
int TIFFInitJPEG_12(TIFF *tif, int scheme);
|
||||
|
||||
#if !defined(HAVE_JPEGTURBO_DUAL_MODE_8_12)
|
||||
#include LIBJPEG_12_PATH
|
||||
#endif
|
||||
|
||||
#include "tif_jpeg.c"
|
||||
|
||||
int TIFFReInitJPEG_12(TIFF *tif, const JPEGOtherSettings *otherSettings,
|
||||
int scheme, int is_encode)
|
||||
{
|
||||
JPEGState *sp;
|
||||
uint8_t *new_tif_data;
|
||||
|
||||
(void)scheme;
|
||||
assert(scheme == COMPRESSION_JPEG);
|
||||
|
||||
new_tif_data =
|
||||
(uint8_t *)_TIFFreallocExt(tif, tif->tif_data, sizeof(JPEGState));
|
||||
|
||||
if (new_tif_data == NULL)
|
||||
{
|
||||
TIFFErrorExtR(tif, "TIFFReInitJPEG_12",
|
||||
"No space for JPEG state block");
|
||||
return 0;
|
||||
}
|
||||
|
||||
tif->tif_data = new_tif_data;
|
||||
_TIFFmemset(tif->tif_data, 0, sizeof(JPEGState));
|
||||
|
||||
TIFFInitJPEGCommon(tif);
|
||||
|
||||
sp = JState(tif);
|
||||
sp->otherSettings = *otherSettings;
|
||||
|
||||
if (is_encode)
|
||||
return JPEGSetupEncode(tif);
|
||||
else
|
||||
return JPEGSetupDecode(tif);
|
||||
}
|
||||
|
||||
#endif /* defined(JPEG_DUAL_MODE_8_12) */
|
||||
Reference in New Issue
Block a user