• Home
  • History
  • Annotate
  • only in /frameworks/av/media/libmediaextractor/
History log of /frameworks/av/media/libmediaextractor/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
cc08faac6b309a1acc9a4eb8c28c3fc9669f8771 30-May-2018 Robert Shih <robertshih@google.com> Merge "MPEG4Extractor: support CryptoInfo for cbc1, cbcs, cens" into pi-dev
7b78bfd448028aeeb642cb35d46cc96b205f24f9 27-Apr-2018 Robert Shih <robertshih@google.com> MPEG4Extractor: support CryptoInfo for cbc1, cbcs, cens

Bug: 31215085
Test: com.google.android.media.gts.WidevineMp4TempTests
Change-Id: I0b5d53bfaeaab716e9ff8f79e77170fbf711d070
nclude/media/stagefright/MetaDataBase.h
99745d1c3017e9ac25f8bb2c91cc47bb432d5248 15-May-2018 Chong Zhang <chz@google.com> Write Exif data block for HEIF files

Pass in Exif data block as a muxer data sample on each
image track. Add support in MPEG4Writer to write it out.

Allow grid to be used even when there is only 1 tile,
as some encoders can't encode very small images, using
grid allows them to encode in a supported size then apply
a crop to final size.

Also be more strict on esitmating the file level meta
size, since we now have to also reserve for Exif items.

bug: 79476308

Change-Id: I4b7d3af18cfb55a52f7218d9e7b6ad6f85f34343
nclude/media/stagefright/MetaDataBase.h
f334e17df4b8758e65923a17ae154a7bdbc6f07a 22-Mar-2018 Chong Zhang <chz@google.com> Merge "heif: report Exif offset and size in file meta" into pi-dev
01a7601f753fb80e89202fc0b115e263581fc3f4 15-Mar-2018 Chong Zhang <chz@google.com> heif: report Exif offset and size in file meta

bug: 73978990

Change-Id: I64e9b7e4535e7f1560e31f0302eeaf70db323dd7
nclude/media/stagefright/MetaDataBase.h
67d5b91f2fa0b106c038e642225e3b538db2be2e 15-Mar-2018 Chong Zhang <chz@google.com> heif: renaming of grid-{width,height} to tile-{width,height}

So that it's not confused with grid dimensions.

bug: 74831433

Change-Id: I29188c6527c2315cbc66157a0a5b68a0d11fecc4
nclude/media/stagefright/MetaDataBase.h
a1a005fc01118685c92e723c8dcf7afeffc9d59c 06-Mar-2018 Marco Nelissen <marcone@google.com> Remove 6 out of 8 RefBase references from mkv extractor

Bug: 67908544
Test: CTS DecoderTest
Change-Id: I04b6cda83861e70f1de70abc671dd791327be159
(cherry picked from commit ba1f0ab5ce8aa3a96578f6fb372d28d56a687aef)
nclude/media/ExtractorUtils.h
b486b52b2b67961073677d583a02269cbdc9a3fc 17-Feb-2018 Dongwon Kang <dwkang@google.com> Remove system library classes from DataSourceBase

Test: build.
Bug: 67908556
Change-Id: Ib56b3cd92ecc781fc2c4ff3696e71051ce8e212d
ataSourceBase.cpp
nclude/media/DataSource.h
nclude/media/DataSourceBase.h
c2c0aabfef24cbf48cdf6755f8627386971abdd3 27-Feb-2018 Dongwon Kang <dwkang@google.com> Merge "Revert "Remove IDataSource dependency from DataSource.""
3d21ae3fad5a894cf15f2e7e7a1d54d0f3d19db0 16-Feb-2018 Marco Nelissen <marcone@google.com> Remove RefBase from the extractor API

- Add MetaDataBase base class that MetaData derives from, but which
does not derive from RefBase.
- MediaBuffer::meta_data() now returns a MetaDataBase& rather than an
sp<MetaData>
- Rename MediaSourceBase to MediaTrack.
- MediaSource no longer derives from MediaSourceBase (or MediaTrack)
- MediaTrack::getFormat(), MediaExtractor::getTrackMetaData() and
MediaExtractor::getMetaData() all take a MetaDataBase& parameter that
they fill out, rather than returning a MetaData directly (the
corresponding methods on MediaSource and RemoteMediaExtractor continue
to return MetaData)

Bug: 67908544
Test: CTS MediaPlayerTest, DecoderTest, EncodeDecodeTest, manually record video

