Bug: 135278534
Test: Run Perfetto with "screen recording" enabled and execute
a query for the "first_frame" slice
Exempt-From-Owner-Approval: cherry-pick
(cherry-picked from commit c840c0bfee)
Merged-In: I20abf7300e8c46b6e6dc52096db699e95c93297d
Change-Id: I20abf7300e8c46b6e6dc52096db699e95c93297d
This converts mediaserver, mediametrics and screenrecord and the
libraries they depend on to Android.bp
See build/soong/README.md for more information.
Bug: 122331945
Bug: 80410283
Test: boot blueline
Test: youtube
Test: screenrecord
Change-Id: I132b8b4f7965449df68fb1544034a7241c594a63
Move DataSourceBase and MediaSource to libstagefright, and
MediaBuffer, MediaBufferGroup and MetaData to libstagefright_foundation.
Test: build
Change-Id: I4f0ae01d40a32f4b773a2f74d5f2ae136e375322
Recognize AV1 content in various container formats, so we can extract
and pass to the AV1 codec.
Bug: 111936705
Test: playback of AV1 videos
Change-Id: I8a5523741481586b3569006236bd1fc92869ee76
Remove diagnostics mode from CFI across the board. This should reduce
performance overhead and also allows the minimal runtime to work when
other ubsan sanitizers are enabled. CFI stack dumps should include a
CFI related function, so it should be apparent when a crash is
CFI-related.
Bug: 117417735
Test: make -j
Change-Id: Ie697f83b4894230ac90a4de447dccbc006c9c5a6
check getFormat() return before dereferencing the pointer. Also fix
stagefright test harness to check AudioPlayer::start() return value
Bug: 118620871
Test: poc
Change-Id: I5864d3a12c77141109d6cbbbe1a688ae88456202
Disambiguate ::ALooper (NDK) from android::ALooper (AV framework).
Fixes compile errors when a header causes ::ALooper to be included.
Test: Builds
Change-Id: I63c4dd8483f9bc91c4b22e05b9a86637c5f9e549
Add FALLTHROUGH_INTENDED for clang compiler.
Bug: 112564944
Test: build with global -Wimplicit-fallthrough.
Change-Id: Ifba4afb0d332fc7d8f57486d09b7b8e6b763293c
It is no longer needed in libmediaextractor, and moving it back
to libstagefright will avoid a circular dependency later.
Bug: 111407253
Test: build, boot, play some files
Change-Id: I1373a9eedee27998e7733ea23ae1a375e45cc9c3
Currently this prints out the format of each buffer being read from
the input during 'dump' operation.
Change-Id: I44e59b96bfb07181d03903dab30c1b65f5eb6fcd
When extracting bitmaps, MediaMetadataRetriever does a copy from
StagefrightMetadataRetriever's VideoFrame to IMemory. We could
just allocate IMemory directly and return that to the client.
bug: 78475896
Change-Id: Ibe07e7d2c68f031261470308476089c2fa9298ea
* Add AC4 mime type
* Add AC-4 support to TS extractor
** Extract PES private data and AC4 descriptor.
** Dequeue and parse AC-4 access unit and sync frame
** Validate AC4 elementary stream header and parse sampling rate.
* Add AC-4 support to MPEG4Extractor
** Parse AC-4 sample entry in MP4 and set AC-4 MIME
** Add AC-4 sync header to MPEG4 encapsulated AC-4 raw frame
* Add AC4 DSI Parser
** In order to populate the AudioPresentation objects we need to
extract the AC4 presentation information from the dsi that is
written to the MPEG4 file during muxing.
Change-Id: If84c24ca475cabf3e0d2bdf3e4850aeeb185a0de
Signed-off-by: Previr Rangroo <prang@dolby.com>
We switch our NULL check to before we dereference 'buffer' for
the range_length(). This allows a debug build with a bad state
to have things caught via CHECK instead of a crash.
Test: Treehugger
Change-Id: Iae3a6a9e90ec91962dc0e9bebcac075cf1d7d4c1
- 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
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