History log of /frameworks/av/media/libstagefright/include/SampleTable.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
40d8899f60c5212af9d727ba0ffaaecf676ebd1d 09-Aug-2016 Chih-Hung Hsieh <chh@google.com> Fix clang-tidy warnings in stagefright.

* Add explicit keyword to conversion constructors.
* Or add NOLINT to implicit conversion constructors.
Bug: 28341362
* Use const reference type for read-only parameters.
Bug: 30407689
* Use const reference type to avoid unnecessary copy.
Bug: 30413862
Test: build with WITH_TIDY=1

Change-Id: I7a15ac1e37973fe2c661f577a6106b913653de40
/frameworks/av/media/libstagefright/include/SampleTable.h
978a6cd08746164ee1f37405d55e0f0bed8f8c24 12-Jul-2016 Pawin Vongmasa <pawin@google.com> resolve merge conflicts of 23332cb to nyc-dev

Change-Id: I6506243808ac2d76ff0dc25dcd44160c014b00c1
7a9538cd36716c8263d3808edd58bc87cedd8492 11-Jul-2016 Pawin Vongmasa <pawin@google.com> Impose a size bound for dynamically allocated tables in stbl. am: 583a012a9f am: 34519820bf
am: 726010eb1f

Change-Id: Id4fd4a863d083b27286e7b3abf7897ca8f20b798
583a012a9fce81162b163d3533e2644d4abad88a 22-Jun-2016 Pawin Vongmasa <pawin@google.com> Impose a size bound for dynamically allocated tables in stbl.

Impose a restriction of 200MiB for tables in stsc, stts, ctts and stss
boxes. Also change mTimeToSample from Vector to array.

Bug: 29367429
Change-Id: I953bea9fe0590268cf27376740f582dc88563d42
/frameworks/av/media/libstagefright/include/SampleTable.h
4ef5122525e0ce7a4d3e16bb07c295340a813b00 22-Jun-2016 Wonsik Kim <wonsik@google.com> Merge \\\"Revert \\\"Impose a size bound for dynamically allocated tables in stbl.\\\"\\\" into klp-dev am: 7e6bd6a911 am: 3ad7688745
am: 9d65d13cc7

Change-Id: Ib8d8f9c58c1ffb169cf488d57fb841f80a664e97
66c4dbb96c38630d0cd6551fc8c9bf8fa3318903 22-Jun-2016 Wonsik Kim <wonsik@google.com> Revert "Impose a size bound for dynamically allocated tables in stbl."

This reverts commit 25e029746796fe88e82417fb01af2e27b8bbadb2.

Change-Id: I91225838a8be72a3cd413f2bcb99e7dca7e62929
/frameworks/av/media/libstagefright/include/SampleTable.h
7e06799472dd93f3c4e33807ab41256e75287291 22-Jun-2016 Pawin Vongmasa <pawin@google.com> Merge \\\"Impose a size bound for dynamically allocated tables in stbl.\\\" into klp-dev am: 8f73edb22a am: a263248bf0
am: 4c969bf93f

Change-Id: I6258bac89bbe02e47b3c912df26f26033d7b76b4
25e029746796fe88e82417fb01af2e27b8bbadb2 22-Jun-2016 Pawin Vongmasa <pawin@google.com> Impose a size bound for dynamically allocated tables in stbl.

Impose a restriction of 200MiB for tables in stsc, stts, ctts and stss
boxes. Also change Vector to std::vector for efficiency and consistency.

Bug: 29367429
Change-Id: I175da524612b9fe68496c612966af51f01a5cd5e
/frameworks/av/media/libstagefright/include/SampleTable.h
17cb0490ffffafc13c47260d51bbcbf2509e1d79 21-Apr-2016 Pawin Vongmasa <pawin@google.com> SampleTable.cpp: Fixed a regression caused by a fix for bug 28076789. am: 70dec4dc7d am: a1e309beb9 am: 63e9b57353 am: ef21738066 am: 59f9cc2a46 am: 9be65cb007 am: 9b449c48be am: 7a33c06204 am: f0eb48c896 am: 64cb47eeba
am: 54355d98e0

* commit '54355d98e0a4417cde0479e3fd4399edbc11586b':
SampleTable.cpp: Fixed a regression caused by a fix for bug 28076789.

Change-Id: If0135d9ba79df9e71803f34a3c80da03f723d655
ef21738066caa918b34c57844d3e0f6cebbce86a 21-Apr-2016 Pawin Vongmasa <pawin@google.com> SampleTable.cpp: Fixed a regression caused by a fix for bug 28076789. am: 70dec4dc7d am: a1e309beb9
am: 63e9b57353

