[FFmpeg-devel] [PATCH 2/2] avformat/dtsdec: Extend DTS core sync word
foo86
foobaz86 at gmail.com
Tue Apr 28 16:47:53 CEST 2015
Check extended sync word for 16-bit LE and BE core streams to reduce
probability of alias sync detection. Previously sync word extension was
checked only for 14-bit streams.
This follows up the similar change in avcodec/dca_parser.
---
libavformat/dtsdec.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/libavformat/dtsdec.c b/libavformat/dtsdec.c
index 50b14c6..da0fb61 100644
--- a/libavformat/dtsdec.c
+++ b/libavformat/dtsdec.c
@@ -50,9 +50,11 @@ static int dts_probe(AVProbeData *p)
diff += FFABS(((int16_t)AV_RL16(buf)) - (int16_t)AV_RL16(buf-4));
/* regular bitstream */
- if (state == DCA_SYNCWORD_CORE_BE)
+ if (state == DCA_SYNCWORD_CORE_BE &&
+ (bytestream_get_be16(&bufp) & 0xFC00) == 0xFC00)
marker = 0;
- else if (state == DCA_SYNCWORD_CORE_LE)
+ else if (state == DCA_SYNCWORD_CORE_LE &&
+ (bytestream_get_be16(&bufp) & 0x00FC) == 0x00FC)
marker = 1;
/* 14 bits big-endian bitstream */
--
2.1.4
More information about the ffmpeg-devel
mailing list