Change-Id: Ib531ab309061290be33d40d6100c9a8127e22083
ndroid.bp
ediaBuffer.cpp
ediaExtractor.cpp
ediaSourceBase.cpp
ediaTrack.cpp
etaData.cpp
etaDataBase.cpp
orbisComment.cpp
nclude/media/MediaExtractor.h
nclude/media/MediaSource.h
nclude/media/MediaSourceBase.h
nclude/media/MediaTrack.h
nclude/media/VorbisComment.h
nclude/media/stagefright/MediaBuffer.h
nclude/media/stagefright/MediaBufferBase.h
nclude/media/stagefright/MetaData.h
nclude/media/stagefright/MetaDataBase.h
81be7d85ab3e1a5897be623d040a26d4d9ede207 16-Feb-2018 Dongwon Kang <dwkang@google.com> Merge "Add MediaBufferBase and use it in MediaSource and MediaBufferGroup."
46b5c79e2f02b946a58e8c501f7930d439d42771 15-Feb-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Remove unused code DataSource::getVector() again."
1d93634705b6c30b66178395d7b76c70f8ed91a3 15-Feb-2018 Dongwon Kang <dwkang@google.com> Remove unused code DataSource::getVector() again.

This was removed by Ief477906 but resurected when introducing
DataSourceBase. Seems that git didn't do a good job on rebase.

Test: build.

Change-Id: If3f0102b3fcf06cdf99b34471e87258eba9d1018
nclude/media/DataSourceBase.h
8ff8cab83dacf0263d7675d265c30bc1b8fd5dfd 13-Jan-2017 Marco Nelissen <marcone@google.com> Remove dead code

Remove code that was unreachable or never called.

Test: build

Change-Id: I82da1a3a046a7fe66bf012aa749d5a2de669d807
nclude/media/MediaExtractor.h
nclude/media/stagefright/MetaData.h
22e668af6c810f711f156b68747f21e74ee6f010 13-Feb-2018 Marco Nelissen <marcone@google.com> Make MetaData::findXXX methods const

Test: build
Change-Id: Ica9f9772bfea11e11dc6b2a3e9a5a3a2bd8f8fdb
etaData.cpp
nclude/media/stagefright/MetaData.h
1889c3edad32995c0cf26ae2248fe7c957b7ec84 01-Feb-2018 Dongwon Kang <dwkang@google.com> Add MediaBufferBase and use it in MediaSource and MediaBufferGroup.

MediaBuffer class exposes internal classes, ABuffer and IMemory, which
we don't want to expose to plugins. This change introduces
MediaBufferBase which does not expose any classes from system library.

Test: build and post-submit media cts tests
Bug: 67908556
Change-Id: Ic9ee239caf9b84b2b3740e2d533257afa25c8784
ndroid.bp
ediaBuffer.cpp
ediaBufferBase.cpp
ediaBufferGroup.cpp
nclude/media/MediaSourceBase.h
nclude/media/stagefright/MediaBuffer.h
nclude/media/stagefright/MediaBufferBase.h
nclude/media/stagefright/MediaBufferGroup.h
6969da62b068aff2aee650d57590532f8fc8de69 13-Feb-2018 Dongwon Kang <dwkang@google.com> Revert "Remove IDataSource dependency from DataSource."

This reverts commit 514674257ef6954a7479ac93a26a07061f54462d.

The original change Iaba6d9be is no longer needed since we
separated out DataSourceBase from DataSource. Now, DataSource
may have a method relying on a class from libmedia, IDataSource.

Test: checked the correct wrapping path with 'dumpsys media.extractor'
Bug: 72869975

Change-Id: Ib0d5ca863fa70a4a96f97b3377c209e1f288f443
nclude/media/DataSource.h
e65b694a101ae6dd0386f48ac3cc9548c8991242 13-Feb-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Hide classes from system library in MediaBufferGroup.h"
4d0c0a8942de184f07fdd6c918c6355e5771bdff 25-Jan-2018 Dongwon Kang <dwkang@google.com> Hide classes from system library in MediaBufferGroup.h

Test: build.
Bug: 67908542
Change-Id: Icf0e3d634c3ab4e1350c9960655eaaca37029b34
ediaBufferGroup.cpp
nclude/media/stagefright/MediaBufferGroup.h
17e172b4c3c87ecaa7c87eecc42b4dc47e3e9734 30-Jan-2018 Dongwon Kang <dwkang@google.com> Remove String8 and AMessage from extractor plugin interface.