* commit '63e9b573530837702e42e00900407bbe9fdae952':
SampleTable.cpp: Fixed a regression caused by a fix for bug 28076789.

Change-Id: Idcf74c810152b7160cf99aa25fe664c6b40f0750
70dec4dc7d1d813afaff58fb26b0fd7127e897bf 21-Apr-2016 Pawin Vongmasa <pawin@google.com> SampleTable.cpp: Fixed a regression caused by a fix for bug
28076789.

Detail: Before the original fix
(Id207f369ab7b27787d83f5d8fc48dc53ed9fcdc9) for 28076789, the
code allowed a time-to-sample table size to be 0. The change
made in that fix disallowed such situation, which in fact should
be allowed. This current patch allows it again while maintaining
the security of the previous fix.

Bug: 28288202
Bug: 28076789
Change-Id: I1c9a60c7f0cfcbd3d908f24998dde15d5136a295
/frameworks/av/media/libstagefright/include/SampleTable.h
b151194ce1cbf77cd9da87ce6fc895278977b0f4 18-Apr-2016 Pawin Vongmasa <pawin@google.com> Merge "resolve merge conflicts of 87695f6 to mnc-dev" into mnc-dev am: a265388 am: 93cfc25 am: 35ee496
am: d059fde

* commit 'd059fde3f068700f73970dcce5255efb72c29f13':
SampleTable.cpp: Prevent corrupted stts block from causing excessive memory allocation.

Change-Id: Ifdf3b0bd637332f9962eff593e6086fcd3830c00
ab7276351e41bc0d40d28c231993ba240b5f21a0 16-Apr-2016 Pawin Vongmasa <pawin@google.com> Merge "SampleTable.cpp: Prevent corrupted stts block from causing excessive memory allocation." into klp-dev am: 5964527 am: e896c41
am: a0970c9

* commit 'a0970c9faabdaca647cb22b78432511de3220399':
SampleTable.cpp: Prevent corrupted stts block from causing excessive memory allocation.

Change-Id: I7d7e410e25d8a5b1066251cae8cddfa050b07f71
a3630a418b4f65277a42cd4018cd3b0b7e134d0c 14-Apr-2016 Pawin Vongmasa <pawin@google.com> SampleTable.cpp: Prevent corrupted stts block from causing
excessive memory allocation.

Details:

DataSource.h
- Added function getVector() for reading from a data source into
a Vector object, whose capacity grows only as much as needed
(in case of EOS or reading error).
SampleTable.h
- Changed the type of mTimeToSample from uint32_t* to
Vector<uint32_t>.
SampleTable.cpp
- In setTimeToSample, modified the code to use getVector()
instead of readAt(). If the input source has a corrupt
time-to-sample table size that is too big, EOS will be reached
before the whole table is read, and the return value from
getVector() will be false.
- Also, tightened the bound for the provided time-to-sample table
size to guarantee that the table does not take more than
UINT_MAX32 bytes in memory.

Bug: 28076789
Change-Id: Id207f369ab7b27787d83f5d8fc48dc53ed9fcdc9
/frameworks/av/media/libstagefright/include/SampleTable.h
b1dc9e07c084d0df17de71b54f8340c0b8917824 17-Feb-2016 Marco Nelissen <marcone@google.com> Always treat composition time offsets as signed

even for version 0 ctts atoms that technically should contain only
unsigned values.

Bug: 27174229
Change-Id: I7309222f5fe646c25c45ff5351bfc310759ef542
/frameworks/av/media/libstagefright/include/SampleTable.h
5a132594b531f1f48098a790927f82080cc27f61 18-Aug-2015 Wei Jia <wjia@google.com> libstagefright: fix handling of mSampleTimeEntries and mNumSampleSizes in SampleTable.

Bug: 23247055
Change-Id: I29ef59c7ff09248063714e5013f7c33f66c5eebd
(cherry picked from commit 3564c4562f46bede6ef1ea716c4fd4f77e470ae8)
(cherry picked from commit 108cd2dc8df55f3f2ecdfbb4bb0ae981a74b6860)
/frameworks/av/media/libstagefright/include/SampleTable.h
3564c4562f46bede6ef1ea716c4fd4f77e470ae8 18-Aug-2015 Wei Jia <wjia@google.com> libstagefright: fix handling of mSampleTimeEntries and mNumSampleSizes in SampleTable.

Bug: 23247055
Change-Id: I29ef59c7ff09248063714e5013f7c33f66c5eebd
/frameworks/av/media/libstagefright/include/SampleTable.h
599950efbb03b1672561d4cf2272504b879525e8 17-Jul-2014 Lajos Molnar <lajos@google.com> stagefright: Fix seeking in MPEG4 container

