Commit Graph

58 Commits

Author SHA1 Message Date
Dmitry Timoshkov 361b0ed5ba windowscodecs: Move JPEG frame image data initialization from Frame::CopyPixels to Decoder::Initialize.
This is how PNG decoder does things, and it avoids image data corruption
in some cases (presumably when libjpeg reuses existing scanline data).

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-22 18:21:42 +01:00
Dmitry Timoshkov b9bb512018 windowscodecs: Implement IWICBitmapDecoder::GetMetadataQueryReader in the JPEG encoder.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-07 16:42:14 +01:00
Dmitry Timoshkov c2451240dc windowscodecs: Implement IWICBitmapEncoder::GetEncoderInfo in JPEG encoder.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-06 17:00:50 +01:00
Nikolay Sivov 938d00cd76 windowscodecs: Implement GetContainerFormat() for encoders.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-04 23:27:29 +01:00
Nikolay Sivov 5976988b1e wincodecs: Trace WICRect arguments.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-13 20:54:28 +01:00
Michael Stefaniuc 434ced6953 windowscodecs: Use the ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-14 11:57:54 +02:00
Nikolay Sivov aaea92198d wincodecs: Add a helper for GetDecoderInfo().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-02 20:47:11 +02:00
Dmitry Timoshkov d2cd9a842e windowscodecs: Fix stride calculation in JPEG decoder.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-06 15:46:09 -06:00
Anton Romanov 343c58890b windowscodecs: Fix data corruption for Adobe CMYK JPEGs.
Signed-off-by: Anton Romanov <theli.ua@gmail.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-26 18:47:33 +01:00
Nikolay Sivov 0be89601f5 wincodecs: Encoder options are optional for CreateNewFrame().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-05 18:44:54 +01:00
Nikolay Sivov 93afd254bb wincodecs: Use static array for property bag descriptions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-05 18:44:52 +01:00
Dmitry Timoshkov 3bd1b57039 windowscodecs: Fix IWICBitmapEncoder::SetPalette for a not initialized case in JPEG encoder.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-12 10:26:53 +02:00
Dmitry Timoshkov a901fa9dc3 windowscodecs: Implement IWICBitmapFrameEncode::SetPalette in JPEG encoder.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-11 19:11:11 +02:00
Zebediah Figura 8648aaf86d wincodecs: Add encoder options for JPEG.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-31 10:14:09 +02:00
Dmitry Timoshkov c94bf3cf27 windowscodecs: Implement IWICMetadataQueryReader::GetLocation.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-26 08:53:04 +02:00
Andrew Eikum 70a643d056 windowscodecs: Stub IMetadataBlockReader for jpegformat.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-16 12:12:12 +09:00
Andrew Eikum 1b8e123465 windowscodecs: Stub IWICMetadataQueryReader.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-16 12:12:10 +09:00
Vincent Povirk 30f9834061 windowscodecs: Share WriteSource code between implementations. 2014-06-16 09:29:05 +02:00
Dmitry Timoshkov d03f65a51f windowscodecs: Move the aggregation check from object constructors to class factory. 2014-01-14 12:31:42 +01:00
Vincent Povirk 7a728d1813 windowscodecs: Don't treat S_FALSE as failure. 2013-12-02 10:47:52 +01:00
Frédéric Delanoy 0153a962f6 windowscodecs: Use BOOL type where appropriate. 2013-10-21 10:44:41 +02:00
Dmitry Timoshkov fb87ee2464 windowscodecs: Make JPEG decoder fallback to 96 dpi resolution for density_unit == 0 case. 2013-03-25 14:03:14 +01:00
Andrew Talbot 81afb28818 windowscodecs: Avoid signed-unsigned integer comparisons. 2013-03-04 11:15:16 +01:00
Ludger Sprenker d4b1db7141 windowscodecs: Implement ComponentFactory::CreateEncoderPropertyBag. 2013-01-30 13:10:24 +01:00
Andrew Talbot 4bb2c61b39 windowscodecs: Remove unneeded address-of operators from array names. 2012-12-07 10:33:51 +01:00
Dmitry Timoshkov 67eafab883 windowscodecs: Implement QueryCapability of the JPEG decoder. 2012-11-27 19:45:34 +01:00
Dmitry Timoshkov c44024f1e0 windowscodecs: Add a NULL check to GetFrameCount of the JPEG decoder. 2012-11-27 19:45:34 +01:00
Dmitry Timoshkov a8eaeaf511 windowscodecs: Make GetFrame return WINCODEC_ERR_FRAMEMISSING without an image data. 2012-11-23 18:06:10 +01:00
Dmitry Timoshkov f8d2c922b0 windowscodecs: Do not assume that vtable is the first element of the object, avoid not necessary casts. 2012-07-24 21:27:11 +02:00
Vincent Povirk 10a32bfed1 windowscodecs: Implement JpegDecoder_Frame_GetResolution. 2012-04-18 17:15:46 +02:00
Vincent Povirk 8b3fce9b8e windowscodecs: Implement JpegEncoder_Frame_WriteSource. 2012-04-18 17:15:39 +02:00
Vincent Povirk 4b9fabefd4 windowscodecs: Implement JpegEncoder_Commit. 2012-04-17 11:45:46 +02:00
Vincent Povirk df3da729fe windowscodecs: Implement JpegEncoder_Frame_Commit. 2012-04-17 11:45:41 +02:00
Vincent Povirk 20521a5bb7 windowscodecs: Implement JpegEncoder_Frame_WritePixels. 2012-04-17 11:45:36 +02:00
Vincent Povirk 29b0c79e24 windowscodecs: Implement JpegEncoder_Frame_SetResolution. 2012-04-17 11:45:29 +02:00
Vincent Povirk 68d9ea4d83 windowscodecs: Implement JpegEncoder_Frame_SetPixelFormat. 2012-04-17 11:45:25 +02:00
Vincent Povirk f5847da714 windowscodecs: Implement JpegEncoder_Frame_SetSize. 2012-04-12 20:37:43 +02:00
Vincent Povirk 1ce8a66e79 windowscodecs: Implement JpegEncoder_Frame_Initialize. 2012-04-12 20:37:38 +02:00
Vincent Povirk 7f302c81b3 windowscodecs: Implement JpegEncoder_CreateNewFrame. 2012-04-12 20:37:33 +02:00
Vincent Povirk 8a066b2c20 windowscodecs: Implement JpegEncoder_Initialize. 2012-04-12 20:37:24 +02:00
Vincent Povirk 2e2b045db0 windowscodecs: Add stub JPEG encoder. 2012-04-12 20:37:12 +02:00
Andrew Talbot e1b7291785 windowscodecs: Remove unneeded address-of operators from array names. 2011-11-02 12:31:48 +01:00
Vincent Povirk e9fba4fc07 windowscodecs: Implement GetDecoderInfo for all the decoders. 2011-07-28 11:30:09 +02:00
Austin English bceb274c94 windowscodecs: Only declare jpeg debug channel if jpeg is supported. 2011-04-11 12:22:59 +02:00
Vincent Povirk d9fb1a4b92 windowscodecs: Add a utility function for swapping 8-bit BGR/RGB data. 2011-01-11 16:05:43 +01:00
Michael Stefaniuc 682600b7fc windowscodecs: Standardize the COM usage in jpegformat.c. 2010-11-29 13:28:25 +01:00
Krzysztof Nowicki 145bda5aa6 windowscodecs: Fix *_CopyPixels functions to properly handle a NULL rectangle. 2010-10-20 10:23:35 +02:00
Vincent Povirk 1cb7e6f879 windowscodecs: Override libjpeg's default error handling. 2010-09-13 13:32:06 -05:00
Vincent Povirk 116cf47df3 windowscodecs: Decode CMYK/YCCK JPEG images as CMYK. 2010-09-13 13:31:49 -05:00
Matteo Bruni 23e173109d windowscodecs: Reset the stream pointer when initializing JPEG decoder. 2010-07-26 09:58:21 +02:00