Update QEMU audio configuration
[AGL/meta-agl.git] / meta-pipewire / recipes-multimedia / wireplumber / wireplumber-config-agl / policy.lua.d / 10-default-policy.lua
index f70f38b..e6170dd 100644 (file)
@@ -4,7 +4,10 @@ policy_config = {}
 
 policy_config.endpoints = {
   -- [endpoint name] = { endpoint properties }
-
+  ["endpoint.capture"] = {
+    ["media.class"] = "Audio/Source",
+    ["role"] = "Capture",
+  },
   ["endpoint.multimedia"] = {
     ["media.class"] = "Audio/Sink",
     ["role"] = "Multimedia",
@@ -43,11 +46,23 @@ policy_config.policy = {
   ["move"] = false,  -- moves session items when metadata target.node changes
   ["follow"] = true, -- moves session items to the default device when it has changed
 
+  -- Set to 'true' to disable channel splitting & merging on nodes and enable
+  -- passthrough of audio in the same format as the format of the device.
+  -- Note that this breaks JACK support; it is generally not recommended
+  ["audio.no-dsp"] = false,
+
   -- how much to lower the volume of lower priority streams when ducking
   -- note that this is a linear volume modifier (not cubic as in pulseaudio)
   ["duck.level"] = 0.2,
 
   ["roles"] = {
+    ["Capture"] = {
+      ["alias"] = { "Multimedia", "Music", "Voice", "Capture" },
+      ["priority"] = 25,
+      ["action.default"] = "cork",
+      ["action.Capture"] = "mix",
+      ["media.class"] = "Audio/Source",
+    },
     ["Multimedia"] = {
       ["alias"] = { "Movie", "Music", "Game" },
       ["priority"] = 25,
@@ -108,8 +123,8 @@ load_module("mixer-api")
 -- Create endpoints statically at startup
 load_script("static-endpoints.lua", policy_config.endpoints)
 
--- Create items for nodes that appear in the graph
-load_script("create-item.lua")
+-- Create session items for nodes that appear in the graph
+load_script("create-item.lua", policy_config.policy)
 
 -- Link nodes to each other to make media flow in the graph
 load_script("policy-node.lua", policy_config.policy)