--- a/mpd2src/scmakempdsender
+++ b/mpd2src/scmakempdsender
@@ -40,18 +40,19 @@
uxsender = "mpd2sc"
def usage(f):
- print("Usage: scmakempdsender [-h] [-f friendlyname] [-p mpdport] [-u]",
+ print("Usage: scmakempdsender [-h] [-f friendlyname] [-p mpdport] [-u] [-e]",
file=f)
sys.exit(1)
upmpdclitoo = False
mpdport = 6700
+externalvolume = False
# Upmpdcli friendly-name. Used to compute a Uuid in conjunction with
# the node name
upmpdcli_fname = "UpMpd"
args = sys.argv[1:]
-opts, args = getopt.getopt(args, "hup:f:")
+opts, args = getopt.getopt(args, "hup:f:e")
for opt, arg in opts:
if opt in ['-h']:
usage(sys.stdout)
@@ -61,6 +62,8 @@
mpdport = int(arg)
elif opt in ['-u']:
upmpdclitoo = True
+ elif opt in ['-e']:
+ externalvolume = True
else:
print("unknown option %s\n"%opt, file=sys.stderr)
usage(sys.stderr)
@@ -111,6 +114,11 @@
signal.signal(signal.SIGTERM, sighandler)
# MPD configuration in temporary file
+if externalvolume:
+ mixertype = 'null'
+else:
+ mixertype = 'software
+
mpdconf_template='''
bind_to_address "localhost"
port "%d"
@@ -124,9 +132,9 @@
path "%s"
format "44100:16:2"
}
-mixer_type "software"
+mixer_type "%s"
'''
-print(mpdconf_template % (mpdport, mpdfifo), file = mpdconf)
+print(mpdconf_template % (mpdport, mpdfifo, mixertype), file = mpdconf)
mpdconf.flush()