archive
This commit is contained in:
92
mpd-ympd-proxy-pause/scratch/mpd-ympd
Executable file
92
mpd-ympd-proxy-pause/scratch/mpd-ympd
Executable file
@@ -0,0 +1,92 @@
|
||||
#! /bin/bash
|
||||
set -u
|
||||
set -e
|
||||
name="$(basename ${BASH_SOURCE})"
|
||||
dir="$(dirname $(realpath ${BASH_SOURCE}))"
|
||||
mntme="$dir/$name-mnt"
|
||||
|
||||
mkdir -p $mntme
|
||||
chmod -R 777 $mntme || true
|
||||
|
||||
docker rm -f \
|
||||
mpd \
|
||||
ympd \
|
||||
rompr \
|
||||
icecast \
|
||||
|| true
|
||||
|
||||
# network
|
||||
docker network create mpdnet || true
|
||||
|
||||
# MPD // server
|
||||
mkdir -p $mntme/mpd/{playlists,db}
|
||||
touch $mntme/mpd/{conf,state}
|
||||
if [ ! -e $mntme/mpd/media ]; then
|
||||
ln -s /volume1/video/Bel/Podcast $mntme/mpd/media
|
||||
fi
|
||||
sudo docker run -d \
|
||||
--restart=unless-stopped \
|
||||
--name=mpd \
|
||||
--network=mpdnet \
|
||||
--net-alias mpd \
|
||||
--net-alias mpd.mpd \
|
||||
-v $mntme/mpd/conf:/etc/mpd.conf \
|
||||
-v $mntme/mpd/state:/state \
|
||||
-v $mntme/mpd/playlists:/playlists \
|
||||
-v $mntme/mpd/media:/media \
|
||||
-v $mntme/mpd/db:/db \
|
||||
-p 6600:6600 \
|
||||
-p 6501-6510:6501-6510 \
|
||||
-p 8000:8000 \
|
||||
vimagick/mpd
|
||||
|
||||
|
||||
sleep 2
|
||||
for cmd in update "consume 1" clear "load RESTORE" play pause; do
|
||||
docker exec -i mpd mpc $cmd
|
||||
done
|
||||
|
||||
# YMPD // remote
|
||||
sudo docker run -d \
|
||||
--restart=unless-stopped \
|
||||
--name=ympd \
|
||||
--network=mpdnet \
|
||||
--net-alias ympd \
|
||||
-p 4041:8080 \
|
||||
vitiman/alpine-ympd
|
||||
|
||||
# rompr // remote
|
||||
#sudo docker run -d \
|
||||
# --restart=unless-stopped \
|
||||
# --name=rompr \
|
||||
# --network=mpdnet \
|
||||
# --net-alias rompr \
|
||||
# -p 4042:80 \
|
||||
# rawdlite/rompr
|
||||
|
||||
# icecast // remote+player
|
||||
#sudo docker run -d \
|
||||
# --restart=unless-stopped \
|
||||
# --name=icecast \
|
||||
# --network=mpdnet \
|
||||
# --net-alias icecast \
|
||||
# -p 8000:8000 \
|
||||
# vitiman/alpine-icecast
|
||||
|
||||
# rompr // remote
|
||||
|
||||
docker exec -i mpd apk add --no-cache fcron
|
||||
docker exec -i mpd mkdir -p /etc/periodic/15min || true
|
||||
echo '
|
||||
#! /bin/sh
|
||||
mpc rm RESTORE
|
||||
mpc save RESTORE
|
||||
echo "Done: $(date)" >> /var/log/mpd_save
|
||||
' | docker exec -i mpd sh -c 'cat > /mpd_save.sh'
|
||||
echo '
|
||||
*/25 * * * * sh /mpd_save.sh
|
||||
' | docker exec -i mpd sh -c 'cat > /save_cron'
|
||||
docker exec -i mpd chmod +x /mpd_save.sh
|
||||
docker exec -i mpd crond
|
||||
docker exec -i mpd crontab /save_cron
|
||||
echo DONE
|
||||
52
mpd-ympd-proxy-pause/scratch/mpd-ympd-conf
Executable file
52
mpd-ympd-proxy-pause/scratch/mpd-ympd-conf
Executable file
@@ -0,0 +1,52 @@
|
||||
db_file "/db/database"
|
||||
|
||||
music_directory "/media"
|
||||
playlist_directory "/playlists"
|
||||
state_file "/state"
|
||||
auto_update "yes"
|
||||
|
||||
#audio_output {
|
||||
# type "httpd"
|
||||
# name "Mpd_Ogg"
|
||||
# encoder "vorbis" # optional, vorbis or lame
|
||||
# port "6501"
|
||||
# #quality "5.0" # do not define if bitrate is defined
|
||||
# bitrate "128"
|
||||
# max_clients "0" # optional 0=no limit
|
||||
#}
|
||||
|
||||
audio_output {
|
||||
type "httpd"
|
||||
name "Mpd_Lame"
|
||||
encoder "lame"
|
||||
port "8000"
|
||||
bitrate "128"
|
||||
format "44100:16:1"
|
||||
max_clients "0"
|
||||
bind_to_address "0.0.0.0"
|
||||
}
|
||||
|
||||
#
|
||||
#audio_output {
|
||||
# type "httpd"
|
||||
# name "Mpd_Wav"
|
||||
# encoder "wave"
|
||||
# port "6502"
|
||||
#}
|
||||
#
|
||||
#audio_output {
|
||||
# type "httpd"
|
||||
# name "Mpd_Flac"
|
||||
# encoder "flac"
|
||||
# port "6503"
|
||||
# format "44100:16:2"
|
||||
#}
|
||||
|
||||
#audio_output {
|
||||
# type "httpd"
|
||||
# name "Mpd_Lame"
|
||||
# encoder "lame"
|
||||
# port "6504"
|
||||
# bitrate "128"
|
||||
#}
|
||||
|
||||
Reference in New Issue
Block a user