Commit Graph

264 Commits

Author SHA1 Message Date
Kevin Rocard
f088e57008 Merge "Audio policy config xsd: add missing gains and address in ports" into oc-dev am: 90e68d31cf
am: e93e38a91d

Change-Id: I9c1c4929b4edeebd8e3d1173312e07f62ad29fc0
2017-08-01 00:08:46 +00:00
Kevin Rocard
e93e38a91d Merge "Audio policy config xsd: add missing gains and address in ports" into oc-dev
am: 90e68d31cf

Change-Id: I0aa31b2996c8aae97d0b7ba16d9943f47d70a1fe
2017-08-01 00:05:16 +00:00
Kevin Rocard
488beb2db1 Audio policy config xsd: add missing gains and address in ports
No nexus/pixel device uses port gains and their configuration were taken
as reference for the xsd creation.

Gains in mixPort and devicePort are supported by the code and use by
oem. As a result the xsd should allow them.

For validation of this path, the xsd was run against the example xml in
the audiopolicy source. Several other misalignment were found. They will
be fix in an other patch.

The address is also an optional field that was forgotten for the same
reason.

Bug: b/63827061
Test: -noout xmllint --schema hardware/interfaces/audio/2.0/config/audio_policy_configuration.xsd frameworks/av/services/audiopolicy/config/audio_policy_configuration.xml
Test: the above command fails for some other xml node unrelated to this bug
Test: this is tracked by b/38184704
Change-Id: I8dae15eb85a6a6d43c87aa747daf92a88d3fdcc0
Signed-off-by: Kevin Rocard <krocard@google.com>
2017-07-27 15:51:04 -07:00
Kevin Rocard
60012203d3 Audio VTS: Change test utility from dyn to static lib
Bug: 63801053

In order to avoid having to instruct vts-tradefed to push the test
utility library on the target before runing the audio VTS,
duplicating the makefile declaration,
make the library static.

Test: make vts
Test: vts-tradefed run commandAndExit vts --module VtsHalAudioV2_0Target
Change-Id: I7a98b2aaf0e0f6f91a92b7f01df1c630540ad697
Merged-In: I7a98b2aaf0e0f6f91a92b7f01df1c630540ad697
(cherry picked from commit 921d12ea6d)
Signed-off-by: Kevin Rocard <krocard@google.com>
2017-07-20 10:01:44 -07:00
Kevin Rocard
01cafe7771 Audio VTS: Change test utility from dyn to static lib
am: 0718333765

Change-Id: Ia59ec0ce0f5a60aea1a53845caae51dac44651a9
2017-07-20 16:29:56 +00:00
Kevin Rocard
0718333765 Audio VTS: Change test utility from dyn to static lib
Bug: 63801053

In order to avoid having to instruct vts-tradefed to push the test
utility library on the target before runing the audio VTS,
duplicating the makefile declaration,
make the library static.

Test: make vts
Test: vts-tradefed run commandAndExit vts --module VtsHalAudioV2_0Target
Change-Id: I7a98b2aaf0e0f6f91a92b7f01df1c630540ad697
Merged-In: I7a98b2aaf0e0f6f91a92b7f01df1c630540ad697
Signed-off-by: Kevin Rocard <krocard@google.com>
2017-07-19 16:40:57 -07:00
Mikhail Naganov
afae464376 Add OWNERS for audio-related HAL default implementations
Test: not needed
Change-Id: Idefe7be10bde22866be82f87118b9b54e74c3f40
2017-07-14 17:14:53 +00:00
Tomasz Wasilczyk
bb5f29c9fb Use broadcastradio 1.1 default implementation by default.
Also, remove a warning for 1.1 interface, as the hidl freeze mechanism
is now in place.

Bug: b/34348946
Test: VTS, instrumentalization
Change-Id: I82025a7de8abd0758ba8b196bbbfc48b9322ac3b
2017-07-12 12:23:41 -07:00
Mikhail Naganov
6301fc325e Add VTS test for validating audio effects config against XML schema
If the device contains /vendor/etc/audio_effects.xml (the new XML
format for the audio effects configuration), the test validates
this config against the schema contained in
audio/effect/2.0/xml/audio_effects_conf_V2_0.xsd
(pushed to the device by the VTS test runner)

