| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
Sound card number and capture device id were hardcoded in
visualizer. Fix this by passing card number and capture
device id while starting visualizer output from audio HAL.
Bug: 65263761
Change-Id: Icc5c33e35d836f524918900b3bfdf2a587465505
|
|
|
|
|
|
|
|
| |
This reverts commit c246f5eaa1dabda72eb3bcf3823d4cab65bd4e83.
Reason for revert: Breaks the build of multiple devices
Change-Id: I516d7467369f9a9b9872e7378c8b2eabc8b1d96e
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
audio.h and its dependencies (audio-effect.h, sound_trigger.h...)
used to be shared between system and vendor code.
This led to multiple problems:
1) Such sharing contradicts the Treble policy of
strict independence of framework and vendor code.
2) When audio.h was changed, every vendor needed to update
its code in the next release. This meant that audio*.h
headers were mostly changed in backward compatible manner.
Nevertheless, for P the HIDL interface and thus the audio.h
interface are changed in backward incompatible way.
(Some enum are becoming 64 bit long).
3) As the headers were common, some API used only by the framework
needed to be visible to the vendors (mostly enum values).
4) Treble policy is to support at least one previous HAL version
As a result the audio*.h headers are now duplicated,
one set for the framework, and one for the vendor.
Each set will evolve independently. After this split,
the framework-only APIs will be removed from the vendor headers
and vice versa.
The split is implements as such:
+ for system code
- NOT moving the libaudio_system_headers
Eg: system/audio.h and system/audio_effects/effect_equalizer.h
are still in system/media/audio
- the legacy audio HAL API that were in libhardware headers
are now in libaudiohal_legacy_headers
Eg: hardware/audio.h and hardware/audio_effect.h
are now in frameworks/av/media/libaudiohal/legacy/
+ for vendor code
- moving libaudio_system_headers and the legacy audio HAL API
that were in libhardware_headers in
android.hardware.audio.common.legacy@2.0
Note that those headers are now versioned, so migrating to a @4.0
HIDL HAL will mean changing the legacy dependency too.
Eg: system/audio.h, system/audio-effect.h, hardware/audio.h
are now in hardware/interfaces/audio/common/2.0/legacy
- the legacy audio effect HAL API that was in libaudioeffects
is now moved in android.hardware.audio.effect.legacy@2.0
Eg: audio_effects/effect*.h are now in
hardware/interfaces/audio/effect/2.0/legacy
- the legacy sound trigger HAL API that were in libhardware_headers
is now moved in android.hardware.soundtrigger.legacy@2.0
Eg: hardware/sound_trigger.h is now in
hardware/interfaces/audio/effect/2.0/legacy
libaudioutil being used by both system and vendor, had
to be renamed for system to libaudioutil_system.
Vendor libs that now depend on the audio.h of a specific
version and are not extensively referenced in non google code,
append @2.0 to their name.
Note that headers that are not expected to change in the 4.0 HAL are
left in all-versions folder to avoid duplication.
This is an implementation detail as the versioned libraries export
the all-versions headers.
Note that strict vendor-system separation is enforced by the
build-system. The system headers are not available for vendor
libs and vice-versa.
Note that this patch is split between numerous git repository (>10),
all the commits having the same Change-id for searchability.
Note that audio_policy.h is no longer exposed to vendors
as the legacy audio policy HAL API was never officially supported.
As a result the audiopolicy stub implementation has been removed.
Test: compile taimen-userdebug walleye-userdebug
sailfish-userdebug marlin-userdebug
gce_x86_phone-userdebug gce_x86_phone
full-eng aosp_arm aosp_x86-eng
Test: check that the emulator booted and played audio
Test: full QA on sailfish-userdebug and taimen-userdebug
Bug: 38184704
Change-Id: I950f4e0a55613d72e32eba31bd563cb5bafe2d1a
Signed-off-by: Kevin Rocard <krocard@google.com>
|
|
|
|
|
|
|
|
| |
* Only fix warning related flags in this change.
Bug: 66996870
Test: normal builds.
Change-Id: If6de2711bf872558d8532842ee36ede269d5ac2f
|
|\
| |
| |
| | |
Change-Id: I4837def45d763ca261a7603eb0e3472da146920d
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The offload effect capture card has always been the nb 8 before
wahoo devices.
This value 8 was hard-coded in the offload visualizer even though
on Wahoo the correct value is 7.
The proper fix would be to link with the hal to retrieve the correct
value depending on the platform configuration.
Nevertheless there is no time for MR1 for this proper fix.
This hack will be reverted in master as soon as qcom provides the fix.
Bug: 64373855
Bug: 65026253
Bug: 65263761
Test: enabled visualizer on mp3 music (play music) in test app
Change-Id: I2036f694a6028c637582e55aa71ef56b4fa9d328
Signed-off-by: Kevin Rocard <krocard@google.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When the vndk is enabled (BOARD_VNDK_VERSION=current),
vendor libraries must only link against vendor variants
in the build system. This means that they receive restricted
sets of headers and that automatic global headers are restricted.
Test: build libqcomvisualizer with BOARD_VNDK_VERSION=current
Bug: 37342627
Change-Id: I7f17946754091ac3a71ccc6451429bb1cd60d13b
|
| |
| |
| |
| |
| |
| | |
Bug: 33241851
Test: Build target and pass CTS audio
Change-Id: Ibf8b0662cd7aea5592522b3ead2d8eb2aaac6c04
|
|/
|
|
|
|
|
|
| |
* Suppress existing warnings.
Bug: 66996870
Test: build with WITH_TIDY=1
Change-Id: I389b943471ccdcfc9b7db4411fa3973d77303a27
|
|
|
|
|
|
|
| |
Test: lunch marlin; make vendorimage;
fastboot -w flash vendor vendor.img # on marlin
Change-Id: Iee5fa24eecb8f1b929a2a40eb9c982cc087fcb4f
|
|
|
|
|
|
|
|
| |
Bug: 30229821
Test: fixing CL. Existing unit tests still pass.
Change-Id: I73d3fe413dd7590470c5b3b19569d6a7969c4dd8
|
|
|
|
|
|
|
|
| |
This should fix everything but the platform_get_snd_device_name_extn
warnings which will be in a separate CL.
Change-Id: Iace30af1cb7754e0bcfd25de8dc55c2c059e30c6
Test: Still compiles.
|
|
|
|
|
| |
Bug: 30229821
Change-Id: Iea1c4a21735e893aeded95b980044ec0861a7ea8
|
|
|
|
| |
Change-Id: I8da8a5b9885c7202d858b181d610aadc12544852
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When compress offload playback is active, if the Visualizer effect
is enabled, decoded PCM audio is routed to AFE Proxy port and
read from it by the Visualizer wrapper library. When audio is routed
to proxy port, current output device specific calibration is also
being applied which is not desired.
Avoid this by sending default audio calibration i.e. no post-processing
to be applied the data.
Bug: 18390493
Change-Id: Id576c4ed7bbb482683074e3e33aa5760b7597d37
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Support effects in DSP for tunnel mode playback
Add interface to support configuring equlaizer, bass boost,
virtualizer and reverb effects in DSP for tunnel mode of
playback.
(cherry-picked from CAF commit 3eedc004e9adf5967f393d65c22b7806d0c63e6c)
* post_proc: Enable effects param in DSP to start effect
-During switch to tunnel playback, offload effects-flags remain
disabled. This stops effects being applied on tunnel playback.
-Send effects enable params to DSP to start effects during switch.
(cherry-picked from CAF commit d02f2cd710334cc2be6a866da537a595256ae623)
* post_proc: disable adsp reverb when preset is 'None'
Audio HAL set corresponding preset id into adsp, but doesn't disabe
reverb explicitly when 'None' preset is chosen. However, preset=0
means custom preset in adsp, so adsp won't stop reverb processing.
(cherry-picked from CAF commit b27e25f062edfeebb6860078013c7b413b8c4301)
* post_proc: send ENABLE_FLAG directly to offload effect driver
Enable flag should be sent directly through offload effect driver to
adsp whenever bundle receives EFFECT_CMD_ENABLE. Otherwise enablement
will only take effect in adsp after subsequent parameters being set, and
that's not expected.
(cherry-picked from CAF commit d45948e2153c03b41f55577debd943408f9c8280)
* post_proc: reverb preset id is not mapped correctly
Array index is not correct and causes uninitialized value being used
when 'Plate' is chosen. Correct index to retrieve the right preset id.
(cherry-picked from CAF commit ca2685b2a0a695a7c4ac78883e750a92dcad0515)
* post_proc: disable Bassboost and Virtualizer for certain devices
WFD, Hdmi and usb audio are not intended to be applied with
SA+ bassboost and virtualizer, so add into invalid device list.
(cherry-picked from CAF ee2ff9621d25d83151ccb24a416f21533fdfbd31)
* post_proc: disable effect immediately when routed to invalid devices
Offload effect is still perceived when invalid output device is
connected. We should send disable command immediately once phone is
routed to unexpected device and forbid effect enablement during
temporary disabled state.
(cherry-picked from CAF commit 95d74c2232721631f3a04f6ccf35760b37b33fea)
* post_proc: Enable reverb in DSP to start effect
During switch to tunnel playback, reverb enable command is not sent to
DSP and causes reverb effect not applied continuously.
Send reverb enable params to DSP to start effects during switch.
(cherry-picked from CAF commit c37c260fa174453f4822261bcd531ddb2706ab2c)
* post_proc: include audio_effects.h from kernel exported headers
Currently, audio_effects.h header file is included with reference
to the absolute path. Instead, reference it from the kernel
exported headers.
(cherry-picked from CAF commit 090a2aa3f38298196ad9f47e3b6578535e1f7e10)
* hal: Add support for audio effects in DSP for tunnel mode playback
Add support to enable or disable audio post processing effects
in DSP for tunnel mode playback.
(cherry-picked from CAF commit 1d0891672175d431e8872dd7dff21e0ce507361a)
Change-Id: I7ead6da4c216fd87e8ca1884811c4e0155053f49
|
|
|
|
|
|
|
| |
Do not use popcount() to derive channel count from channel mask.
Bug: 15000850.
Change-Id: Idaf241be22f85040c6461834bad60ae1d9244f32
|
|
|
|
| |
Change-Id: Ibd6b6cc1c76030997ec33a3a038ef664393b7aeb
|
|
|
|
|
|
|
| |
Avoiding the use of GCC extensions improves code
portability
Change-Id: Iabe9fc84d135160367922e6d026e8608475fe8c8
|
|
|
|
|
|
|
|
|
| |
Add Peak and RMS measurement capabilities in the "offloaded" version
of the visualizer effect.
Bug 8413913
Change-Id: I09a88f4cc791db6c68f0769dc23ced0d3aac955c
|
|
Add library for visualizer effect used when
audio decompression is offloaded to QCOM audio DSP.
The implementation reads PCM back from the proxy port
in the audio DSP.
The audio HAL dynamically loads the effect library if present
and indicates offloaded output activity.
The PCM capture is only active when an offloaded output
is active and at least one effect is enabled on this output.
Bug: 8174410.
Change-Id: Ic78de932f9116e246494f9171c1cc7c3e35a0ea1
|