Matthew Hoops
5091f846a7
GRAPHICS: Switch PICT's palette from RGBA to RGB
2011-02-20 00:45:59 -05:00
Matthew Hoops
098581b3b5
GRAPHICS: Use the DirectBits size instead of the overall PICT dimensions
...
Fixes some Myst ME images
2011-02-20 00:43:18 -05:00
Johannes Schickel
e6c7544fe2
GRAPHICS: Fix cursor palette buffering after RGBA->RGB change.
...
Thanks to clone2727 for noticing this.
2011-02-20 05:43:04 +01:00
Johannes Schickel
292f197142
GRAPHICS: Remove note about alpha channel removal in PaletteManager.
2011-02-19 23:45:03 +01:00
Johannes Schickel
05f0855efc
GRAPHICS: Update CursorManager documentation for RGBA->RGB change.
2011-02-14 17:08:32 +01:00
Johannes Schickel
f53f1af062
GRAPHICS: Adapt thumbnail code to grabPalette RGBA->RGB change.
2011-02-14 17:08:32 +01:00
Johannes Schickel
18ff02a2fa
GRAPHICS: Update PaletteManager documentation for RGBA->RGB change.
2011-02-14 17:08:31 +01:00
Max Horn
ab039812e7
COMMON: OSystem now has a PaletteManager
...
svn-id: r55806
2011-02-07 17:52:38 +00:00
Bastien Bouclet
e7a57de38b
GRAPHICS: Improved JPEG decoder performance
...
Replaced the 2D IDCT by two 1D IDCT (rows, then columns).
JPEG images now decode about twice as fast as they used to.
svn-id: r55794
2011-02-06 13:43:40 +00:00
Filippos Karapetis
2f08dcb667
GRAPHICS: Fixed a bug with indexed PNGs in the PNG decoder (a byte can't hold 256 entries)
...
svn-id: r55742
2011-02-02 21:18:10 +00:00
Filippos Karapetis
e6f2f7e615
GRAPHICS: Updated the copyright information regarding LodePNG. Removed the obsolete reference to ysflight, as no code is actually used from or based on that project
...
svn-id: r55726
2011-02-02 16:40:39 +00:00
Filippos Karapetis
a86cb87b98
GRAPHICS: Implemented a PNG decoder, and set it as default for the sword25 engine
...
libpng is still needed for PNG encoding (for thumbnails in saved games of sword25), but
since we'll probably drop support for the original saved games anyway, the PNG encoding
code will ultimately be removed
svn-id: r55723
2011-02-02 15:43:45 +00:00
Filippos Karapetis
c0ce8a839e
Silenced some MSVC warnings
...
svn-id: r55699
2011-01-31 23:19:00 +00:00
Max Horn
c44f9bdb1d
GRAPHICS: Make JPEG::getComponent error out if component was not found
...
svn-id: r55587
2011-01-28 09:50:05 +00:00
Max Horn
96d91ec182
GRAPHICS: Turn sqrt(2) and cosine values into constants ;)
...
svn-id: r55586
2011-01-28 09:46:39 +00:00
Max Horn
baf6af4fa6
GRAPHICS: Rename JPEG::_str to _stream
...
We use _str to denote strings almost everywhere, so this
was a bit confusing. Another alternative would be to use _s.
svn-id: r55585
2011-01-28 09:37:11 +00:00
Torbjörn Andersson
7bf8dda27f
JANITORIAL: Remove unnecessary backslash
...
svn-id: r55483
2011-01-23 21:59:26 +00:00
Eugene Sandulenko
806ccf5d25
GRAPHICS: Move graphics/video/ to video/. Step 1/2
...
svn-id: r55473
2011-01-23 17:14:43 +00:00
Sven Hesse
c039b06c3c
VIDEO: Fix createSurface() for the case that there's no video
...
Fixes clicking on the Piano in the Apartment in Urban Runner.
svn-id: r55456
2011-01-23 03:46:38 +00:00
Matthew Hoops
57521f7574
VIDEO: Update documentation on which decoder is used by what engine
...
svn-id: r55455
2011-01-23 01:27:40 +00:00
Matthew Hoops
257a6b2e6d
VIDEO: Fix QuickTime audio buffering on the last frame
...
svn-id: r55450
2011-01-22 23:31:21 +00:00
Sven Hesse
95e557c564
VIDEO: Seek a video seek glitch
...
Observable when ESCing a 16bit or 24bit video, for example
the fuses in Urban Runner's Labyrinth screen.
svn-id: r55410
2011-01-22 08:00:57 +00:00
Sven Hesse
e1e299d0b8
VIDEO: Correctly correct the _blitMode 1/2 coordinate differences
...
This fixes the figure lights position in the Secret Room, while
still leaving the flow rate gauge position in the Labyrinth correct
svn-id: r55409
2011-01-22 07:20:16 +00:00
Sven Hesse
bb6c230587
GOB: Implement looping live videos
...
Needed for the buttons in the Playtoons series
svn-id: r55359
2011-01-20 18:17:39 +00:00
Sven Hesse
33ed3fa8a0
VIDEO: Don't delete, just finish the audiostream on video end
...
svn-id: r55356
2011-01-20 17:07:17 +00:00
Sven Hesse
75c840b527
VIDEO: Add hasVideo()
...
svn-id: r55348
2011-01-20 12:28:22 +00:00
Sven Hesse
8c80f80697
VIDEO: The getTimeToNextFrame override is useless now
...
svn-id: r55341
2011-01-20 03:27:09 +00:00
Sven Hesse
d77899e158
GOB: Make Urban Runner's "3D view" work again
...
svn-id: r55340
2011-01-20 03:22:43 +00:00
Sven Hesse
679a8d6ad6
VIDEO: Recreate the audiostream if necessary
...
svn-id: r55324
2011-01-19 09:03:09 +00:00
Sven Hesse
2e30eca6d0
VIDEO: Don't segfault when no audiostream is present
...
svn-id: r55322
2011-01-19 09:02:07 +00:00
Sven Hesse
22c3e7b1de
VIDEO: Don't assert() when a needed codec isn't compiled in
...
svn-id: r55317
2011-01-19 00:16:13 +00:00
Matthew Hoops
503fdb6147
GRAPHICS: Add a getSurface() function to JPEG to automatically convert to RGB
...
svn-id: r55301
2011-01-18 16:18:10 +00:00
Sven Hesse
94f5bec0f6
GOB: Fix Woodruff video offsets
...
svn-id: r55288
2011-01-18 07:03:12 +00:00
Sven Hesse
d509941eca
VIDEO: Clip render rect to the surface's dimension
...
...And not to the video's. Oops :P
svn-id: r55285
2011-01-18 05:09:43 +00:00
Sven Hesse
da65a3cbf3
GOB: Fix the flow rate gauge in Urban Runner
...
svn-id: r55275
2011-01-17 09:48:42 +00:00
Sven Hesse
84cda62d1f
VIDEO: Implement internal-codec 24bpp VMDs
...
svn-id: r55265
2011-01-16 16:41:27 +00:00
Sven Hesse
32b94cc236
VIDEO: Implement internal-codec 16bit VMDs
...
svn-id: r55263
2011-01-16 16:29:43 +00:00
Sven Hesse
faa66fc01a
VIDEO: Add color mode methods
...
To query the video's color mode and notifying the decoder that
the system's color mode changed.
svn-id: r55259
2011-01-16 16:27:52 +00:00
Sven Hesse
afd101c526
VIDEO: Add range checks to deLZ77()
...
svn-id: r55258
2011-01-16 16:27:22 +00:00
Sven Hesse
23c1184d80
VIDEO: Simplying the video buffers
...
svn-id: r55257
2011-01-16 16:26:52 +00:00
Matthew Hoops
8ce55fbcde
VIDEO: Reset the pause start time when seeking while paused
...
svn-id: r55239
2011-01-14 13:01:57 +00:00
Matthew Hoops
4e56df4dbd
GRAPHICS: Begin to parse Win1 fonts based on our sole Hugo1 sample (still WIP)
...
svn-id: r55227
2011-01-13 16:06:35 +00:00
Matthew Hoops
095384b90f
GRAPHICS: Use the pixel height instead of the ascent as the WinFont height
...
svn-id: r55224
2011-01-13 14:45:14 +00:00
Matthew Hoops
0f04b4609c
VIDEO: Fix QuickTime timing when seeking without audio (thanks bgK)
...
svn-id: r55211
2011-01-11 21:33:23 +00:00
Matthew Hoops
3cb7224c10
VIDEO: Add seeking capability to QuickTimeDecoder
...
svn-id: r55203
2011-01-11 17:27:37 +00:00
Matthew Hoops
3bb5a9fe71
VIDEO: Add a SeekableVideoDecoder class
...
svn-id: r55202
2011-01-11 17:27:31 +00:00
Sven Hesse
3ac598624d
BUILD: Include scummsys.h to force rebuild after reconfigure
...
svn-id: r55157
2011-01-08 03:36:21 +00:00
Willem Jan Palenstijn
6a28d05676
BUILD: Include scummsys.h to force rebuild after reconfigure (thanks LordHoto)
...
svn-id: r55156
2011-01-08 03:27:13 +00:00
Johannes Schickel
f9ebeb330b
GRAPHICS: Some basic documentation for Font.
...
svn-id: r55143
2011-01-07 12:43:00 +00:00
Johannes Schickel
2817f80db8
GRAPHICS: Add some doxygen comments to Surface.
...
svn-id: r55142
2011-01-07 12:26:01 +00:00
Matthew Hoops
4e05e450c3
VIDEO: Mirror QuickTime's mishandling of its own mdat atoms
...
While the specs say that the 'mdat' ("media data") atom is required in all QuickTime files, QuickTime makes no check if the atom is actually present. This allows for some videos with typos in the atom tag in them to play in QuickTime anyway. The offsets in the 'stco' atom are only used instead.
This will fix a video in DS2 Mac and a music file in IHNM Mac (although this is not needed for either just yet).
svn-id: r55125
2011-01-05 18:06:46 +00:00
Matthew Hoops
bee912ff54
GRAPHICS: Add support for Windows FON/FNT fonts
...
As required by Hugo and Mohawk.
svn-id: r55120
2011-01-04 20:39:27 +00:00
Alyssa Milburn
7e0744aa4a
VIDEO: Stop leaking surface data in several codecs.
...
svn-id: r55095
2011-01-02 14:57:49 +00:00
Filippos Karapetis
cc0b2b210f
GRAPHICS: Fixed code analysis warnings (bug #3087917 )
...
svn-id: r54964
2010-12-19 16:16:25 +00:00
Alyssa Milburn
eac4a64143
VIDEO: Add CDToons decoder
...
svn-id: r54936
2010-12-16 17:01:09 +00:00
Matthew Hoops
ebf2dd8d38
VIDEO: Extend Codec to support internal palettes
...
svn-id: r54932
2010-12-16 13:25:29 +00:00
Matthew Hoops
9285986e62
VIDEO: Make Codec::decodeImage() return a const Surface pointer
...
svn-id: r54930
2010-12-16 02:02:53 +00:00
Matthew Hoops
98a2bc8a9a
VIDEO: Remove the need to call updateAudioBuffer() externally for QuickTime
...
svn-id: r54929
2010-12-16 01:49:29 +00:00
Matthew Hoops
1ead0d8436
VIDEO: Make VideoDecoder::getPalette() return a const byte pointer
...
svn-id: r54928
2010-12-16 01:41:11 +00:00
Matthew Hoops
375f32fbe9
VIDEO: Make VideoDecoder::decodeNextFrame() return a const Surface pointer
...
svn-id: r54927
2010-12-16 01:35:13 +00:00
Matthew Hoops
cf65709c45
VIDEO: Fix QuickTimeDecoder::hasDirtyPalette() by allocating the palette only for 8bpp videos
...
svn-id: r54849
2010-12-10 02:09:48 +00:00
Matthew Hoops
09abe6f151
VIDEO: Allow for 8bpp Cinepak videos
...
svn-id: r54841
2010-12-09 20:48:08 +00:00
Matthew Hoops
680b0d3172
VIDEO: Implement multiple video codec support for QuickTime
...
svn-id: r54840
2010-12-09 19:59:26 +00:00
Matthew Hoops
cf86141ca3
VIDEO: Fix a truncation in the SMC decoder (thanks, fuzzie)
...
svn-id: r54839
2010-12-09 13:36:23 +00:00
Max Horn
2180b2d6b5
COMMON: Split common/stream.h into several headers
...
svn-id: r54385
2010-11-19 17:03:07 +00:00
Max Horn
a0df86955f
ALL: Push down deps on stream.h from .h to .cpp files
...
svn-id: r54358
2010-11-19 01:37:04 +00:00
Max Horn
dbddd758d1
GRAPHICS: colour -> color
...
svn-id: r54287
2010-11-17 12:21:37 +00:00
Max Horn
abe1959d36
COMMON: Simplify DECLARE_SINGLETON macro
...
This makes it possible to write
DECLARE_SINGLETON(foo);
instead of
DECLARE_SINGLETON(foo)
without causing a warning about an extra semicolon.
The extra semicolon helps some editors at parsing the C++ code.
svn-id: r54258
2010-11-16 08:23:13 +00:00
Matthew Hoops
f4af4d2366
VIDEO: Switch Truemotion 1 to RGB565 for potential use with SCI CLUT tables
...
svn-id: r54231
2010-11-13 19:15:31 +00:00
Matthew Hoops
8e274749ed
VIDEO: Add support for DK3 in videos; fix sample rate location
...
svn-id: r54205
2010-11-11 17:05:33 +00:00
Matthew Hoops
7207d920bc
VIDEO: Cleanup AVI audio in preparation for DK3
...
svn-id: r54200
2010-11-11 13:23:26 +00:00
Matthew Hoops
5e8e77a814
VIDEO: Add the TrueMotion 1 codec for Phantasmagoria 2
...
Based on the FFmpeg decoder. Only the 16bpp version has been implemented (and all that should be needed). The videos I have tried work fine with the codec. The audio does not yet play in these videos, but I hope to work on DK3 IMA ADPCM soon.
svn-id: r54194
2010-11-11 04:53:52 +00:00
Matthew Hoops
d1bd2497a5
GRAPHICS: Enforce alphabetical order on the codec objects
...
svn-id: r54191
2010-11-10 19:18:39 +00:00
Sven Hesse
9c349cf78b
VIDEO: PreIMD: End frame when stream depleted
...
As happens for the last frames in the Fascination videos.
svn-id: r54144
2010-11-08 17:03:27 +00:00
Max Horn
7e7ad149c2
GRAPHICS: Cleanup advmame scaler code; don't include assert.h
...
svn-id: r54104
2010-11-07 00:37:04 +00:00
Florian Kagerer
e4da5e3af4
GRAPHICS/SJIS: cleanup
...
svn-id: r54099
2010-11-05 20:36:13 +00:00
Florian Kagerer
4457d10f84
GRAPHICS/SJIS: fix out of bounds shadow mode text drawing
...
svn-id: r54080
2010-11-05 01:11:05 +00:00
Florian Kagerer
206971d16b
SCUMM/FM-TOWNS JAPANESE: fix out of bounds text drawing
...
(could cause invalid memory access in MI1)
svn-id: r54079
2010-11-05 00:36:23 +00:00
Sven Hesse
016f24d16c
VIDEO: PreIMD: End frame when frameSize == 0
...
As happens for the last frame in the first video of the Fascination
intro.
svn-id: r54072
2010-11-04 20:36:28 +00:00
Florian Kagerer
ab1c54a9ee
TOON: fix some evaluation order bugs in smacker decoder
...
These bugs would cause crashs in MSVC 2008/2010 release builds.
svn-id: r53893
2010-10-27 22:41:08 +00:00
Max Horn
c975ed11a1
ALL: Fix various typos (patch #3093266 )
...
svn-id: r53762
2010-10-24 13:04:33 +00:00
Florian Kagerer
1d87f434a2
SCUMM/FM-TOWNS JAPANESE: implement flipped text
...
(used in the MI1 circus scene after Guybrush gets shot out of the cannon)
svn-id: r53616
2010-10-19 16:58:27 +00:00
Florian Kagerer
365cb758fb
GRAPHICS: enable sjis code for scumm engine
...
svn-id: r53555
2010-10-17 14:11:06 +00:00
Florian Kagerer
c841c3fb7c
SCUMM/FM-TOWNS: more improvements to japanese font drawing
...
- made use of LordHotos graphics/sjis code to reduce code duplication
- japanese mode for version 3 and 5 works fine now with few exceptions (some line spacing glitches in MI1 intro etc.)
svn-id: r53554
2010-10-17 13:08:00 +00:00
Sven Hesse
ccb3506719
GRAPHICS: Fix code analysis warnings
...
See bug report #3087917
svn-id: r53493
2010-10-15 13:56:14 +00:00
David Turner
04973e85be
VIDEO : Corrections to QDM2 codec for bug #3087917 "Code Analysis Warnings"
...
The first correction was to use a temporary variable to remove the possibility of a memory leak when using realloc.
The second correction was to remove the gain variable from QDM2Stream::qdm2_calculate_fft() which has always evaluated to 1.0f and so has no effect.
svn-id: r53489
2010-10-15 13:11:34 +00:00
Torbjörn Andersson
54b2a8c98d
JANITORIAL: Cleanup (mostly whitespace)
...
svn-id: r53161
2010-10-12 04:19:58 +00:00
Jordi Vilalta Prat
8388e0dfea
JANITORAL: Clean trailing whitespaces.
...
svn-id: r53160
2010-10-12 02:18:11 +00:00
Max Horn
3dda3c073a
GRAPHICS: Turn static AviDecoder methods into local funcs
...
svn-id: r53141
2010-10-10 22:25:52 +00:00
Sylvain Dupont
0fc6572b65
VIDEO: Remove useless references in handleAudioTrack function
...
svn-id: r53091
2010-10-09 00:17:55 +00:00
Eugene Sandulenko
741e7c7f5e
VIDEO: Factor out handleAudioTrack() to be used by Toons engine
...
svn-id: r53086
2010-10-08 22:17:03 +00:00
Johannes Schickel
5541af78b1
GRAPHICS: Add BPP check to Surface::move.
...
svn-id: r52968
2010-10-01 20:44:58 +00:00
Johannes Schickel
288d09389e
GRAPHICS: Cleanup.
...
svn-id: r52967
2010-10-01 20:44:41 +00:00
Florian Kagerer
0d8f4a22ae
SCUMM/FM-TOWNS: fix palette and other graphics issues
...
This commit should fix at least the following bugs/feature requests: #1032859 , #1252088 , #1055391 , #1315968 , #1315938 , #1742106 , #812891 .
The FM-Towns version of Scumm games use a mixed graphics mode with 2 layers (one with 32767 colors and one with 16 colors). Among other things I have added a screen output class which emulates this dual layer approach which allows specific hardware effects like enabling and disabling layers (e.g. in the voodoo priestess scene in MI1).
Old savegames (saved before this update) will load, but you’ll encounter palette glitches in the verb/inventory screen, since the 16 color palette for layer 2 is not contained in your savegame. This will be true at least for version 5 games. Certain scene change actions (which require the verb/inventory part to be redrawn) might correct this (e.g. try looking at the treasure map in MI1 and closing it). Version 3 games should be okay, since they use a static text palette which is never changed and which will be reset after loading a savegame.
This update requires a USE_RGB_COLORS setting for proper operation. 8 bit users will get a warning that they’ll have to expect palette glitches . Apart from that the engine in 8 bit mode should not only still work okay, but also benefit from some of the other (non palette related) improvements (e.g. bug #1032859 should be fixed even in 8 bit mode).
Japanese font drawing hasn’t been improved much yet. This will be a separate task.
svn-id: r52966
2010-10-01 19:24:52 +00:00
Torbjörn Andersson
02e759aad3
GOB: Make GCC happier.
...
svn-id: r52956
2010-09-30 15:22:52 +00:00
Sven Hesse
6bbfac77af
VIDEO: Interpolate U and V values
...
svn-id: r52955
2010-09-30 15:03:51 +00:00
Sven Hesse
ce07411696
VIDEO: Allow for Indeo3'd VMDs
...
svn-id: r52954
2010-09-30 13:05:40 +00:00
Sven Hesse
3c449e19ab
VIDEO: Allow for scaled Indeo3 frames
...
svn-id: r52953
2010-09-30 13:05:12 +00:00
Oystein Eftevaag
ab01f42a4b
IPHONE: The overlay will now always be in the native device resolution
...
svn-id: r52939
2010-09-29 00:19:13 +00:00
Torbjörn Andersson
c91a07229a
JANITORIAL: Removed most punctuation at end of warning() and error()
...
Our warning() and error() functions always add an exclamation mark
to the end of the message anyway.
svn-id: r52791
2010-09-18 10:55:16 +00:00
Matthew Hoops
bb1c8c3f51
VIDEO: Fix rounding the Smacker frame rate
...
_frameRate is now stored using Common::Rational instead of uint32.
svn-id: r52689
2010-09-12 18:31:10 +00:00
Matthew Hoops
21b96bd374
GRAPHICS: Improve PICT support
...
PICT images of <8bpp are now supported and paletted images now work when the PixelFormat passed is not 1Bpp.
svn-id: r52671
2010-09-10 22:08:48 +00:00
Willem Jan Palenstijn
8f1143bfdc
COMMON: Remove Rational::operator int/double
...
This prevents accidental implicit rounding
and might also fix compilation on AmigaOS4 (bug #3060981 ).
svn-id: r52616
2010-09-07 09:02:46 +00:00
Matthew Hoops
c78a63460b
VIDEO: Skip multiple tags in a QuickTime stsd entry
...
Fixes crashes when playing two videos in Riven DVD (card 262). Note that the videos still don't display properly because of a bug in QTRLE 16bpp. For the record, FFmpeg doesn't handle this properly either.
svn-id: r52603
2010-09-06 18:15:51 +00:00
Matthew Hoops
c54a97005f
VIDEO: Apply patch #3057924 with some changes
...
Patch #3057924 is "QuickTimeDecoder: Scaling x and y separately". Thanks to kreegee for the patch and fuzzie for fixing a couple bugs with it.
svn-id: r52594
2010-09-06 15:15:59 +00:00
Torbjörn Andersson
9324a80d93
JANITORIAL: Remove extra semi-colons.
...
svn-id: r52489
2010-09-02 05:12:07 +00:00
Sven Hesse
4d15e5f31c
VIDEO: Change decodeImage() around a bit, plug a leak
...
Indeo3Decoder::decoderImage() was leaking inData
svn-id: r52408
2010-08-27 10:45:19 +00:00
Eugene Sandulenko
d2cf99f67d
GUI: Fixed bug #2505686 : "GUI: minor artifacts in rounded corners"
...
It is practically not possible to get rid of those completely
due to rounding errors with 16-bit surface.
svn-id: r52367
2010-08-25 07:39:08 +00:00
Eugene Sandulenko
c8a9eb9c32
GRAPHICS: Extend Surface::fill() method to support 32bits. Looks ugly
...
svn-id: r52268
2010-08-21 20:14:46 +00:00
Torbjörn Andersson
b8b4b42577
LEGAL: Add COPYING.BSD file
...
Reword the disclaimer at the top of COPYING.LGPL, as it sounds a bit
awkward to me.
Move the BSD-like license to the top of mpeg_player.cpp (it still
points out that only parts of the file are under that license) because
that's where COPYING.BSD tells the reader to look.
svn-id: r51939
2010-08-09 14:31:59 +00:00
Sven Hesse
27f6e7106d
VIDEO: That should fix compilation with MSVC
...
svn-id: r51931
2010-08-08 17:51:50 +00:00
Matthew Hoops
27c79d51d4
VIDEO: Cinepak cleanup
...
svn-id: r51928
2010-08-08 03:33:44 +00:00
Sven Hesse
5f8947c21d
VIDEO: Use tag2str
...
svn-id: r51927
2010-08-08 02:56:11 +00:00
Sven Hesse
3016de7197
VIDEO: Fixing typos ("Unknow" -> "Unknown")
...
svn-id: r51926
2010-08-08 02:55:45 +00:00
Sven Hesse
609dc65df6
VIDEO: Remove the now obsolete CoktelVideo classes
...
svn-id: r51924
2010-08-08 01:09:45 +00:00
Sven Hesse
1151676d82
VIDEO: Use proper palettes in CoktelDecoder
...
Not just the 6 bits per color component used in VGA
svn-id: r51921
2010-08-08 01:08:17 +00:00
Sven Hesse
8186214bc9
VIDEO: Set _paletteDirty in VMDDecoder::load() when there is an initial palette
...
svn-id: r51920
2010-08-08 01:07:45 +00:00
Sven Hesse
dc3a417699
VIDEO: Change the mixer parameter from a reference to a pointer
...
To match the other VideoDecoder classes with sound support.
svn-id: r51919
2010-08-08 01:07:17 +00:00
Sven Hesse
4133ef90bc
VIDEO: Make CoktelDecoder::getFrameCoords() virtual
...
Like it should have been in the first place...
Fixes Woodruff slot-VMD positions.
svn-id: r51917
2010-08-08 01:06:15 +00:00
Sven Hesse
0be37b6b28
VIDEO: Implement VMD subtitles
...
svn-id: r51915
2010-08-08 01:05:16 +00:00
Sven Hesse
af96a0fa3b
VIDEO: Implement VMDDecoder::setXY()
...
svn-id: r51912
2010-08-08 01:03:50 +00:00
Sven Hesse
945103a43c
VIDEO/GOB: Implement and use CoktelDecoder::getFrameCoords()
...
svn-id: r51909
2010-08-08 01:02:19 +00:00
Sven Hesse
eed41aa223
VIDEO: Fix a failed assertion in VMDDecoder::readFiles()
...
svn-id: r51908
2010-08-08 01:01:45 +00:00
Sven Hesse
6d03ddef0b
VIDEO: Implement CoktelDecoder::renderBlockRLE()
...
svn-id: r51907
2010-08-08 01:01:17 +00:00
Sven Hesse
b2aba5970e
VIDEO: Fix VMD seeking
...
svn-id: r51906
2010-08-08 01:00:53 +00:00
Sven Hesse
b796c39645
VIDEO: Implement VMD frame rendering
...
svn-id: r51905
2010-08-08 01:00:23 +00:00
Sven Hesse
506c1e7d85
VIDEO: Change the CoktelDecoder::renderBlock*'s signatures
...
Change CoktelDecoder::renderBlock*() and IMDDecoder::renderFrame()
to receive a Common::Rect instead of mucking about with _dirtyRects.
svn-id: r51904
2010-08-08 00:59:58 +00:00
Sven Hesse
6d31b17685
VIDEO: Implement VMD sound
...
svn-id: r51903
2010-08-08 00:59:28 +00:00
Sven Hesse
0886f7e33c
VIDEO: Implement VMD frame decoding
...
svn-id: r51902
2010-08-08 00:58:59 +00:00
Sven Hesse
74bec1696b
VIDEO: Implement VMDDecoder::seek()
...
svn-id: r51901
2010-08-08 00:58:29 +00:00
Sven Hesse
f447ddb36a
VIDEO: Fix compilation after the VideoDecoder::load signature change in r51725
...
svn-id: r51900
2010-08-08 00:58:00 +00:00
Sven Hesse
b13afba053
VIDEO: Implement embedded file handling for VMDs
...
svn-id: r51899
2010-08-08 00:57:27 +00:00
Sven Hesse
41f5d78128
VIDEO: Implement VMD loading
...
svn-id: r51898
2010-08-08 00:56:58 +00:00
Sven Hesse
d081c2e20f
VIDEO: Move the frame calculation out of seek()
...
svn-id: r51897
2010-08-08 00:56:29 +00:00
Sven Hesse
1f63009426
VIDEO/GOB: Stubb VMDDecoder
...
svn-id: r51896
2010-08-08 00:56:04 +00:00
Sven Hesse
3c5e02900f
VIDEO: Add getSurface
...
svn-id: r51892
2010-08-08 00:53:55 +00:00
Sven Hesse
6ebec969c5
VIDEO: Fix deLZ77'ing video data directly onto the video surface
...
svn-id: r51890
2010-08-08 00:52:59 +00:00
Sven Hesse
a57e53c986
VIDEO: Add some comments, fix a style issue
...
svn-id: r51888
2010-08-08 00:52:30 +00:00
Sven Hesse
66aeee8ddc
VIDEO: Don't crash when sound is disabled :P
...
svn-id: r51886
2010-08-08 00:51:33 +00:00
Sven Hesse
0cf837c1af
VIDEO: renderBlockWhole2Y still works
...
svn-id: r51884
2010-08-08 00:50:35 +00:00
Sven Hesse
d1d772367b
VIDEO: Fix another IMD seek issue
...
svn-id: r51881
2010-08-08 00:49:15 +00:00
Sven Hesse
53b67deaf0
VIDEO: Fix another IMD seek issue
...
svn-id: r51877
2010-08-08 00:47:25 +00:00
Sven Hesse
737ef02707
VIDEO/GOB: Stub hasEmbeddedFile / getEmbeddedFile
...
Stubbing CoktelDecoder::hasEmbeddedFile() and
CoktelDecoder::getEmbeddedFile(), formerly hasExtraData/getExtraData.
svn-id: r51875
2010-08-08 00:46:34 +00:00
Sven Hesse
933ffcaa60
VIDEO: Make getFrameRate() protected again
...
svn-id: r51874
2010-08-08 00:45:58 +00:00
Sven Hesse
2296aad042
VIDEO/GOB: Fix IMD playing
...
Fix IMD playing for some fringe cases, especially when seeking
beforehand.
svn-id: r51871
2010-08-08 00:44:33 +00:00
Sven Hesse
2bcc02a27a
VIDEO/GOB: Fixing the frame rate for mult'd videos.
...
In the gob engine, some videos are opened, and then played, at
a later time, one frame at a time. In this case, we need to
emulate the original's video player's behaviour, not calculating
any "lag" for videos without sound.
svn-id: r51870
2010-08-08 00:44:05 +00:00
Sven Hesse
fecbdf60a9
VIDEO/GOB: Implement IMD frame rendering
...
svn-id: r51867
2010-08-08 00:42:59 +00:00
Sven Hesse
6172fe8ea7
VIDEO/GOB: Implement IMD frame decoding
...
Rendering the frame video data is still stubbed out.
svn-id: r51866
2010-08-08 00:42:30 +00:00
Sven Hesse
f19be90c37
VIDEO/GOB: Implement IMD loading
...
svn-id: r51865
2010-08-08 00:41:56 +00:00
Sven Hesse
dcf8298a75
VIDEO: Stub IMDDecoder
...
svn-id: r51862
2010-08-08 00:40:24 +00:00
Sven Hesse
aa113e5ab3
VIDEO: Add CoktelDecoder::setFrameRate().
...
Allows client code to overwrite the video's frame rate.
svn-id: r51860
2010-08-08 00:39:32 +00:00
Sven Hesse
f7363fdb10
VIDEO/GOB: Add CoktelDecoder::getDirtyRects()
...
This allows for the client code to only update the parts of the
video frames that actually changed.
svn-id: r51859
2010-08-08 00:39:03 +00:00
Sven Hesse
12c9e895b5
VIDEO/GOB: Add CoktelDecoder::setXY()
...
This allows for positioning the video within the video memory.
svn-id: r51858
2010-08-08 00:38:26 +00:00
Sven Hesse
9255d2e217
VIDEO/GOB: Add setSurfaceMemory() to CoktelDecoder
...
This allows the video player to directly draw onto its own video
memory without having to blit each frame another time.
Will also be needed for proper handling of transparency in Woodruff.
svn-id: r51857
2010-08-08 00:37:52 +00:00
Sven Hesse
167c6e8787
VIDEO: Bare PreIMD decoding
...
Implemented bare PreIMD decoding using the new CoktelDecoder interface.
No fancy stuff yet, only basic vieo frames.
svn-id: r51854
2010-08-08 00:36:19 +00:00
Sven Hesse
a802e1e64f
VIDEO: Stub a VideoDecoder-like CoktelDecoder
...
This creates a new CoktelDecoder class using the VideoDecoder
interface, which will eventually become the new way to decode
PreIMD, IMD and VMD videos.
Since the VideoPlayer in gob is not yet ready for this, we're
disabling all video playback in the gob engine for now.
svn-id: r51850
2010-08-08 00:33:59 +00:00
Sven Hesse
b5b47d50c8
VIDEO: Make Indeo3 a proper video codec
...
This way, Indeo3 is properly usable in various container VideoDecoder,
for example AVI, and not just VMD.
Since VMD is not yet ready for this, we're disabling Indeo3 in VMDs
for now.
svn-id: r51849
2010-08-08 00:33:13 +00:00
Max Horn
0e2807dc27
GRAPHICS: Change signature of VideoDecoder::load()
...
Now takes a pointer to a stream, instead of a reference.
The rational is that in all instances, callers have a pointer
(and dereference it to call load), and all load implementations
turn the reference back into a pointer.
svn-id: r51725
2010-08-04 08:25:05 +00:00
Max Horn
154c589f18
GRAPHICS: Fix FlicDecoder::hasDirtyPalette signature
...
Add const qualifier to FlicDecoder::hasDirtyPalette to make it
match that if VideoDecoder::hasDirtyPalette.
svn-id: r51724
2010-08-04 08:23:48 +00:00
Jordi Vilalta Prat
a02d9d656b
GRAPHICS: Fix a typo in a comment.
...
svn-id: r51692
2010-08-03 13:15:34 +00:00
Johannes Schickel
4e33b7a3be
GRAPHICS: Renamed skipThumbnailHeader to skipThumbnail.
...
svn-id: r51668
2010-08-02 22:28:30 +00:00
Johannes Schickel
c8aabe77e8
GUI: Fix font cache.
...
The bounding boxes of the glyphs use signed coordinates. We stored only
unsigned coordinates, which resulted in incorrect glyph positioning.
Conrecte example: the bounding box of the glyphs for clR6x12-iso-8859-5.bdf
used:
x y w h
0 -3 6 12
We on the other hand interpreted that as:
x y w h
0 65533 6 12
when loading the font from our font cache.
svn-id: r51586
2010-08-01 19:31:37 +00:00
Ori Avtalion
757f787a27
VIDEO: Ignore requests to unpause when video is already unpaused
...
Previous behavior was to assert
svn-id: r51517
2010-07-30 21:07:27 +00:00
Matthew Hoops
8e705bb2e2
VIDEO: Fix FLIC looping
...
Thanks to salty-horse for finding this. Also, use Common::Rational directly to hold the frame rate to avoid rounding.
svn-id: r51516
2010-07-30 20:35:09 +00:00
Johannes Schickel
e5e94d4511
Strip trailing whitespaces in our common code base.
...
svn-id: r51094
2010-07-21 18:17:51 +00:00
Max Horn
0b48a71c99
Remove PalmOS port
...
svn-id: r50964
2010-07-17 18:41:38 +00:00
Matthew Hoops
d5ff65bc02
Fix valgrind warning.
...
svn-id: r50873
2010-07-14 05:04:55 +00:00
Johannes Schickel
2662d569d9
Fix long standing regression (introduced with r34053) in thumbnail scaling code for Hercules graphics.
...
svn-id: r50605
2010-07-02 22:38:42 +00:00
Filippos Karapetis
e22a75de99
Rewrote the handling of thumbnail creation for KQ6 Windows in rev #50600 , so that it recreates the screen buffer like the other workarounds above it (thanks to LordHoto for pointing this out)
...
svn-id: r50601
2010-07-02 19:04:44 +00:00
Filippos Karapetis
1beff1a599
Added a special case for KQ6 hires in the thumbnail creation code, which runs at a resolution of 640x440
...
svn-id: r50600
2010-07-02 16:52:09 +00:00
Eugene Sandulenko
0e7ccb896d
i18n: Add support for locale-dependent fonts
...
Currently it ws not decided where to put fonts, but if you put BDF files into
themepath, they will get picked up.
The font name has to contain same codepage specification as in the .po file,
i.e. fixed5x8-iso-8859-5.bdf for Cyrillic codepage. In case the font does not
exist, default will be used.
All built in fonts get proper names.
TODO: Currently there is a bug with our font cacher. Font clR6x12-iso-8859-5
is empty after loading from FCC file. Reason is unknown.
svn-id: r50448
2010-06-28 15:17:10 +00:00
Torbjörn Andersson
f10b1a23f8
Fixed a few cppcheck errors.
...
svn-id: r49919
2010-06-17 05:40:48 +00:00
David Turner
408bfa2098
Fixed QDM2 to working state.
...
Major issue was that the input frames are reused 16 times to produce output frames.
Thanks to clone2727 for helping with this.
svn-id: r49900
2010-06-16 04:47:18 +00:00
Max Horn
651e2760a3
Fix spelling, cleanup
...
svn-id: r49843
2010-06-15 12:33:20 +00:00
Eugene Sandulenko
ea7405d7ef
GUI: Added default names for builtin fonts.
...
svn-id: r49773
2010-06-15 10:51:26 +00:00
Jordi Vilalta Prat
354499c737
Fix some typos in a comment
...
svn-id: r49488
2010-06-07 17:17:41 +00:00
Matthew Hoops
2138fe0d5a
Fix our interpretation of the audio compression types to what FFmpeg currently does. Should fix bug #3009282 .
...
svn-id: r49362
2010-05-31 21:29:43 +00:00
Matthew Hoops
2a0f91444f
Ignore v2 compressed audio chunks instead of treating them as Huffman DPCM. Should fix playback of at least the video portion of those videos (found in later Broken Sword releases).
...
svn-id: r49340
2010-05-31 01:27:57 +00:00
Matthew Hoops
b0366e65e5
Cleanup AVI a bit, add support for stereo audio
...
svn-id: r49279
2010-05-27 23:57:44 +00:00
Matthew Hoops
017507ffa6
Take any 'moov' resource from a resource fork, not just 0x80; minor cleanup.
...
svn-id: r49245
2010-05-26 15:42:26 +00:00
Filippos Karapetis
14fae8db03
Proper fix for the MSVC warning concerning packing: reordered the members of the ParseTable struct and removed the struct packing pragmas
...
svn-id: r49235
2010-05-26 11:56:58 +00:00
Filippos Karapetis
ad9772fac6
Properly fixed MSVC warning C4121 (alignment of a member was sensitive to packing)
...
svn-id: r49226
2010-05-26 06:45:57 +00:00
Matthew Hoops
cd5e90f298
Implement QuickTime playback for SCI1.1 Mac. The 'Halfdome' and 'KQ6Movie' videos now play. However, they require multiple edit list support to look completely correct.
...
svn-id: r49224
2010-05-26 03:43:21 +00:00
Matthew Hoops
ab540af9f8
Fix a regression with rewinding in QuickTime videos (looping works in Riven again) and some minor cleanup.
...
svn-id: r49206
2010-05-25 02:35:50 +00:00
Filippos Karapetis
d4ae096a63
Surface is a struct, not a class
...
svn-id: r49201
2010-05-24 20:50:53 +00:00
Matthew Hoops
ad0eb0b06e
Move the PICT code to graphics/ with some updates; needed for SCI1.1 Mac.
...
svn-id: r49195
2010-05-24 17:18:09 +00:00
Matthew Hoops
8f14c15b1a
Add support for loading the QuickTime 'moov' atom from the file's resource fork, needed for SCI Mac.
...
svn-id: r49172
2010-05-23 23:26:28 +00:00
Matthew Hoops
b3bd797e01
Move the QDM2 code to the graphics module, removing the cyclic dependency.
...
svn-id: r49171
2010-05-23 21:41:13 +00:00
Matthew Hoops
5e90f66edc
Hide the QDM2 implementation and only expose it via a factory method, hopefully fixing compilation on most systems at the same time.
...
svn-id: r49170
2010-05-23 19:54:17 +00:00
Eugene Sandulenko
ed0e8182ce
FFMpeg switched to Git, so update link to original smacker decoder.
...
svn-id: r49166
2010-05-23 19:08:31 +00:00
Matthew Hoops
2f31b05651
Move Mohawk's QuickTime code to graphics/ (and QDM2 to sound, disabled when Mohawk is not enabled) so SCI can use the code.
...
svn-id: r49165
2010-05-23 18:33:55 +00:00
Matthew Hoops
2e0fdda51f
Add a pause level system to VideoDecoder (blatantly ripped off from Engine) and adapt Mohawk to it.
...
svn-id: r49120
2010-05-20 18:38:06 +00:00
Matthew Hoops
759e4923d0
Add a new class 'RewindableVideoDecoder' that allows a video to be rewound and have QTPlayer inherit from that.
...
svn-id: r49084
2010-05-18 17:36:34 +00:00
Matthew Hoops
11cbdd0318
Committing the rest of the VideoDecoder Rewrite from patch #2963496 .
...
svn-id: r49079
2010-05-18 14:17:24 +00:00
Ori Avtalion
7ab8f6e25b
Fix currentFrame semantics in Flic player
...
svn-id: r49073
2010-05-18 10:01:31 +00:00
Matthew Hoops
c7fa1074fb
Change VideoDecoder::getCurFrame() to mean the last frame drawn instead of the next frame to draw. This is patch 1 from patch #2963496 (VideoDecoder Rewrite).
...
svn-id: r49063
2010-05-17 21:59:05 +00:00
Andre Heider
be0885e9d1
Revert r48979. Instead, make the HQ scalers depend on the normal ones. Configure reflects that now.
...
svn-id: r48996
2010-05-10 17:25:12 +00:00
Andre Heider
998531a022
Since configure allows HQ scalers without the normal onces, allow this combination.
...
svn-id: r48979
2010-05-09 12:30:20 +00:00
Andre Heider
a3e428f6db
Rename DISABLE_*SCALERS to USE_*SCALERS, and move the mk/cpp defines to configure.
...
svn-id: r48977
2010-05-09 11:00:17 +00:00
Andre Heider
74c0db4548
Use the faster memset() in Surface::fillRect() for 16bit modes when possible.
...
svn-id: r48756
2010-04-20 20:22:33 +00:00