diff options
author | Sven Hesse | 2010-08-08 01:08:48 +0000 |
---|---|---|
committer | Sven Hesse | 2010-08-08 01:08:48 +0000 |
commit | 96e079a9f78d20344ff5699182194a5b35691e5e (patch) | |
tree | 3e4c7bfa816abf1b201055f9226b2d41f4223d0c /engines/sci | |
parent | 1151676d8215f411718a28f2d2f58961560efbd1 (diff) | |
download | scummvm-rg350-96e079a9f78d20344ff5699182194a5b35691e5e.tar.gz scummvm-rg350-96e079a9f78d20344ff5699182194a5b35691e5e.tar.bz2 scummvm-rg350-96e079a9f78d20344ff5699182194a5b35691e5e.zip |
SCI: Directly use the new Graphics::VMDDecoder class
svn-id: r51922
Diffstat (limited to 'engines/sci')
-rw-r--r-- | engines/sci/console.cpp | 7 | ||||
-rw-r--r-- | engines/sci/engine/kvideo.cpp | 7 |
2 files changed, 10 insertions, 4 deletions
diff --git a/engines/sci/console.cpp b/engines/sci/console.cpp index 2432d84faa..fac819167b 100644 --- a/engines/sci/console.cpp +++ b/engines/sci/console.cpp @@ -51,7 +51,7 @@ #include "graphics/video/avi_decoder.h" #include "sci/video/seq_decoder.h" #ifdef ENABLE_SCI32 -#include "sci/video/vmd_decoder.h" +#include "graphics/video/coktel_decoder.h" #endif #include "common/file.h" @@ -234,7 +234,7 @@ void Console::postEnter() { videoDecoder = seqDecoder; #ifdef ENABLE_SCI32 } else if (_videoFile.hasSuffix(".vmd")) { - videoDecoder = new VMDDecoder(g_system->getMixer()); + videoDecoder = new Graphics::VMDDecoder(g_system->getMixer()); #endif } else if (_videoFile.hasSuffix(".avi")) { videoDecoder = new Graphics::AviDecoder(g_system->getMixer()); @@ -245,6 +245,9 @@ void Console::postEnter() { uint16 y = (g_system->getHeight() - videoDecoder->getHeight()) / 2; bool skipVideo = false; + if (videoDecoder->hasDirtyPalette()) + videoDecoder->setSystemPalette(); + while (!g_engine->shouldQuit() && !videoDecoder->endOfVideo() && !skipVideo) { if (videoDecoder->needsUpdate()) { Graphics::Surface *frame = videoDecoder->decodeNextFrame(); diff --git a/engines/sci/engine/kvideo.cpp b/engines/sci/engine/kvideo.cpp index 3ad2d95f58..ac6cfb6835 100644 --- a/engines/sci/engine/kvideo.cpp +++ b/engines/sci/engine/kvideo.cpp @@ -34,7 +34,7 @@ #include "graphics/video/qt_decoder.h" #include "sci/video/seq_decoder.h" #ifdef ENABLE_SCI32 -#include "sci/video/vmd_decoder.h" +#include "graphics/video/coktel_decoder.h" #endif namespace Sci { @@ -60,6 +60,9 @@ void playVideo(Graphics::VideoDecoder *videoDecoder) { uint16 y = (screenHeight - height) / 2; bool skipVideo = false; + if (videoDecoder->hasDirtyPalette()) + videoDecoder->setSystemPalette(); + while (!g_engine->shouldQuit() && !videoDecoder->endOfVideo() && !skipVideo) { if (videoDecoder->needsUpdate()) { Graphics::Surface *frame = videoDecoder->decodeNextFrame(); @@ -203,7 +206,7 @@ reg_t kPlayVMD(EngineState *s, int argc, reg_t *argv) { if (argv[2] != NULL_REG) warning("kPlayVMD: third parameter isn't 0 (it's %04x:%04x - %s)", PRINT_REG(argv[2]), s->_segMan->getObjectName(argv[2])); - videoDecoder = new VMDDecoder(g_system->getMixer()); + videoDecoder = new Graphics::VMDDecoder(g_system->getMixer()); if (!videoDecoder->loadFile(fileName)) { warning("Could not open VMD %s", fileName.c_str()); |