libstagefright_foundation_vendor is a vendor-only variant of the
libstagefright_foundation. Vendor libs and other VNDK libs should link
against this _vendor.so library. This vendor-only variant does not have
dependency to libpowermanager which is not available to vendors.
Headers are moved from the global include dir to module-local include
dir. This is because global include dir (e.g. frameworks/av/include) is
not provided when building with BOARD_VNDK_VERSION=current. Instead the
headers are exported via the module's export_include_dirs directive.
Short summary on the directory movement:
"some" libstagefright headers are moved from libstagefright/include to
libstagefright/include/media/stagefright. This is because the headers
are included as <media/stagefright/HEADER_NAME,h>.
libstagefrigut_foundation headers are moved from
libstagefright/include/foundation to
libstagefright/foundation/include/media/stagefright/foundation. Again
this is because the headers are included as
<media/stagefright/foundation/HEADER_NAME.h>.
Furthermore, in order to prevent sudden breakage, symlinks to the
module-local header directories are added to the global include
directory.
frameworks/av/include/media/stagefright ->
<libstagefright>/include/media/stagefright
frameworks/av/include/media/stagefright/foundation ->
<libstagefright_foundation>/include/media/stagefright/foundation
Bug: 37462569
Test: sailfish builds and boots
Test: BOARD_VNDK_VERSION=current m libstagefright_foundation_vendor is
successful
Merged-Id: Iadfa594e885e0bd39837ccb282993d3ba5b62852
Change-Id: Iadfa594e885e0bd39837ccb282993d3ba5b62852
(cherry picked from commit 093f0b7ab9)
* Owners are selected from top CL approvals or owners.
They will be suggested to review/approve future CLs.
* OWNERS files are recognized by the new find-owners plugin, see .md files in
https://gerrit.googlesource.com/plugins/find-owners/+/master/src/main/resources/Documentation/
Test: build/make/tools/checkowners.py -c -v OWNERS
Change-Id: I7c848855a2d7a0d7f33123ea4ef5c2d03977b495
1) Limit number of VolumeShapers that can be created.
a) 16 system VolumeShapers
b) 16 application/client VolumeShapers
2) Return proper volume before VolumeShaper is started.
3) Consistent xOffset definition used internally:
a) this is now always the position on the volumeshaper curve
which can go backwards if in REVERSE.
b) normalized time is always forward going and is scaled
to 0.f and 1.f depending on progress relative to
the curve's duration.
4) Fix replace method.
5) Add comments.
Test: Use updated CTS VolumeShaperTest
Bug: 37536598
Change-Id: I837ab2a481adc0abbd3f1338bfe2cb79831b11fa
hardware/qcom/display includes frameworks/av/include headers
while compiling with -Wextra. Fix warnings that were hidden
by -isystem.
Bug: 31751828
Test: lunch bullhead-userdebug && m -j checkbuild
Change-Id: Ib1ee7165882ff3cc1d85c123815604079483f725
Move libmediandk and libcamera2ndk headers into their module
and export them from there. Also move them to the same path
relative to the export as used in the NDK, media/ for
libmediandk and camera/ for libcamera2ndk.
Test: builds
Change-Id: I0b424e0e48bfb5e2b762694a97d799de08f5dda3
Merged-In: I0b424e0e48bfb5e2b762694a97d799de08f5dda3
(cherry picked from commit 7e8d4ba588)
Move libmediandk and libcamera2ndk headers into their module
and export them from there. Also move them to the same path
relative to the export as used in the NDK, media/ for
libmediandk and camera/ for libcamera2ndk.
Test: builds
Change-Id: I0b424e0e48bfb5e2b762694a97d799de08f5dda3
(cherry picked from commit 7e8d4ba588)
hardware/qcom/display includes frameworks/av/include headers
while compiling with -Wextra. Fix warnings that were hidden
by -isystem.
Bug: 31751828
Test: lunch bullhead-userdebug && m -j checkbuild
Change-Id: Ib1ee7165882ff3cc1d85c123815604079483f725
(cherry picked from commit 27d3c6a329)
Functions in headers that are not static inline will cause duplicate
symbol errors when linking if the header is ever included twice
into different compilation units of the same module. It also causes
-Wunused-function warnings if they are not used in the cpp file, which
were hidden by the use of -isystem frameworks/av/include.
Bug: 31751828
Test: m -j checkbuild
Change-Id: I36f258bb4f5c3df54e874280beab344e63c519d5
Merged-In: I36f258bb4f5c3df54e874280beab344e63c519d5
(cherry picked from commit 413adafb04)
Fix the trivial warnings that are hidden by the use of -isystem to
include frameworks/av and caught by -Werror.
Test: m -j checkbuild
Bug: 31751828
Change-Id: I155f9f772ce0a84b364313814cb7cf528b9de4eb
Merged-In: I155f9f772ce0a84b364313814cb7cf528b9de4eb
(cherry picked from commit b8c35f9447)
These warnings were hidden by -isystem.
Bug: 31751828
Test: m -j checkbuild
Change-Id: Ibb1aa07a6827fcbd29fc15291fcd90280c0f608d
Merged-In: Ibb1aa07a6827fcbd29fc15291fcd90280c0f608d
(cherry picked from commit 6f51c153ea)
A method named dump() is already exported by Binder. The warnings
were hidden by the use of -isystem to include frameworks/av/include.
Bug: 31751828
Test: m -j checkbuild
Change-Id: If460a6efc7c7b108243c3ef068c28619482f599d
Merged-In: If460a6efc7c7b108243c3ef068c28619482f599d
(cherry picked from commit f461f38e08)
One version of the CHECK_* macros are defined by
android-base/logging.h, and another by ADebug.h. Eventually
the ADebug.h ones should be replaced with the libbase ones, but
that ripples out into a long dependency chain that needs to link
against libbase. The redefined macro warnings were hidden by the
use of -isystem to include frameworks/av/include. Hack around it
for now by undefining the libbase ones if they exist.
Bug: 31751828
Bug: 37782039
Test: m -j checkbuild
Change-Id: Ifabff1c2bc6bac198804c951e98f3fee282cd018
Merged-In: Ifabff1c2bc6bac198804c951e98f3fee282cd018
(cherry picked from commit 1b1686db53)
Fix the trivial warnings that are hidden by the use of -isystem to
include frameworks/av and caught by -Werror.
Test: m -j checkbuild
Bug: 31751828
Change-Id: I155f9f772ce0a84b364313814cb7cf528b9de4eb
Merged-In: I155f9f772ce0a84b364313814cb7cf528b9de4eb
(cherry picked from commit b8c35f9447)
These warnings were hidden by -isystem.
Bug: 31751828
Test: m -j checkbuild
Change-Id: Ibb1aa07a6827fcbd29fc15291fcd90280c0f608d
Merged-In: Ibb1aa07a6827fcbd29fc15291fcd90280c0f608d
(cherry picked from commit 6f51c153ea)
1/ Be more explicit about what usage/format combination is supported.
2/ Get rid of usage1 following the same change in AHardwareBuffer.
3/ No more gralloc1 usage, so don't call android_convertGralloc1To0Usage
anymore.
Bug: 35114769
Bug: 37097572
Test: Ran AImageReaderCts
Change-Id: Ic712d0ac5bd86b2c4c68815125ba9037212dfd65
Consider whether VolumeShaper has been started or not when
restoring (position). If the VolumeShaper hasn't been started
we restore in that state. If it has been started already,
we advance to the end assuming the duration has been played out.
Test: CTS and headset / kill audioserver
Bug: 37536598
Change-Id: I4b55dca6f6a859563fd20bad4c8f67d2c92321c0
Test: Manual use of Camera, Movies, Photos and YouTube apps.
Test: With CtsMediaTestCases.apk installed,
adb shell am instrument -e size small -w
'android.media.cts/android.support.test.runner.AndroidJUnitRunner'
Bug: 37302530
Change-Id: Id0d4f7fed57349a2f5484f6b6264981471e8f022
In preparation for moving libcamera_client to Soong, this is a backport
of the camera portion of the change to move headers from include/ into
the appropriate directories.
include/camera -> camera/include/camera
Adds a symlink from the old location to the new one.
Bug: 33241851
Test: mmma -j frameworks/av/camera
Change-Id: Ic508c2d0100f4e84b63e745d50eca1402b6fed6c
(cherry picked from commit d008fd1e4f)
Also had to fix the location and symlink of them.
Test: works with BOARD_VNDK_VERSION := current
Bug: 33241851
Change-Id: Idcfe1eaaf7be10a183b69bafa07f035ab9ca1e4e
Combine the two openSession methods into one that doesn't take any
arguments. This gives the client more flexibility on creating
sessions efficiently. They can better decide whether to share one
session for multiple streams, or create one session per stream.
bug: 22804304
Change-Id: I9634f4dd4fc437229068103b54555cc28a818937
Test: Media post-submit tests on Pixel phone.
Test: Manual use of Camera, Photos, Play Movies and YouTube apps.
Bug: 36952714
Change-Id: I230df51c2d658e29cffec369ba622e336c3402d2
- Set crypto mode to kMode_AES_CTR, since kMode_AES_CBC is not defined
on Java API, and is rejected when the sample is queued to MediaCodec.
- Wrap the plugin object in a RefBase, and hold a strong ref to it
when executing any API calls in CasImpl. This is needed because
CasImpl could be released by Java API, while MediaCodec native is
still trying to access it.
- Fix build warnings.
Tests: cts-tradefed run cts-dev --module CtsMediaTestCases --test android.media.cts.ClearKeySystemTest
It should not fail.
bug: 22804304
Change-Id: Id4ef037d57dd741d2bb22b1de3d04c8d078b69fb
Changes for the new HAL structure have brought about a build time
circular dependency between libmedia and libmediadrm. This set of
changes the media metrics code into its own library and arranges
for the relevant consumers of the media metrics code to link
to this new library (where they had previously picked it up by
including libmedia).
Bug: 36990807
Test: build, boot.
Change-Id: I81768eecca88d5e59e6e6e547f29308a94e30c7b
The header comment says that the default URL is returned, but it
is not. The comment has been corrected.
bug:35257669
Change-Id: Ica6c60382f68d8a70aeab8959eb29cf454ff931b
We are ready for devices to begin migrating to a 64-bit Media DRM
Server. However, not all devices are ready to make this jump yet. A
device needs to have all of its DRM Plugins ready to run as 64-bit
before it can do this. This includes having 64-bit hardware
integrations.
So that devices can turn on 64-bit support as they get ready, I am
adding flags that can be set in a device's device.mk file. There are two
parts:
* ENABLE_MEDIADRM_64 enables building the mediadrmserver as 64-bit.
* Setting drm.64bit.enabled=true in PRODUCT_PROPERTY_OVERRIDES switches
mediadrmserver to searching for DRM Plugins in the 64-bit directory.
Test: Validated that turning on these flags enables a 64-bit
mediadrmserver that loads 64-bit DRM Plugins from the lib64
directory (after setting DISABLE_TREBLE_DRM to true to load this
code as opposed to the Legacy DRM Plugin HAL)
Bug: 36076017
Change-Id: I141cfd57ff75b40c8b0cb40a5bf1439a1ab5b766
This introduces new API that allows AHardwareBuffer access via
AImage/AImageReader.
Bug: 35114769
Test: Build (should have no functional change from headers change), and
existing CTS tests run using cts-tradefed on a Pixel.
Change-Id: I7b6505ca3b9489d86eb564d1ae5707fd3fa25668
Add setParameters to communicate parameter changes when the codec
is in running state.
Bug: 32746065
Change-Id: I223041bebadedfb09848315a360b5efaae451c14
Expose createPersistentInputSurface() and setInputSurface via
NDK-mediaCodec to enable native encoder apps to record from a
persistent input surface.
Bug: 32746065
Change-Id: Ia152f43dacfe376a89c550ecbeaf6d4016ec07b5