History log of /external/autotest/client/cros/multimedia/audio_facade_native.py
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
62b1d77d6c9eb14c9786a9cbe3f8a9898e6066a4 23-May-2017 Cheng-Yi Chiang <cychiang@chromium.org> [autotest] audio_facade: Makes failure in recording audio more obvious

When there is something wrong with capture device, CRAS automatically
falls back to using dummy capture device, which captures all zeros.
In autotest, we find this when checking the recorded files and see RMS
is too small.

Now we check whether the recorded files contains all zeros in
audio_facade_native, and raise the exception in audio_facade_adapter so
user can see the failure reason easily.

BUG=chromium:725550
TEST=run audio_AudioBasicExternalMicrophone test on cyan with image
9579.0 and see the error messages of recording.

Change-Id: I6695812f801924f33beeb0aa51a98cc9fc7d9db3
Reviewed-on: https://chromium-review.googlesource.com/513023
Commit-Ready: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Hsu Wei-Cheng <mojahsu@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
402ddbdc1ec1151be2f47f8eaa1c6614196a70f9 07-Mar-2017 Toni Barzic <tbarzic@google.com> [autotest] audio_extension_handler: Use new chrome.audio API

Use new API for the changes in crbug.com/673392.

- Replace getInfo with getDevices
- Replace setProperties with setMute to mute system.

BUG=chromium:699170, chromium:699007
TEST=test_that --fast --debug --board=auron_paine
--args="chameleon_host=chromeos2-row10-rack9-host9-chameleon.cros"
chromeos2-row10-rack9-host9.cros audio_AudioBasicHDMI
TEST=check multimedia_xmlrpc_server audio facade.
>>> s.browser.start_default_chrome()
True
>>> s.audio.set_chrome_active_node_type('INTERNAL_SPEAKER', 'INTERNAL_MIC')
>>> s.audio.set_chrome_active_node_type('HEADPHONE', 'MIC')
>>> s.audio.get_audio_devices()
[{'deviceName': 'Post Mix Pre DSP Loopback', 'displayName': 'Post Mix
Pre DSP Loopback', 'level': 75, 'stableDeviceId': '2315562897',
'streamType': 'INPUT', 'deviceType': 'POST_MIX_LOOPBACK', 'id':
'12884901888', 'isActive': False}, {'deviceName': 'Post DSP Loopback',
'displayName': 'Post DSP Loopback', 'level': 75, 'stableDeviceId':
'2356475750', 'streamType': 'INPUT', 'deviceType': 'POST_DSP_LOOPBACK',
'id': '17179869184', 'isActive': False}, {'deviceName': 'sklnau8825adi:
:0,0', 'displayName': 'Headphone', 'level': 75, 'stableDeviceId':
'2660450915', 'streamType': 'OUTPUT', 'deviceType': 'HEADPHONE', 'id':
'21474836480', 'isActive': True}, {'deviceName': 'sklnau8825adi: :0,0',
'displayName': 'Speaker', 'level': 75, 'stableDeviceId': '1923447123',
'streamType': 'OUTPUT', 'deviceType': 'INTERNAL_SPEAKER', 'id':
'21474836481', 'isActive': False}, {'deviceName': 'sklnau8825adi: :0,1',
'displayName': 'Mic', 'level': 75, 'stableDeviceId': '1638577850',
'streamType': 'INPUT', 'deviceType': 'MIC', 'id': '25769803776',
'isActive': True}, {'deviceName': 'sklnau8825adi: :0,1', 'displayName':
'Internal Mic', 'level': 75, 'stableDeviceId': '1289939621',
'streamType': 'INPUT', 'deviceType': 'INTERNAL_MIC', 'id':
'25769803777', 'isActive': False}]
>>> s.audio.get_chrome_active_volume_mute()
[75, False]
>>> s.set_chrome_active_volume(50)
>>> s.audio.set_chrome_active_volume(50)
>>> s.audio.get_chrome_active_volume_mute()
[50, False]
>>> s.audio.set_chrome_mute(True)
>>> s.audio.get_chrome_active_volume_mute()
[50, True]

Change-Id: If6ea4db43df9f3ed32100f10dc7d1b1219831f2e
Reviewed-on: https://chromium-review.googlesource.com/450833
Commit-Ready: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Kalin Stoyanov <kalin@chromium.org>
Reviewed-by: Hsu Wei-Cheng <mojahsu@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
cb0e747f017ac0ed7fdfbbf6361dfef13f2d6c9e 03-Nov-2016 Cheng-Yi Chiang <cychiang@chromium.org> [autotest] multimedia: add method to set system gain

