08b3a72495fd73b6ac399b2de7d40fde5bece724 |
|
24-Nov-2015 |
Cheng-Yi Chiang <cychiang@chromium.org> |
[autotest] audio_widget: Record wav file along with raw file Record a copy of raw file using wav format so it will be easier to debug. BUG=chromium:560644 TSET=run audio_AudioBasicHeadphone and check the recorded wav file. Change-Id: I195e1980e4641b9aaa3834fa6c07f2d708fa6a15 Reviewed-on: https://chromium-review.googlesource.com/313895 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/chameleon/audio_widget.py
|
8bb71497c37767a62c6b34c1aacf1069fb6f650c |
|
11-Nov-2015 |
Nicolas Boichat <drinkcat@google.com> |
Chameleon: Refactor JackPlugger as a handler Clean up the plugger code to make it easier to extend: - Get rid of DummyAudioJackPlugger: AudioBoard either reports a motor plugger, or nothing - Add JackPluggerPlugHandler to handler the motor plugger - Remove jack_plugger parameter from AudioBusLink, instead relying on Handlers. BUG=chromium:554447 TEST=Run audio_AudioBasicHeadphone on a board with a motor plugger Change-Id: Id7a74d066009bd804d84f42c8789b09fff3c7575 Reviewed-on: https://chromium-review.googlesource.com/312161 Commit-Ready: Nicolas Boichat <drinkcat@chromium.org> Tested-by: Nicolas Boichat <drinkcat@chromium.org> Reviewed-by: Wai-Hong Tam <waihong@chromium.org>
/external/autotest/client/cros/chameleon/audio_widget.py
|
8680de77645de57acf5a6b5318e9e90fde9fc3b8 |
|
22-Sep-2015 |
Cheng-Yi Chiang <cychiang@chromium.org> |
[autotest] audio_widget: Lower the default scale of MIC Previously, in the CL b8f9f6 [autotest] Use louder test file to fix internal speaker test we use a louder file on internal speaker testing so device with smaller speaker volume can have their audio recorded clear enough. However, this breaks the internal speaker test on device with louder speaker volume because the recorded raw data will be scaled by MIC's default gain, and that default scale (300.0) is too large such that the scaled data overflows. We should lower the default scale of MIC because the purpose of that scale is just used to avoid the data being too low to be misjudged as not meaningful when doing comparison. BUG=chromium:534692 TEST=run audio_AudioBasicInternalSpeaker test on nyan_big(small volume) and link(large volume), and squawks. Change-Id: Iadad1cec991bb20e00012c5836ad4bbaf4a15a2c Reviewed-on: https://chromium-review.googlesource.com/301490 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/chameleon/audio_widget.py
|
d63256fb9a5744152eb3ded05a83375f6860b217 |
|
04-Sep-2015 |
Selina Liu <hsuying@google.com> |
audio_widget: Refactor, subclass and add field to store playback file data format Refactor with method _scale_and_send_playback_data so that subclasses like ChameleonLineOutOutputWidgetHandler can use. Add a field to store playback file data format to ChameleonOutputWidgetHandler. BUG=chromium:514541 TEST=not used yet. Change-Id: I888a4ee2277f0324f46535b6d52f533085aeb36e Reviewed-on: https://chromium-review.googlesource.com/297694 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/chameleon/audio_widget.py
|
f5a2383ef2feb0b00d481725085b31da01beaab7 |
|
04-Sep-2015 |
Selina Liu <hsuying@google.com> |
audio_widget: Subclass CrosInputWidgetHandler for USB Added a new subclass CrosUSBInputWidgetHandler. BUG=chromium:514541 TEST=not used yet. Change-Id: Idc9f6f77b2a3f95b4227aa8894501f4bd2804366 Reviewed-on: https://chromium-review.googlesource.com/297693 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/chameleon/audio_widget.py
|
8a9d3f853149a46767d8a6b6131f19789103f088 |
|
01-Sep-2015 |
Selina Liu <hsuying@google.com> |
audio_widget: Subclass PlugHandler to implement USBPlugHandler USBPlugHandler takes in a USBFacadeRemoteAdapter object which provides access to USB-specific functionality on the Cros device side. Its main purpose is to control the connection of USB driver on the Cros device. BUG=chromium:514541 TEST=not used yet. Change-Id: I652d3d334ae2edc84584d82c78f3e59a33f021b8 Reviewed-on: https://chromium-review.googlesource.com/296245 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/chameleon/audio_widget.py
|
829542e9f7efb451c3550e7c49eb00450951f6de |
|
01-Sep-2015 |
Selina Liu <hsuying@google.com> |
audio_widget: Add PlugHandler as an attribute to CrosWidgetHandler Plug and Unplug actions of a CrosWidgetHandler object are now exclusively handled by a dedicated PlugHandler object, which is fed to the constructor of CrosWidgetHandler (and instances of its subclasses). BUG=chromium:514541 TEST=not used yet. Change-Id: Ib27564fe9de8d0544c3103140cd5268f3c13d197 Reviewed-on: https://chromium-review.googlesource.com/296246 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/chameleon/audio_widget.py
|
19370f58a3cee30cac237be7b95ebb8ec0e6641c |
|
02-Sep-2015 |
Selina Liu <hsuying@google.com> |
audio_widget: Subclass PlugHandler to implement DummyPlugHandler BUG=chromium:514541 TEST=not used yet. Change-Id: If2392858b85bea33455669283509f4cf2f0e633a Reviewed-on: https://chromium-review.googlesource.com/296880 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/chameleon/audio_widget.py
|
348aa14f94ee5c511e201cb51ed0e8ea1bfde0ab |
|
01-Sep-2015 |
Selina Liu <hsuying@google.com> |
audio_widget: Add PlugHandler class to be used by CrosWidgetHandler BUG=chromium:514541 TEST=not used yet. Change-Id: Ifbabf97e4a42a8c2a8c0ae2f2f6664b92d6b8be1 Reviewed-on: https://chromium-review.googlesource.com/296244 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/chameleon/audio_widget.py
|
0669885c512b300cbd9337c935977b1862989e45 |
|
30-May-2015 |
Cheng-Yi Chiang <cychiang@chromium.org> |
chameleon: Add PeripheralWidget and use it for peripheral widget Peripheral widgets should use PeripheralWidget class. The main usage of this class is to identify the link type and do the real work on the link. BUG=chromium:476860 TEST=not used yet Change-Id: I145e87556ff31e6598d3a32980613e125ef1e3d1 Reviewed-on: https://chromium-review.googlesource.com/274337 Reviewed-by: Cheng-Yi Chiang <cychiang@chromium.org> Commit-Queue: Cheng-Yi Chiang <cychiang@chromium.org> Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/chameleon/audio_widget.py
|
668543d6384e32dd9021910f79ded6d6f6baaf5d |
|
22-May-2015 |
Cheng-Yi Chiang <cychiang@chromium.org> |
chameleon: Refactor stop_recording in AudioInputWidget Use new stop_recording and get_recorded_binary API provided by ChameleonInputWidgetHandler and CrosInputWidgetHandler. BUG=chromium:491058 TEST=not used yet Change-Id: I0983424c8255fb0010c37b4bb6a1caeba4e0acec Reviewed-on: https://chromium-review.googlesource.com/273144 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/chameleon/audio_widget.py
|
3a1a52e0911fa5f27af3d1161151c0cc246ea1ef |
|
22-May-2015 |
Cheng-Yi Chiang <cychiang@chromium.org> |
chameleon: Refactor start_playback in AudioOutputWidget User new set_playback_data and start_playback API provided by ChameleonOutputWidgetHandler and CrosOutputWidgetHandler. BUG=chromium:491058 TEST=not used yet Change-Id: I78a4fb05a017defe3002bdce224d9c36fdc2f170 Reviewed-on: https://chromium-review.googlesource.com/273143 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/chameleon/audio_widget.py
|
fd019b9f479e9d33e1ddbc1743cb506bbc1682b7 |
|
22-May-2015 |
Cheng-Yi Chiang <cychiang@chromium.org> |
chameleon: Refactor stop_recording in CrosInputWidgetHandler Refactor stop_recording in CrosInputWidgetHandler so user calls stop_recording to stop recording on Cros device right away. User then calls get_recorded_binary to actuall get the recorded binary data. BUG=chromium:491058 TEST=not used yet Change-Id: I94a7e5816e6fa41aa23f6d23daffcf00bfc6bc23 Reviewed-on: https://chromium-review.googlesource.com/273142 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/chameleon/audio_widget.py
|
f8a33a74fcb083a5fc03cf454bf8a4715897cee6 |
|
22-May-2015 |
Cheng-Yi Chiang <cychiang@chromium.org> |
chameleon: Refactor start_playback in CrosOutputWidgetHandler Refactor CrosOutputWidgetHandler so it provides set_playback_data to set the file to play, and start_playback to actually play the file on Cros device. BUG=chromium:491058 TEST=not used yet Change-Id: I6eebeeb4d619e3994789385095516073d419a010 Reviewed-on: https://chromium-review.googlesource.com/273141 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/chameleon/audio_widget.py
|
b2f7b7dd0b6df2f88bcb8a333793cdc2e9b33cb7 |
|
22-May-2015 |
Cheng-Yi Chiang <cychiang@chromium.org> |
chameleon: Refactor ChameleonAudioInput and widget handler Refactor ChameleonAudioInput to use new StopCapturingAudio API provided by chameleond. Refactor stop_recording method in ChameleonInputWidgetHandler so user can call stop_recording method to stops recording, and this call does not block for a while. User then calls get_recorded_binary to actually retrieves the recorded data when user finishes time-sensitivite sequences. BUG=chromium:491058 TEST=not used yet Change-Id: If4301c555e7736427513d75f1897bde711cf7759 Reviewed-on: https://chromium-review.googlesource.com/273125 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/chameleon/audio_widget.py
|
24a9b64a364a434167ceff8544bf188aa0c897e0 |
|
22-May-2015 |
Cheng-Yi Chiang <cychiang@chromium.org> |
chameleon: Refactor ChameleonAudioOutput and widget handler Refactor ChameleonAudioOutput to use new StartPlayingAudio API provided by chameleond. Refactor start_playback in ChameleonOutputWidgetHandler so user can call set_playback_data to send the data to be played to Chameleon. This step is time-consuming and should be called before time-sensitive sequence happens. Then user calls start_playback to actually play the data, which should return right away so user can keep doing other actions. BUG=chromium:491508 TEST=not used yet Change-Id: I67a5a9ed535b1f1a563152f8b38f46fe3046b734 Reviewed-on: https://chromium-review.googlesource.com/273124 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/chameleon/audio_widget.py
|
fa134b8ffe706fcaf7ebb4f3caa3e4d1db8a14f0 |
|
05-May-2015 |
Cheng-Yi Chiang <cychiang@chromium.org> |
chameleon: Set default scale for Chameleon Mic port We need to set a scale on Chameleon Mic port because the gain on Chameleon is small. The recorded audio data is clear but the value is small. This cause processing in audio_helper falsely judges the recorded audio data as meaningless. Scale the recorded data up to avoid this problem. BUG=chromium:463813 TEST=run audio_AudioBasicInternalSpeaker test on Squawks. Change-Id: I3cfda9ee2bf52a4b4e90143173e535d746426f2e Reviewed-on: https://chromium-review.googlesource.com/269253 Reviewed-by: Tom Tam <waihong@google.com> Tested-by: Cheng-Yi Chiang <cychiang@chromium.org> Commit-Queue: Cheng-Yi Chiang <cychiang@chromium.org>
/external/autotest/client/cros/chameleon/audio_widget.py
|
33d0a6dcd6f0cb16feb5fce7e4bb1a76d03c84fd |
|
04-May-2015 |
Cheng-Yi Chiang <cychiang@chromium.org> |
chameleon: Add Chameleon MIC port and set channel map for simple case Add Chameleon MIC port which will be connected to a one-channel microphone directly. For simple sink type like internal microphone on Cros device, or Mic port on Chameleon, the audio signal is over the air. We do not use link to combine the source to the sink. We just set a default channel map to them. BUG=chromium:463813 TEST=not used yet Change-Id: Ia3def1919a045c1e391268975e39dda8ef3a85b2 Reviewed-on: https://chromium-review.googlesource.com/269008 Commit-Queue: Cheng-Yi Chiang <cychiang@chromium.org> Tested-by: Cheng-Yi Chiang <cychiang@chromium.org> Reviewed-by: Tom Tam <waihong@google.com>
/external/autotest/client/cros/chameleon/audio_widget.py
|
da1755c176fd197dc773f957400a7ba9048696d3 |
|
26-Mar-2015 |
Cheng-Yi Chiang <cychiang@chromium.org> |
chameleon: Implement scaling in stop_recording of ChameleonInputWidgetHandler When Chameleon records audio using LineIn from a mic level source, e.g. peripheral microphone, we need to implement scaling to raise the signal level to line level. BUG=chromium:463813 TEST=not used yet Change-Id: Ie0bbcc71e156888f609e606ce2da86a8098150af Reviewed-on: https://chromium-review.googlesource.com/262547 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/chameleon/audio_widget.py
|
2ac8d9a0356c4f38391eaea01239ff1e7bd035d2 |
|
12-Jan-2015 |
Cheng-Yi Chiang <cychiang@chromium.org> |
Chameleon: audio: Remove artifacts on AudioInputWidget Let AudioInputWidget support remove_head and lowpass_filter method. The artifact of codec initialization in the beginning of recording can be removed by remove_head. The noise can be removed by lowpass_filter. BUG=chromium:436768 TEST=not used yet. Change-Id: I849f2af8216625f7e09f2f307f545b9081f99886 Reviewed-on: https://chromium-review.googlesource.com/240214 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/chameleon/audio_widget.py
|
7c9aa4233621a8845899dc254b7ebbeaa69bfe5d |
|
12-Jan-2015 |
Cheng-Yi Chiang <cychiang@chromium.org> |
Chameleon: audio: Implement recording methods of CrosInputWidgetHandler Implement start_recording and stop_recording methods of CrosInputWidgetHandler. Also, add AudioBusToCrosLink to abstract the link from audio bus to Cros device. BUG=chromium:437678 TEST=not used yet. Change-Id: I73a53229e4e814bcf1aabc75fba6acc6303c2950 Reviewed-on: https://chromium-review.googlesource.com/240212 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/chameleon/audio_widget.py
|
3ade5b39eba9b309459002004ef95a3a647e7780 |
|
12-Jan-2015 |
Cheng-Yi Chiang <cychiang@chromium.org> |
Chameleon: audio: Implement playback methods for ChameleonOutputWidgetHandler Implement start_playback and stop_playback for ChameleonOutputWidgetHandler. BUG=chromium:437678 TEST=run audio_AudioBasicHDMI test and audio_AudioBasicHeadphone test. Change-Id: Iaf44c21ee894d1f63758796f33ef029d6b0c0be3 Reviewed-on: https://chromium-review.googlesource.com/240210 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/chameleon/audio_widget.py
|
d3fad2c8a0ba1508f5fc3efb90592687ec219d5c |
|
12-Jan-2015 |
Cheng-Yi Chiang <cychiang@chromium.org> |
Chameleon: audio: Implement _find_port in ChameleonOutputWidgetHandler Add ChameleonAudioOutput and ChameleonAudioOutputFinder so ChameleonOutputWidgetHandler can find the audio output port on Chameleon. BUG=chromium:437678 TEST=not used yet Change-Id: I1a8ee40c1ea74025b216ced046fbec87e201b38c Reviewed-on: https://chromium-review.googlesource.com/240109 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/chameleon/audio_widget.py
|
bb75bfce1dac3162cfbfd0966dd1de1e1809bb05 |
|
12-Jan-2015 |
Cheng-Yi Chiang <cychiang@chromium.org> |
Chameleon: audio: Add level control logic Add a module audio_level to handle signal level difference on different ports. Currently, there are 'Mic level', 'Line level', and 'Digital'. 1. Define _AudioLevel on ports of Cros, Peripheral, Chameleon. 2. Define AudioScale factor to balance different levels. 3. Provide a LevelController class to balance level when ports of different levels are connected by widget link. BUG=chromium:437678 TEST=not used yet. Change-Id: Ia8c275f01fc9a760d5519564bfabf199e9c26c0f Reviewed-on: https://chromium-review.googlesource.com/240108 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/chameleon/audio_widget.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/chameleon/audio_widget.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/chameleon/audio_widget.py
|
7754cef07097ae2efd6fa835433caa39f27f979a |
|
21-Nov-2014 |
Cheng-Yi Chiang <cychiang@chromium.org> |
Chameleon: Add Chameleon audio test framework Moves audio utilities out of ChameleonTest into chameleon_audio_helper module. Now audio utilities on Chameleon and DUT are abstracted by widgets. Audio widgets and binders are created by AudioWidgetFactory. In autotest, we can create widget, connect/disconnect widgets using binder, and do playback/record actions on widgets. Refactors audiovideo_AudioBasicHDMI test to be a simple test.test. Now the test uses widgets to control the test sequence. BUG=chromium:429862 TEST=test_that --args "chameleon_host=$CHAMELEON_IP" $DUT_IP audiovideo_AudioBasicHDMI Change-Id: I1bfed3d9e93a772d5c3eeec7f5e07486c8f81b49 Reviewed-on: https://chromium-review.googlesource.com/231591 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/chameleon/audio_widget.py
|