summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--4a-hal-cfg-community/hal-4a-csl-cm106-8ch-usb.json2
-rw-r--r--4a-hal-cfg-reference/CMakeLists.txt20
-rw-r--r--4a-hal-cfg-reference/hal-4a-2ch-generic-usb.json188
-rw-r--r--README.md7
4 files changed, 206 insertions, 11 deletions
diff --git a/4a-hal-cfg-community/hal-4a-csl-cm106-8ch-usb.json b/4a-hal-cfg-community/hal-4a-csl-cm106-8ch-usb.json
index f17fe9d..18dd1cb 100644
--- a/4a-hal-cfg-community/hal-4a-csl-cm106-8ch-usb.json
+++ b/4a-hal-cfg-community/hal-4a-csl-cm106-8ch-usb.json
@@ -5,7 +5,7 @@
"version": "0.9",
"api": "4a-hal-csl-cm106-8ch-usb",
"require": [ "alsacore", "smixer" ],
- "info": "4a hal for Jon's CSL CM106 8ch USB device",
+ "info": "4a hal for CSL CM106 8ch USB device",
"author": "Jonathan Aillet",
"date": "2018-06-09"
},
diff --git a/4a-hal-cfg-reference/CMakeLists.txt b/4a-hal-cfg-reference/CMakeLists.txt
index c9eb28d..e8267f9 100644
--- a/4a-hal-cfg-reference/CMakeLists.txt
+++ b/4a-hal-cfg-reference/CMakeLists.txt
@@ -19,13 +19,13 @@
##################################################
# Control Policy Config file
##################################################
-#PROJECT_TARGET_ADD(4a-hal-cfg-reference)
-#
-# file(GLOB CONF_FILES "*.json")
-#
-# add_input_files("${CONF_FILES}")
-#
-# SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES
-# LABELS "BINDING-CONFIG"
-# OUTPUT_NAME ${TARGET_NAME}
-# )
+PROJECT_TARGET_ADD(4a-hal-cfg-reference)
+
+ file(GLOB CONF_FILES "*.json")
+
+ add_input_files("${CONF_FILES}")
+
+ SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES
+ LABELS "BINDING-CONFIG"
+ OUTPUT_NAME ${TARGET_NAME}
+ )
diff --git a/4a-hal-cfg-reference/hal-4a-2ch-generic-usb.json b/4a-hal-cfg-reference/hal-4a-2ch-generic-usb.json
new file mode 100644
index 0000000..14eecbf
--- /dev/null
+++ b/4a-hal-cfg-reference/hal-4a-2ch-generic-usb.json
@@ -0,0 +1,188 @@
+{
+ "$schema": "http://iot.bzh/download/public/schema/json/ctl-schema.json",
+ "metadata": {
+ "uid": "/dev/snd/by-id/usb-0d8c_USB_Sound_Device-01",
+ "version": "0.9",
+ "api": "4a-hal-2ch-generic-usb",
+ "require": [ "alsacore", "smixer" ],
+ "info": "4a hal for 2ch generic USB device",
+ "author": "Jonathan Aillet",
+ "date": "2018-06-09"
+ },
+ "controls": [
+ {
+ "uid": "ping",
+ "info": "Ping hal",
+ "action": "api://4a-hal-manager#ping"
+ }
+ ],
+ "halmap": [
+ {
+ "uid": "agl-master-playback-volume",
+ "alsa": {
+ "name": "Speaker Playback Volume",
+ "value": 80
+ }
+ },
+ {
+ "uid": "agl-master-playback-switch",
+ "alsa": {
+ "name": "Speaker Playback Switch",
+ "value": 1
+ }
+ },
+ {
+ "uid": "agl-mic-capture-volume",
+ "alsa": {
+ "name": "Mic Capture Volume",
+ "value": 80
+ }
+ },
+ {
+ "uid": "agl-mic-capture-switch",
+ "alsa": {
+ "name": "Mic Capture Switch",
+ "value": 1
+ }
+ }
+ ],
+ "halmixer": {
+ "uid": "2ch-generic-usb",
+ "mixerapi": "smixer",
+ "ramps": [
+ {
+ "uid": "ramp-fast",
+ "delay": 50,
+ "up": 2,
+ "down": 10
+ },
+ {
+ "uid": "ramp-normal",
+ "delay": 50,
+ "up": 2,
+ "down": 4
+ },
+ {
+ "uid": "ramp-slow",
+ "delay": 100,
+ "up": 1,
+ "down": 1
+ }
+ ],
+ "playbacks" : {
+ "uid": "2CH-GENERIC-USB",
+ "path": "/dev/snd/by-id/usb-0d8c_USB_Sound_Device-01",
+ "params": {
+ "rate": 48000
+ },
+ "sink": {
+ "controls": {
+ "volume": {
+ "name": "Speaker Playback Volume",
+ "value": 80
+ },
+ "mute": {
+ "name": "Speaker Playback Switch"
+ }
+ },
+ "channels": [
+ {
+ "uid": "front-right",
+ "port": 0
+ },
+ {
+ "uid": "front-left",
+ "port": 1
+ }
+ ]
+ }
+ },
+ "captures": {
+ "uid": "2CH-GENERIC-USB",
+ "path": "/dev/snd/by-id/usb-0d8c_USB_Sound_Device-01",
+ "params": {
+ "rate": 48000
+ },
+ "source": {
+ "controls": {
+ "volume": {
+ "name": "Capture Volume"
+ },
+ "mute": {
+ "name": "Capture Switch"
+ }
+ },
+ "channels": [
+ {
+ "uid": "mic-right",
+ "port": 0
+ },
+ {
+ "uid": "mic-left",
+ "port": 1
+ }
+ ]
+ }
+ },
+ "zones": [
+ {
+ "uid": "full-stereo",
+ "sink": [
+ {
+ "target": "front-right",
+ "channel": 0
+ },
+ {
+ "target": "front-left",
+ "channel": 1
+ }
+ ]
+ },
+ {
+ "uid": "front-seats",
+ "sink": [
+ {
+ "target": "front-right",
+ "channel": 0
+ },
+ {
+ "target": "front-left",
+ "channel": 1
+ }
+ ]
+ }
+ ],
+ "streams": [
+ {
+ "uid": "multimedia",
+ "verb": "multimedia",
+ "zone": "full-stereo",
+ "volume": 60,
+ "mute": false,
+ "params": {
+ "rate": 48000
+ }
+ },
+ {
+ "uid": "navigation",
+ "verb": "navigation",
+ "zone": "front-seats",
+ "volume": 70,
+ "mute": false,
+ "params": {
+ "rate": 48000
+ }
+ },
+ {
+ "uid": "emergency",
+ "verb": "emergency",
+ "zone": "front-seats",
+ "volume": 60,
+ "mute": false,
+ "params": {
+ "rate": 48000
+ }
+ }
+ ]
+ }
+}
diff --git a/README.md b/README.md
index d1e4c32..d693ff0 100644
--- a/README.md
+++ b/README.md
@@ -131,6 +131,13 @@ sudo modprobe snd-aloop
* The `params` is where you can specify some parameters for your stream (such as rate).
* `volume` and `mute` fields are initiate values of the stream.
+#### Note about using a USB device
+
+Dynamic handling of USB devices is not yet implemented, so you need to modify the 'hal-4a-2ch-generic-usb.json'
+to change the `uid` value in `metadata` section and `path` values in `playbacks` and `captures` sections.
+All these values should be replaced by the alsa entry path of your usb device, these entry are listed
+under directory '/dev/snd/by-id/...'.
+
## Compile (for each repositories)
```bash