- mime(String8): is dropped from the interface since it was only used
for debug message. debug message is replaced with MediaExtractor::name.
- meta(AMessage): is replaced with an opaque pointer, void *, in addition
to an additional function pointer to free the object.
(In MPEG4Extractor case, AMessage with "meta-data-size", which was
introduced in Id2acdde89, is removed since the use case had been gone
with AwesomePlayer.)

Test: cts-tradefed run cts-dev --module CtsMediaTestCases --compatibility:module-arg
CtsMediaTestCases:include-annotation:android.platform.test.annotations.RequiresDevice
Bug: 67908556
Change-Id: I242944332bf0ff7dd4ad2106fe8f68e97264010b
nclude/media/MediaExtractor.h
d23ab3ae2248781640e9a10659c9ad0a78941acc 30-Jan-2018 Dongwon Kang <dwkang@google.com> Remove std:vector from MediaExtractor::setMediaCas()

The layout and implementation of std::vector may be different depending
on the compile environment. Now MediaExtractor uses plain c pointer to
pass the token while framework side, IMediaExtractor, keeps using
std:vector.

Test: build
Bug: 67908556
Change-Id: I9614426e1d3318ee6ead5f8f78d5d0120d8c605d
nclude/media/MediaExtractor.h
2a243f08193fe9ff1afe018e9953f01c44ced9de 30-Jan-2018 Marco Nelissen <marcone@google.com> Remove RefBase from plugin-side DataSource

Extractor plugins now use DataSourceBase, which is not refcounted.
Framework-side DataSource derives from DataSourceBase and RefBase.
Also remove MediaExtractor::release, because it is not needed
anymore due to the way the extractor/track/datasource lifecycle
is managed now.
Also add source and target pid to CallbackDataSource name, to
make the extractor dumpsys more useful.

Bug: 67908556
Test: build, boot, CTS, skia test app for heif
Change-Id: I6b9cbe903f76b0cf27ba87f4a456f424803efd08
ndroid.bp
ataSource.cpp
ataSourceBase.cpp
nclude/media/DataSource.h
nclude/media/DataSourceBase.h
nclude/media/MediaExtractor.h
78f00edc6376657e8931a45a80abf36f2f6ac841 31-Jan-2018 Dongwon Kang <dwkang@google.com> Remove unused code DataSource::getVector()

This was introduced in Id207f369, but the only use case removed in
I953bea9f. This changes removes usage of Vector from the DataSource
interface.

Test: build.
Bug: 67908556
Change-Id: Ief4779062331fc5a06ce1eac848e25c06fbba657
nclude/media/DataSource.h
7dc218e17800cc3ac95551e3280820f407adf7b5 29-Jan-2018 Dongwon Kang <dwkang@google.com> Move MetaData from foundation to libmediaextractor

Test: cts-tradefed run cts-dev --module CtsMediaTestCases --compatibility:module-arg
Change-Id: I2c5e05f83f039813cb4c862e929315e623d5d7fa
CtsMediaTestCases:include-annotation:android.platform.test.annotations.RequiresDevice
Bug: 67908544
ndroid.bp
etaData.cpp
nclude/media/stagefright/MetaData.h
42e497d687c8e9ec61601987894c9033dcbf62d6 30-Jan-2018 Dongwon Kang <dwkang@google.com> Fix asan builds.

-adding missing include statements

Test: make -j50 PRODUCT-sailfish_asan_coverage-userdebug dist showcommands tests userdataimag
Bug: 72683744
Change-Id: I7f958c2c81d38699d2d1cc893d1dfbb46d32de7f
nclude/media/MediaExtractor.h
nclude/media/MediaSourceBase.h
cb30d8477cbd16dcef6acee1e07dedfa246e9456 27-Jan-2018 Marco Nelissen <marcone@google.com> Remove RefBase from plugin-side MediaSource

Extractor plugins now use MediaSourceBase, which is not refcounted.
Framework-side MediaSource derives from MediaSourceBase and RefBase.

Bug: 67908556
Test: build, boot

Change-Id: Ie33ca07f0d0ba783a504d7b7bf1a75ca4acdd745
ndroid.bp
ediaSource.cpp
ediaSourceBase.cpp
nclude/media/MediaExtractor.h
nclude/media/MediaSource.h
nclude/media/MediaSourceBase.h
7d880c31d2079299000b036c6ae742dc695a5b19 25-Jan-2018 Marco Nelissen <marcone@google.com> Remove RefBase from MediaExtractor

Bug: 67908556
Test: build, boot

