ठीक है, तो आपको इसके लिए कुछ चीजें करने की आवश्यकता होगी:
- पता लगाएं कि हेडफ़ोन अनप्लग कब हैं;
- (1) में घटना के बाद, वीएलसी को "ठहराव" कमांड भेजें;
- पता लगाएं कि कब हेडफ़ोन वापस प्लग इन किया गया है;
- में घटना (3) के बाद, वीएलसी को "प्ले" कमांड भेजें;
के लिए (1) और (3): आप यहाँ दिखाए गए का उपयोग कर सकते हैं । इस उत्तर में एक प्लग और अनप्लग्ड जैक के बीच अंतर खोजने के लिए एक छोटी प्रक्रिया है, और एक स्क्रिप्ट जिसे आप अपने मामले के अनुरूप संशोधित कर सकते हैं।
के लिए (2) और (4): आपको वीएलसी के डबस इंटरफेस का उपयोग करना चाहिए। प्रासंगिक कोड यह होना चाहिए:
dbus-send --print-reply --session --dest=org.mpris.vlc /Player org.freedesktop.MediaPlayer.Pause
dbus-send --print-reply --session --dest=org.mpris.vlc /Player org.freedesktop.MediaPlayer.Play
क्रमशः विराम और खेलने के लिए।
अब, स्क्रिप्ट के बारे में। आपके मामले में, इसे कुछ इस तरह दिखना चाहिए:
#!/bin/bash
# This scripts detecs unplugging headphones.
oldstatus="unrelated string"
while [ 1 ]; do
# The following line has to be changed depending on the difference (use diff) in '/proc/asound/card0/code#0'
status=$(grep -A 4 'Node 0x16' '/proc/asound/card0/codec#0' | grep 'Amp-Out vals: \[0x80 0x80\]')
if [ "$status" != "$oldstatus" ]; then
if [ -n "$status" ]; then
echo "Plugged in"
dbus-send --print-reply --session --dest=org.mpris.vlc /Player org.freedesktop.MediaPlayer.Play
oldstatus="$status"
else
echo "Unplugged"
dbus-send --print-reply --session --dest=org.mpris.vlc /Player org.freedesktop.MediaPlayer.Pause
oldstatus="$status"
fi
fi
# Now sleep for 250 milli-seconds as per @Serg's request (who learnt if from @Fabby)
# sleep is timer-based so doesn't use *any* processor cycles while sleeping.
sleep 0.25
done
इस संशोधित स्क्रिप्ट को अपने स्टार्टअप एप्लिकेशन में जोड़ें, और आप सेट हैं। मुझे लगता है कि आपको वही करना चाहिए जो आप करना चाहते थे।
पुनश्च - ध्यान दें कि ऐसा करने के लिए अधिक कुशल तरीके हैं, जैसे कि inotify
घटना परिवर्तनों का पता लगाने के लिए उपयोग करना (और शायद अन्य दृष्टिकोण भी), लेकिन यह आपको शुरू करना चाहिए (और अन्य मेरे कौशल स्तर और अनुभव से ऊपर हैं)। मुझे लगता है कि आप इस "हैकिश" दृष्टिकोण से शुरू कर सकते हैं, और यहां से निर्माण कर सकते हैं।