From 52668ca838e1869676ff95e7388f93ec1858b1e9 Mon Sep 17 00:00:00 2001 From: Andreas Huber Date: Mon, 11 Nov 2013 13:35:39 -0800 Subject: Ignore transport stream packets with the "transport_error_indicator" bit set which indicates that they contain at least one bitstream error that was unrecoverable. Change-Id: I10665fd190194fdd2568175fe00b6063d3fc10a5 related-to-bug: 11537029 --- media/libstagefright/mpeg2ts/ATSParser.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'media/libstagefright/mpeg2ts/ATSParser.cpp') diff --git a/media/libstagefright/mpeg2ts/ATSParser.cpp b/media/libstagefright/mpeg2ts/ATSParser.cpp index 9850a46..175a263 100644 --- a/media/libstagefright/mpeg2ts/ATSParser.cpp +++ b/media/libstagefright/mpeg2ts/ATSParser.cpp @@ -1193,7 +1193,10 @@ status_t ATSParser::parseTS(ABitReader *br) { unsigned sync_byte = br->getBits(8); CHECK_EQ(sync_byte, 0x47u); - MY_LOGV("transport_error_indicator = %u", br->getBits(1)); + if (br->getBits(1)) { // transport_error_indicator + // silently ignore. + return OK; + } unsigned payload_unit_start_indicator = br->getBits(1); ALOGV("payload_unit_start_indicator = %u", payload_unit_start_indicator); -- cgit v1.1