sof/tools/topology/topology2/include/pipelines/volume-capture.conf

111 lines
1.9 KiB
Plaintext

#
# Volume capture pipeline
#
# A simple pipeline. All attributes defined herein are namespaced by alsatplg to
# "Object.Pipeline.volume-capture.N.attribute_name"
#
# Usage: this component can be used by declaring in the top-level topology conf file as follows:
#
# Object.Pipeline.volume-capture."N" {
# format "s16le"
# period 1000
# time_domain "timer"
# channels 2
# rate 48000
# }
#
# and N is the unique pipeline_id for this pipeline object within the same alsaconf node.
#
#
# (sink) host.N.capture <- buffer.N.1 <- volume.N.1 <- buffer.N.2 (source endpoint)
#
<include/common/route.conf>
<include/components/buffer.conf>
<include/components/host.conf>
<include/components/pipeline.conf>
<include/components/volume.conf>
Class.Pipeline."volume-capture" {
# include common pipeline attribute definitions
<include/pipelines/pipeline-common.conf>
attributes {
# pipeline name is constructed as "volume-capture.1"
!constructor [
"index"
]
!mandatory [
"format"
]
!immutable [
"direction"
]
#
# volume-capture objects instantiated within the same alsaconf node must have
# unique index attribute
#
unique "instance"
}
Object.Widget {
pipeline."1" {}
host."capture" {
type "aif_out"
}
buffer."1" {
periods 2
caps "host"
}
pga."1" {
ramp_step_ms 250
Object.Control.mixer.1 {
Object.Base.tlv."vtlv_m50s1" {
Object.Base.scale."m50s1" {
min -5000
step 100
}
}
}
}
buffer."2" {
periods 2
caps "dai"
}
}
# Pipeline connections
Object.Base {
route."1" {
source "buffer..1"
sink "host..capture"
}
route."2" {
source "pga..1"
sink "buffer..1"
}
route."3" {
source "buffer..2"
sink "pga..1"
}
}
# Default attribute values
direction "capture"
time_domain "timer"
period 1000
channels 2
rate 48000
priority 0
core 0
frames 0
mips 5000
}