AlexandreRouma / SDRPlusPlus

Cross-Platform SDR Software
GNU General Public License v3.0
4.14k stars 572 forks source link

Missing devices in audio sink #1480

Closed c3kkos closed 1 month ago

c3kkos commented 1 month ago

Feature description

It happens to have more then 3 output devices (sinks) in modern, integrated audio adapters. I have a HP ultrabook that, via pipewire, offers many endpoints (3 hdmi and 1 duplex analog output)

sdrpp only show 3 out of 4, all hdmi, making it impossible to choose loudspeakers/headphones combo output.

Please expand to show as many endpoints found

image

Workarounds:

manually edit xml in ~/.config

use qpwgraph to manually re-route audio output to the correct sink

AlexandreRouma commented 1 month ago

All available devices are always shown, it doesn't limit anything. Show logs.

c3kkos commented 1 month ago

Sure.


sdrpp
[26/09/2024 21:20:50.000] [INFO] SDR++ v1.2.0
[26/09/2024 21:20:50.000] [INFO] Loading config
[26/09/2024 21:20:50.000] [INFO] Using OpenGL 3.0
[26/09/2024 21:20:50.000] [INFO] Loading icons
[26/09/2024 21:20:50.000] [INFO] Loading band plans
[26/09/2024 21:20:50.000] [INFO] Loading band plans color table
[26/09/2024 21:20:50.000] [INFO] Loading modules
[26/09/2024 21:20:50.000] [INFO] Loading /usr/lib/sdrpp/plugins/radio.so
[26/09/2024 21:20:50.000] [INFO] Loading /usr/lib/sdrpp/plugins/pager_decoder.so
[26/09/2024 21:20:50.000] [INFO] Loading /usr/lib/sdrpp/plugins/hermes_source.so
[26/09/2024 21:20:50.000] [INFO] Loading /usr/lib/sdrpp/plugins/audio_sink.so
[26/09/2024 21:20:50.000] [INFO] Loading /usr/lib/sdrpp/plugins/rfspace_source.so
[26/09/2024 21:20:50.000] [INFO] Loading /usr/lib/sdrpp/plugins/plutosdr_source.so
[26/09/2024 21:20:50.000] [INFO] Loading /usr/lib/sdrpp/plugins/airspyhf_source.so
[26/09/2024 21:20:50.000] [INFO] Loading /usr/lib/sdrpp/plugins/sdrplay_source.so
[26/09/2024 21:20:50.000] [INFO] Loading /usr/lib/sdrpp/plugins/tetra_demodulator.so
[26/09/2024 21:20:50.000] [INFO] Loading /usr/lib/sdrpp/plugins/rigctl_client.so
[26/09/2024 21:20:50.000] [INFO] Loading /usr/lib/sdrpp/plugins/meteor_demodulator.so
[26/09/2024 21:20:50.000] [INFO] Loading /usr/lib/sdrpp/plugins/rtl_tcp_source.so
[26/09/2024 21:20:50.000] [INFO] Loading /usr/lib/sdrpp/plugins/iq_exporter.so
[26/09/2024 21:20:50.000] [INFO] Loading /usr/lib/sdrpp/plugins/rtl_sdr_source.so
[26/09/2024 21:20:51.000] [INFO] Loading /usr/lib/sdrpp/plugins/scanner.so
[26/09/2024 21:20:51.000] [INFO] Loading /usr/lib/sdrpp/plugins/network_source.so
[26/09/2024 21:20:51.000] [INFO] Loading /usr/lib/sdrpp/plugins/spectran_http_source.so
[26/09/2024 21:20:51.000] [INFO] Loading /usr/lib/sdrpp/plugins/spyserver_source.so
[26/09/2024 21:20:51.000] [INFO] Loading /usr/lib/sdrpp/plugins/recorder.so
[26/09/2024 21:20:51.000] [INFO] Loading /usr/lib/sdrpp/plugins/file_source.so
[26/09/2024 21:20:51.000] [INFO] Loading /usr/lib/sdrpp/plugins/discord_integration.so
[26/09/2024 21:20:51.000] [INFO] Loading /usr/lib/sdrpp/plugins/network_sink.so
[26/09/2024 21:20:51.000] [INFO] Loading /usr/lib/sdrpp/plugins/frequency_manager.so
[26/09/2024 21:20:51.000] [INFO] Loading /usr/lib/sdrpp/plugins/audio_source.so
[26/09/2024 21:20:51.000] [INFO] Loading /usr/lib/sdrpp/plugins/rigctl_server.so
[26/09/2024 21:20:51.000] [INFO] Loading /usr/lib/sdrpp/plugins/hackrf_source.so
[26/09/2024 21:20:51.000] [INFO] Loading /usr/lib/sdrpp/plugins/airspy_source.so
[26/09/2024 21:20:51.000] [INFO] Loading /usr/lib/sdrpp/plugins/sdrpp_server_source.so
[26/09/2024 21:20:51.000] [INFO] Initializing Audio Sink (audio_sink)
[26/09/2024 21:20:51.000] [INFO] Initializing File Source (file_source)
[26/09/2024 21:20:51.000] [INFO] Initializing Frequency Manager (frequency_manager)
[26/09/2024 21:20:51.000] [INFO] Initializing RTL-SDR Source (rtl_sdr_source)
[26/09/2024 21:20:51.000] [INFO] Initializing RTL-TCP Source (rtl_tcp_source)
[26/09/2024 21:20:51.000] [INFO] Initializing Radio (radio)
[Resamp] predec: 32, interp: 4, decim: 5, inacc: 0.000000%, taps: 380
[Resamp] predec: 4, interp: 96, decim: 125, inacc: 0.000000%, taps: 9500

