To improve camera launch performance, cache the proxy service
interface. System tracing indicates fetching the interface can take
up to 8-10 ms during real camera opens, which is a percent or two
of total camera startup time.
Test: atest CameraCtsTestCases
Bug: 130173970
Change-Id: Icdf5218b04f608b897dcbf2085f971b04a913f3b
This reverts commit 482f60cccc.
Reason for revert: b/130058749 camera recording hang
Bug: 130058749
Change-Id: I358bc9c62c48328c01c8611c7e6f77d16affff54
Using AUDIO_DEVICE_OUT_SPEAKER to replace AUDIO_DEVICE_OUT_SPEAKER_SAFE
for device match.
Bug: 129456342
Test: volume can adjust while previewing ringtone
Change-Id: I3015f811ac6d2e3f3cdd606f453348c4bc526935
Signed-off-by: Robert Lee <lerobert@google.com>
This makes the entry for media.c2 in the framework manifest
device-independent.
Test: adb shell stagefright -i | grep -E "c2.*android"
Bug: 129999541
Change-Id: Idba276c512f495937aec32c4217dfd447e562139
Problem: When user is watching http live streaming video, user does some
operation to let browser run in the background, but mobile data is still
consumed abnormally.
Root cause: When browser runs in the background, browser will call
mediaplayer pause function, which would pause video renderer. But if network
speed is fast and buffered data is more than PlaylistFecher::
kMinBufferedDurationUs, data can't be consumed and it will call
postMonitorQueue() frequently after delayUS time's up. At this time, if http
server returns error when refreshPlaylist, delayUs will be 0 because
mLastPlaylistFetchTimeUs is not updated, which will cause postMonitorQueue
and refreshPlaylist more frequently, and consumes more mobile data.
Solution: On PlaylistFetcher::onMonitorQueue(), if refreshPlaylist returns
error, it calls notifyError and then end this playback.
Bug: 123665682
Test: play http live streaming video, pause this playback, then close Wi-Fi
to simulate accessing http server error
Change-Id: Ic30d446d1ab6e34ac3e5ef414c2e71a09c296f92
(cherry picked from commit 4ae6a2ab79)
Fix a cross deadlock between thread and effect chain mutex introduced by
commit 446f4df5.
Bug: 130044136
Test: start/stop audio capture for voice communication in 2 different apps
Change-Id: I23bdbd203476d2bc0b3d8d87ab66e1a9c00f7bcd
- Make mediacodec service/libstagefright_omx not dependent
on libgui. Server should only reference bqhelper (which
currently still have a dependency on libgui, but could be
removed later as it's only used internally).
- Make libmedia_omx not dependent on libgui by moving the
IOMX wrapper code into a separately that's only used by
the platform.
- Move ConsumerListener references in GraphicBufferSource
to implementation only, so that other libs including
GraphicBufferSource doesn't need to link libgui.
- Remove bqhelper references from some client side libs.
- Remove IOMX ipc related code, as IOMX interface is no
longer used for ipc. It's only used as an interface on
client side.
bug: 129272021
test: builds;
atest CtsMediaTestCases -- --module-arg CtsMediaTestCases:size:small
Change-Id: I49d80bf72eba325ee80b223d4a5ba7b0c1ab4d35
To make sure we catch certain breakages related to the media codec
(test) APEX at presubmit.
Bug: 129996486
Test: run atest in frameworks/av/apex
Change-Id: Icf5933aee02ebad80c709ec3de340bbc733a14bd
The system version recently bumped to 200000000, which caused failures
in tests, because we aren't allowing downgrades. Bump to 300000000 to
make sure the tests pass again.
Bug: 129093117
Test: atest media_swcodec_e2e_tests
Change-Id: Icc84f4a0f749916aded6746923f0d82b2b9dc473
If the parent element is multiple even though the element is not
multiple, it must be set to multiple. As a result, the element is
changed to multiple and the APIs are changed.
Bug: 128380795
Test: m -j && make check-api
Merged-In: Ifce1e86a91c23eee5ec945b36c7fc97a5db26c8a
Change-Id: Ifce1e86a91c23eee5ec945b36c7fc97a5db26c8a
(cherry picked from commit 85fc3f4718)
As MMAP does not support APC, it is disabled when a render loopback
policy is installed.
Test: adb shell write_sine_callback -pl # mmap is used
adb shell audiorecorder --target /data/file1.raw &
adb shell write_sine_callback -pl # mmap is NOT used
Bug: 129948989
Change-Id: Ia90c24953890de7e19fd99485bf760788f81126d
Signed-off-by: Kevin Rocard <krocard@google.com>
(cherry picked from commit c1dde63140)
Update version number to 0210000000. The Beta 2 builds (which are in dogfood an public beta) will receive modules via the Play Store with version numbers 0200000000. Hence, we must bump the version in qt-dev and hence beta 3. This is so that prebuilts in the beta 3 OTA will be higher than any Play Store pushes on beta 2. We are bumping it by 10000000 so that we have name space to do intermediate cherrypick builds if needed.
Bug: 129977903
Change-Id: I4f608a2bc0739b8b0fd4eefa1ec1223f977431cd
Bug: 129979644
Test: Fake SECURE_IMAGE_DATA by updating camera characteristics in
cameraserver; Retrieve capabilities in AImageReader test and
confirm that SECURE_IMAGE_DATA is supported
Test: AImageReaderVendorTest
Change-Id: Ia105969ce1df52408e6b7663a658d89f47cd90c2
Signed-off-by: Jayant Chowdhary <jchowdhary@google.com>
In libcodec2_client, the list of services listed in the manifest is
now queried from hwservicemanager. The caching mechanism has to be
modified accordingly.
This CL also modifies the way component traits are cached---component
traits are assumed to be static even if some services die and restart.
Test: make cts -j123 && cts-tradefed run cts-dev -m \
CtsMediaTestCases --compatibility:module-arg \
CtsMediaTestCases:include-annotation:\
android.platform.test.annotations.RequiresDevice
Bug: 112362730
Bug: 121132171
Bug: 128320274
Change-Id: I312f3281565aa6f1ee54f86963672f56777f418f
- Add constant.
- ACodec: Check for support only for video encoders, ignore otherwise.
- codec2: fix C2PrependHeaderModeSetting definition.
- CCodec: fail configure if the feature is not supported.
- CCodec: fix mapping between SDK and codec2
Bug: 32746212
Test: atest CtsMediaTestCases:MediaCodecTest#testPrependHeadersToSyncFrames
Change-Id: I8b86b4c8c139d6addbafc1a3558c640b1add42c9
Test: check html output of: frameworks/native/doc/make website
(with a tweak in Doxyfile to add "__ANDROID__API__=24" to
PREDEFINED)
Bug: 120916880
Change-Id: Idf93a13b9bbe2974fa4256de1f3ca67b7eee1bb6
The matching rule on audio attributes flags must be that ALL flags
set in the reference attributes are present in the compared attributes
and not just some flags.
Bug: 129721367
Test: change volume in Play Music
Change-Id: I6b5ada937aa169dbf1b0315d56172ae3b7bb4f47
(cherry picked from commit c0c6074f55)
For Camera1-HAL3 shim, the camera ID filtering logic is revised to
handle case of multiple logical cameras facing the same direction,
and are backed by same/different set of physical camera IDs.
Example 1 (all facing back):
ID1 = ID3 + ID4
ID2 = ID5 + ID6
Example 2 (all facing back):
ID5 = ID1 + ID2
ID6 = ID3 + ID4
In both examples, only ID1 will be advertised to camera1 app.
Test: Check cameras on devices with multiple logical cameras
Test: Camera CTS
Bug: 113705942
Change-Id: I76f370938b3311bbe7adcac8eddf8b6cf08e4571
Add sphal namespace for swcodec apex, and keep the search/
permitted paths in sync with system's sphal/vndk namespaces.
This change also removes libz.so from the list of shared libs
linking from default to platform namespace.
bug: 129552044
bug: 129095969
test: cts-tradefed run singleCommand cts -d --module CtsMediaTestCases --test android.media.cts.DecoderTest#testVp9HdrStaticMetadata
Change-Id: Id3148dacde43e4bd9c1782ffd67acb21ef095811