Change-Id: I9cc0f1bdb89c2da52f89a28471d4b86f30500abb
nclude/media/MediaExtractor.h
49ce671c4efa4c5d038351ca441e34c5afa5241f 24-Jan-2018 Dongwon Kang <dwkang@google.com> Remove unused includes and forward declarations in libmediaextractor/include

Test: make checkbuild
Bug: 67908556
Change-Id: If840305af5c043bb8014590eb208cf11c99e61ee
nclude/media/DataSource.h
nclude/media/MediaExtractor.h
nclude/media/MediaSource.h
nclude/media/stagefright/MediaBuffer.h
bc8f53b8c1c220d9ce01526b6e3834f14af98ed5 26-Jan-2018 Dongwon Kang <dwkang@google.com> Revert "Revert "Move MediaBufferXXX from foundation to libmediaextractor""

This reverts commit 95a8bfab98a73a75eb60ecf2cc8683f4a1f04b35.
Plus, keeps 'virtual' keyword for ~MediaBuffer which has a child class.

Test: cts-tradefed run cts-dev --module CtsMediaTestCases --compatibility:module-arg
CtsMediaTestCases:include-annotation:android.platform.test.annotations.RequiresDevice
Bug: 67908542
Change-Id: Ib94d574d6bbd6245c174dd1c9bcca379015724cc
ndroid.bp
ediaBuffer.cpp
ediaBufferGroup.cpp
nclude/media/stagefright/MediaBuffer.h
nclude/media/stagefright/MediaBufferGroup.h
4b780702948d19caef60617666c69b6d7f64aa29 25-Jan-2018 Dongwon Kang <dwkang@google.com> Revert "Move MediaBufferXXX from foundation to libmediaextractor"

This reverts commit f03606d9034730bea1a394e6803f9ebc36f3d2eb.

Test: build and plays the file attached in the bug.
Bug: 72479511
Change-Id: Ifdb8225a7140480649cecd52668ac7dcdd489252
ndroid.bp
ediaBuffer.cpp
ediaBufferGroup.cpp
nclude/media/stagefright/MediaBuffer.h
nclude/media/stagefright/MediaBufferGroup.h
f03606d9034730bea1a394e6803f9ebc36f3d2eb 24-Jan-2018 Dongwon Kang <dwkang@google.com> Move MediaBufferXXX from foundation to libmediaextractor

Removed MediaBufferBase in favor of MediaBufferHolder
which contains a MediaBuffer inside. Instead of set/getMediaBufferBase,
now it set/finds MediaBufferHolder in ABuffer->meta().

Test: build. pass MediaPlayerDrmTest and EncodeDecodeTest.
Bug: 67908542
Change-Id: Icb4f7ac350a7876f5e4596bae8be2a9e95956c2f
ndroid.bp
ediaBuffer.cpp
ediaBufferGroup.cpp
nclude/media/stagefright/MediaBuffer.h
nclude/media/stagefright/MediaBufferGroup.h
ab7429b4cec5e619f0ed77d13363da4167212874 23-Jan-2018 Marco Nelissen <marcone@google.com> Merge "Remove unnecessary includes and forward declarations"
74065036f03cb9f96acb43c6e4f105ec91132395 23-Jan-2018 Marco Nelissen <marcone@google.com> Remove unnecessary includes and forward declarations

Bug: 67908544
Test: build
Change-Id: I824625940ba562571b16ed21e351ee17807d7d30
nclude/media/MediaSource.h
4049f13fb3d1c588d3e4dc518ede15d45dca4c9e 22-Jan-2018 Wei Jia <wjia@google.com> MediaPlayer2: build static libs for some components

Test: compiles
Bug: 63934228
Change-Id: I1791b40a67c87ea3146825767699e5022444e433
ndroid.bp
661e6990bf0fc4174f43cea928d80fcdcc623ff6 05-Jan-2018 Dongwon Kang <dwkang@google.com> Remove libmediametrics dependency from libmediaextractor

- Removes media metrics related methods in the extractor plugin.
- Puts metrics related code in one place, RemoteMediaExtractor.

Test: build & pass android.media.cts.MediaExtractorTest
Bug: 67908556
Change-Id: I5e06e6b6b5c047a3c68d90479e55f1df9061da45
ndroid.bp
ediaExtractor.cpp
nclude/media/MediaExtractor.h
307f6056aea8f2ec98e7451742e307d2fc7acb35 22-Nov-2017 Dongwon Kang <dwkang@google.com> Remove unused MediaSource::setBuffers