Change-Id: Ib57d30e3c1e32ce5d74f906a216f9bb8f635a28c
Test: this is a test
Bug: 37492580
2017-07-07 17:45:15 -07:00
Kevin Rocard
6a0af3c51b Can not specify an audio effect for the default stream
The default stream is an alias to an other stream.
One can not allocate effects for it in the configuration
as it could conflict with the stream it aliases.

Test: run xmllint against all audio effect configs
Bug: 37492580
Change-Id: Ia2bbc13b5cf2a0a40e5eeff7ee22a7423ec16767
Signed-off-by: Kevin Rocard <krocard@google.com>
2017-07-07 17:45:15 -07:00
Kevin Rocard
3296cee7e5 Configure audio effects libraries with relative path
audio effects.conf legacy format had the libraries specified
in absolute path.
Nevertheless those libraries must be in specific folders.
The .conf loader used to strip the prefix of the paths then
try to load the libraries in those specific folders.

With new xml format the user only has to specify the name of the library
and the loader will load it from the known folders.

Test: run xmllint against a config with absolute paths
Bug: 37492580
Change-Id: I2863e04b3cdf0c6758d9f7be33796621fee527ed
Signed-off-by: Kevin Rocard <krocard@google.com>
2017-07-07 17:45:15 -07:00
Kevin Rocard
627fdaae3d Audio effect XSD: Give effect proxy its own tag
Effect and effect proxy do not have the same xml structure.
As they had the same xml tag, it was impossible to discriminate them in
the xsd. Leading to xsd validating incorrect xml.

This patch changes the xsd to force proxy effect to have the type
<effectProxy> instead of <element>.

With this patch, effects have to be explicit about being a proxy and
they are forced to have a hw *and* a sw library.

Bug: 37492580
Test: validated xsd against converted effects.conf
Test: vendor/box/user/mnaganov/audio-effects-conf/test.sh
Change-Id: Idf8a1040feccbfd6a346ab9bc892f3b7e87df530
Signed-off-by: Kevin Rocard <krocard@google.com>
2017-07-07 17:45:15 -07:00
Mikhail Naganov
7a5614bc9e Revert "Revert of "Audio: Add XML schema for audio effects configuration""
Add the configuration back on the master development branch.

This reverts commit d5196af814.

Bug: 37492580
Change-Id: Ie2d3218d942a995aec4d6b73fb7813e76604066b
Test: not needed
2017-07-07 17:45:03 -07:00
Mikhail Naganov
d5196af814 Revert of "Audio: Add XML schema for audio effects configuration"
The schema file isn't used anywhere, safe to revert.

Bug: 37492580
Bug: 63169864
Test: not needed
Change-Id: I97e6e2d5be5324efe87475e04a916afeeec53631
2017-07-05 12:46:12 -07:00
TreeHugger Robot
80e9912183 Merge "audiohal: Prevent logspam when calling get_presentation_position" into oc-dev 2017-06-08 22:47:02 +00:00
Kevin Rocard
b6d79ff112 Audio VTS: Create utility lib
Move code that can be reuse between audio tests of the HIDL interface in
an utility library.

Test: run vts tests
Test: vts-tradefed run vts --module VtsHalAudioV2_0Target
Bug: 35700978

Change-Id: Ia930ad2b0a3ca31628b2cb767b265d54b210756b
Signed-off-by: Kevin Rocard <krocard@google.com>
2017-06-05 11:22:24 -07:00
Kevin Rocard
19b3e43fb4 Audio VTS: Enforce policy configuration format
Validate the audio_policy_configuration.xml supplied in /vendor against
the format schema.

