Index | Thread | Search

From:
Klemens Nanni <kn@openbsd.org>
Subject:
new multimedia/dms
To:
ports <ports@openbsd.org>
Date:
Sat, 18 Oct 2025 22:39:38 +0000

Download raw body.

Thread
A minidlna alternative in Go that is easy to run and fully IPv6-only capable,
the following works great to stream movies as tested with VLC on an appliance:

	$ rcctl get dms
	dms_class=daemon
	dms_execdir=
	dms_flags=-path /home/media -noTranscode -http [::]:1338
	dms_logger=
	dms_rtable=0
	dms_timeout=30
	dms_user=nobody

	$ fstat -p $(pgrep dms) | grep internet
	nobody   dms         1660    3* internet6 stream tcp 0x0 *:1338
	nobody   dms         1660    7* internet6 dgram udp *:1900
	nobody   dms         1660    8* internet6 dgram udp *:1900


The port fetches/applies two commits from upstream;  I tried using DIST_TUPLE or
GH_* with a commit id instead, but failed to make it work with the go module.

You can find the attached port in openbsd-wip as well.


Feedback? OK?

Information for inst:dms-1.7.2

Comment:
UPnP DLNA server with transcoding

Description:
dms is a UPnP DLNA Digital Media Server. It runs from the terminal, and serves
content directly from the filesystem from the working directory, or the path
given. The SSDP component will broadcast and respond to requests on all
available network interfaces.

dms advertises and serves the raw files, in addition to alternate transcoded
streams when it's able, such as mpeg2 PAL-DVD and WebM for the Chromecast.
It will also provide thumbnails where possible.

dms also supports serving dynamic streams (e.g. a live rtsp stream) generated on
the fly with the help of an external application (e.g. ffmpeg).

dms uses ffprobe/avprobe to get media data such as bitrate and duration,
ffmpeg/avconv for video transoding, and ffmpegthumbnailer for generating
thumbnails when browsing. These commands must be in the PATH given to dms or the
features requiring them will be disabled.

Maintainer: Klemens Nanni <kn@openbsd.org>