Originally added with Ie03b285265099db, but the use case was gone with
OMXCodec.

Test: make checkbuild
Bug: 67908542
Change-Id: I6c4953126ab80f876a6dca258e112bb2eaee440d
nclude/media/MediaSource.h
3d2c309be468a0a66fad3a6dd35525bf059a35ac 19-Dec-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Remove unused methods in Media(Source|Buffer)"
92541a351d8c5ca6aa0c1b3b0d40023ff2385645 16-Dec-2017 Dongwon Kang <dwkang@google.com> Remove unused code DataSource::getDrmInfo

The method in question was added in I4b9ef19 with DRMExtractor.
The only use case of getDrmInfo(), in DRMExtractor, has been removed
with I4dd3f07ca.

Test: build. post commit media cts test.
Bug: 65851881
Change-Id: Ieb4d9d36c74efcfbfe690bcd09e1cd7e08ee3f1a
nclude/media/DataSource.h
514674257ef6954a7479ac93a26a07061f54462d 08-Dec-2017 Dongwon Kang <dwkang@google.com> Remove IDataSource dependency from DataSource.

The logic for requesting file data source to media extractor service
moved to MediaExtractorFactory from GenericSource.

Bug: 65851881, Bug: 63934228
Test: MediaCts post commit tests
Change-Id: Iaba6d9bec560f0cd8a826f47d74bf491a34c83e9
ataSource.cpp
nclude/media/DataSource.h
2efe43d3a8fa1dcc6d1253baafb09b3d6e71329a 22-Nov-2017 Dongwon Kang <dwkang@google.com> Remove unused methods in Media(Source|Buffer)

Test: make checkbuild
Bug: 67908542
Change-Id: I56346f75a8c5f87b7090c02e6248fedcd5a19cf9
ediaSource.cpp
nclude/media/MediaSource.h
d3e0d861aa68a7ef129fe228595bff734448ebc8 03-Oct-2017 Chong Zhang <chz@google.com> heif: fixes for image sequences and dual-function files

Adding support for two new sets of APIs on MediaMetadataRetriever:

- getImageAtIndex() and getPrimaryImage()
- getFrameAtIndex() and getFramesAtIndex()

Outline of changes:

- Proper indexing of all displayable still images, so that they
can be retrieved by getImageAtIndex()

- Exposing still images as "image/x.android.heic" tracks in
MediaExtractor with necessary descriptive keys (such as "grid-*")

- Support to retrieve video frames by absolute index instead
of timestamps, as image use cases mostly are interested in
getting the images and care less about timing.

- Support to retrieve video frames in batches because retrieving
one frame at a time is inefficient.

- Refactor image / frame decoding code into FrameDecoder, and split
still image decoding and video sequence decoding into to sub
classes to facilite future development.

bug: 63633199

test:
cts-tradefed run cts-dev --module CtsMediaTestCases --compatibility:module-arg CtsMediaTestCases:include-annotation:android.platform.test.annotations.RequiresDevice

Change-Id: I2fe8519fb6907f315a8b513921fc1cc7f436e28d
nclude/media/MediaSource.h
d91dc5a0602f54fc0d4d2187f37b5b8169bb62c3 10-Oct-2017 Dongwon Kang <dwkang@google.com> Remove libmedia and libstagefright dependency from extractors

- MediaSource, DataSource and MediaExtractor are moved to
libmediaextractor so that they can be used by extractor
implementations without depending on libmedia and libstagefright.
- XXXFactory classes has been added in order not to expose CreateXXX
methods in libmediaextractor.
- avc_utils is moved to libstagefright_foundation since most of
extractor implementations are relying on that.

Test: build + post submit media CTS tests
Bug: 65851881
Change-Id: I7d5cf18dd25abc10478ac3f6e7d1828ad023e3fb
ndroid.bp
ataSource.cpp
ediaExtractor.cpp
ediaSource.cpp
nclude/media/DataSource.h
nclude/media/MediaExtractor.h
nclude/media/MediaSource.h
04ce1be860b40e18ca7f5fdf64ecb82567d7fe24 17-Oct-2017 Dongwon Kang <dwkang@google.com> Clean move of files to keep the git history

Test: No. This is just intrim change. Build will be fixed by
the following change.
Bug: 65851881

Change-Id: I8285b3b79eeaf76fadc2242c71e999434f467c12
ataSource.cpp
ediaExtractor.cpp
ediaSource.cpp
nclude/media/DataSource.h
nclude/media/MediaExtractor.h
nclude/media/MediaSource.h