RtApiJack::getDeviceInfo: error determining Jack input/output channels!

[Resamp] predec: 128, interp: 4, decim: 5, inacc: 0.000000%, taps: 380
[Resamp] predec: 1, interp: 24, decim: 25, inacc: 0.000000%, taps: 1900
[Resamp] predec: 1, interp: 24, decim: 25, inacc: 0.000000%, taps: 1900
[26/09/2024 21:20:51.000] [WARN] Demod switch took 879 us
[26/09/2024 21:20:51.000] [INFO] RtAudio stream open
[26/09/2024 21:20:51.000] [INFO] Initializing Recorder (recorder)
[26/09/2024 21:20:51.000] [INFO] Initializing SDRplay Source (sdrplay_source)
shm_open: No such file or directory
[26/09/2024 21:20:51.000] [ERROR] Could not intiatialized the SDRplay API. Make sure that the service is running.
[26/09/2024 21:20:51.000] [INFO] Initializing SpyServer Source (spyserver_source)
[26/09/2024 21:20:51.000] [INFO] Loading color maps
[26/09/2024 21:20:51.000] [INFO] Loading /usr/share/sdrpp/colormaps/smoke.json
[26/09/2024 21:20:51.000] [INFO] Loading /usr/share/sdrpp/colormaps/turbo.json
[26/09/2024 21:20:51.000] [INFO] Loading /usr/share/sdrpp/colormaps/classic.json
[26/09/2024 21:20:51.000] [INFO] Loading /usr/share/sdrpp/colormaps/classic_green.json
[26/09/2024 21:20:51.000] [INFO] Loading /usr/share/sdrpp/colormaps/plasma.json
[26/09/2024 21:20:51.000] [INFO] Loading /usr/share/sdrpp/colormaps/greyscale.json
[26/09/2024 21:20:51.000] [INFO] Loading /usr/share/sdrpp/colormaps/electric.json
[26/09/2024 21:20:51.000] [INFO] Loading /usr/share/sdrpp/colormaps/magma.json
[26/09/2024 21:20:51.000] [INFO] Loading /usr/share/sdrpp/colormaps/viridis.json
[26/09/2024 21:20:51.000] [INFO] Loading /usr/share/sdrpp/colormaps/inferno.json
[26/09/2024 21:20:51.000] [INFO] Loading /usr/share/sdrpp/colormaps/vivid.json
[26/09/2024 21:20:51.000] [INFO] Loading /usr/share/sdrpp/colormaps/temper_colors.json
[26/09/2024 21:20:51.000] [INFO] Loading /usr/share/sdrpp/colormaps/websdr.json
[26/09/2024 21:20:51.000] [INFO] Loading /usr/share/sdrpp/colormaps/gqrx.json
[Resamp] predec: 16, interp: 4, decim: 5, inacc: 0.000000%, taps: 380
[26/09/2024 21:20:51.000] [INFO] New DSP samplerate: 1000000.000000 (source samplerate is 1000000.000000)
[26/09/2024 21:20:51.000] [INFO] SpyServerSourceModule 'SpyServer Source': Menu Select!
[Resamp] predec: 16, interp: 4, decim: 5, inacc: 0.000000%, taps: 380
[Resamp] predec: 16, interp: 4, decim: 5, inacc: 0.000000%, taps: 380
[26/09/2024 21:20:51.000] [INFO] New DSP samplerate: 1000000.000000 (source samplerate is 1000000.000000)

RtApiJack::getDeviceInfo: error determining Jack input/output channels!

[Resamp] predec: 1, interp: 24, decim: 25, inacc: 0.000000%, taps: 1900
[26/09/2024 21:20:51.000] [INFO] RtAudio stream open
[26/09/2024 21:20:51.000] [INFO] SpyServerSourceModule 'SpyServer Source': Tune: 172757500.000000!
[26/09/2024 21:20:51.000] [INFO] Running post-init for Audio Sink
[26/09/2024 21:20:51.000] [INFO] Running post-init for File Source
[26/09/2024 21:20:51.000] [INFO] Running post-init for Frequency Manager
[26/09/2024 21:20:51.000] [INFO] Running post-init for RTL-SDR Source
[26/09/2024 21:20:51.000] [INFO] Running post-init for RTL-TCP Source
[26/09/2024 21:20:51.000] [INFO] Running post-init for Radio
[26/09/2024 21:20:51.000] [INFO] Running post-init for Recorder
[26/09/2024 21:20:51.000] [INFO] Running post-init for SDRplay Source
[26/09/2024 21:20:51.000] [INFO] Running post-init for SpyServer Source
[26/09/2024 21:20:51.000] [INFO] Ready.

