Mpeg2 TS: relax the spec compliancy w.r.t. the adaptation field. (issue 364913006 by damienv@chromium.org)

0 views
Skip to first unread message

dam...@chromium.org

unread,
Jul 2, 2014, 7:12:24 PM7/2/14
to acol...@chromium.org, wole...@chromium.org, gun...@chromium.org, chromium...@chromium.org, feature-me...@chromium.org
Reviewers: acolwell, wolenetz, gunsch,

Message:
PTAL

Description:
Mpeg2 TS: relax the spec compliancy w.r.t. the adaptation field.

BUG=None

Please review this at https://codereview.chromium.org/364913006/

SVN Base: svn://svn.chromium.org/chrome/trunk/src

Affected files (+4, -1 lines):
M media/formats/mp2t/ts_packet.cc


Index: media/formats/mp2t/ts_packet.cc
diff --git a/media/formats/mp2t/ts_packet.cc
b/media/formats/mp2t/ts_packet.cc
index
8463c11e33ae1ede421e06fb3f69b956dfa79ce2..361a6e06d2a838a44ad11f7115e82ab32e1f8fb3
100644
--- a/media/formats/mp2t/ts_packet.cc
+++ b/media/formats/mp2t/ts_packet.cc
@@ -203,7 +203,10 @@ bool TsPacket::ParseAdaptationField(BitReader*
bit_reader,
for (int k = 0; k < adaptation_field_remaining_size; k++) {
int stuffing_byte;
RCHECK(bit_reader->ReadBits(8, &stuffing_byte));
- RCHECK(stuffing_byte == 0xff);
+ // Unfortunately, a lot of streams exist in the field that do not fill
+ // the remaining of the adaptation field with the expected stuffing
value:
+ // do not fail if that's the case.
+ DVLOG_IF(stuffing_byte != 0xff, 1) << "Stream not spec compliant";
}

DVLOG(LOG_LEVEL_TS) << "random_access_indicator=" <<
random_access_indicator_;


acol...@chromium.org

unread,
Jul 2, 2014, 8:25:45 PM7/2/14
to dam...@chromium.org, wole...@chromium.org, gun...@chromium.org, chromium...@chromium.org, feature-me...@chromium.org
lgtm


https://codereview.chromium.org/364913006/diff/20001/media/formats/mp2t/ts_packet.cc
File media/formats/mp2t/ts_packet.cc (right):

https://codereview.chromium.org/364913006/diff/20001/media/formats/mp2t/ts_packet.cc#newcode209
media/formats/mp2t/ts_packet.cc:209: DVLOG_IF(1, stuffing_byte != 0xff)
<< "Stream not spec compliant";
nit: How about something like "Stuffing bytes not set correctly." or
"Stuffing bytes not spec compliant." just so there is a little more
context as to why the stream isn't compliant in the log?

https://codereview.chromium.org/364913006/

commi...@chromium.org

unread,
Jul 7, 2014, 4:32:13 PM7/7/14
to dam...@chromium.org, acol...@chromium.org, wole...@chromium.org, gun...@chromium.org, chromium...@chromium.org, feature-me...@chromium.org

commi...@chromium.org

unread,
Jul 7, 2014, 4:53:59 PM7/7/14
to dam...@chromium.org, acol...@chromium.org, wole...@chromium.org, gun...@chromium.org, chromium...@chromium.org, feature-me...@chromium.org
FYI, CQ is re-trying this CL (attempt #1).
The failing builders are:
chromium_presubmit on tryserver.chromium
(http://build.chromium.org/p/tryserver.chromium/builders/chromium_presubmit/builds/78264)

https://codereview.chromium.org/364913006/

commi...@chromium.org

unread,
Jul 7, 2014, 5:00:06 PM7/7/14
to dam...@chromium.org, acol...@chromium.org, wole...@chromium.org, gun...@chromium.org, chromium...@chromium.org, feature-me...@chromium.org

commi...@chromium.org

unread,
Jul 7, 2014, 5:58:52 PM7/7/14
to dam...@chromium.org, acol...@chromium.org, wole...@chromium.org, gun...@chromium.org, chromium...@chromium.org, feature-me...@chromium.org

commi...@chromium.org

unread,
Jul 7, 2014, 6:04:50 PM7/7/14
to dam...@chromium.org, acol...@chromium.org, wole...@chromium.org, gun...@chromium.org, chromium...@chromium.org, feature-me...@chromium.org
Change committed as 281595

https://codereview.chromium.org/364913006/
Reply all
Reply to author
Forward
0 new messages