Add method to set system gain.
We do not use chrome.audio API to set node gain because that gain of
node is not passed to Cras correctly.
We need to set this because on board with software gain, the default
software gain value will be too large.

BUG=chromium:661709
TEST=used with next CL on chell.

Change-Id: I81dd722782efcea975a82776db765f594a290eda
Reviewed-on: https://chromium-review.googlesource.com/406820
Commit-Ready: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Wai-Hong Tam <waihong@google.com>
Reviewed-by: Kalin Stoyanov <kalin@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
86d8862fb75fe5261f42aa4e431151ba2c65b68f 05-Sep-2016 Cheng-Yi Chiang <cychiang@chromium.org> [autotest] multimedia: Control ARC audio playback in audio facade

Expose functions so user can control audio playback through ARC.
Add a decorator function to check ARC resource in audio_facade_native.

BUG=chromium:644036
TEST=not used yet.

Change-Id: I77efed14adecca3f0c72d06ad549ce51cfa5fbb6
Reviewed-on: https://chromium-review.googlesource.com/381194
Commit-Ready: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Hsu Wei-Cheng <mojahsu@chromium.org>
Reviewed-by: Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
ef6b4285ed36b5a17dc944bb9caa6c68bd575f5c 22-Aug-2016 Chen-Hao Chang@google.com <haocc@google.com> [autotest] audio_facade: fix stop_playback()

In the original stop_playback(), it doesn't really terminate the cras
command when it terminates the multiprocessing process.

BUG=None
TEST=manual test
Modify audio_AudioVolume to stop_playback() before stop_capturing(),
and verify the captured audio is not completed.

Change-Id: I6a30c78e49f5a9ffd3f46a95e2b241492b68f353
Reviewed-on: https://chromium-review.googlesource.com/374279
Commit-Ready: Chen-hao Chang <haocc@google.com>
Tested-by: Chen-hao Chang <haocc@google.com>
Reviewed-by: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
5541179e6f32182f644aa0ab659b42e0394ebe6d 10-Aug-2016 Cheng-Yi Chiang <cychiang@chromium.org> [autotest] multimedia: Use ArcResource on ARC enabled board

Use ArcResource on ARC enabled board. Currently only audio facade uses
it.
Expose methods on audio facade so user can control microphone app in the
container.

BUG=b:30005964
TEST=Run below steps:
1. Run cheets_MicrophoneApp test on cyan.
2. /usr/local/autotest/cros/multimedia/multimedia_xmlrpc_server.py
3. /usr/local/autotest/cros/multimedia/multimedia_xmlrpc_server.py -d
4. In interactive shell:
>>> s.audio.start_arc_recording() (Check microphone app is started.)
>>> s.audio.stop_arc_recording()
'/tmp/capture_dwLbuc.amr-nb'
Examine the recorded audio in audacity.
5. Call s.audio.start_arc_recording() and s.audio.stop_arc_recording()
repeatedly to check the app can start/close every time.

Change-Id: Ib5069243176e0236685bcbdc53fec3974656cec6
Reviewed-on: https://chromium-review.googlesource.com/367583
Commit-Ready: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
2ecf0e775e6a19152495003cf90410f53686af30 07-Jun-2016 Tom Wai-Hong Tam <waihong@chromium.org> Chameleon: Support starting multimedia XML RPC server without Chrome

Add the support of no chrome when starting the RPC server such that
a test can pass some different arguments to start a custom Chrome,
by using a new RPC browser_facade.start_custom_chrome(kwargs).

BUG=chromium:615250
TEST=Ran several Chameleon tests and verified they still passed.

Change-Id: Ic44ed8138ce55702a66a6f6aeaa99970f10f58ff
Reviewed-on: https://chromium-review.googlesource.com/350096
Commit-Ready: Wai-Hong Tam <waihong@chromium.org>
Tested-by: Wai-Hong Tam <waihong@chromium.org>
Tested-by: Wai-Hong Tam <waihong@google.com>
Reviewed-by: Harpreet Grewal <harpreet@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
8f199734d555dd90daf766de350c3db2eaa4299e 04-Mar-2016 Cheng-Yi Chiang <cychiang@chromium.org> [autotest] audio_facade: Implement stop_playback

Add a Player class to control playback process. Implement stop_playback
function by terminating the playback process.
Also, cleanup the resources in player and recorder.

