From nobody Fri Apr 17 03:17:42 2026 X-Original-To: multimedia@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4fxg756GK1z6bChR for ; Fri, 17 Apr 2026 03:17:53 +0000 (UTC) (envelope-from ml@ft-c.de) Received: from einhorn-mail-out.in-berlin.de (einhorn.in-berlin.de [192.109.42.8]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mail.in-berlin.de", Issuer "R12" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4fxg736WRdz3vYZ for ; Fri, 17 Apr 2026 03:17:51 +0000 (UTC) (envelope-from ml@ft-c.de) Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=pass (mx1.freebsd.org: domain of ml@ft-c.de designates 192.109.42.8 as permitted sender) smtp.mailfrom=ml@ft-c.de X-Envelope-From: ml@ft-c.de X-Envelope-To: Received: from authenticated.user (localhost [127.0.0.1]) by einhorn.in-berlin.de with ESMTPSA id 63H3HgRa1164795 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT) for ; Fri, 17 Apr 2026 05:17:43 +0200 Message-ID: <42f875933b25838c55db82e5dad48d28c70c47a5.camel@ft-c.de> Subject: GStreamer sndio sink fails silently in jails =?UTF-8?Q?=E2=80=93?= no fallback to OSS From: ftimmer Reply-To: ml@ft-c.de To: multimedia@FreeBSD.org Date: Fri, 17 Apr 2026 05:17:42 +0200 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.56.2 FreeBSD GNOME Team List-Id: Multimedia discussions List-Archive: https://lists.freebsd.org/archives/freebsd-multimedia List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-multimedia@FreeBSD.org MIME-Version: 1.0 X-Spamd-Result: default: False [1.22 / 15.00]; NEURAL_SPAM_MEDIUM(1.00)[0.995]; NEURAL_SPAM_LONG(0.41)[0.405]; ONCE_RECEIVED(0.20)[]; R_SPF_ALLOW(-0.20)[+ip4:192.109.42.0/24]; RWL_MAILSPIKE_GOOD(-0.10)[192.109.42.8:from]; MIME_GOOD(-0.10)[text/plain]; NEURAL_SPAM_SHORT(0.02)[0.020]; TO_MATCH_ENVRCPT_ALL(0.00)[]; DMARC_NA(0.00)[ft-c.de]; ARC_NA(0.00)[]; RCVD_TLS_ALL(0.00)[]; MIME_TRACE(0.00)[0:+]; RCPT_COUNT_ONE(0.00)[1]; REPLYTO_DOM_NEQ_TO_DOM(0.00)[]; ASN(0.00)[asn:29670, ipnet:192.109.42.0/24, country:DE]; HAS_REPLYTO(0.00)[ml@ft-c.de]; TO_DN_NONE(0.00)[]; REPLYTO_ADDR_EQ_FROM(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; RCVD_COUNT_ONE(0.00)[1]; PREVIOUSLY_DELIVERED(0.00)[multimedia@freebsd.org]; R_DKIM_NA(0.00)[]; MLMMJ_DEST(0.00)[multimedia@FreeBSD.org]; RCVD_VIA_SMTP_AUTH(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; FROM_HAS_DN(0.00)[] X-Rspamd-Queue-Id: 4fxg736WRdz3vYZ X-Spamd-Bar: + Hello, I would like to report a usability issue with GStreamer's sndio sink in FreeBSD jails. System: FreeBSD 15.0-RELEASE-p1 (amd64) Affected package: audio/gstreamer1-plugins-bad (sndio plugin) ## Problem In a jail without access to the sndio socket (/tmp/sndio/sock0), GStreamer selects GstSndioSink as the default audio sink. Since the socket is not available inside the jail, playback fails with: sink not negotiated ../gst-libs/gst/audio/gstaudiobasesink.c(1193): gst_audio_base_sink_preroll(): GstSndioSink: sink not negotiated. This affects OGG/Vorbis files. Interestingly, MP3 playback works, apparently because it follows a different decoder pipeline that ends up using OSS instead. GStreamer does not fall back to OSS (osssink) automatically when sndio is unavailable. This makes audio completely broken in jails without explicit configuration. ## Workaround The issue can be resolved in two ways: 1. Disable the sndio sink via environment variable: export GST_PLUGIN_FEATURE_RANK=3Dsndiosink:NONE 2. Mount the sndio socket directory into the jail: - Start sndiod on the host (sysrc sndiod_enable=3D"YES") - Mount /tmp/sndio into the jail via nullfs - Add to /etc/jail.conf: exec.prestart +=3D "mkdir -p /path/to/jail/tmp/sndio"; mount +=3D "/tmp/sndio /path/to/jail/tmp/sndio nullfs rw 0 0"; ## Suggestion It would be helpful if GstSndioSink would detect at runtime whether the sndio socket is accessible and fall back to the next available sink if not. I am happy to provide further information or test patches if needed. Best regards Franz