Massive audio lag in Davinci Resolve after upgrade to F35

Hello,

After upgrade from F33 to F35 I have a big problem with audio in Davinci Resolve. The delay between starting/stopping playback and the effects in speakers is almost 2 seconds, making using the software impossible.
I used this version of Resolve with F33 without issues, and it only appeared after upgrade. This is the only application which exhibits such behavior, I didn’t notice any delays in Firefox, or audio/video players.
Does anyone have an idea how to debug and fix this issue?

1 Like

Welcome to ask.:fedora:edora @piranha32

Could you please give us more info’s as :

inxi -Fzx in terminal and post the output as </> Preformatted text here.

Have also a look to pw-top to see what goes on when you open DaviniciResolve

P.S. please give also version of DavinciResolve you use.

Here you go:
I’m running DR 17.4.1 Build 4. There is a newer version (17.4.2), but I had problems with audio routing, so I temporarily reverted to the previous release.
Attached is screenshot from pw-top taken while playing audio in DR.

# inxi -Fzx
System:    Kernel: 5.15.7-200.fc35.x86_64 x86_64 bits: 64 compiler: gcc v: 2.37-10.fc35 Desktop: MWM
           Distro: Fedora release 35 (Thirty Five)
Machine:   Type: Desktop Mobo: ASUSTeK model: PRIME X299-A v: Rev 1.xx serial: <filter> UEFI: American Megatrends v: 3006
           date: 02/07/2020
Battery:   Device-1: hidpp_battery_0 model: Logitech Wireless Mouse MX Master 3 charge: 100% (should be ignored)
           status: Discharging
CPU:       Info: 12-Core model: Intel Core i9-7920X bits: 64 type: MT MCP arch: Skylake rev: 4 cache: L2: 12 MiB
           flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 139194
           Speed: 1374 MHz min/max: 1200/4400 MHz Core speeds (MHz): 1: 910 2: 1171 3: 1203 4: 3469 5: 1153 6: 1158 7: 1058
           8: 1200 9: 1200 10: 4400 11: 4362 12: 1200 13: 1180 14: 1199 15: 1196 16: 1026 17: 3162 18: 1200 19: 1200 20: 4400
           21: 4385 22: 1200 23: 1200 24: 1200
Graphics:  Device-1: NVIDIA TU104 [GeForce RTX 2080 Rev. A] vendor: Micro-Star MSI driver: nvidia v: 470.82.00 bus-ID: 65:00.0
           Display: server: X.Org 1.20.11 driver: loaded: nvidia resolution: 1: 1920x1200~60Hz 2: 1920x1200~60Hz
           3: 3840x2160~60Hz 4: 3840x2160~60Hz
           OpenGL: renderer: NVIDIA GeForce RTX 2080/PCIe/SSE2 v: 4.6.0 NVIDIA 470.82.00 direct render: Yes
Audio:     Device-1: Intel 200 Series PCH HD Audio vendor: ASUSTeK driver: snd_hda_intel v: kernel bus-ID: 00:1f.3
           Device-2: NVIDIA TU104 HD Audio vendor: Micro-Star MSI driver: snd_hda_intel v: kernel bus-ID: 65:00.1
           Device-3: BEHRINGER UMC204HD 192k type: USB driver: snd-usb-audio bus-ID: 1-6.3.4:12
           Sound Server-1: ALSA v: k5.15.7-200.fc35.x86_64 running: yes
           Sound Server-2: PulseAudio v: 15.0 running: no
           Sound Server-3: PipeWire v: 0.3.40 running: yes
Network:   Device-1: Intel Ethernet I219-V vendor: ASUSTeK driver: e1000e v: kernel port: N/A bus-ID: 00:1f.6
           IF: eno1 state: down mac: <filter>
           Device-2: Intel Wireless-AC 9260 driver: iwlwifi v: kernel bus-ID: 01:00.0
           IF: wlp1s0 state: up mac: <filter>
           IF-ID-1: br-5a332cf978c3 state: down mac: <filter>
           IF-ID-2: br-d2e1ab41f54c state: down mac: <filter>
           IF-ID-3: br-eb62d2dab2b5 state: down mac: <filter>
           IF-ID-4: docker0 state: up speed: 10000 Mbps duplex: unknown mac: <filter>
           IF-ID-5: vethe623008 state: up speed: 10000 Mbps duplex: full mac: <filter>
           IF-ID-6: virbr0 state: down mac: <filter>