BUG=chromium:591641
TEST=not used yet.

Change-Id: I240329e85aa71c455296cc0de6be07e1cf9fd4ec
Reviewed-on: https://chromium-review.googlesource.com/330570
Commit-Ready: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Wai-Hong Tam <waihong@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
8e18acc6e68cbdb9e989da10c4c1a7d1feb00ddb 19-Nov-2015 Cheng-Yi Chiang <cychiang@chromium.org> [autotest] audio_facade: set input/output in set_chrome_active_node_type

Expose two arguments in set_chrome_active_node_type because bluetooth
input/output node types are both 'BLUETOOTH'.

BUG=chromium:552256
TEST=not used yet.

Change-Id: I7892409fd14059cbcf0e4c082a053b23e3e9b765
Reviewed-on: https://chromium-review.googlesource.com/312819
Commit-Ready: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Kalin Stoyanov <kalin@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
67defd80801a6223e8301d8def7b9d5c9294d330 06-Nov-2015 Cheng-Yi Chiang <cychiang@chromium.org> [autotest] audio_facade: Add method to set active node in Chrome

Add the method to set active node through chrome.audio API.

BUG=chromium:552256
TEST=use set_chrome_active_node_type API and see the node is changed in
Chrome.

Change-Id: Ia5fa561f01abaf862245e63dca0e15f2aac11719
Reviewed-on: https://chromium-review.googlesource.com/311360
Commit-Ready: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Kalin Stoyanov <kalin@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
6953884c65cbba0b0304da17502603fe50b6806f 02-Nov-2015 Cheng-Yi Chiang <cychiang@chromium.org> [autotest] audio_facade: Add method to query volume state

Add method to query volume state. This will be used to test chrome audio
preference in the profile.

BUG=chromium:534953
TEST=call get_chrome_active_volume_mute method on
multimedia_xmlrpc_server.

Change-Id: Ie0bb38fa0afc234411614a6876d23a9f08cdbea6
Reviewed-on: https://chromium-review.googlesource.com/310066
Commit-Ready: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Kalin Stoyanov <kalin@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
ea73e3f7b34674963c11c6f5980bc80646461e10 02-Nov-2015 Cheng-Yi Chiang <cychiang@chromium.org> [autotest] audio_facade: Add method to change volume and mute

Add method to change volume and mute state of Chrome.

BUG=chromium:534953
TEST=call s.audio.set_chrome_active_volume and s.audio.set_chrome_mute
and check the volume in Chrome.

Change-Id: Ie2288d2882957379a7485801f9348695dee2f010
Reviewed-on: https://chromium-review.googlesource.com/310025
Commit-Ready: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Kalin Stoyanov <kalin@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
9c451b48cabb46e26af40bfb7dd689ac719b5f14 29-Oct-2015 Cheng-Yi Chiang <cychiang@chromium.org> [autotest] audio_facade_native: Use audio_extension_handler

Use audio_extension_handler to access chrome.audio API.
Currently only get_audio_info is supported. More methods like changing
nodes and changing volume will be added.

BUG=chromium:534953
TEST=call s.audio.get_audio_info() and see the audio info returned like this:
>>> pprint.pprint(s.audio.get_audio_info())
[[{'id': '21474836480',
'isActive': True,
'isMuted': False,
'name': 'HDA Intel PCH: CA0132 Analog:0,0: Headphone Jack',
'volume': 75},
{'id': '21474836481',
'isActive': False,
'isMuted': False,
'name': 'HDA Intel PCH: CA0132 Analog:0,0: Speaker',
'volume': 75}],
[{'gain': 75,
'id': '12884901888',
'isActive': False,
'isMuted': False,
'name': 'Post Mix Pre DSP Loopback: Post Mix Pre DSP Loopback'},
{'gain': 75,
'id': '17179869184',
'isActive': False,
'isMuted': False,
'name': 'Post DSP Loopback: Post DSP Loopback'},
{'gain': 75,
'id': '25769803776',
'isActive': True,
'isMuted': False,
'name': 'HDA Intel PCH: CA0132 Analog:0,0: Mic Jack'},
{'gain': 75,
'id': '25769803777',
'isActive': False,
'isMuted': False,
'name': 'HDA Intel PCH: CA0132 Analog:0,0: Internal Mic'},
{'gain': 75,
'id': '38654705664',
'isActive': False,
'isMuted': False,
'name': 'HDA Intel PCH: CA0132 Keyboard Mic:0,2: Keyboard Mic'}]]

