जो मैं चाहता हूं वह निम्नलिखित है:
- जब मैं अपने हेडफ़ोन में प्लग करता हूं, तो मैं चाहता हूं कि ध्वनि अन-म्यूट हो और एक विशिष्ट वॉल्यूम स्तर पर सेट हो।
- जब मैं अपने हेडफ़ोन को अनप्लग करता हूं, तो मैं चाहता हूं कि ध्वनि को म्यूट किया जाए (या एक विशिष्ट वॉल्यूम स्तर पर सेट)।
वॉल्यूम स्तरों को सेट करना समस्या नहीं है, लेकिन हेडफ़ोन को अन-प्लग करने पर मुझे किसी तरह यह करने की आवश्यकता होती है, इसलिए मैं उन घटनाओं के बारे में सूचित करने का तरीका ढूंढ रहा हूं।
मुझे जल्दी /proc/asound/card0/codec#0से संकेत मिलता है कि क्या हेडफ़ोन प्लग किया गया है या नहीं, इसलिए मैंने संशोधित सूचनाओं के inotifywaitआधार पर वॉल्यूम स्तर का उपयोग करने और इसे बदलने की निगरानी करने की कोशिश की । दुर्भाग्य से विफल हो गया क्योंकि proc एक साधारण फाइल सिस्टम नहीं है।inotifywait
क्या ऐसा करने के अन्य तरीके हैं (शायद पल्सएडियो के माध्यम से)?
ऑडियो डिवाइस: Intel HDA , ऑडियो कोडेक: Conexant CX20585 ।
संक्षेप में यह बताने के लिए कि मैंने अब तक क्या किया है:
- कान कैंडी: मेरे सिस्टम पर बिल्कुल नहीं चला। एक परित्यक्त परियोजना लगता है?
- Karl Bielefeldt द्वारा पोस्ट किया गया कोड कुछ हार्डवेयर पर काम कर सकता है, यह मेरा नहीं है।
- 'स्पीकर' चैनल की कमी के कारण स्टीफनपॉलगर का विचार विफल हो गया।
- Aking1012 द्वारा प्रेरित मैंने इसे कर्नेल कोड ( कोडर के जैक सेंसिंग कोड को खोजने के बाद) के आसपास हैक करके काम किया, लेकिन यह एक बल्कि बोझिल समाधान है।
इसलिए, मैं अभी भी इसे करने का एक आसान तरीका ढूंढ रहा हूं।