From nobody Fri Apr 17 10:50:53 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 4fxs9z3HxXz6ZXPf for ; Fri, 17 Apr 2026 10:51:03 +0000 (UTC) (envelope-from alex@caoua.org) Received: from arverb.com (arverb.com [116.202.2.230]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA512 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "arverb.com", Issuer "R13" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4fxs9y2lqBz42Qm for ; Fri, 17 Apr 2026 10:51:01 +0000 (UTC) (envelope-from alex@caoua.org) Authentication-Results: mx1.freebsd.org; none DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=default; bh=uzD+9lhIi+s9 skT2t7zSORvRSUHyq6arAYmEvVGQmoA=; h=in-reply-to:references:subject:cc: to:from:date; d=caoua.org; b=sKHbNPkEcV5dBbH0NXBYzlIDa5yozjSsO5M5ESVJx 1qLlFpGRB6plPIzzeVmUtvyXTwg1GcQ0/435Ed2onzWVxKOSNx9k8mdG/dYn5Hq8xpdAym aCX1VRfhfWp7UhRbu936U3a8Fbm6lvoTW1I/EZbJYL6EE/KP/oP1PiyqlNTo= Received: from localhost (arverb.com [local]) by arverb.com (OpenSMTPD) with ESMTPA id 0dce3300; Fri, 17 Apr 2026 12:50:53 +0200 (CEST) Date: Fri, 17 Apr 2026 12:50:53 +0200 From: Alexandre Ratchov To: ftimmer Cc: multimedia@freebsd.org Subject: Re: GStreamer sndio sink fails =?utf-8?Q?s?= =?utf-8?Q?ilently_in_jails_=E2=80=93?= no fallback to OSS Message-ID: References: <42f875933b25838c55db82e5dad48d28c70c47a5.camel@ft-c.de> 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 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <42f875933b25838c55db82e5dad48d28c70c47a5.camel@ft-c.de> X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:24940, ipnet:116.202.0.0/16, country:DE] X-Rspamd-Queue-Id: 4fxs9y2lqBz42Qm X-Spamd-Bar: ---- On Fri, Apr 17, 2026 at 05:17:42AM +0200, ftimmer wrote: > 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=sndiosink:NONE > > 2. Mount the sndio socket directory into the jail: > - Start sndiod on the host (sysrc sndiod_enable="YES") > - Mount /tmp/sndio into the jail via nullfs > - Add to /etc/jail.conf: > exec.prestart += "mkdir -p /path/to/jail/tmp/sndio"; > mount += "/tmp/sndio /path/to/jail/tmp/sndio nullfs rw 0 0"; > The $HOME/.sndio directory is also necessary for the sndio plugin to work, it contains the authentication cookie (similar to X11's one). Do you know how similar client/server plugins work in jails, like, ex. ximagesink ?