Bluetooth: Device-1: Cambridge Silicon Radio Bluetooth Dongle (HCI mode) type: USB driver: btusb v: 0.8 bus-ID: 1-8.4.4:13
           Report: bt-adapter ID: hci0 rfk-id: 0 state: down bt-service: enabled,running rfk-block: hardware: no software: no
           address: <filter>
RAID:      Device-1: md127 type: mdraid level: mirror status: active size: 5.46 TiB
           Info: report: 2/2 UU blocks: 5860391488 chunk-size: N/A
           Components: Online: 0: sda 1: sdc
Drives:    Local Storage: total: 12.51 TiB lvm-free: 4 MiB used: 6.34 TiB (50.7%)
           ID-1: /dev/nvme0n1 vendor: Western Digital model: WDS100T3X0C-00SJG0 size: 931.51 GiB temp: 40.9 C
           ID-2: /dev/nvme1n1 vendor: Samsung model: SSD 960 EVO 500GB size: 465.76 GiB temp: 43.9 C
           ID-3: /dev/sda vendor: Seagate model: ST6000VN0033-2EE110 size: 5.46 TiB
           ID-4: /dev/sdb vendor: Crucial model: M4-CT256M4SSD2 size: 238.47 GiB
           ID-5: /dev/sdc vendor: Seagate model: ST6000VN0033-2EE110 size: 5.46 TiB temp: 42 C
Partition: ID-1: / size: 440.9 GiB used: 384.87 GiB (87.3%) fs: ext4 dev: /dev/dm-0 mapped: fedora-root
           ID-2: /boot size: 975.9 MiB used: 387.1 MiB (39.7%) fs: ext4 dev: /dev/nvme1n1p2
           ID-3: /boot/efi size: 199.8 MiB used: 6.1 MiB (3.0%) fs: vfat dev: /dev/nvme1n1p1
Swap:      ID-1: swap-1 type: partition size: 15.61 GiB used: 0 KiB (0.0%) dev: /dev/dm-1 mapped: fedora-swap
           ID-2: swap-2 type: zram size: 8 GiB used: 0 KiB (0.0%) dev: /dev/zram0
Sensors:   System Temperatures: cpu: 40.0 C mobo: N/A gpu: nvidia temp: 42 C
           Fan Speeds (RPM): N/A gpu: nvidia fan: 25%
Info:      Processes: 610 Uptime: 3h 23m Memory: 93.98 GiB used: 13.32 GiB (14.2%) Init: systemd runlevel: 5 Compilers:
           gcc: 11.2.1 clang: 13.0.0 Packages: N/A note: see --pkg Shell: Bash v: 5.1.8 inxi: 3.3.09
1 Like

Here’s a screenshot from QjackCtl with graph of connections.

From your pw-top on column RATE, it show different values on speed-dispatcher than others. How about to try make the rate same for all item?

I uninstalled the speech dispatcher completely (I don’t use it anyway), audio device and applications all are set to 48kHz, but the lag is still here.

I’m not sure, but there should be other configuration like buffer size, periods, etc. Each machine have different settings capabilities.

May be you could play around with that first.

Update:

I have umc202hd and in past I used it with audacity or obs. If my monitor too lagging, usually I lowering the buffer and depending only on my system resources (I used 2 core cpu with 4GB ram).

But since you said your system working fine with F33, I’m not sure if your case because of the setting or because the different version between F33 and F35.

Here some more information to debug pipewire:

There is definitely a difference between F33 and F35. In F33 it used pulseaudio. With F34 there was a shift to pipewire. With F35 they added wireplumber. Thus major changes to the audio stack in fedora.

While I cannot help with tracking the lag it seems reasonable that something may still be in play from the prior config with F33 that is interfering with F35 audio.

I might also note that most audio signals are at 44.1 KHz and on my system pw-top shows the input from rhythmbox as 44.1 while the output on alsa_output.pci is 48 KHz.

1 Like

Here are the change explained.
https://fedoraproject.org/wiki/Releases/35/ChangeSet
https://fedoraproject.org/wiki/Releases/34/ChangeSet

Found Ardour user on YouTube also experiences massive lags on playback monitoring when using pipewire, but he also manage to decrease the latency by decreasing the buffer.

I think since it’s from your diagram you’re look like monitoring the feedback from umc204hd capture (live sound?), lowering the buffer should be realistic to decrease the latency.

Can confirm that both the issue still persists, and that it is most likely related to Wireplumber. I used pipewire-media-session for the longest time before moving to Fedora and it wasn’t a thing.

Switched to it with the 35 relase (so no old config files were laying around) and yeah, the issue is there.


EDIT: apparently it’s just the pipewire-alsa package that isn’t working properly for a while now:

And here’s a workaround: