Skip to content

Commit

Permalink
[Feature] Extend presets with mixer device and volume control #155 (#156
Browse files Browse the repository at this point in the history
)
  • Loading branch information
GioF71 committed Nov 24, 2022
1 parent 6b3e2b3 commit 4510957
Show file tree
Hide file tree
Showing 3 changed files with 93 additions and 16 deletions.
6 changes: 6 additions & 0 deletions RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,12 @@ There is roughly a release for each entry of the following changelog. Older buil

## Changelog

### 2022-11-25

Date|Feature|Description
:---|:---|:---
2022-11-25|Improvement|Allow mixer device and volume control in presets

### 2022-11-24

Date|Feature|Description
Expand Down
71 changes: 55 additions & 16 deletions app/assets/builtin-presets.conf
Original file line number Diff line number Diff line change
Expand Up @@ -45,37 +45,76 @@ goldilocks_up_to_768k.upsampling=v::4:28:95:105:45
# DACs

## Generic
dac.device="hw:CARD=DAC,DEV=0"
x20.device="hw:CARD=x20,DEV=0"
dac.device="hw:CARD=DAC"
x20.device="hw:CARD=x20"

## Actual DACs
aune-s6.device="hw:CARD=DAC,DEV=0"

aune-x1s.device="hw:CARD=DAC,DEV=0"
# Aune S6
aune-s6-sw.device="hw:CARD=DAC"

fiio-e18.device="hw:CARD=DACE18,DEV=0"
# Aune S6 Hardware volume
aune-s6.device="hw:CARD=DAC"
aune-s6.mixer-device="hw:CARD=DAC"
aune-s6.volume-control="S6 USB DAC Output"

gustard-u12.device="hw:CARD=x20,DEV=0"
# Aune X1S
aune-x1s.device="hw:CARD=DAC"

gustard-x12.device="hw:CARD=x20,DEV=0"
# FiiO E18
fiio-e18.device="hw:CARD=DACE18"

gustard-x12-goldilocks.device="hw:CARD=x20,DEV=0"
# Gustard U12
gustard-u12-sw.device="hw:CARD=x20"

# Gustard U12 Hardware volume
gustard-u12.device="hw:CARD=x20"
gustard-u12.mixer-device="hw:CARD=x20"
gustard-u12.volume-control="xCORE USB Audio 2.0 Output"

# Gustard X12
gustard-x12-sw.device="hw:CARD=x20"

# Gustard X12 Hardware volume
gustard-x12.device="hw:CARD=x20"
gustard-x12.mixer-device="hw:CARD=x20"
gustard-x12.volume-control="xCORE USB Audio 2.0 Output"

# Gustard X12 Hardware volume Goldilocks
gustard-x12-goldilocks.device="hw:CARD=x20"
gustard-x12-goldilocks.mixer-device="hw:CARD=x20"
gustard-x12-goldilocks.volume-control="xCORE USB Audio 2.0 Output"
gustard-x12-goldilocks.rates=44100-384000:200
gustard-x12-goldilocks.upsampling=v::4:28:95:105:45

gustard-x16.device="hw:CARD=G20,DEV=0"
# Gustard X16
gustard-x16.device="hw:CARD=G20"

hifiberry-dac-plus.device="hw:CARD=sndrpihifiberry"

# Ifi Zen DAC
ifi-zen-dac.device="hw:CARD=Audio"

hifiberry-dac-plus.device="hw:CARD=sndrpihifiberry,DEV=0"
# Peachtree DAC-It
peachtree-dacit.device="hw:CARD=DAC"

ifi-zen-dac.device="hw:CARD=Audio,DEV=0"
# Raspberry PI Headphone
pi-headphones.device="hw:CARD=Headphones"

peachtree-dacit.device="hw:CARD=DAC,DEV=0"
# Topping D10
topping-d10-sw.device="hw:CARD=D10"

pi-headphones.device="hw:CARD=Headphones,DEV=0"
# Topping D10 Hardware volume
topping-d10.device="hw:CARD=D10"
topping-d10.mixer-device="hw:CARD=D10"
topping-d10.volume-control="D10 "