Change-Id: I941c951c2b35d677ee7211c77c593bbc9613ef12
Reviewed-on: https://chromium-review.googlesource.com/309693
Commit-Ready: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
66cc410829dfb296d9e261c724b59017ae0b3bfe 29-Oct-2015 Cheng-Yi Chiang <cychiang@chromium.org> [autotest] audio_facade_native: Load multimedia test extension

Load multimedia test extensin in audio_facade_native. This extension
will provide access to execute javascript and audio API.
To use audio extension, this extension needs to be a packaged app.
Modify the manifest for that.

BUG=chromium:534953
TEST=check multimedia xmlrpc server log and see extension is loaded.

Change-Id: I4e8b62354bd3785411a923987a54b4615867eb31
Reviewed-on: https://chromium-review.googlesource.com/309750
Commit-Ready: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
04dd632f3fd5bf6575b58dc988f0066195fad552 28-Oct-2015 Cheng-Yi Chiang <cychiang@chromium.org> [autotest] multimedia: Add facade_resource module to access Chrome

Centralizes the methods to access Chrome extension and tabs to
facade_resource module. It will provdes methods to different facades
including display facade, audio facade, and upcoming browser facade.
Removes the unused local audio facade to simplify the refactoring.

BUG=chromium:546490
TEST=run audio_AudioBasicHeadphone, display_Tearing.mirrored,
display_ResolutionList.extended, display_Resolution.mirrored test on
link.

Change-Id: Ida68cecb3414be32ccb7863ced9b9949972538ad
Reviewed-on: https://chromium-review.googlesource.com/309461
Commit-Ready: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
0804e1c777552aff629860adc8b2eba1081f4806 20-Oct-2015 Cheng-Yi Chiang <cychiang@chromium.org> [autotest] audio_facade: Add wait_for_unexpected_nodes_changed method

Add a method to wait for unexpected NodesChanged signal in a blocking
call.

BUG=chromium:542964
TEST=not used yet.

Change-Id: Id46cd3c9deb91988e44c750286a7fc5635ea66eb
Reviewed-on: https://chromium-review.googlesource.com/307059
Commit-Ready: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Hsinyu Chao <hychao@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
342450fd5e3146c141328031811b8bf4785e40de 20-Oct-2015 Cheng-Yi Chiang <cychiang@chromium.org> [autotest] audio_facade: Add method to count DBus signal

Add start_counting_signal and stop_counting_signal to count number of
DBus signal sent from Cras.

BUG=chromium:542964
TEST=not used yet

Change-Id: I7b68bc1c3801be6d374eaf95bf5b8128420ec5b3
Reviewed-on: https://chromium-review.googlesource.com/307057
Commit-Ready: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Hsinyu Chao <hychao@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
b9351157ca3537aaac0937b32a27365a533f5df7 04-Sep-2015 Selina Liu <hsuying@google.com> audio_facade_native: Pass in data format to start recording on Cros

BUG=chromium:514541
TEST=not used yet.

Change-Id: I5bc542633b90712222387b8c11963e72e9f70c3f
Reviewed-on: https://chromium-review.googlesource.com/297692
Commit-Ready: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
9802a6d80bd54fddbc86493f7bd8fce8cb3871b0 04-Sep-2015 Selina Liu <hsuying@google.com> audio_facade_native: Add new Cros-supported capture data format

BUG=chromium:514541
TEST=not used yet.

Change-Id: I8e871f59d6fb940b53cfc00b8cf170ce618fb9e3
Reviewed-on: https://chromium-review.googlesource.com/297691
Commit-Ready: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
bfd960f64670bc03338bba659f315366e606db42 21-Sep-2015 Cheng-Yi Chiang <cychiang@chromium.org> [autotest] audio_facade: Add get_plugged_node_types method

Add get_plugged_node_types method to query plugged node types on Cros
device.

BUG=chromium:532713
TEST=not used yet

Change-Id: Ie0888fce81614c4217e0278257e59610da7d810a
Reviewed-on: https://chromium-review.googlesource.com/301342
Commit-Ready: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Wai-Hong Tam <waihong@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
6a074554df1750c2df2b262ec9cee6db89b7d29a 07-Jul-2015 Cheng-Yi Chiang <cychiang@chromium.org> [autotest] multimedia: Add API to set selected audio nodes

Add set_selected_node_types API to set input/output nodes to certain
node types.

BUG=chromium:506473
TEST=not used yet

