mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-06 13:30:01 -05:00
context: implement dynamic rate
Add a default.clock.allowed-rates property that lists the possible rates for the graph. Add node.rate and node.lock-rate properties to suggest a graph rate and lock the rate. Collect the largest clock rate from the nodes and if it is allowed, try to configure it as the graph rate. Only switch rates when the driver is IDLE or suspended or when we force a rate. No alternative samplerates are specified because we first need to work around a common driver bug (cards with 1 cristal need the same rate for capture as playback) for this to work.
This commit is contained in:
parent
8375d7b2d7
commit
1ff208875c
5 changed files with 144 additions and 35 deletions
|
|
@ -20,14 +20,15 @@ context.properties = {
|
|||
core.name = pipewire-0 # core name and socket name
|
||||
|
||||
## Properties for the DSP configuration.
|
||||
#default.clock.rate = 48000
|
||||
#default.clock.quantum = 1024
|
||||
#default.clock.min-quantum = 32
|
||||
#default.clock.max-quantum = 8192
|
||||
#default.video.width = 640
|
||||
#default.video.height = 480
|
||||
#default.video.rate.num = 25
|
||||
#default.video.rate.denom = 1
|
||||
#default.clock.rate = 48000
|
||||
#default.clock.allowed-rates = [ 48000 ]
|
||||
#default.clock.quantum = 1024
|
||||
#default.clock.min-quantum = 32
|
||||
#default.clock.max-quantum = 8192
|
||||
#default.video.width = 640
|
||||
#default.video.height = 480
|
||||
#default.video.rate.num = 25
|
||||
#default.video.rate.denom = 1
|
||||
#
|
||||
# These overrides are only applied when running in a vm.
|
||||
vm.overrides = {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue