बेशक एप्लेट का उपयोग करके उपकरणों को बदलना भी ठीक काम कर रहा है। लेकिन स्क्रिप्ट लिखने के बारे में अच्छी बात यह है कि यह सुपर फास्ट है। मैंने कुंजीपटल शॉर्टकट alt + s पर उदाहरण के लिए मेरा डाला। इस प्रकार जब मैं हेडफ़ोन से स्पीकरों पर स्विच करना चाहता हूं, तो मुझे केवल alt + s दबाना होगा।
वैसे भी। एंड्रयू ने कहा:
यदि आपके पास दो से अधिक ऑडियो डिवाइस हैं और एक अलग से स्वैप करना चाहते हैं, तो आपको लाइन 7 पर तर्क को कुछ शर्तों के साथ बदलना होगा।
वही मैंने किया। अगर किसी को इससे परेशानी होती है तो मैं इसे साझा करता हूं:
#!/usr/bin/env bash
#sinks=($(pacmd list-sinks | grep index | \
# awk '{ if ($1 == "*") print "1",$3; else print "0",$2 }'))
sinks=($(pacmd list-sinks | grep index | \
awk '{ if ($1 == "*") print "1"; else print "0" }'))
inputs=($(pacmd list-sink-inputs | grep index | awk '{print $2}'))
#find active sink
active=0
for i in ${sinks[*]}
do
if [ $i -eq 0 ]
then active=$((active+1))
else break
fi
done
#switch to next sink
swap=$(((active+1)%${#sinks[@]}))
pacmd set-default-sink $swap &> /dev/null
for i in ${inputs[*]}; do pacmd move-sink-input $i $swap &> /dev/null; done
मैंने जो कुछ अलग किया है वह क) लूप के लिए सक्रिय सिंक है। और बी) 1. द्वारा सूचकांक में वृद्धि करके अगले सिंक पर स्विच करें। फिर मैं सिंक की संख्या से परिणाम को मापता हूं। यह विश्वास दिलाता है कि जब 3 डूब रहा है, (2 + 1)% 3 = 0। इस प्रकार सिंक इंडेक्स 2 से हम इंडेक्स 0 पर स्विच करेंगे।
इस तरह स्विच उपलब्ध सिंक के माध्यम से ऊपर की ओर बढ़ने की अनुमति देता है।