Cameron Cawley
2cb46c19ed
IMAGE: Split Cinepak CodebookConverterRaw into 8bpp and 24bpp versions
2024-04-22 02:07:47 +02:00
Cameron Cawley
ed59ab8a3b
IMAGE: Make use of aligned loads and stores when dithering Cinepak videos
2024-04-22 02:07:47 +02:00
Cameron Cawley
f683ecbf7b
IMAGE: Cache the dithered Cinepak codebooks when using VFW-style dithering
2024-04-22 02:07:47 +02:00
Cameron Cawley
5b1b14ad80
COMMON: Mark more symbols as const
2023-12-26 20:23:59 +01:00
Cameron Cawley
b458cedca4
IMAGE: Speed up 16/24/32bpp BMP decoding
2023-05-14 22:53:33 +02:00
Miro Kropacek
67aea06893
IMAGE: Fix MSRLEDecoder if pitch > width
...
Fixes #14356 .
2023-05-14 22:41:41 +02:00
Thierry Crozat
d2d564125d
IMAGE: Add missing override keyword for setOutputPixelFormat
2023-04-05 22:24:46 +01:00
Cameron Cawley
9a6897a852
IMAGE: Allow the default pixel format to be changed for YUV codecs
2023-04-05 12:45:13 +02:00
Cameron Cawley
78faa2ae28
IMAGE: Defer creation of surface until decodeFrame() is called in Indeo codecs
2023-04-05 12:45:13 +02:00
Cameron Cawley
71030e2840
IMAGE: Use the screen pixel format by default for the Xan decoder
2023-03-24 21:34:16 +01:00
Eugene Sandulenko
6ee213d472
IMAGE: CODECS: Add override keyword
2023-03-03 23:23:49 +01:00
Cameron Cawley
d503d5530e
IMAGE: Compile the TrueMotion codec when the Testbed engine is enabled
2023-02-23 11:57:49 +00:00
Cameron Cawley
8da9cca186
IMAGE: Add override keywords for all codecs
2023-02-23 11:23:21 +00:00
grisenti
aa52aafe81
IMAGES: force alpha decoding for BMP images
2022-12-23 14:03:35 +01:00
Cameron Cawley
0581301b24
COMMON: Move huffman.h back out of the compression directory
2022-12-11 22:33:23 +01:00
elasota
cc11b531e3
JANITORIAL: Clean up all non-engine Visual Studio warnings.
2022-12-04 00:08:48 +01:00
Eugene Sandulenko
fb7095f5a4
COMMON: Move all compression-related files to a separate directory
2022-12-01 11:53:02 +01:00
Le Philousophe
32bd7cf446
IMAGE: Add missing initializer to HNM6 decoder
...
This clears static analysis error
2022-09-18 12:12:02 +02:00
Le Philousophe
5e2c6720a7
IMAGE: Cleanup HNM6 decoder
2022-09-18 12:11:44 +02:00
Le Philousophe
cf61337968
CRYOMNI3D: Build fixes in HNM6 and APC decoders
2022-08-30 11:43:06 +02:00
Le Philousophe
399e02e2a5
CRYOMNI3D: Add HNM6 image and video codec
...
This also adds a Cryo APC decoder in shared code.
2022-08-30 11:02:32 +02:00
Cameron Cawley
47755b4b38
COMMON: Make better use of inlining in BitStream functions
2022-08-28 00:05:31 +03:00
kevinlaurier
84a17ad9ae
IMAGE: Added support for 16 bit bitmap images, and check for RGB555
...
format
2022-01-23 21:38:33 +01:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+
2021-12-26 18:48:43 +01:00
Orgad Shaneh
7a4e5612de
JANITORIAL: Replace new[]/memset with new[]()
...
Mostly done using the following Ruby script:
(Dir.glob('**/*.cpp') + Dir.glob('**/*.h')).each do |file|
s = File.read(file, encoding: 'iso8859-1')
t = s.gsub(/(([\w_.\[\]]+)\s*=\s*new\s+\S+?\[[^\]]+?\](?!\())([^\{\}]*?)\n\s+memset\(\s*\2\s*,\s*0\s*,[^;]*;/m, '\1()\3')
if t != s
File.open(file, 'w') { |io| io.write(t) }
end
end
2021-11-10 19:53:15 +01:00
sluicebox
620dc8a1df
IMAGE: Fix BitmapRawDecoder constructor regression
...
Fixes parameter order mismatch between definition and declaration
introduced in: 5d093e725fd6832280d0865abdb685e41bf3efda
Fixes flipped QFG4 intro movie, bug #13059
2021-11-04 00:46:46 -05:00
lb_ii
236be25624
IMAGE: Parse 4bpp BMP files
2021-11-01 16:26:19 +02:00
lb_ii
5d093e725f
IMAGE: Extend raw decoder to support BMP with alpha channel
2021-11-01 16:25:43 +02:00
Eugene Sandulenko
8626c39b21
IMAGE: Fix SMC decoder
...
It is a regression introduced in 6fb49b65955d34bc4f3cdc37afb9908faf81dd42.
Because of this, we were not reading all the bytes from the source.
2021-08-10 20:51:42 +02:00
ysj1173886760
2be3f87a49
DIRECTOR: change _isQT to _flip in BimapRawDecoder
2021-08-05 19:03:58 +08:00
ysj1173886760
1b5f986df9
IMAGE: change the type of rleCode to int to prevent overflow.
2021-08-05 17:42:10 +08:00
ysj1173886760
adfa11e684
IMAGE: flip 8bpp images when we are decoding QuickTimeVideo
2021-08-05 15:06:14 +08:00
Matthew Duggan
732d05f036
IMAGE: Make JYV1 decoder a little more robust to bad data
2021-07-25 15:40:03 +09:00
Paul Gilbert
005561d305
COMMON: Increase Stream pos, seek, size from int32 to int64
2021-07-08 18:24:28 -07:00
Paul Gilbert
baccbedf50
GRAPHICS: Changed surface classes sizes from uint16 to int16
2021-07-04 18:24:27 -07:00
Matthew Duggan
c24f92cb6f
IMAGE: Fix decoding bug in Crusader: No Remorse RRV videos
...
Previously the upscale test was changing the frame contents with incorrect data
before going back, but the algorithm relies on not changing contents for some
pixels by "skipping" them. Duplicated a bit of code to create a
non-destructive upscale test before decoding the whole frame.
2021-05-26 12:27:44 +09:00
Cameron Cawley
d9fe53efb2
CRYOMNI3D: Move HNMDecoder into common code
2021-04-17 21:48:45 +03:00
Eugene Sandulenko
5e7fe2dc57
JANITORIAL: Replace spaces in indentation with tabs
2021-04-15 21:20:36 +02:00
Matthew Duggan
017a801c96
IMAGE: Add support for Xan codec videos (Crusader, Wing Commander)
2021-03-14 19:16:24 +01:00
Le Philousophe
cd8cd86a9e
IMAGE: Move mpeg2dec.h inclusion in CPP file
...
This avoids to pollute declarations with inttypes.h and mpeg2dec.h when
including mpeg.h
2021-02-13 17:49:21 +01:00
Eugene Sandulenko
6fb49b6595
IMAGE: Added sanity checks to SMC video decoder
2020-08-19 14:54:47 +02:00
Eugene Sandulenko
2999977154
IMAGE: CODECS: Plug QT RAW decoder
2020-08-10 12:46:38 +02:00
Cameron Cawley
00e3c03755
ALL: Remove unnecessary graphics/colormasks.h includes
2020-06-15 16:59:34 +01:00
Matthew Duggan
2ac6579236
IMAGE: Fix use of and keyword
2020-05-12 22:43:00 +09:00
Matthew Duggan
818e681746
IMAGE: Add support for Crusader: No Remorse movie decoding
...
The movies for Crusader: No Remorse have a unique decoder which is not too hard
to implement. Unfortunately, they don't properly implement the "compression"
FourCC, and instead put their ID in the "Stream Handler". Since supporting
them requires a change to the existing Image API, I thought I should make a
pull request for comments.
With this change, the movies in Crusader can all be played nicely.
2020-05-11 07:54:24 +02:00
D G Turner
f0c02796f4
IMAGE: Fix Missing Default Switch Case in Truemotion 1 Codec
...
This is flagged by GCC if -Wswitch-default is enabled.
2019-12-01 01:26:53 +00:00
D G Turner
aee09409e8
IMAGE: Fix Missing Default Switch Cases
...
These are flagged by GCC if -Wswitch-default is enabled.
2019-11-30 22:08:44 +00:00
Bastien Bouclet
0d5d04ca3a
IMAGE: Allow setting the output pixel format to the JPEG decoder
2019-04-28 07:59:14 +02:00
Bastien Bouclet
0f57aea2df
COMMON: Use a prefix table to speed up the Huffman decoder
...
Symbols for codes shorter than the prefix table index width are stored
in the table. All the entries in the table with an index starting with
the code are set to the symbol value. That way, when decoding it is
possible to get the number of bits corresponding to the table width from
the bitstream and directly find the symbol value. Longer code still need
to be searched for in the codes list.
2019-04-13 16:24:25 +03:00
Torbjörn Andersson
d4f8b330d6
IMAGE: Honor nb_fields when calculating frame duration
...
From what I understand, this has something to do with the image
being either made up from two or three parts. When it's made from
three parts, the frame should be displayed for half again as long
as normal.
This makes the speed of the Zork: Grand Inquisitor video look
about right to me. It's still out of sync, but it doesn't seem to
get *more* out of sync as the video progresses.
2018-11-04 22:33:22 +01:00