aboutsummaryrefslogtreecommitdiff
path: root/engines/titanic/support
diff options
context:
space:
mode:
authorPaul Gilbert2016-10-06 20:33:24 -0400
committerPaul Gilbert2016-10-06 20:33:24 -0400
commitcf96b50f08faac7e13b990043c0171798d8a6000 (patch)
tree1fab823c3e11b5edd61a58477c7b5d055d164c54 /engines/titanic/support
parent83188eace90de5ae56fe772d07f4c9471e416038 (diff)
downloadscummvm-rg350-cf96b50f08faac7e13b990043c0171798d8a6000.tar.gz
scummvm-rg350-cf96b50f08faac7e13b990043c0171798d8a6000.tar.bz2
scummvm-rg350-cf96b50f08faac7e13b990043c0171798d8a6000.zip
TITANIC: Fix videos playing vertically flipped
Diffstat (limited to 'engines/titanic/support')
-rw-r--r--engines/titanic/support/avi_surface.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/engines/titanic/support/avi_surface.cpp b/engines/titanic/support/avi_surface.cpp
index a45d586695..45c3ce94b3 100644
--- a/engines/titanic/support/avi_surface.cpp
+++ b/engines/titanic/support/avi_surface.cpp
@@ -223,10 +223,10 @@ void AVISurface::setupDecompressor() {
bool flag = false;
if (idx == 0 && _videoSurface &&
_videoSurface->getPitch() == _movieFrameSurface[idx]->pitch) {
- const Graphics::PixelFormat &ff = _decoder->getVideoTrack(0).getPixelFormat();
+ const uint bitCount = _decoder->getVideoTrack(0).getBitCount();
const int vDepth = _videoSurface->getPixelDepth();
- switch (ff.bpp()) {
+ switch (bitCount) {
case 15:
flag = vDepth == 1;
break;
@@ -248,6 +248,9 @@ void AVISurface::setupDecompressor() {
_framePixels = new Graphics::ManagedSurface(_decoder->getWidth(), _decoder->getHeight(),
_decoder->getVideoTrack(0).getPixelFormat());
} else if (idx == 0) {
+ // The original developers used a vertical flipped playback to indicate
+ // an incompatibility between source video and dest surface bit-depths,
+ // which would result in poor playback performance
_videoSurface->_flipVertically = true;
}
}