Change-Id: If5c310b1289c7f23eb5c3f0851b5af75d636fbe4
Reviewed-on: https://chromium-review.googlesource.com/283683
Reviewed-by: Hsinyu Chao <hychao@chromium.org>
Commit-Queue: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
4689f2b412727dd5d607a19681f611e0e1723bb6 24-May-2015 Cheng-Yi Chiang <cychiang@chromium.org> audi_facade_native: Fix typo in audio_diagnostics

BUG=None
TEST=None

Change-Id: I955cabb4b192ff7565a849b7a01cfc99149208dc
Reviewed-on: https://chromium-review.googlesource.com/273140
Reviewed-by: Hung-ying Tyan <tyanh@chromium.org>
Commit-Queue: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
771b9540129a52f7941de752271d40d05e22f6ca 24-May-2015 Cheng-Yi Chiang <cychiang@chromium.org> multimedia: Clean up temporary files in audio_facade_native

When multimedia_xmlrpc_server stops, clean up the temporary files used
in audio_facade_native.

BUG=chromium:491058
TEST=manually start/stop multimedia_xmlrpc_server and check the
temporary files are cleared.

Change-Id: I66a6a3c3c86fe888db6c92761eb98bcd1d68f953
Reviewed-on: https://chromium-review.googlesource.com/273128
Commit-Queue: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
76ebb8984223eb863b0655534f1308d5eac27d12 22-May-2015 Cheng-Yi Chiang <cychiang@chromium.org> multimedia: Refactor stop_recording in audio facade

Refactor stop_recording in audio facade so user should call
stop_recording to stop the recording right away. Then user can call
get_recorded_file to actually retrieve the recorded data.
In client side audio_facade_adapter, get_recorded_file just copy the file
locally.
In server side audio_facade_adapter, get_recorded_file copies the file
from Cros device to server.

BUG=chromium:491058
TEST=not used yet

Change-Id: I201759de08febcd62d8fb0d2db4a86471bdcf0c8
Reviewed-on: https://chromium-review.googlesource.com/273127
Commit-Queue: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
c2df3fe50bbd81499bbe0cb2d21b428e53bffdc7 27-May-2015 Cheng-Yi Chiang <cychiang@chromium.org> multimedia: Fix get_selected_node_types

Use new get_selected_node_types method provided in cras_utils.
Now the return value is a tuple with each field being a list of selected
node types because there may be multiple selected output/input nodes at
the same time.

BUG=chromium:491931
TEST=not used yet.

Change-Id: I073392dd78b497cbc8a3d76c75f9e50479428aa9
Reviewed-on: https://chromium-review.googlesource.com/273459
Reviewed-by: Hsinyu Chao <hychao@chromium.org>
Commit-Queue: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
6bceed8dbf9b62a3785e6b83d4926cbbbfef40fe 08-Apr-2015 Cheng-Yi Chiang <cychiang@chromium.org> multimedia: Add dump_diagnostics API to audio_facade

Audio diagnostic result during the test is running will be useful to
debug test failure.

BUG=chromium:463813
TEST=not used yet

Change-Id: Id46c58dbf368a9ff28e9f29a6d34e11c1af3d5ff
Reviewed-on: https://chromium-review.googlesource.com/265213
Reviewed-by: Wai-Hong Tam <waihong@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Commit-Queue: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
7c4037d417c5ac9abb0b9d420a720ed05b3b1be9 19-Mar-2015 Cheng-Yi Chiang <cychiang@chromium.org> multimedia: Add a method to query selected audio node types.

Add a method get_selected_node_types to query selected audio node types.

BUG=chromium:464661
TEST=call audio.get_selected_node_types() on multimedia server proxy

Change-Id: I9fb9c6e01d118b152449df808ecf39625a7902f9
Reviewed-on: https://chromium-review.googlesource.com/261156
Reviewed-by: Kalin Stoyanov <kalin@chromium.org>
Reviewed-by: Wai-Hong Tam <waihong@chromium.org>
Commit-Queue: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
c902f2eda2d66c091d18b58c8ba280bb070d278c 09-Mar-2015 Cheng-Yi Chiang <cychiang@chromium.org> multimedia: Add API to set active output volume

Add cras utils and multimedia server API to set active output volume.

BUG=chromium:463813
TEST=not used yet.