Test: Run the VTS test on target
Test: vts-tradefed run commandAndExit vts --skip-all-system-status-check --primary-abi-only --skip-preconditions --module VtsHalAudioV2_0Target -t CheckConfig.audioPolicyConfigurationValidation
Bug: 35700978
Change-Id: I800e692a6ff4f64655007c33af7e34d879ee1132
Signed-off-by: Kevin Rocard <krocard@google.com>
2017-06-02 16:43:32 -07:00
Kevin Rocard
88e8f90e7f Audio VTS: Test now use Android.mk
To validate the audio_policy_configuration.xml against a schema,
libxml2 is used.
Unfortunately, libxml2 uses Android.mk in oc-dev thus can not be used
from the tests which uses Android.bp.

It has been deemed safer to transform the tests to use Android.mk rather
than backporting the Android.bp patch from master.

Test: Compile
Bug: 35700978
Merged-In: I800e692a6ff4f64655007c33af7e34d879ee1132
Change-Id: Ie3f2069d60be369b4c37c27e9c1cf9372323a19c
Signed-off-by: Kevin Rocard <krocard@google.com>
2017-06-02 16:43:21 -07:00
Kevin Rocard
06a2a40309 Audio VTS: Enforce policy configuration format
Validate the audio_policy_configuration.xml supplied in /vendor against
the format schema.

Test: Run the VTS test on target
Test: vts-tradefed run commandAndExit vts --skip-all-system-status-check --primary-abi-only --skip-preconditions --module VtsHalAudioV2_0Target -t CheckConfig.audioPolicyConfigurationValidation
Bug: 35700978
Change-Id: I800e692a6ff4f64655007c33af7e34d879ee1132
Signed-off-by: Kevin Rocard <krocard@google.com>
2017-06-02 16:24:43 -07:00
Mikhail Naganov
7cd76c1469 VTS Audio Effect: Do not check the result of IEffect::offload method am: 5abb15e987
am: dd5605c4fb

Change-Id: I98d3bd958af9266b97830c098d282f4760974cef
2017-06-02 18:31:08 +00:00
Mikhail Naganov
dd5605c4fb VTS Audio Effect: Do not check the result of IEffect::offload method
am: 5abb15e987

Change-Id: I266ac43808d0e9002822ea4d589d17bfc9995d84
2017-06-02 18:23:54 +00:00
Mikhail Naganov
5abb15e987 VTS Audio Effect: Do not check the result of IEffect::offload method
HAL may not support offloading, and a call to IEffect::offload
is allowed to return an error code.

Update the test to only check that the call to the method doesn't
crash.

Bug: 38437110
Test: still passes
Change-Id: I6cfd25998edb9c68d2e585e572ba8ba3a3427e98
2017-06-02 15:54:43 +00:00
Eric Laurent
9c21837d1f Merge "Audio: Add XML schema for audio policy configuration" into oc-dev am: 49f3b03348
am: e18fdf9ea7

Change-Id: I91958de424207ceac6bb3a8a3f662e6f814b6e84
2017-06-01 20:28:10 +00:00
Eric Laurent
e18fdf9ea7 Merge "Audio: Add XML schema for audio policy configuration" into oc-dev
am: 49f3b03348

Change-Id: Ifc0584bb4c03deb9ed2139f9b5f9b5c5df1c6782
2017-06-01 20:01:20 +00:00
TreeHugger Robot
49f3b03348 Merge "Audio: Add XML schema for audio policy configuration" into oc-dev 2017-06-01 19:56:21 +00:00
Mikhail Naganov
25e11c3a7e Merge "Revert "audiohal: Add diagnostics to investigate HAL call crashes"" into oc-dev am: 5482fe026c
am: f652c9e031

Change-Id: I7de1922316cb85789cc4cbf13fe70509de61032e
2017-06-01 16:40:08 +00:00
Mikhail Naganov
f652c9e031 Merge "Revert "audiohal: Add diagnostics to investigate HAL call crashes"" into oc-dev
am: 5482fe026c