topping-d10.device="hw:CARD=D10,DEV=0"
# Topping DX-5
topping-dx5.device="hw:CARD=DX5"

topping-dx5.device="hw:CARD=DX5,DEV=0"
# Topping E30
topping-dx5.device="hw:CARD=E30"

yulong-d200.device="hw:CARD=DAC,DEV=0"
# Yulong D200
yulong-d200.device="hw:CARD=DAC"

32 changes: 32 additions & 0 deletions app/bin/run-squeezelite-alsa.sh
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,10 @@ else
echo "Current SQUEEZELITE_AUDIO_DEVICE = $SQUEEZELITE_AUDIO_DEVICE"
echo "Current SQUEEZELITE_RATES = $SQUEEZELITE_RATES"
echo "Current SQUEEZELITE_UPSAMPLING = $SQUEEZELITE_UPSAMPLING"
echo "Current SQUEEZELITE_CODECS = $SQUEEZELITE_CODECS"
echo "Current SQUEEZELITE_EXCLUDE_CODECS = $SQUEEZELITE_EXCLUDE_CODECS"
echo "Current SQUEEZELITE_MIXER_DEVICE = $SQUEEZELITE_MIXER_DEVICE"
echo "Current SQUEEZELITE_VOLUME_CONTROL = $SQUEEZELITE_VOLUME_CONTROL"

OLD_IFS=$IFS
IFS=',';
Expand All @@ -48,6 +52,32 @@ else
else
echo "SQUEEZELITE_AUDIO_DEVICE already set to ["$SQUEEZELITE_AUDIO_DEVICE"]"
fi
# mixer-device in preset
if [[ -z "${SQUEEZELITE_MIXER_DEVICE}" || "${SQUEEZELITE_MIXER_DEVICE}" == "default" ]]; then
current_key=$current_preset".mixer-device"
current_value=${presets[${current_key}]}
if [[ -v current_value ]]; then
echo "Setting SQUEEZELITE_MIXER_DEVICE to ["$current_value"]"
SQUEEZELITE_MIXER_DEVICE=$current_value
else
echo "Key ["$current_key"] not found"
fi
else
echo "SQUEEZELITE_MIXER_DEVICE already set to ["$SQUEEZELITE_MIXER_DEVICE"]"
fi
# volume-control in preset
if [[ -z "${SQUEEZELITE_VOLUME_CONTROL}" || "${SQUEEZELITE_VOLUME_CONTROL}" == "default" ]]; then
current_key=$current_preset".volume-control"
current_value=${presets[${current_key}]}
if [[ -v current_value ]]; then
echo "Setting SQUEEZELITE_VOLUME_CONTROL to ["$current_value"]"
SQUEEZELITE_VOLUME_CONTROL=$current_value
else
echo "Key ["$current_key"] not found"
fi
else
echo "SQUEEZELITE_VOLUME_CONTROL already set to ["$SQUEEZELITE_VOLUME_CONTROL"]"
fi
# rates in preset
if [[ -z "${SQUEEZELITE_RATES}" || "${SQUEEZELITE_RATES}" == "" ]]; then
current_key=$current_preset".rates"
Expand Down Expand Up @@ -112,6 +142,8 @@ else
echo "Final SQUEEZELITE_UPSAMPLING = $SQUEEZELITE_UPSAMPLING"
echo "Final SQUEEZELITE_CODECS = $SQUEEZELITE_CODECS"
echo "Final SQUEEZELITE_EXCLUDE_CODECS = $SQUEEZELITE_EXCLUDE_CODECS"
echo "Final SQUEEZELITE_MIXER_DEVICE = $SQUEEZELITE_MIXER_DEVICE"
echo "Final SQUEEZELITE_VOLUME_CONTROL = $SQUEEZELITE_VOLUME_CONTROL"
fi

cmdline-server-port
Expand Down

0 comments on commit 4510957

Please sign in to comment.