- seek based on user-visible timestamp
- seek to previous, next and closest exactly

Bug: 12786906
Change-Id: I2d5e1fbff6469b6f081a284be2222a4cb50aa754
/frameworks/av/media/libstagefright/include/SampleTable.h
170056540e9ce65261b45efd15f67e72e2df1bed 11-Apr-2014 Robert Shih <robertshih@google.com> Expose sample duration in MPEG4Extractor.

Bug: 12782113
Change-Id: I75ee361243c5382d9288349c554deb7bed952782
/frameworks/av/media/libstagefright/include/SampleTable.h
89aa8fe4cb00d2f24260005b008602232d678684 19-Sep-2011 Andreas Huber <andih@google.com> Remove an O(n^2) algorithm in MPEG4Extractor.cpp to speed up seeks in long streams

containing B-frames.

Change-Id: Ie4dc734d2c2d5a5ce84674bb883f4b27e2278642
related-to-bug: 5336497
/frameworks/av/media/libstagefright/include/SampleTable.h
169c286ed166499c5099d2b336967e0bf3d25551 17-Aug-2011 Andreas Huber <andih@google.com> Make sure we have all the sample table metadata before declaring a track valid.

Change-Id: I2dfbc3e6017b5cd264e4cccfa47d19047b2e7f31
related-to-bug: 5178976
/frameworks/av/media/libstagefright/include/SampleTable.h
4678a6dc5f09008481524949a9667af5a6190374 15-Apr-2011 Andreas Huber <andih@google.com> Remove streamability verification, it's taking too long. Also...

make sure that findSampleAtTime uses composition time instead of decoding time,
at the expense of extra memory.

Change-Id: I67d09389b3df7ed265f614bdd0b142ca7f19f86a
related-to-bug: 4294536
/frameworks/av/media/libstagefright/include/SampleTable.h
4931bb5259d10c1fa01e7405fb7aaef58a8ffb22 03-Feb-2011 Andreas Huber <andih@google.com> Make sure timestamps attached to encoded media are composition timestamps.

not decoding timestamps. Obviously there is no difference between them if the
content in question does not involve frame reordering.

Change-Id: Iac4d06cfeb8a136f735c1148e98cac340d3ef893
related-to-bug: 3398314
/frameworks/av/media/libstagefright/include/SampleTable.h
c7fc37a3dab9bd1f96713649f351b5990e6316ff 16-Nov-2010 James Dong <jdong@google.com> 64-bit file size/offset support for media framework

Change-Id: I3452bc2c0f1d990cc67285df2fce1f9f86ff8e10
/frameworks/av/media/libstagefright/include/SampleTable.h
8bf59e735760af0b6a85747fd90bf8cf1e5388d7 06-Aug-2010 Andreas Huber <andih@google.com> Support for communicating if a buffer read from the _extractor_ is a sync sample or not.

Change-Id: Ie71506224d937cfff1fa1273bfac31c47db8845f
related-to-bug: 2900534
/frameworks/av/media/libstagefright/include/SampleTable.h
abd1f4f870925d6776dbe4b930b759a1ab6595ca 21-Jul-2010 Andreas Huber <andih@google.com> Support finer seek control on MediaSources.

related-to-bug: 2858448

Change-Id: Ifb4b13b990fd5889113e47e2c62249ac43391fa1
/frameworks/av/media/libstagefright/include/SampleTable.h
c57b67905c2128ddadfeca96785ee1f593b6605a 19-Jan-2010 Andreas Huber <andih@google.com> Squashed commit of the following:

commit 6689350d7e4dad6d873c1ed95f0a356e3bfd79d1
Author: Andreas Huber <andih@google.com>
Date: Tue Jan 19 09:23:02 2010 -0800

Some tweaks to the SampleIterator.

commit 5638bff6d31442a219806445c3106d47b081fcab
Author: Andreas Huber <andih@google.com>
Date: Fri Jan 15 14:46:29 2010 -0800

A much improved implementation of MPEG4 sample table operations through an iterator.
/frameworks/av/media/libstagefright/include/SampleTable.h
7e04dcf8d6784dd56f53aa90bf34431ab4f0710c 22-Oct-2009 Andreas Huber <andih@google.com> Extract video thumbnails from the largest sync sample among the first 20.

Also fixes OMXCodec seek behaviour on the very first call to OMXCodec::read()
/frameworks/av/media/libstagefright/include/SampleTable.h
89e69da4d86348409994c9dafbbb2634ccd7c196 13-Oct-2009 Andreas Huber <andih@google.com> Separated private from public header files.
/frameworks/av/media/libstagefright/include/SampleTable.h