Indeed, there is a jack related error, from its api, but 1) not sure if that affects the issue 2) why jack? anyhow, i've got pipewire and wireplumber, up&running fine, with alsa and jack support enabled (Cockos Reaper works)

AlexandreRouma commented 1 month ago

Because as I suspected it's a rtaudio issue and not a SDR++ one. Follow these instructions for a fix.

c3kkos commented 1 month ago

Thank you Alexander!

Just in case someone wants a quick&dirty workaround for this:

in Linux Mint latest releases Pipewire and Wireplumber audio systems are the new defaults, so you should have only to install "qpwgraph"

that lets you play with nodes.

Just detach the current "Radio" (sdrpp) and attach the channels to your physical output device.

image

c3kkos commented 1 month ago

I've done what written for rtaudio. Followed every step, including checking out v5.1

but got a very ugly seg fault when i start sdrpp.

here's the log:

sdrpp 
[27/09/2024 22:25:59.000] [INFO] SDR++ v1.2.0
[27/09/2024 22:25:59.000] [INFO] Loading config
[27/09/2024 22:26:00.000] [INFO] Using OpenGL 3.0
[27/09/2024 22:26:00.000] [INFO] Loading icons
[27/09/2024 22:26:00.000] [INFO] Loading band plans
[27/09/2024 22:26:00.000] [INFO] Loading band plans color table
[27/09/2024 22:26:00.000] [INFO] Loading modules
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/radio.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/pager_decoder.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/hermes_source.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/audio_sink.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/rfspace_source.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/plutosdr_source.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/airspyhf_source.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/sdrplay_source.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/tetra_demodulator.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/rigctl_client.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/meteor_demodulator.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/rtl_tcp_source.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/iq_exporter.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/rtl_sdr_source.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/scanner.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/network_source.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/spectran_http_source.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/spyserver_source.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/recorder.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/file_source.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/discord_integration.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/network_sink.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/frequency_manager.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/audio_source.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/rigctl_server.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/hackrf_source.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/airspy_source.so
[27/09/2024 22:26:00.000] [INFO] Loading /usr/lib/sdrpp/plugins/sdrpp_server_source.so
[27/09/2024 22:26:00.000] [INFO] Initializing Audio Sink (audio_sink)
[27/09/2024 22:26:00.000] [INFO] Initializing File Source (file_source)
[27/09/2024 22:26:00.000] [INFO] Initializing Frequency Manager (frequency_manager)
[27/09/2024 22:26:00.000] [INFO] Initializing RTL-SDR Source (rtl_sdr_source)
[27/09/2024 22:26:00.000] [INFO] Initializing RTL-TCP Source (rtl_tcp_source)
[27/09/2024 22:26:00.000] [INFO] Initializing Radio (radio)
[Resamp] predec: 32, interp: 4, decim: 5, inacc: 0.000000%, taps: 380
[Resamp] predec: 4, interp: 96, decim: 125, inacc: 0.000000%, taps: 9500

RtApiDummy: This class provides no functionality.

[1]    9863 segmentation fault (core dumped)  sdrpp
AlexandreRouma commented 1 month ago

It wasn't followed properly or you didn't have at least pulseaudio or pipewire-pulse instead.

c3kkos commented 1 month ago

I tried to build&install fresh from a new git clone, but it didnt work

i do have pipewire-pulse

sudo apt install pipewire-pulse
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
pipewire-pulse is already the newest version (1.0.7-3~ubuntu24.04).
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
pactl info
Server String: /run/user/1000/pulse/native
Library Protocol Version: 35
Server Protocol Version: 35
Is Local: yes
Client Index: 138
Tile Size: 65472
User Name: c3kkos
Host Name: elite1
Server Name: PulseAudio (on PipeWire 1.0.7)
Server Version: 15.0.0
Default Sample Specification: float32le 2ch 48000Hz
Default Channel Map: front-left,front-right
Default Sink: alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp__sink
Default Source: alsa_input.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp_6__source
Cookie: 5c59:bc72

sudo make uninstall <- in rtaudio src dir and reverting to packaged dev lib fixed the segmentation fault (back to previous setup)

AlexandreRouma commented 1 month ago

Can't help any more than that. it's clearly an rtaudio issue on your specific system so I have no control over it. Open up an issue with them and they might be able to help you.

c3kkos commented 1 month ago

2nd time i tried it worked... i don't know, probably i messed up something..

[27/09/2024 22:52:52.000] [INFO] RtAudio stream open

sorry for that. i do confirm now is all working