From 5cf3b75deb345b6e76699a208dd94d4cfcb4ea12 Mon Sep 17 00:00:00 2001 From: Cameron Cawley Date: Wed, 1 Aug 2018 20:10:55 +0100 Subject: VIDEO: Fix Theora playback when building with Tremor --- video/theora_decoder.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'video') diff --git a/video/theora_decoder.cpp b/video/theora_decoder.cpp index 7ed9738ea9..f00bd485f9 100644 --- a/video/theora_decoder.cpp +++ b/video/theora_decoder.cpp @@ -356,9 +356,11 @@ Audio::AudioStream *TheoraDecoder::VorbisAudioTrack::getAudioStream() const { #define AUDIOFD_FRAGSIZE 10240 +#ifndef USE_TREMOR static double rint(double v) { return floor(v + 0.5); } +#endif bool TheoraDecoder::VorbisAudioTrack::decodeSamples() { #ifdef USE_TREMOR @@ -383,7 +385,11 @@ bool TheoraDecoder::VorbisAudioTrack::decodeSamples() { for (i = 0; i < ret && i < maxsamples; i++) { for (int j = 0; j < channels; j++) { +#ifdef USE_TREMOR + int val = CLIP(pcm[j][i] >> 9, -32768, 32767); +#else int val = CLIP((int)rint(pcm[j][i] * 32767.f), -32768, 32767); +#endif _audioBuffer[count++] = val; } } -- cgit v1.2.3