Change-Id: I2a0d9aa82ec5cc2d6c593ae08f7b58ca91747860
2017-06-01 16:37:07 +00:00
TreeHugger Robot
5482fe026c Merge "Revert "audiohal: Add diagnostics to investigate HAL call crashes"" into oc-dev 2017-06-01 16:32:29 +00:00
Mikhail Naganov
f74df70fd7 audiohal: Prevent logspam when calling get_presentation_position
get_presentation_position can return ENODATA if the stream
has stopped but the write is still querying the position.

Bug: 38376424
Change-Id: I9d516a19fb347843a8ec8e8e9a0f5eab0b0798e6
Test: no log messages from StreamHAL about get_presentation_position
(cherry picked from commit 96a3a19bed)
2017-05-31 23:01:59 +00:00
Eric Laurent
524bdd39bf Audio: Add XML schema for audio policy configuration
The schema describes the XML format for audio policy
configuration.
It will be enforced in a follow up vts test.

Bug: 35700978
Test: schema is parsed with xmllint with no errors
Test: xmllint  --xinclude --noout --schema audio_policy_configuration.xsd  out/target/product/sailfish/vendor/etc/audio_policy_configuration.xml

Change-Id: Ic6830446b54b3e02e4bca9b0a392523a8fb359e1
Signed-off-by: Kevin Rocard <krocard@google.com>
2017-05-31 15:29:17 -07:00
Mikhail Naganov
f811acf049 Revert "audiohal: Add diagnostics to investigate HAL call crashes"
This reverts commit 6c0f76a684.

Since the root cause of the crash has been established, there is no need to keep this code around.

Bug: 36225019
Change-Id: I74e570e863a0cdec5d9029f1672e2e8066c246b5
2017-05-31 19:59:21 +00:00
Kevin Rocard
07fb7363bc Revert "Temporary disable tests failing tests for O"
This commit was never intended to be merged in master but it could not
be avoided due to an automerger limitation.

This reverts commit fd297c6f8e.
Test: Run VTS
Bug: 36311550

Change-Id: I6ee23a6282c29b125e53cced0cfcc6b697754ce0
2017-05-26 17:41:31 -07:00
Mikhail Naganov
61de2b1f4a Audio: Add XML schema for audio effects configuration
The schema describes the new XML format for audio effects
configuration.

Bug: 37492580
Test: schema is parsed with xmllint with no errors
Change-Id: I5dd33c6806cace5cb66457e1a072bda51ee11294
2017-05-24 20:02:29 +00:00
TreeHugger Robot
9b15ddfff5 Merge "audiohal: Prevent logspam when calling get_presentation_position" 2017-05-23 22:34:13 +00:00
Kevin Rocard
54b4d1b2d0 Merge "Temporary disable tests failing tests for O" into oc-dev am: ed8c71e480
am: b7e2957ad5

Change-Id: I639e310bbcd1da5f12263d39dbec54e7aa8ebe0d
2017-05-23 21:53:19 +00:00
Kevin Rocard
b7e2957ad5 Merge "Temporary disable tests failing tests for O" into oc-dev
am: ed8c71e480

Change-Id: Ib0681b212b0e9e568004c6b07e66a61bb31ea371
2017-05-23 21:48:04 +00:00
TreeHugger Robot
ed8c71e480 Merge "Temporary disable tests failing tests for O" into oc-dev 2017-05-23 21:39:11 +00:00
Mikhail Naganov
96a3a19bed audiohal: Prevent logspam when calling get_presentation_position
get_presentation_position can return ENODATA if the stream
has stopped but the write is still querying the position.

Bug: 38376424
Change-Id: I9d516a19fb347843a8ec8e8e9a0f5eab0b0798e6
Test: no log messages from StreamHAL about get_presentation_position
2017-05-23 21:03:36 +00:00
Steven Moreland
7708449766 Update makefiles. (2/2) am: 76cfb84140
am: f203167814

Change-Id: I1f13401266f3c2f78c627088b09c79cd7c8d0276
2017-05-22 17:29:04 +00:00
Steven Moreland
f203167814 Update makefiles. (2/2)
am: 76cfb84140

