स्वचालित रूप से ब्लूटूथ हेडसेट के लिए ध्वनि आउटपुट डिवाइस को स्विच करें और कनेक्शन पर A2DP के प्रोफ़ाइल के लिए मजबूर करें


11

मेरा ब्लूटूथ हेडसेट (प्लांट्रोनिक्स बैकबीट गो 2) मेरे सिस्टम के साथ ठीक से जुड़ा हुआ है, लेकिन इस काम को करने के लिए मुझे कई मैनुअल कदम उठाने होंगे, जिन्हें मैं स्वचालित रूप से करना पसंद करूंगा:

  1. हर रिबूट के बाद मुझे डिवाइस में पैक्टल लोड-मॉड्यूल मॉड्यूल-ब्लूटूथ-डिस्क को चलाने के लिए डिवाइस को सभी पर कनेक्ट करने के लिए चलाना होगा। मैंने इसे स्टार्ट अप पर चलाने के लिए एक शेल स्क्रिप्ट में डालने की कोशिश की, लेकिन कोई पासा नहीं :(
  2. मेरा हेडसेट स्वचालित रूप से बिना किसी मुद्दे के साथ जुड़ता है, लेकिन यह हमेशा A2DP के बजाय टेलीफ़ोनी डुप्लेक्स या यहां तक ​​कि ऑफ़ डिफॉल्ट करता है; मैंने A2DP को मजबूर करने के लिए कई अलग-अलग रणनीतियों के साथ कोशिश की और असफल रहा :(
  3. डिफ़ॉल्ट आउटपुट डिवाइस होने के लिए बीटी हेडसेट को मजबूर करें। यहां भी कई रणनीतियों की कोशिश की, ... दुर्भाग्य से हर बार जब मैं हेडसेट को कनेक्ट करता हूं pacmd से इंडेक्स बदलने लगता है, तो मैं उस तरह से पीए conf फ़ाइल सेट-डिफॉल्ट-सिंक में एक डिफ़ॉल्ट को मजबूर नहीं कर सकता। और सूचीबद्ध नाम का उपयोग करना या तो काम नहीं करता है - यदि हेडसेट मौजूद नहीं है, तो यह वक्ताओं पर स्विच करता है और यदि हेडसेट कनेक्ट होता है तो वापस स्विच नहीं करता है :(

किसी भी सलाह के लिए धन्यवाद आप इन मुद्दों को हल करने पर हो सकता है!

जवाबों:


8

इसने मेरे लिए काम किया: https://sandalov.org/blog/2146/

पोस्टरिटी के लिए यहां कॉपी किए गए निर्देश:

Add to /etc/pulse/default.pa to automatically switch pulseaudio sink to Bluez:

.ifexists module-bluetooth-discover.so
load-module module-bluetooth-discover
load-module module-switch-on-connect  # Add this
.endif

Modify/Create /etc/bluetooth/audio.conf to auto select A2DP profile (instead of HSP/HFP):

[General]
Disable=Headset # Add this

Apply changes:

pulseaudio -k # Restarts pulseaudio

# You may need to turn your bluetooth headphones off, then back on

1
टिप्पणी: "यह जोड़ें" महत्वपूर्ण है, क्योंकि लाइन .ifexists module-bluetooth-discover.soपहले से ही मौजूद है। मैंने पहली बार में पूरी चार लाइनें जोड़ने की कोशिश की और यह काम नहीं किया। केवल एक पंक्ति को सही स्थान पर जोड़ने से काम होता है।
फाबियन रोलिंग

2
उबंटू बायोनिक पर मैं AutoConnect=trueडिसेबल = हेडसेट के बजाय सेट करता हूं
डेवेलक्यु

कृपया ध्यान दें कि PulseAudio संस्करण 11 के बाद, auto_switch एक पूर्णांक में परिवर्तित हो गया था, इसलिए इसे आपके द्वारा आवश्यक ऑटो स्विचिंग कार्यक्षमता के आधार पर 0, 1, 2 जैसे मान की आवश्यकता होती है: freedesktop.org/wiki/Software/Pulsexudio/Notes/11.0
mitsos1os

2

यह केवल एक रिबूट के बाद ही नहीं है, बल्कि एचएसपी, और ए 2 डीपी प्रोफाइल दोनों में सक्षम डिवाइस को डिस्कनेक्ट करने और फिर से कनेक्ट करने के बाद है, जो ब्लूज़ हमेशा इसे एचएसपी (हेडेस्ट) मोड में जोड़ता है।

मैं विस्तार से नहीं बता सकता कि हुड के नीचे क्या चल रहा है (ब्लूटूथ में कुछ क्विरक्स है) लेकिन मुझे संदेह है कि हम एक नए डिवाइस को डब के माध्यम से ऑडियो या ऑडियोसिंक डिवाइस के बजाय हेडसेट के रूप में कनेक्ट कर रहे हैं ।

ऐसा प्रतीत होता है कि कोई सेटिंग नहीं है जिसके द्वारा हम इसे नियंत्रित कर सकते हैं। मुझे किसी भी सेटिंग के बारे में पता नहीं है जिसे हम कनेक्ट करने पर A2DP को एक ब्लूटूथ डिवाइस को डिफॉल्ट करने के लिए कर सकते हैं (लेकिन मैं इसे बाहर नहीं निकाल सकता कि मैंने कहीं डॉक्यूमेंटेशन का एक टुकड़ा याद किया)। इसे बग माना जा सकता है।

किसी समय मैंने ऑडियो प्रोफ़ाइल का उपयोग करके ब्लूटूथ कनेक्शन स्थापित करने के लिए एक स्क्रिप्ट लिखी थी । इस स्क्रिप्ट को थोड़ा GUI पायथन एप्लिकेशन ( लॉन्चपैड पर bt-autoconnect या मेरे ppa: takkat-nebuk / takkat ) में शामिल किया गया था, जो कि अन्य tweaks के बीच बिल्कुल ऐसा करता है, लेकिन यह एक निश्चित समाधान की तुलना में अधिक हैक है, और दुख की बात है। चारों ओर सभी एडेप्टर के साथ काम नहीं करते हैं, लेकिन यह मेरे फिलिप्स हेडसेट को A2DP मोड में पहले कनेक्ट करेगा (भले ही ध्वनि सेटिंग्स अभी भी दावा करती है कि यह HFP था लेकिन यह एक और मुद्दा है)।


इनपुट Takkat के लिए धन्यवाद ... मैं सोच रहा हूँ कि मैं लहरा रहा हूँ, और यह एक मैनुअल प्रक्रिया होने जा रही है :(
लोगो
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.