Commit Graph

1028 Commits

Author SHA1 Message Date
Martin Pulec
cefae84362 soundfont lookup (sdl,fluidsynth): fix dfl sf3 path
default path for default-GM.sf3 is in /sf3 subdir, not /sf2
2025-08-27 14:09:36 +02:00
Martin Pulec
e9d6d6bd2f acap/fluidsynth: refuse unsupported ch_count/bps 2025-08-27 09:03:17 +02:00
Martin Pulec
d010528335 acap/fluidsynth: use usleep
+ remove todo in sdl3
+ add deprecate to sdl_mixer
2025-08-27 09:00:21 +02:00
Martin Pulec
9a738c906c add acap/fluidsynth
To replace sdl3_mixer that does no longer support MIDI playback, thus
unusable for our use case.

- song1 needs to be static included potentially from 2 compilation units -
this and sdl_mixer
2025-08-27 09:00:19 +02:00
Martin Pulec
755ee5158d IWYU some more files 2025-08-25 14:28:56 +02:00
Martin Pulec
d75951dd41 IWYU some more files 2025-08-25 14:16:38 +02:00
Martin Piatka
b42ff25d72 acap/pipewire: Fix help text 2025-08-18 10:05:05 +02:00
Martin Pulec
ec90eb0468 fix hd-rum-transcode crash
crashes since the commit ab5d2a5ca (2025-06-17)

That commit started to enforce existence of control socket, which is
not true in case of the reflector.

fixes ab5d2a5ca

closes GH-461
2025-08-13 09:04:53 +02:00
Martin Pulec
d3179770d9 add missing includes 2025-08-12 12:24:59 +02:00
Martin Pulec
c725630e1c acap/{none,sdi}: IWYU 2025-08-11 08:59:54 +02:00
Martin Pulec
f660857e61 sdl3_mixer: improve the channel warn
- use LOG_LEVEL_WARNING
- reformulate the message a bit better
2025-06-26 11:22:19 +02:00
Martin Pulec
ab5d2a5cac control_socket acquire: get the pointer from priv_data
Do not assume that (struct module) is first in the (struct control_state)
anymore in particular and in any structure in general.
2025-06-18 08:49:44 +02:00
Martin Pulec
99588ababe remove module.deleter 2025-06-17 12:35:38 +02:00
Martin Pulec
497d6f5b17 fix other occurences of missing NL 2025-06-17 11:37:30 +02:00
Martin Pulec
32b1ff43c8 poraudio_common: error: print non-valid index
+ add missing NL
2025-06-17 11:37:29 +02:00
Martin Pulec
227c6d1e01 acap,aplay/portaudio: print index hint just if numeric
If given by name, the info was that the invalid index was -2, which is
an internal value. The message that a device with given name could not
have been found is already printed.
2025-06-04 15:42:18 +02:00
Martin Pulec
d21c44c737 portaudio: allow also case insensitive substr 2025-06-04 15:42:16 +02:00
Martin Pulec
3080fe33ba portaudio: add examples 2025-06-04 14:38:21 +02:00
Martin Pulec
e2d98a250f portaudio_select_device_by_name: improve selection
return available device in this order:
1. exact match; if not found, then:
2. prefix match; if not found, then:
3. any substr match
2025-06-04 14:11:02 +02:00
Martin Pulec
90e1dce1f6 portaudio: selection by name - filter out unusable
do not return not usable deviecs - eg. "Microsoft Sound Mapper" doesn't
return "Microsoft Sound Mapper - Input" device if playback wanted but
"- Output" one.
2025-06-04 14:10:59 +02:00
Martin Pulec
963934ef10 portaudio help: print only relevant ch direction
for capture, print just max available input channels (and vice versa)

print both in fullhelp
2025-06-04 12:42:02 +02:00
Martin Pulec
edfee4c032 portaudio: dev listening - more compact details
In the device names, there are often too much text so reduce the text
added in order to improve readability.
2025-06-04 12:05:42 +02:00
Ben Roeder
a62fe80c3f Fix spelling errors throughout codebase
Corrected various spelling mistakes in comments, documentation, and
variable names across the project. Changes include:
- Documentation files (CONTRIBUTING.md, README.md, etc.)
- Source code comments in C/C++ files
- Function parameter names and descriptions

No functional changes were made.
2025-06-01 18:03:40 +01:00
Martin Pulec
af2981758b coreaudio: add alloc assertions 2025-05-07 10:13:06 +02:00
Martin Pulec
0bc1215c7f acap/coreaudio: fix outputting empty frames
a race condition

