summary refs log tree commit diff
path: root/src/linux.rs
diff options
context:
space:
mode:
authorpaulhsia <paulhsia@chromium.org>2019-05-24 16:53:55 +0800
committerchrome-bot <chrome-bot@chromium.org>2019-05-31 02:56:41 -0700
commit580d4186562c9c1e5b399885c6c5647cdde15243 (patch)
treec82ba6ba2a0e9fd2e9895310427442a4ce16d703 /src/linux.rs
parentd7738ec486fbc472e76529355f43eb8ee0e7e820 (diff)
downloadcrosvm-580d4186562c9c1e5b399885c6c5647cdde15243.tar
crosvm-580d4186562c9c1e5b399885c6c5647cdde15243.tar.gz
crosvm-580d4186562c9c1e5b399885c6c5647cdde15243.tar.bz2
crosvm-580d4186562c9c1e5b399885c6c5647cdde15243.tar.lz
crosvm-580d4186562c9c1e5b399885c6c5647cdde15243.tar.xz
crosvm-580d4186562c9c1e5b399885c6c5647cdde15243.tar.zst
crosvm-580d4186562c9c1e5b399885c6c5647cdde15243.zip
linux: Add cras-capture option for cras-audio device
The flag can enable capturing audio from CRAS server to the cras-audio
device.
We'll re-enable capture function on Crostini after finishing capture
permission works.

BUG=chromium:932268
TEST=Boot vm with crosvm --cras-audio --cras-capture to check recording
     functionality.

Cq-Depend: chromium:1628633
Change-Id: I7502cbd668cbc722224164d9f69e50a16b0ab86b
Reviewed-on: https://chromium-review.googlesource.com/1628687
Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
Tested-by: Chih-Yang Hsia <paulhsia@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Legacy-Commit-Queue: Commit Bot <commit-bot@chromium.org>
Reviewed-by: Chih-Yang Hsia <paulhsia@chromium.org>
Diffstat (limited to 'src/linux.rs')
-rw-r--r--src/linux.rs5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/linux.rs b/src/linux.rs
index ecf25fc..c29b5d1 100644
--- a/src/linux.rs
+++ b/src/linux.rs
@@ -823,7 +823,10 @@ fn create_devices(
     }
 
     if cfg.cras_audio {
-        let server = Box::new(CrasClient::new().map_err(Error::CreateCrasClient)?);
+        let mut server = Box::new(CrasClient::new().map_err(Error::CreateCrasClient)?);
+        if cfg.cras_capture {
+            server.enable_cras_capture();
+        }
         let cras_audio = devices::Ac97Dev::new(mem.clone(), server);
 
         pci_devices.push((