Hello OpenBSD Community,
I wanted to shoot a mail to this mailing list just to share how I
managed to share audio through Pulseaudio -> SNDIO in a simple vmd(8)
architecture.
These two tutorials work perfectly, from The OpenBSD Guy, in order:
1. Run X11/GUI apps seamlessly on OpenBSD VMM with Xephyr <- Which talks
about installing Debian.
2. Adding audio support to VMM: play Spotify with ease on OpenBSD!
Now, there were were two small issues I had:
1. Tried to install Archlinux, ensuring I use vmctl -L, now the VMM in
place didn't had said interface configured.
For this case, I reached for help on IRC, and so the latest release code
didn't behave too well with newer Kernels, now there was a fix for this
in current, so this error may not appear after. I'm still not confident
about source running and the doc mentions I should be before going on
and running current, so for this one I just installed Debian without
issues instead.
2. Followed the full procedure of adding the audio support, now, when
attempting to install the pulseaudio-module-sndio, I got:
Module "module-sndio" version (0.0) doesn't match the expected version
(17.0).
I went a full on investigation on how to pass the data withot this
module, now in my head now (please correct me if I am wrong), in the
client system I must specify:
On the local system, configure your program to use snd@hostname/0
Now, I'm not sure if this refers to that I need to have any type of
sound server still on the Debian. And in case it worked, I was trying to
run firefox, which doesn't have sndio support on Debian by default. So
the idea was to still pipe everything that pulseaudio attempts to run
and pass it to sndio. My only option was to use the module.
So I couldn't find any other examples on running Pulseaudio -> sndio
remotely. Finally I went up and:
diff --git a/Makefile b/Makefile
index 8d7a2de..eda6d9a 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
MKDIR?= mkdir -p
PKGCONF?= pkg-config
-INSTALL_LIB?= install -s -m 444
+INSTALL_LIB?= install -m 444
DESTDIR?=
PULSE_VERSION!= ${PKGCONF} --modversion libpulse | cut -d. -f 1-2
PULSE_LIBDIR?= `${PKGCONF} --variable=libdir libpulse`
diff --git a/module-sndio.c b/module-sndio.c
index 2f7cd4e..6f1ea3e 100644
--- a/module-sndio.c
+++ b/module-sndio.c
@@ -46,7 +46,7 @@
PA_MODULE_AUTHOR("Eric Faurot");
PA_MODULE_DESCRIPTION("OpenBSD sndio sink");
-PA_MODULE_VERSION("0.0");
+PA_MODULE_VERSION("17.0");
PA_MODULE_LOAD_ONCE(false);
PA_MODULE_USAGE(
"sink_name=<name for the sink> "
Which for me was what fixed everything after running:
make clean
make
make install
After this, I had the exact same lines in my /etc/default.pa, yet got:
Failed to parse sample specification or channel map
Failed to load module "module-sndio" (argument: "device=snd@100.64.1.2/0 playback=true record=false"): initialization failed.
So finally, this is what made my pulseaudio finally work:
load-module module-sndio sink_name=sndio device="snd@100.64.1.2/1" playback=true record=false format=s16le rate=48000 channels=2 channel_map=front-left,front-right
set-default-sink sndio-sink
With this, I can open any GUI application I may need through Xephyr, and
also route audio even.
I hope this info helps anyone on the same path on using VMCTL!.
No comments:
Post a Comment