Prior to e511f898 (2024-11-14) and still in the stable branch, it
produces:
[Audio decompress] 2 empty channel(s) returned!
2025-05-05 13:54:00 +02:00
Martin Pulec
02841a2ba7 wasapi: show IDs only in fullhelp
the IDs shlighlyt mess up the output and may not be necessary needed to
use (name is also an option now if user wants stable identifier)
2025-04-17 15:50:35 +02:00
Martin Pulec
264292415a acap/wasapi: take FriendlyName UUID from header 2025-04-17 15:50:35 +02:00
Martin Pulec
d33d923c98 aplay/wasapi: use get_name from acap
+ rename the fn
2025-04-17 15:50:35 +02:00
Martin Pulec
adf39939fe acap,aplay/wasapi: prefer dev name with d= 2025-04-17 15:50:35 +02:00
Martin Pulec
ce140867ed aplay/wasapi: move parsing to sep fn 2025-04-17 15:50:35 +02:00
Martin Pulec
a2c4afc8bd acap/wasapi: move parsing to sep fn 2025-04-17 15:50:33 +02:00
Martin Pulec
fb3e152c2c aplay/wasapi: allow specification by name 2025-04-17 15:50:10 +02:00
Martin Pulec
6e32acc6c3 acap/wasapi: allow dev selection by name 2025-04-17 15:50:09 +02:00
Martin Pulec
34668eb6ee acap/jack: fix CID 480385
an overflow
2025-04-16 12:47:22 +02:00
Martin Pulec
f9fa06c9ab acap/sdl_mixer: fix some leaks when init fails
- leaked Mix_Music (always)
- leaked req_filename when init fails (CID 472141)
2025-04-16 12:47:20 +02:00
Martin Piatka
7138a52881 aplay/pipewire: Set buffer frame count
This is optional and doesn't do anything by itself, but it's returned by
pipwire to the application in the pw_time struct as 'queued'.
2025-04-15 13:21:35 +02:00
Martin Piatka
b3b18f9175 aplay/pipewire: Prevent underruns by writing silence
This makes sure that pipewire always gets a steady stream of samples,
even when we're not receiving anything. This prevents the error count in
pw-top skyrocketing when the sender stops sending.
2025-04-15 13:21:29 +02:00
Martin Pulec
ce0eff8f20 acap/jack: print help early
fixes a leak with CID 472122

also avoid using alloca
2025-04-15 10:36:56 +02:00
Martin Pulec
e8ae7ebfcd jack: query the devices after help
Evantual error messages from audio_jack_probe will be better aligned
after the available devices line.
2025-04-15 10:36:08 +02:00
Martin Pulec
b278ecefbf aplay/jack: print the help even if no ports found
Even if no devices were found, print the help and empty list of
devices. Without that, it would be missleading because the help shows
nothing.

Print the empty list ("Available deviviecs:" with nothing) also for
acap/jack to make clear that there are actually no devices.

improves 8597f39b
2025-04-15 10:27:20 +02:00
Martin Pulec
dc102f7b27 aplay/jack: print help early
to avoid a leak as pointed by CID 472111
2025-04-15 10:08:18 +02:00
Martin Pulec
46ecc5ebda avoid use of strdupa 2025-04-14 15:44:10 +02:00
Martin Pulec
291e8fbf67 aplay/jack: fix CID 472186
a leak on error - call rather the _done function than custom clean-up
2025-04-11 14:50:17 +02:00
Martin Pulec
403a751c5c audio/types: IWYU 2025-04-10 16:16:54 +02:00
Martin Pulec
eea61b2604 audio_frame2::change_ch_count: fix CID 480257
the behavior is now very slightly modified but effectively the same,
eg. change 1 to 3 channels copies now channel 0 to 1 and then 1 to 2
(before it copies 0 to both 1 and 2).
2025-04-10 16:16:53 +02:00
Martin Piatka
d3258a1606 aplay/pipewire: Drop log priority of stream state change 2025-04-08 13:13:15 +02:00
Martin Piatka
feb0790977 aplay/pipewire: Report playback latency 2025-04-08 13:13:15 +02:00
Martin Pulec
39554640f9 sdl_mixer (3): if mono requested, capture stereo
Workaround for SDL3 mixer, that doesn't respect selected ch_count=1 now.

Reduced the channel count later in audio stack (this will work for other
acaps as well).
2025-04-01 14:02:31 +02:00
Martin Pulec
85679c4fad sdl3: add errata + Vulkan warning 2025-04-01 14:02:30 +02:00
Martin Pulec
10059f9e71 mixer+ttf compat with SDL3 2025-04-01 14:02:27 +02:00