.\" Man page for minidlna.conf
.\"
.\" This man page is based on the comments in the default configuration file
.\" shipped with the minidlna source. Consequently, it is licensed under the
.\" GPLv2.
.\"
.\" Copyright (C) 2009 Justin Maggard <jmaggard@users.sourceforge.net>
.\" Copyright (C) 2010-2013 BenoƮt Knecht <benoit.knecht@fsfe.org>
.\"
.\"    This package is free software; you can redistribute it and/or modify
.\"    it under the terms of the GNU General Public License version 2 as
.\"    published by the Free Software Foundation.
.\"
.\"    This package is distributed in the hope that it will be useful,
.\"    but WITHOUT ANY WARRANTY; without even the implied warranty of
.\"    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
.\"    GNU General Public License for more details.
.\"
.\"    You should have received a copy of the GNU General Public License
.\"    along with this program. If not, see <http://www.gnu.org/licenses/>
.\"
.\" On Debian systems, the complete text of the GNU General
.\" Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
.Dd June 7, 2013
.Dt MINIDLNA.CONF \&5 "File Formats Manual"
.Os Debian
.Sh NAME
.Nm minidlna.conf
.Nd MiniDLNA server configuration file
.Sh SYNOPSIS
.Nm /etc/minidlna.conf
.Sh DESCRIPTION
.Xr minidlnad 1
reads configuration options from the system-wide configuration file
.Pa /etc/minidlna.conf ,
or the file specified with
.Fl f
on the command line. The file contains keyword-argument pairs, one per line.
Lines starting with
.Ql #
and empty lines are interpreted as comments.
.Pp
The possible
keywords and their meanings are as follows:
.Bl -tag -width Ds
.It Cm album_art_names
List of filenames to check for when searching for album art cache, separated by
forward slashes
.Pq Ql / .
This option can be specified more than once.
.It Cm db_dir
Path to the directory
.Nm minidlnad
should use to store its database and album art cache. Uses
.Pa /var/lib/minidlna
by default.
.It Cm enable_tivo
Support for streaming .jpg and .mp3 files to a TiVo supporting HMO. Set to
.Dq yes
to enable support for streaming JPEG and mp3 files to a TiVo supporting HMO.
Set to
.Dq no
(default) otherwise.
.It Cm friendly_name
Customize the name that the
.Nm minidlnad
server sends to clients. Defaults to
.Dq hostname:\ username .
.It Cm force_sort_criteria
Always set SortCriteria to this value, regardless of the SortCriteria passed by the clien
t. ( E.g. force_sort_criteria=+upnp:class,+upnp:originalTrackNumber,+dc:title )
.It Cm inotify
Set to
.Dq yes
to enable inotify monitoring of the files under
.Cm media_dir
to automatically discover new files. Set to
.Dq no
to disable inotify.
.It Cm network_interface
Comma separated list of network interfaces to bind to. Default is empty which means bind to all.
.It Cm log_dir
Path to the directory where the log file should be stored. Defaults to
.Pa /var/log/minidlna .
.It Cm log_level
Defines the type of messages that should be logged, and down to which level of
importance they should be considered.
.Pp
The possible types are
.Dq artwork ,
.Dq database ,
.Dq general ,
.Dq http ,
.Dq inotify ,
.Dq metadata ,
.Dq scanner ,
.Dq ssdp
and
.Dq tivo .
.Pp
The levels are
.Dq off ,
.Dq fatal ,
.Dq error ,
.Dq warn ,
.Dq info
and
.Dq debug ,
listed here in order of decreasing importance.
.Dq off
turns off logging messages entirely,
.Dq fatal
logs the most critical messages only, and so on down to
.Dq debug
that logs every single messages.
.Pp
The types are comma-separated, followed by an equal sign
.Pq Ql = ,
followed by a level that applies to the preceding types. This can be repeated,
separating each of these constructs with a comma.
.Pp
Defaults to
.Dq general,\:artwork,\:database,\:inotify,\:scanner,\:metadata,\:http,\:\
ssdp,\:tivo=warn
which logs every type of message at the
.Dq warn
level.
.It Cm max_connections
Specify maximum number of simultaneous connections. Note: many clients open several simultaneous connections while streaming.
.It Cm media_dir
Path to the directory containing the media files the
.Nm minidlnad
server should share. Use this option several times if you have more than one
directory to share. To restrict a path to one specific media type, you can use
the following syntax: the letter
.Ql A ,
.Ql V
or
.Ql P ,
followed by a comma
.Pq Ql \&,
followed by the path. The meaning of the first letter is as follows:
.Bl -bullet -offset indent -compact
.It
.Ql A
for audio files;
.It
.Ql V
for video files;
.It
.Ql P
for image files.
.El
.Lp
For example, if you want to include only video files located
in /srv/multimedia/videos directory, and only music
in /srv/multimedia/music, then you would use
       media_dir=V,/srv/multimedia/videos
       media_dir=A,/srv/multimedia/music