Change-Id: I9557a8fe0f6b24b5c112508994543d4379b954c4
Reviewed-on: https://chromium-review.googlesource.com/257291
Reviewed-by: Wai-Hong Tam <waihong@chromium.org>
Commit-Queue: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
d47a5769dc391ed59512b734e1026f9eb945dd72 12-Jan-2015 Cheng-Yi Chiang <cychiang@chromium.org> Chameleon: audio: Fix the coding style

Fix various coding style errors

BUG=chromium:437678
TEST=run audio_AudioBasic* test

Change-Id: I14b08b6a820a738e96be44bd7145dade2a1b4c32
Reviewed-on: https://chromium-review.googlesource.com/240217
Reviewed-by: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Commit-Queue: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
eaf5329aeafc05652d8423f643e70cc17740588b 12-Jan-2015 Cheng-Yi Chiang <cychiang@chromium.org> audio: Add start_recording and stop_recording API to multimedia server

Add start_recording and stop_recording API to audio_facade_native.
These API enable test to capture audio on Cros device through multimedia
XMLRPC server.

BUG=chromium:437678
TEST=not used yet

Change-Id: Ic0a40dc13904124777360283dc25f3bfd67af9fb
Reviewed-on: https://chromium-review.googlesource.com/240211
Reviewed-by: Wai-Hong Tam <waihong@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Commit-Queue: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
73c6e1e9d092f8a03a896cb08340af12575ee4b0 18-Jan-2015 Cheng-Yi Chiang <cychiang@chromium.org> audio: Simplify the path in AudioTestData and playback API

Now AudioTestData only maintains one path.
Also simplify the API provided by multimedia server to play an audio
file.
To play an audio file, the multimedia client will do
1. Send file to multimedia server using CrosHost send_file method.
2. Send data path and format to multimedia server so server knows what
and how to play.

BUG=chromium:437678
TEST=run audio_AudioBasicHeadphone and
audio_AudioBasicExternalMicrophone test

Change-Id: I1eb8bbf701b09eb0b534ff3b311cad55f88a710d
Reviewed-on: https://chromium-review.googlesource.com/241404
Reviewed-by: Wai-Hong Tam <waihong@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Commit-Queue: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
17a2527ea44ed461cec2cf62577079f59e00a9b3 28-Nov-2014 Cheng-Yi Chiang <cychiang@chromium.org> autotest: Add audiovideo_AudioBasicHeadphone test

Adds a basic headphone test using Chameleon test framework.
This test uses fixed frequency sine wave as test data and compares
the frequency difference between recorded data and golden data.
Lets playback method to be non-blocking so in the test we can start
playback then start recording.
The audio cable connecting Cros device headphone to Chameleon Line-In
must be plugged in before the test starts.
This patch also changes how channel map setting is implemented since
different links have different channel maps.

BUG=chromium:437678
TEST=test_that --args "chameleon_host=$CHAMELEON_IP" $DUT_IP
audiovideo_AudioBasicHeadphone
TEST=test_that --args "chameleon_host=$CHAMELEON_IP" $DUT_IP
audiovideo_AudioBasicHDMI

Change-Id: Iff95799c8badc9ec292d7bbb235f88c5e0ffbc2d
Reviewed-on: https://chromium-review.googlesource.com/232258
Reviewed-by: Cheng-Yi Chiang <cychiang@chromium.org>
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Commit-Queue: Wai-Hong Tam <waihong@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py
63303a0c7963646f8c463180d4d25e4de751287f 28-Oct-2014 Tom Wai-Hong Tam <waihong@chromium.org> Chameleon: Improve the naming of classes to access DUT display/audio

This change does the following name changes:

Client side:
AudioUtility -> AudioFacadeNative, only accept native types, for RPC
DisplayUtility -> DisplayFacadeNative, only accept native types, for RPC

Server side:
AudioClient -> AudioFacadeRemoteAdapter, an adapter to AudioFacadeNative
DisplayClient -> DisplayFacadeRemoteAdapter, an adapter to DisplayFacadeNative
MultimediaClientFactory -> RemoteFacadeFactory, to create facade in remote

Also fix some pylint errors.

BUG=chromium:405143
TEST=Ran the chameleon_hdmi suite on Falco.

Change-Id: I9c2517f68236bd033ffb7df3c21629b42956f790
Reviewed-on: https://chromium-review.googlesource.com/226140
Commit-Queue: Wai-Hong Tam <waihong@chromium.org>
Tested-by: Wai-Hong Tam <waihong@chromium.org>
Reviewed-by: Wai-Hong Tam <waihong@chromium.org>
/external/autotest/client/cros/multimedia/audio_facade_native.py