Change-Id: I24d21438a5b2f447d2160929c6ff6e17b2b66820
2017-05-22 17:15:20 +00:00
Steven Moreland
76cfb84140 Update makefiles. (2/2)
Adds default configuration for all hals.

Bug: 38415912
Test: pass
Change-Id: Idd1f3a2b7b16ad956d31784a513e93a066cdd02e
2017-05-19 15:54:03 -07:00
Mikhail Naganov
95fa26f096 Merge "VTS Audio Effect: Allow 'NOT_SUPPORTED' from IEffect::offload method" into oc-dev am: 2bb2add8a9
am: 2d6f470495

Change-Id: Ibc558b4ca5af3e03c7eddff43450779c2026b118
2017-05-19 20:40:49 +00:00
Mikhail Naganov
2d6f470495 Merge "VTS Audio Effect: Allow 'NOT_SUPPORTED' from IEffect::offload method" into oc-dev
am: 2bb2add8a9

Change-Id: I4002f571964e615ec0e8357468cbf037fbdb0a43
2017-05-19 20:35:34 +00:00
Mikhail Naganov
c11724572e VTS Audio Effect: Allow 'NOT_SUPPORTED' from IEffect::offload method
HAL may not support offloading, and a call to IEffect::offload
is allowed to return an error code.

Update the test to accept either OK or NOT_SUPPORTED.

Bug: 38437110
Test: still passes
Change-Id: I1822010eed73f61bb0e0ae1852739b47fa72eade
2017-05-19 11:29:28 -07:00
Eric Laurent
3510657437 Merge "audio HAL: fix getParameters status check." into oc-dev am: af7bc59c0a
am: 7f7a0a880c

Change-Id: Ib1663485edb5abf7322ad0ef197e821ba5e21ba8
2017-05-18 17:47:36 +00:00
Eric Laurent
7f7a0a880c Merge "audio HAL: fix getParameters status check." into oc-dev
am: af7bc59c0a

Change-Id: Icd5926031ace47bc0dc1b1f24cb48e107851fcd7
2017-05-18 17:37:02 +00:00
Eric Laurent
45d4032215 audio HAL: fix getParameters status check.
Bug: 38326193
Test: VTS tests for module VtsHalAudioV2_0TargetTest.

Change-Id: If4109cea68120d722a3b1084ad583170e950cfa0
2017-05-17 18:38:47 -07:00
Kevin Rocard
fd297c6f8e Temporary disable tests failing tests for O
Those tests are failing because their fix
(I0ea1a4bf952527ac0711ed3cdd31c6aa53db4d2e) is dangerous to merge in O
so close to the final release.

The fix implements a rejection feature for unsupported audio format.
This rejection is required by the hal interface
but was only partially implemented in the hal.
The problem is that the framework was never tested with a hal supporting
this behavior nor some calls implemented with this requirement.
As a result I do not feel confident in merging it in oc-dev,
it might complex, hard to detect bugs.

The fix will be merged in master thus will be part of mr1.
The current patch will be reverted in master after the fix is merged.

Test: vts-tradefed run vts --module VtsHalAudioV2_0Target
Test: call/play music/record/video...
Bug: 36311550
Change-Id: Ia9e1dcec5442e2755f0bcb13d8d502663f507dbe
Signed-off-by: Kevin Rocard <krocard@google.com>
2017-05-17 15:54:09 -07:00
Kevin Rocard
6ade5e3c1b Merge changes from topic 'audio-primary-hal-vts-fix' into oc-dev am: c558ddf3fa
am: cdf142d8dd

Change-Id: I3429df38464282106bef8464a4852bd5b29f763d
2017-05-16 19:33:39 +00:00
Kevin Rocard
cdf142d8dd Merge changes from topic 'audio-primary-hal-vts-fix' into oc-dev
am: c558ddf3fa

Change-Id: I15868923cdfd165e20468d1c885a256fefd0eeca
2017-05-16 19:13:11 +00:00