From a004bdb2330ad8a2abebfb9982299f0f687791e0 Mon Sep 17 00:00:00 2001 From: Moritz Bunkus Date: Sat, 23 Aug 2008 14:49:28 +0000 Subject: [PATCH] DTS-in-WAV handling (14 to 16 bit expansion) was flawed. Fix for bug 288. --- ChangeLog | 3 +++ src/common/dts_common.cpp | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index a69d4700a..41a911522 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2008-08-23 Moritz Bunkus + * mkvmerge: bug fix: DTS-in-WAV handling (14 to 16 bit expansion) + was flawed. Fix for bug 288. + * mkvmerge: new feature: Added support for Vorbis in AVI (format tag 0x566f). Fix for bug 271. diff --git a/src/common/dts_common.cpp b/src/common/dts_common.cpp index d00b9e1f9..25c548d6b 100644 --- a/src/common/dts_common.cpp +++ b/src/common/dts_common.cpp @@ -425,7 +425,7 @@ dts_14_to_dts_16(const unsigned short *src, dst[5] = (dst_5>>8) | (dst_5<<8); // 2 + 14 unsigned short src_7 = (src[7]>>8) | (src[7]<<8); - unsigned short dst_6 = (src_6 << 14) | ((src_7 & 0x3fff) >> 2); + unsigned short dst_6 = (src_6 << 14) | (src_7 & 0x3fff); dst[6] = (dst_6>>8) | (dst_6<<8); dst += 7;