Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • pipewire pipewire
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 405
    • Issues 405
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 11
    • Merge requests 11
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • PipeWire
  • pipewirepipewire
  • Issues
  • #424

Closed
Open
Created Nov 27, 2020 by Magnus Boman@kattjevfel

pipewire-pulse not setting sink format (and in turn format.rate)

I'm not 100% sure this is an actual issue, but on pulseaudio when switching from a 44.1kHz track to a 48.0kHz track, I can see my dac/amp detect and switch to that mode, but when running pipewire-pulse it stays at the frequency I've set in the config (96kHz in this case, since my device supports it).

Again, I'm not sure this is an actual issue, since I don't know all that much about audio, but this doesn't seem right.

I did two diff's on pactl list output when switching tracks:

pipewire 6e0fed37:

diff --git a/44kHz.pipewire b/48kHz.pipewire
index d922af1..158a5d4 100644
--- a/44kHz.pipewire
+++ b/48kHz.pipewire
@@ -437,7 +437,7 @@ Sink Input #56
 	Owner Module: n/a
 	Client: 52
 	Sink: 39
-	Sample Specification: float32le 2ch 44100Hz
+	Sample Specification: float32le 2ch 48000Hz
 	Channel Map: front-left,front-right
 	Format: pcm
 	Corked: no
@@ -471,7 +471,7 @@ Sink Input #56
 		library.name = "audioconvert/libspa-audioconvert"
 		object.id = "19"
 		client.id = "52"
-		node.latency = "1764/44100"
+		node.latency = "1920/48000"
 		module-stream-restore.id = "sink-input-by-application-name:Audacious"
 
 Client #29
@@ -625,7 +625,7 @@ Client #59
 		module.id = "2"
 		object.id = "59"
 		client.api = "pipewire-pulse"
-		application.process.id = "93646"
+		application.process.id = "93627"
 		application.process.user = "katt"
 		application.process.host = "main"
 		application.process.binary = "pactl"

pulseaudio 14.0:

diff --git a/44kHz.pulse b/48kHz.pulse
index 58657c1..31014f1 100644
--- a/44kHz.pulse
+++ b/48kHz.pulse
@@ -192,7 +192,7 @@ Sink #0
 	Name: alsa_output.usb-262a_MX3-01.iec958-stereo
 	Description: MX3 Digital Stereo (IEC958)
 	Driver: module-alsa-card.c
-	Sample Specification: s16le 2ch 96000Hz
+	Sample Specification: s16le 2ch 48000Hz
 	Channel Map: front-left,front-right
 	Owner Module: 6
 	Mute: no
@@ -200,7 +200,7 @@ Sink #0
 	        balance 0.00
 	Base Volume: 65536 / 100% / 0.00 dB
 	Monitor Source: alsa_output.usb-262a_MX3-01.iec958-stereo.monitor
-	Latency: 319497 usec, configured 460000 usec
+	Latency: 466853 usec, configured 460000 usec
 	Flags: HARDWARE DECIBEL_VOLUME LATENCY SET_FORMATS 
 	Properties:
 		alsa.resolution_bits = "16"
@@ -246,7 +246,7 @@ Source #0
 	Name: alsa_output.usb-262a_MX3-01.iec958-stereo.monitor
 	Description: Monitor of MX3 Digital Stereo (IEC958)
 	Driver: module-alsa-card.c
-	Sample Specification: s16le 2ch 96000Hz
+	Sample Specification: s16le 2ch 48000Hz
 	Channel Map: front-left,front-right
 	Owner Module: 6
 	Mute: no
@@ -254,7 +254,7 @@ Source #0
 	        balance 0.00
 	Base Volume: 65536 / 100% / 0.00 dB
 	Monitor of Sink: alsa_output.usb-262a_MX3-01.iec958-stereo
-	Latency: 0 usec, configured 2000000 usec
+	Latency: 0 usec, configured 4000000 usec
 	Flags: DECIBEL_VOLUME LATENCY 
 	Properties:
 		device.description = "Monitor of MX3 Digital Stereo (IEC958)"
@@ -278,21 +278,21 @@ Source #0
 	Formats:
 		pcm
 
-Sink Input #16
+Sink Input #17
 	Driver: protocol-native.c
 	Owner Module: 9
-	Client: 25
+	Client: 27
 	Sink: 0
-	Sample Specification: float32le 2ch 44100Hz
+	Sample Specification: float32le 2ch 48000Hz
 	Channel Map: front-left,front-right
-	Format: pcm, format.sample_format = "\"float32le\""  format.rate = "44100"  format.channels = "2"  format.channel_map = "\"front-left,front-right\""
+	Format: pcm, format.sample_format = "\"float32le\""  format.rate = "48000"  format.channels = "2"  format.channel_map = "\"front-left,front-right\""
 	Corked: no
 	Mute: no
 	Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB
 	        balance 0.00
-	Buffer Latency: 500010 usec
-	Sink Latency: 319369 usec
-	Resample method: speex-float-1
+	Buffer Latency: 289312 usec
+	Sink Latency: 466714 usec
+	Resample method: copy
 	Properties:
 		media.name = "Audacious"
 		application.name = "Audacious"
@@ -332,7 +332,7 @@ Client #2
 		application.process.machine_id = "d1dccf5f50e64923853c62d564a3f99f"
 		application.process.session_id = "1"
 
-Client #25
+Client #27
 	Driver: protocol-native.c
 	Owner Module: 9
 	Properties:
@@ -349,14 +349,14 @@ Client #25
 		application.process.session_id = "1"
 		application.icon_name = "audacious"
 
-Client #26
+Client #28
 	Driver: protocol-native.c
 	Owner Module: 9
 	Properties:
 		application.name = "pactl"
 		native-protocol.peer = "UNIX socket client"
 		native-protocol.version = "34"
-		application.process.id = "92866"
+		application.process.id = "92894"
 		application.process.user = "katt"
 		application.process.host = "main"
 		application.process.binary = "pactl"
Assignee
Assign to
Time tracking