HEnquist / camilladsp

A flexible cross-platform IIR and FIR engine for crossovers, room correction etc.
https://henquist.github.io/
GNU General Public License v3.0
551 stars 48 forks source link

Not working on W11 with VB-Cable and Xonar STX #344

Closed JohannesBeranek closed 5 months ago

JohannesBeranek commented 5 months ago

Describe the bug Unable to get CamillaDSP working with my Xonar STX and VB-Cable installed on W11 (Version 10.0.22631 Build 22631). Tried all combinations of shared/exclusive mode, sample rate and sampleformat.

Tried with current release, with current master, with newer alsa_error_handling branch, and even with wasapi branch on win054 by editing Cargo.toml before re-building

Errors are one or a combination of: 2024-05-05 18:20:01.036039 ERROR [src\wasapidevice.rs:965] Failed to open capture device, error: Device doesn't support format: 2024-05-05 18:20:01.036083 ERROR [src/bin.rs:307] Capture error: Capture error: Device doesn't support format: 2024-05-05 18:25:48.594719 ERROR [src/bin.rs:286] Playback error: Playback error: Unable to find a supported format 2024-05-05 18:27:05.823475 ERROR [src/bin.rs:307] Capture error: Capture error: Zugriff verweigert (0x80070005)

(for the last one, the part "Zugriff verweigert" is german and means "access denied")

Checked that exclusive mode is not blocked by windows and that no other app is blocking access (though it also doesn't work in shared mode). Also, the gui seems to have a bug whereas if you put the capture device in exclusive mode, it also automatically thinks the playback device is in exclusive mode and reports an error about the selected format.

To Reproduce Have the same audio devices - besides my xonar stx I freshly installed the VB-Cable device as per suggesion in camillaDSP readme. Any manual builds mentioned above were done with a pretty recent rust version (I'm a developer myself, though my main isn't rust)

System info W11 (Version 10.0.22631 Build 22631) AMD 5600x tried with various camillaDSP versions, see above

Configuration Generated by the gui ; installation was done with the setup script. Here's one version:

description: null
devices:
  adjust_period: null
  capture:
    channels: 2
    device: CABLE Output (VB-Audio Virtual Cable)
    exclusive: true
    format: S24LE3
    loopback: false
    type: Wasapi
  capture_samplerate: null
  chunksize: 1024
  enable_rate_adjust: null
  playback:
    channels: 2
    device: Lautsprecher (ASUS Xonar Essence STX Audio Device)
    exclusive: true
    format: S24LE3
    type: Wasapi
  queuelimit: null
  rate_measure_interval: null
  resampler:
    profile: Balanced
    type: AsyncSinc
  samplerate: 48000
  silence_threshold: null
  silence_timeout: null
  stop_on_rate_change: true
  target_level: null
  volume_ramp_time: null
filters:
  Unnamed Filter 1:
    description: null
    parameters:
      freq: 1000
      q: 0.5
      type: Lowpass
    type: Biquad
  Unnamed Filter 2:
    description: null
    parameters:
      freq: 1000
      q: 0.5
      type: Lowpass
    type: Biquad
mixers:
  Unnamed Mixer 1:
    channels:
      in: 2
      out: 2
    description: null
    mapping:
    - dest: 0
      mute: false
      sources:
      - channel: 0
        gain: 0
        inverted: false
        mute: false
        scale: dB
    - dest: 1
      mute: false
      sources:
      - channel: 1
        gain: 0
        inverted: false
        mute: false
        scale: dB
pipeline:
- bypassed: null
  description: null
  name: Unnamed Processor 1
  type: Processor
- bypassed: null
  channel: 0
  description: null
  names:
  - Unnamed Filter 1
  type: Filter
- bypassed: null
  channel: 1
  description: null
  names:
  - Unnamed Filter 1
  type: Filter
- bypassed: null
  description: null
  name: Unnamed Mixer 1
  type: Mixer
processors:
  Unnamed Processor 1:
    description: null
    parameters:
      attack: 0.025
      channels: 2
      clip_limit: null
      factor: 5
      makeup_gain: 15
      monitor_channels:
      - 0
      - 1
      process_channels:
      - 0
      - 1
      release: 1
      soft_clip: false
      threshold: -25
    type: Compressor
title: null

Logs camilladsp-log.txt

Note that I also tried without any filter or processor, didn't change anything

HEnquist commented 5 months ago

I have never seen an access denied error before, but I wonder if it could have something to do with privacy settings. See here: https://github.com/mumble-voip/mumble/pull/3572#issue-396717983

For the playback side, can you clone the wasapi-rs library and try the "playsine" and "playnoise_exclusive" examples? https://github.com/HEnquist/wasapi-rs/tree/master/examples Both use the default device, so just make sure to set the STX as the default output device in the sound control panel.

JohannesBeranek commented 5 months ago

@HEnquist it was the privacy settings! Hate that stuff. Funnily I never had issues with just disabling privacy settings, but it seems disabling them now means "nothing has access anymore" instead of "don't run any blocking".

Had the mic related privacy settings completely disabled, which it seems meant to block everything from every recording device somehow.

Thanks a lot!