पेंडिंग / फिर से खेलना और अगला / पिछला ट्रैक ब्लूटूथ कमांड भेजना


10

मैं अपने उबंटू पीसी को ब्लूटूथ ऑडियो कमांड (प्ले / पॉज़, अगला / पिछला गाना और ऊपर / नीचे) भेजकर अन्य डिवाइस को ब्लूटूथ पर संगीत स्ट्रीमिंग करना चाहूंगा। दूसरे शब्दों में, मैं अपने उबंटू पीसी "प्रिटिंग" को ब्लूटूथ हेडफ़ोन की तरह लागू करना चाहूंगा, जो ट्रैक बदलने में सक्षम हैं, और संगीत को फिर से शुरू और फिर से शुरू करने में सक्षम हैं।

मेरे पास नीचे दिए गए pavucontrol स्क्रीनशॉट के साथ सचित्र सेटअप है ( pt2यह ब्लूटूथ के माध्यम से जुड़ा डिवाइस है): यहाँ छवि विवरण दर्ज करें यहाँ छवि विवरण दर्ज करें

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

मुझे पहले ही पता चला है कि विशिष्ट कार्यों की अनुमति देने वाले कई ब्लूटूथ प्रोटोकॉल हैं। अगर मुझे ऐनक ठीक से समझ में आ गया है, तो मुझे क्या दिलचस्पी है A2DP, जो कि अभी जिस तरह से डिवाइस जुड़े हुए हैं। लेकिन प्रोफाइल ड्रॉपडाउन के तहत, मेरे पास HSP / HFP हेडसेट हेड यूनिट, HSP / HFPheadset गेटवे और ऑफ के विकल्प भी हैं।

मैं पायथन में अपना स्वयं का एप्लिकेशन विकसित करने जा रहा हूं, जो इस तरह की कमांड भेजने की अनुमति देगा, इसलिए मैं उन्हें पायथन एपीआई या बैश कमांड के माध्यम से भेजने में दिलचस्पी रखता हूं।

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


मेरे पास परीक्षण करने का अवसर नहीं है, लेकिन मैं समाधान में भी दिलचस्पी रखता हूं क्योंकि मुझे एक ही समस्या मिलती है, यहां एक चर्चा में: ubuntuforums.org/… बस लगता है कि लोड करने के लिए इनपुट मॉड्यूल जोड़ने की जरूरत है, लेकिन जानकारी एक नहीं है पोस्ट में बहुत कुछ।
AtomiX84

@ AtomiX84 मुझे इस बात का आभास है कि मेरे पास कोई विपरीत मुद्दा है। मैं अपने पीसी को हेडफोन का नाटक करना चाहता हूं, न कि मेरे पीसी स्टीयरिंग संगीत से जुड़े हेडफोन पर।
pt12lol


@ एक बार मैं काफी विशिष्ट बात देखना चाहूंगा, जबकि उत्तर आप उदारतापूर्वक देखने के लिए जोड़ रहे हैं। क्या आप मेरे उपयोग के मामले के लिए अधिक विस्तृत उदाहरण प्रदान कर सकते हैं?
pt12lol

मैं उस क्षेत्र का विशेषज्ञ नहीं हूं, आप जीथब की खोज कर सकते हैं। इसके अलावा इस लिंक पर एक नज़र डालें stackoverflow.com/questions/48932249/…
kenn

जवाबों:


10

@Kenn से प्रेरित होकर, मैंने dbusऔर गहराई से जाने का फैसला किया d-feet। अंततः मैं निम्नलिखित कमांड का उपयोग करके अपने लक्ष्य तक पहुँच गया:

dbus-send --system --print-reply --dest=org.bluez /org/bluez/hci0/dev_44_78_3E_85_9D_6F org.bluez.MediaControl1.Play

मेरे पीसी पर ब्लूटूथ से जुड़े मेरे मोबाइल डिवाइस पर कौन सा संगीत बजाना शुरू हो गया।

आम तौर पर ब्लूटूथ डिवाइस के लिए यह कमांड निम्न होगी:

dbus-send --system --print-reply --dest=org.bluez /org/bluez/hci0/dev_<mobile_bluetooth_device_mac_address_with_numbers_underscore_separated> org.bluez.MediaControl1.<command_to_send>

अपने उपकरणों के मैक पते को चलाने के लिए जाँच करें bt-devices -l। यह कोष्ठकों में मैक पते के साथ सभी ज्ञात (लेकिन जरूरी नहीं कि जुड़ा हुआ है या यहां तक ​​कि खोजा गया) उपकरणों को सूचीबद्ध करेगा।

अनुमत कमांड सूची खोजने के लिए, के d-feetसाथ स्थापित करें sudo apt install d-feet। इसे चलाने के बाद, टैब के bluezनीचे क्वेरी के लिए खोज लागू करें System Busऔर अपने उपकरणों के मैक के साथ प्रविष्टि ढूंढें:

यहाँ छवि विवरण दर्ज करें

सामान के समान तरीके हैं जो ब्लूटूथ हेडफ़ोन के तहत उपयोग करते हैं org.bluez.MediaControl1। लेकिन, जब आप उन पेड़ों को ब्राउज़ करते हैं, तो आप A WAY अधिक पा सकते हैं, यह वास्तव में आपके ध्यान देने योग्य है।

dbus-sendका उपयोग कर संकेत भेजने के लिए एक आदेश है dbus--systemस्विच इंगित करता है कि हम System Busd-feet के टैब से सामान का उपयोग करना चाहते हैं । मैंने अभी तक इसकी कोशिश नहीं की है, लेकिन मुझे लगता --print-replyहै कि यह केवल डिबगिंग के उद्देश्यों के लिए है और अनिवार्य नहीं है। डी-फीट हेडर में --dest=org.blezसंदर्भित करता है Name/org/bluez/hci0/dev_<mobile_bluetooth_device_mac_address_with_numbers_underscore_separated>और org.bluez.MediaControl1.<command>ऑब्जेक्ट ट्री पथ को देखें।


यह भी खूब रही ! क्या आपने उन dbus-sendआदेशों को अपने पीसी के मीडिया-बटन में मैप किया है या आप इसे कैसे उपयोग करने का इरादा रखते हैं?
रॉबर्ट रिडेल

1
@ रोबर्ट रिडल मैं अपने गेमपैड बटन को घटनाओं को पकड़ना चाहता था और उन्हें मोबाइल डिवाइस पर भेजे गए विशिष्ट कमांड के साथ मैप करता था जो मेरे कंप्यूटर पर संगीत स्ट्रीम करता है। इस परियोजना के लिए प्रेरणा मेरा बेटा था जो एक संगीत प्रबंधक बनना पसंद करता है, लेकिन मैं नहीं चाहता था कि वह स्क्रीन पर बहुत अधिक समय बिताए। इसलिए मैंने उसे UX के अन्य प्रकार प्रदान करने का फैसला किया;)
pt12lol
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.