.Lp
Another example would be
       media_dir=V,/srv/multimedia/videos
       media_dir=V,/srv/multimedia/movies
       media_dir=A,/srv/multimedia/music
.Lp
Or, if you did not care what type it finds, then you could use
       media_dir=/srv/multimedia/videos
       media_dir=/srv/multimedia/movies
       media_dir=/srv/multimedia/music
.Lp
You can mix it up, find anything in music, but only Videos, in videos and movies
       media_dir=V,/srv/multimedia/videos
       media_dir=V,/srv/multimedia/movies
       media_dir=/srv/multimedia/music
.fi
.It Cm merge_media_dirs
Merge all media_dir base contents into the root container. The default value is no.
.It Cm minissdpdsocket
Path to the MiniSSDPd socket, if you want to use
.Nm minidlnad
together with MiniSSDPd. Defaults to
.Pa /run/minissdpd.sock .
.It Cm model_name
Set the model name reported to clients.
Defaults to
.Dq Windows Media Connect compatible (MiniDLNA) .
.It Cm model_number
Set the model number reported to clients. Defaults to the version number of
.Nm minidlnad .
.It Cm network_interface
Network interface(s) to bind to
.Pq e.g. eth0 ,
comma delimited. This option can be specified more than once. If unspecified or empty,
.Nm minidlnad
binds to all the valid network interfaces
.Pq except loopback .
.It Cm notify_interval
Set the notify interval, in seconds. The default is 895 seconds.
.It Cm port
Port number for HTTP traffic
.Pq descriptions, SOAP, media transfe .
This option is mandatory, unless the port number is specified on the
command-line using
.Fl p Pq see Xr minidlnad 1 .
.It Cm presentation_url
Define the URL presented to clients
.Pq e.g. Dq http://example.com:80 .
The default is
.Ql / .
.It Cm root_container
Use a different container as the root of the tree exposed to clients. The
possible values 
.Bl -bullet -offset indent -compact
.It
.Ql \&.
to use the standard container (this is the default);
.It
.Ql B
to use the
.Dq Browse Directory
container;
.It
.Ql M
to use the
.Dq Music
container;
.It
.Ql V
to use the
.Dq Video
container;
.It
.Ql P
to use the
.Dq Pictures
container.
.El
If you specify
.Ql B
and the client device is audio only, then
.Dq Music/Folders
will be used as the root container.
.It Cm serial
Set the serial number reported to clients. Defaults to MAC address od network interface.
.It Cm strict_dlna
Set to
.Dq yes
to strictly adhere to DLNA standards. This will allow server-side downscaling
of very large JPEG images, which may hurt JPEG serving performance on (at
least) Sony DLNA products. Set to
.Dq no
otherwise.
.It Cm tivo_discovery
Which method to use for registering in TiVo. By default
.Dq bonjour
is used. You can switch to legacy
.Dq beacon
method.
.It Cm user
Specify the user name or UID to run as. Beware that if you are using an init system to start
.Nm minidlnad ,
then this option has no effect and you should override default user in
.Pa minidlna.service
for systemd or set
.Ev USER
in
.Pa /etc/default/minidlna
for sysV init.
.It Cm uuid
Specify device's UPnP UUID minidlna should use. By default MAC address is used to build uniq UUID.
.It Cm wide_links
Set to
.Dq yes
to allow symlinks that point outside user-defined
.Cm media_dir.
By default, wide symlinks are not followed.
.El
.Sh FILES
.Bl -tag -width Ds
.It Pa /etc/minidlna.conf
System-wide default configuration file.
.El
.Sh SEE ALSO
.Xr minidlnad 1