جدول المحتويات:

قم بتشغيل Bluetooth على Sonos باستخدام Raspberry Pi: 25 خطوة
قم بتشغيل Bluetooth على Sonos باستخدام Raspberry Pi: 25 خطوة

فيديو: قم بتشغيل Bluetooth على Sonos باستخدام Raspberry Pi: 25 خطوة

فيديو: قم بتشغيل Bluetooth على Sonos باستخدام Raspberry Pi: 25 خطوة
فيديو: Setup Raspberry pi with ssh and WIFI Step by Step No extra Keyboard or Mouse required. 2024, يوليو
Anonim
Image
Image
قم بتشغيل Bluetooth على Sonos باستخدام Raspberry Pi
قم بتشغيل Bluetooth على Sonos باستخدام Raspberry Pi

لقد كتبت سابقًا تعليمات تصف كيفية إضافة خط مساعد أو خط تناظري إلى Sonos باستخدام Raspberry Pi. سأل أحد القراء عما إذا كان من الممكن دفق صوت البلوتوث من هاتفه إلى Sonos. من السهل القيام بذلك باستخدام دونجل بلوتوث متصلاً بخط تشغيل Sonos Play الأغلى ثمناً: 5 أو Sonos CONNECT ؛ ومع ذلك ، تفقد الدقة في تحويل البلوتوث (الرقمي) إلى التناظري ثم العودة إلى النظام الرقمي ، وإذا كنت تمتلك واحدًا فقط من مكبرات صوت Sonos الأقل تكلفة ، فهذا ليس خيارًا. يصف هذا التوجيه كيفية إعداد Raspberry Pi لدفق صوت البلوتوث إلى أي مكبر صوت من Sonos.

ملاحظة: ضع في اعتبارك أننا سننقل صوت البلوتوث إلى Raspberry Pi ونحوله إلى دفق mp3 قبل إرساله إلى Sonos لذلك سيكون هناك تأخير لبضع ثوان. إذا كنت تستخدم هذا لمشاهدة مقطع فيديو ، فسيكون الصوت غير متزامن.

الخطوة 1:

ما سوف تحتاجه:

Raspberry PI 3 Model B (يتوفر طراز B + أحدث وأسرع ولكني تمسكت بالنموذج B العادي لأنني قرأت بعض المشكلات في قفل B + وأيضًا أجهزة راديو B + اللاسلكية والبلوتوث بها درع معدني حولها لجعلها متوافقة مع لجنة الاتصالات الفيدرالية (FCC) عند تثبيتها داخل جهاز آخر ولكني أردت أقصى نطاق بلوتوث وكنت أخشى أن يعوق التدريع ذلك)

كمبيوتر مكتبي أو كمبيوتر محمول مزود بقارئ بطاقات microSD

شاشة أو تلفزيون مزود بإدخال HDMI (للإعداد الأولي فقط)

لوحة مفاتيح وماوس USB أو بلوتوث (للإعداد الأولي فقط)

حافظة Raspberry Pi البلاستيكية (أستخدم علبة بلاستيكية لهذا المشروع لزيادة نطاق البلوتوث)

بطاقة ذاكرة فلاش كينجستون 8 جيجا ميكرو SDHC الفئة 4

5V امدادات الطاقة

الخطوة 2:

صورة
صورة
صورة
صورة

انتقل إلى https://www.raspberrypi.org/downloads/raspbian/ على جهاز الكمبيوتر العادي لديك وقم بتنزيل "RASPBIAN STRETCH WITH DESKTOP".

انتقل أيضًا إلى https://etcher.io/ وقم بتنزيل Etcher وتثبيته.

ملاحظة: في إرشادي السابق ، وصفت كيفية تنزيل NOOBS لتثبيت Raspbian ؛ ومع ذلك ، هذه الطريقة أسرع قليلاً. جيد في كلا الحالتين.

الخطوه 3:

صورة
صورة
صورة
صورة

قم بتشغيل Etcher وانقر فوق تحديد صورة واستعرض وصولاً إلى الملف المضغوط. انقر فوق تحديد محرك الأقراص وتصفح إلى بطاقة microSD ثم انقر فوق Flash!

الخطوة الرابعة:

صورة
صورة
صورة
صورة
صورة
صورة
صورة
صورة

ملاحظة: بعض هذه الخطوات التالية مشابهة للتعليمات السابقة الخاصة بي ، لذا تخطي للأمام إذا كان لديك بالفعل كلمة مرور جذر ، وعنوان IP ثابت ، وإعداد VNC.

أدخل بطاقة microSD في فتحة بطاقة SD على الجانب السفلي من Raspberry Pi. قم بتوصيل كابل HDMI من Raspberry Pi بالشاشة أو التلفزيون. قم بتوصيل لوحة مفاتيح USB والماوس وأخيراً كابل طاقة Micro USB. بعد ذلك سيظهر سطح مكتب Raspbian. سيرشدك عبر العديد من الإعدادات ولكني أوصي بعدم التحقق من وجود تحديثات. انقر فوق تخطي. ظللت أتلقى خطأ "blueman.bluez.errors. DBusFailedError: Protocol not available" عند محاولة إقران bluetooth بعد تثبيت جميع التحديثات ، لذا اضطررت إلى البدء من جديد.

تلميح: إذا كنت لا تريد الوقت العسكري ، فانقر بزر الماوس الأيمن على الساعة وحدد إعدادات الساعة الرقمية وقم بتغيير تنسيق الساعة من٪ R إلى٪ r

الخطوة الخامسة:

صورة
صورة
صورة
صورة
صورة
صورة

بعد ذلك سنقوم بتمكين خادم VNC المدمج. هذا يجعل الأمور أسهل بكثير حيث يمكنك ببساطة نسخ الأوامر ولصقها عبر VNC بدلاً من كتابتها. حدد قائمة واجهة المستخدم الرسومية> التفضيلات> تكوين Raspberry Pi> الواجهات. انقر فوق ممكّن بجوار VNC ثم موافق. بعد بضع ثوانٍ ، سيظهر رمز VNC على شريط المهام. انقر فوقه ثم رمز القائمة أعلى اليمين (مربع به 3 خطوط أفقية) ثم خيارات. في خيارات الأمان ، اضبط التشفير على "تفضيل إيقاف التشغيل" والمصادقة على أنها "كلمة مرور VNC" ثم انقر فوق تطبيق. سيظهر مربع كلمة المرور. أدخل "raspberry" (بدون علامات الاقتباس) لكلمة المرور في كل مربع وانقر فوق "موافق".

الخطوة السادسة:

صورة
صورة
صورة
صورة
صورة
صورة

قبل أن نذهب إلى أبعد من ذلك ، نحتاج إلى تعيين عنوان IP ثابت. إذا تم تعيين عنوان IP الخاص بـ Pi بشكل عشوائي بواسطة خادم DHCP الخاص بالموجه ، فقد يتغير عنوان IP لاحقًا ولن تتمكن من الاتصال عبر VNC (أو Sonos لهذه المسألة). انقر بزر الماوس الأيمن فوق رمز اتصالات الشبكة على شريط المهام (رمز السهم الصغير لأعلى ولأسفل) وحدد "إعدادات الشبكة اللاسلكية والسلكية". انقر بزر الماوس الأيمن فوق المربع الأيمن العلوي وحدد "eth0" لتهيئة اتصال Ethernet أو "wlan0" للاتصال اللاسلكي. أنصح بتعيين عنوان IP ثابت لواحد فقط أو للآخر. واجهت مشكلة عندما قمت بإعداد Pi لأول مرة حيث قمت بتعيين نفس عنوان IP الثابت لكلا الوصلات وتم قفل شبكة Pi اللاسلكية الخاصة بي ولم أتمكن من إعادته للعمل بشكل صحيح ، لذا كان علي أن أبدأ في تثبيت نظام التشغيل بالكامل. على أي حال ، أدخل عنوان IP الذي تريده في حقل عنوان IP وأدخل عنوان IP لجهاز التوجيه الخاص بك في كل من حقل جهاز التوجيه وخوادم DNS. انقر فوق تطبيق وإغلاق.

ملاحظة: قد يكون من الأسهل تعيين عنوان IP ثابت باستخدام ميزة حجز DHCP IP لجهاز التوجيه الخاص بك إذا كان يحتوي على واحد. قد تحتاج إلى عنوان MAC الخاص بـ Pi أو قد يظهر فقط في قائمة الأجهزة المتصلة على صفحة مسؤول جهاز التوجيه الخاص بك. إذا كنت بحاجة إلى عنوان MAC ، فاكتب الأمر "ifconfig eth0" في النافذة الطرفية لـ ethernet أو "ifconfig wlan0" لشبكة WiFi. ومن المثير للاهتمام أن عنوان MAC لشبكة WiFi سيظهر على السطر الذي يبدأ بـ "ether"

الخطوة السابعة:

صورة
صورة
صورة
صورة
صورة
صورة

بعد ذلك نحتاج إلى ضبط دقة الشاشة الافتراضية. قد يبدو هذا سخيفًا لأننا متصلون بالفعل بشاشة ولكن في وقت لاحق عندما تتصل عبر VNC بدون شاشة متصلة (بدون رأس ، كما يقولون) ستعود إلى دقة Pi الافتراضية 640 × 480 وهي شاشة صغيرة جدًا يعمل مع! حدد قائمة واجهة المستخدم الرسومية> التفضيلات> تكوين Raspberry Pi> تعيين الدقة. اضبطه على 1280 × 720 أو أعلى وانقر فوق موافق ونعم لإعادة التشغيل.

الخطوة 8:

صورة
صورة
صورة
صورة
صورة
صورة

قد ترغب في تغيير اسم Pi خاصة إذا كان لديك أكثر من اسم على شبكتك. قمت بإعادة تسمية "BluetoothPi" الخاصة بي لتسهيل التعرف عليها. سيطلب منك إعادة التشغيل بعد إعادة تسميته.

الخطوة 9:

صورة
صورة
صورة
صورة
صورة
صورة
صورة
صورة

في هذه المرحلة ، قد ترغب في البدء في استخدام VNC للتحكم في Pi. افتح لوحة تحكم VNC على سطح مكتب Raspbian مرة أخرى وابحث عن عنوان IP ضمن "الاتصال". قم بتثبيت وتشغيل عارض VNC على جهاز الكمبيوتر العادي الخاص بك واستخدام عنوان IP هذا للاتصال وإدخال "raspberry" (بدون علامات الاقتباس) ككلمة المرور. لقد استخدمت TightVNC لنظام التشغيل Windows. بعد الاتصال ، يمكنك حفظ اتصال Pi VNC كاختصار على سطح المكتب للاتصال بسرعة في المستقبل متجاوزًا شاشة تسجيل الدخول. سيصلك تحذير بشأن حفظ كلمة المرور داخل الاختصار. للنسخ واللصق في نافذة Pi الطرفية ، حدد النص أو الأوامر الموجودة على جهاز الكمبيوتر العادي أو قم بتمييزها ، واضغط على Ctrl-C (اضغط حرفيًا على مفتاحي Ctrl و C على لوحة المفاتيح في نفس الوقت) أو انقر بزر الماوس الأيمن وحدد "نسخ" "، ثم قم بتنشيط نافذة عارض Pi's VNC وانقر بزر الماوس الأيمن داخل النافذة الطرفية مباشرة على المؤشر وحدد لصق.

الخطوة 10:

صورة
صورة
صورة
صورة

بعد ذلك سنقوم بتثبيت برنامجين ، Darkice و Icecast2. Darkice هو ما سوف يقوم بترميز مصدر صوت البلوتوث الخاص بنا إلى دفق mp3 و Icecast2 هو ما سيقدمه إلى Sonos كتدفق شوتكاست. انسخ والصق كل سطر من هذه الأسطر في النافذة الطرفية واحدًا تلو الآخر متبوعًا بالمفتاح Enter في كل مرة:

wget

mv darkice_1.0.1-999 ~ mp3 + 1_armhf.deb؟ raw = true darkice_1.0.1-999 ~ mp3 + 1_armhf.deb

sudo apt-get install libmp3lame0 libtwolame0

sudo dpkg -i darkice_1.0.1-999 ~ mp3 + 1_armhf.deb

الخطوة 11:

صورة
صورة
صورة
صورة
صورة
صورة
صورة
صورة

الآن لتثبيت Icecast2. اكتب "sudo apt-get install icecast2" متبوعًا بـ enter. بعد تثبيته ، ستظهر نافذة تسألك عما إذا كنت تريد تكوين Icecast2. اضغط على مفتاح السهم الأيسر وأدخل لتحديد نعم. في الشاشة الثانية ، اضغط على مفتاح السهم لأسفل وادخل لتحديد موافق لاستخدام اسم المضيف الافتراضي "localhost". في الشاشات الثلاث التالية ، اضغط على السهم لأسفل وأدخل المفتاح للموافقة على استخدام "hackme" كمصدر افتراضي ، وترحيل وكلمة مرور إدارية. على الرغم من موافقتنا على جميع الإعدادات الافتراضية ، يجب إكمال هذه الخطوات لتنشيط خادم Icecast2.

sudo apt-get install icecast2

الخطوة 12:

صورة
صورة
صورة
صورة
صورة
صورة

بعد ذلك ، نحتاج إلى تشغيل مدير ملفات GUI كمستخدم أساسي. للقيام بذلك ، حدد قائمة واجهة المستخدم الرسومية> تشغيل. اكتب "sudo pcmanfm" واضغط على Enter. سيؤدي ذلك إلى فتح مدير الملفات (وهو ما يعادل مستكشف الملفات بالنسبة لنا لمستخدمي Windows) إلى الدليل الرئيسي (/ home / pi) وسترى ملف التثبيت المظلم المتبقي الذي قمنا بتنزيله مسبقًا. انقر بزر الماوس الأيمن في مساحة فارغة وحدد إنشاء جديد ثم إفراغ ملف. قم بتسميته "darkice.cfg" وانقر فوق موافق. ثم انقر بزر الماوس الأيمن فوق الملف الذي تم إنشاؤه حديثًا واختر فتحه باستخدام Leafpad (ما يعادل مفكرة Windows). انسخ الأسطر أدناه والصقها في Leafpad ثم انقر فوق ملف وحفظ. ستلاحظ وجود تعليق على سطر "الجودة" بعلامة # أمامه. يتم استخدامه فقط إذا قمت بتعيين "bitrateMode = vbr" (معدل بت متغير). لا يمكنك تعيين قيمة جودة عند استخدام cbr (معدل بت ثابت) أو سيتقطع البث ويتخطى. بالمقابل ، إذا قررت استخدام vbr ، فأنت بحاجة إلى التعليق على سطر "معدل البت = 160" وإلغاء التعليق على سطر "الجودة".

ملاحظة: أعلى جودة يمكن الحصول عليها لمعدل نقل بيانات mp3 هي 320 كيلوبت في الثانية ؛ ومع ذلك ، فإن كلا من راديو WiFi و Bluetooth على Raspberry Pi موجودان على نفس الشريحة ، لذا إذا قمت بزيادة النطاق الترددي لكليهما ، يمكن أن يتلعثم صوت البلوتوث أو يتجمد. سنقوم في وقت لاحق بتغيير إعداد من شأنه أن يعالج هذا ، لكنه يحد من عرض النطاق الترددي لشبكة WiFi إلى حد ما ، لذا قمت بتخفيض معدل البت الصوتي لهذا المشروع إلى 160 كيلو بت في الثانية لأنني أخطط لإبقائه على شبكة WiFi حصريًا. إذا كنت تستخدم إيثرنت ، فهذه ليست مشكلة ويمكنك تعيين معدل البت بأمان على 320 كيلوبت في الثانية.

[عام] المدة = 0 # مدة في ثوانٍ ، 0 مخزن مؤقت للأبد ثانية = 1 # مخزن مؤقت ، في ثوانٍ أعد الاتصال = نعم # أعد الاتصال إذا تم قطع الاتصال

[إدخال]

الجهاز = رقم الهاتف اسم عينة جهاز البلوتوث المعدل = 44100 # معدل العينة 11025 أو 22050 أو 44100 بت للعينة = 16 # قناة بت = 2 # 2 = ستيريو

[icecast2-0]

bitrateMode = cbr # معدل بت ثابت (ثابت 'cbr' ، متوسط 'abr') # الجودة = 1.0 # 1.0 هو أفضل جودة (استخدم فقط مع vbr) تنسيق = تنسيق mp3 #. اختر "vorbis" لمعدل بت OGG Vorbis = 160 # خادم معدل البت = المضيف المحلي # أو منفذ IP = 8000 # منفذ لكلمة مرور وصول IceCast2 = hackme # كلمة مرور المصدر لخادم IceCast2 mountPoint = rapi.mp3 # نقطة التحميل على خادم IceCast2. mp3 أو اسم.ogg = BluetoothPi

الخطوة 13:

صورة
صورة
صورة
صورة
صورة
صورة
صورة
صورة

بعد ذلك ، نحتاج إلى اتباع نفس الخطوات السابقة لإنشاء ملف فارغ يسمى "darkice.sh". ملف.sh هو ما يعادل ملف.bat أو ملف دفعي لـ DOS أو Windows. افتح باستخدام Leafpad ، انسخ والصق الأسطر أدناه واحفظها. إذا اتبعت التعليمات السابقة الخاصة بي ، فستلاحظ أن السطر الذي يبدأ Darkice يبدو مختلفًا قليلاً. اضطررت إلى تضمين الرمز في حلقة لأنه كلما فقد Darkice إشارة صوت البلوتوث ، سيتوقف عن العمل ولن يُعاد تشغيله تلقائيًا حتى عند إعادة تشغيل الصوت. لقد بحثت في هذه المشكلة كثيرًا وعلى الرغم من وجود طرق معقدة لتشغيل برنامج نصي تلقائيًا عند توصيل جهاز بلوتوث ، فإن Darkice سيتوقف أحيانًا عند فقدان إشارة الصوت حتى إذا كان جهاز البلوتوث لا يزال متصلاً (على سبيل المثال ، إذا أغلقت YouTube التطبيق على هاتفك) لذا فهذه هي الطريقة الأسهل والأكثر موثوقية للتأكد من تشغيل Darkice عند وجود صوت بلوتوث. إذا كان Darkice قيد التشغيل بالفعل ، فسيتم تجاهل الأمر.

#! / بن / باشفي حين: ؛ افعل sudo / usr / bin / darkice -c /home/pi/darkice.cfg ؛ ينام 5؛ انتهى

الخطوة 14:

صورة
صورة

بعد ذلك ، نحتاج إلى تشغيل أمر لجعل ملف darkice.sh قابلاً للتنفيذ. افتح نافذة المحطة واكتب "sudo chmod 777 /home/pi/darkice.sh" واضغط على Enter. حان الوقت الآن لبدء خدمة خادم Icecast2. اكتب "sudo service icecast2 start" واضغط على Enter.

sudo chmod 777 / home/pi/darkice.sh

تبدأ خدمة sudo icecast2

الخطوة 15:

صورة
صورة
صورة
صورة
صورة
صورة
صورة
صورة

بعد ذلك ، نحتاج إلى إخبار Darkice بالبدء تلقائيًا عندما يتم تمهيد Pi (يعمل خادم Icecast2 كخدمة ويبدأ تلقائيًا بعد التمهيد). نحتاج أولاً إلى تحديد محرر النصوص الذي يجب استخدامه. في نافذة المحطة ، اكتب "select-editor" واضغط على enter. اكتب "2" لتحديد محرر nano واضغط على Enter. ثم اكتب "crontab -e" وأدخل. بعد ذلك ، اضغط باستمرار على مفتاح السهم لأسفل للانتقال إلى أسفل الملف النصي الذي يظهر وأضف هذا السطر "reboot sleep 10 && sudo /home/pi/darkice.sh". ثم اضغط على Ctrl-X للخروج وسيظهر لك "حفظ المخزن المؤقت المعدل؟". اضغط على المفتاح Y لـ Yes ثم Enter لتأكيد أي اسم ملف يتم إنشاؤه تلقائيًا.

حدد محرر

كرونتاب -e

نوم ريبوت 10 && sudo /home/pi/darkice.sh

الخطوة 16:

صورة
صورة
صورة
صورة
صورة
صورة

قم بإقران هاتفك بـ Raspberry Pi باستخدام أيقونة البلوتوث على سطح المكتب. من المهم أن تضع بلوتوث باي في وضع الاكتشاف ثم تقترن بهاتفك. إذا وضعت هاتفك في وضع الاكتشاف وحاولت إقرانه بـ Pi ، فقد يتم توصيله ولكنه يعطيك خطأ يقول أنه لا توجد خدمات على هاتفك يمكن لـ Pi استخدامها ، وهذا صحيح. نحن نحاول إرسال الصوت إلى Pi ، وليس العكس. بعد إقرانه ، قم بتشغيل هذا الأمر في النافذة الطرفية للكشف عن عنوان MAC الخاص بجهازك المتصل بالبلوتوث:

sudo bluetoothctl

الخطوة 17:

صورة
صورة
صورة
صورة
صورة
صورة

لكي يتمكن Darkice من استخدام جهاز البلوتوث كمدخل صوتي لـ PCM ، يتعين علينا إنشاء ملف في المجلد "etc" يسمى "asound.conf" (إلخ / asound.conf). انقر فوق السهم لأعلى في مدير الملفات عدة مرات للانتقال إلى الدليل الجذر ثم انقر نقرًا مزدوجًا فوق المجلد "إلخ" لفتحه. قم بالتمرير لأسفل وانقر بزر الماوس الأيمن في مساحة فارغة وقم بإنشاء ملف فارغ يسمى "asound.conf" وانسخ الأسطر أدناه والصقها باستخدام عنوان MAC الخاص بجهازك الذي تم استبداله باسمي بالطبع وحفظه.

pcm.phone {type plug slave.pcm {type bluealsa device "50: F0: D3: 7A: 94: C4" profile "a2dp"}}

الخطوة 18:

صورة
صورة
صورة
صورة
صورة
صورة

توجد كل من أجهزة راديو WiFi و Bluetooth على Raspberry Pi على نفس الشريحة ، لذا إذا قمت بزيادة النطاق الترددي لكليهما ، يمكن أن يتلعثم صوت البلوتوث أو يتجمد. يسميها البعض خطأ ويقول البعض إنها مجرد قيود على الأجهزة. سنقوم بتغيير الإعداد الذي سيعالج هذا. يعود الفضل في نشر هذا الإصلاح إلى "pelwell" على https://github.com/raspberrypi/linux/issues/1402 قم بتشغيل sudo pcmanfm مرة أخرى لفتح مدير الملفات واستعراض / lib / firmware / brcm. انقر نقرًا مزدوجًا فوق الملف النصي "brcmfmac43430-sdio.txt" لفتحه وإضافة هذه الأسطر إلى الأسفل وحفظها.

# معلمات تعايش Bluetooth التجريبية من Cypressbtc_mode = 1 btc_params8 = 0x4e20 btc_params1 = 0x7530

الخطوة 19:

صورة
صورة
صورة
صورة
صورة
صورة

انقر فوق رمز قائمة واجهة المستخدم الرسومية وحدد إيقاف التشغيل وإعادة التشغيل. إذا اتبعت كل هذه الخطوات بدقة ، فسيبدأ خادم صوت البلوتوث تلقائيًا في أي مكان من 30 ثانية إلى دقيقة بعد النقر فوق إعادة التشغيل. قبل أن تتمكن من إضافته إلى Sonos ، يجب عليك توصيل البلوتوث الخاص بهاتفك بـ Pi (ما عليك سوى النقر عليه في إعدادات البلوتوث بهاتفك لأنه مقترن بالفعل) والبدء في تشغيل الصوت من نوع ما ورفع مستوى الصوت. تذكر أنك لن تسمع أي صوت قادم من مكبر صوت هاتفك لأنه يعتقد أنه متصل بمكبر صوت بلوتوث خارجي. تتمثل إحدى الطرق المرئية لمعرفة ما إذا كان Icecast يتلقى صوت Bluetooth من Darkice في فتح https://192.168.86.107:8000 في مستعرض ويب مع استبدال IP الخاص بك بـ IP الخاص بي. يعمل Icecast دائمًا ، لذا سترى دائمًا صفحة الحالة ، ولكن إذا كان Darkice يتلقى أيضًا صوت Bluetooth ، فسترى أيضًا نقطة التحميل وواصف البث. افصل البلوتوث الخاص بك وقم بتحديث الصفحة وستصبح فارغة مرة أخرى.

الخطوة 20:

صورة
صورة
صورة
صورة

يجب عليك استخدام تطبيق Sonos desktop controller لإضافة بث مخصص إلى Sonos. انقر فوق إدارة> إضافة محطة راديو وأدخل عنوان url للبث الذي كان في حالتي "https://192.168.86.107:8000/rapi.mp3". أدخل أيضًا اسم المحطة وانقر فوق موافق.

الخطوة 21:

صورة
صورة

لتشغيل محطة الراديو المخصصة التي أضفناها للتو ، حدد "Radio by Tunein" ثم "محطات الراديو الخاصة بي". انقر نقرًا مزدوجًا لليسار للتشغيل أو انقر بزر الماوس الأيمن لتحرير المحطة أو إضافتها إلى مفضلات Sonos.

الخطوة 22:

صورة
صورة
صورة
صورة

بعد إضافة محطة الراديو المخصصة ستكون متاحة على الفور في تطبيق Sonos الخاص بك. افتح التطبيق ، وانقر على "My Sonos" في الجزء السفلي ، ثم مرر لأسفل إلى "المحطات" وانقر على "عرض الكل". قم بالتمرير لأسفل حتى ترى المحطة التي تم إنشاؤها حديثًا. اضغط عليها وسيبدأ اللعب في الغرف التي اخترتها. تذكر، ̶ إذا قمت بقطع بك Bluetooth من بي ثم يسكاست البث الذي ̶d̶i̶s̶c̶o̶n̶n̶e̶c̶t̶.̶ إذا قمت بالتبديل الصوت التطبيقات قد ̶d̶i̶s̶c̶o̶n̶n̶e̶c̶t̶.̶ لاستئناف الاستماع على SONOS سيكون لديك لإعادة تشغيل الصوت على الهاتف مرة أخرى، ودفع تلعب على ̶t̶h̶e̶ ̶S̶o̶n̶o̶s̶ ̶a̶p̶p̶ ̶a̶g̶a̶i̶n̶.̶ <--- تم إصلاح هذا ؛ انظر التحديث أدناه. حظا سعيدا والشكر للقراءة!

الخطوة 23: التحديث: تم توصيل الدفق الثابت أثناء فصل البلوتوث

لذلك ، كان دفق البلوتوث يعمل بشكل مثالي مع هذا الإعداد ، باستثناء أن Sonos سوف ينفصل عن خادم Icecast عندما يفقد Darkice صوت البلوتوث ، مثل عندما تقوم بتبديل تطبيقات الصوت أو مجرد قطع اتصال البلوتوث ، الأمر الذي كان بمثابة ألم لأنك ستضطر إلى الحصول على دفق صوت بلوتوث مرة أخرى من قبل يمكنك حتى الضغط على زر التشغيل في تطبيق Sonos.أصبحت هذه مشكلة كبيرة عندما كنت أحاول دفق الصوت إلى Sonos من تطبيق WatchESPN على هاتفي والذي يكون ملء الشاشة فقط لذلك لم أتمكن من الضغط على زر التشغيل في تطبيق Sonos بعد بدء تشغيل صوت البلوتوث ولكن عندما أغلقت تطبيق WatchESPN ، لن يبدأ دفق Sonos ما لم تبدأ تشغيل صوت البلوتوث أولاً! قرف! لقد كنت أسحب شعري في محاولة للتوصل إلى حل أنيق لهذا. جربت برنامج تشفير mp3 مختلف يسمى Liquidsoap لديه خيار إرسال صوت صامت عندما يفقد الاتصال ولكن لم أتمكن من تشغيله مع bluealsa. حاولت مزج دفق bluealsa مع دفق بطاقة صوت وهمية ثانوي باستخدام dsnoop و asym لمحاولة خداع Icecast للاعتقاد بأنه لا تزال هناك إشارة صوتية موجودة ولكن alsa لا تسمح لك حقًا بمعالجة صوت البلوتوث كثيرًا. بدأت بعد ذلك في التحقيق باستخدام نقطة تحميل احتياطي باستخدام ملف mp3 صامت في Icecast ولكن Sonos سيشاهد تغيير اسم نقطة التحميل وفصله. كنت أستخدم ملف test.mp3 وقمت بتعيينه عن طريق الخطأ باعتباره اسم نقطة التحميل الرئيسية مرة واحدة بدلاً من الاسم الاحتياطي ولاحظت أن Sonos قد تحول ببساطة إلى تشغيل هذا الملف عندما تم فصله عن دفق البلوتوث "rapi.mp3". يوريكا! لن يعود تلقائيًا إلى دفق البلوتوث عندما أصبح متاحًا مرة أخرى ، مما جعلني أفكر في سبب عدم استخدام نفس اسم نقطة التثبيت؟ لذا ما عليك القيام به هو إنشاء ملف mp3 صامت ومنحه نفس اسم دفق Darkice mp3 ، "rapi.mp3" ، وكوده كنقطة تحميل رئيسية في ملف تكوين Icecast2. ما يحدث هو أنه عندما يفقد Sonos الاتصال بدفق Darkice / bluetooth rapi.mp3 ، يبدأ فقط في تكرار ملف rapi.mp3 الصامت الآخر حتى يعود تدفق البلوتوث عبر الإنترنت. بهذه الطريقة ، لن تضطر إلى تشغيل صوت البلوتوث قبل الضغط على التشغيل في Sonos. هيريس كيفية القيام بذلك…

الخطوة 24:

صورة
صورة
صورة
صورة
صورة
صورة

يجب أولاً تثبيت ffmpeg لإنشاء ملف mp3 صامت. يمكنك تسجيل ملف.wav صامت من بطاقة صوت خارجية وتحويله إلى mp3 باستخدام lame ولكن بما أنني لا أملك إدخال بطاقة صوت خارجية لهذا المشروع ، فإن استخدام ffmpeg كان الحل الأسهل. افتح نافذة Terminal واكتب sudo apt-get install ffmpeg واضغط على Enter:

sudo apt-get install ffmpeg

بعد تثبيته ، انسخ والصق هذا السطر الطويل لتشفير ملف mp3 صامت مدته ثانية واحدة فقط:

sudo ffmpeg -f lavfi -i anullsrc = channel_layout = stereo: sample_rate = 44100 -b: a 160k -t 1 /usr/share/icecast2/web/rapi.mp3

افتح مدير الملفات كجذر باستخدام "sudo pcmanfm" وانتقل إلى "/ etc / icecast2". انقر بزر الماوس الأيمن على "icecast.xml" وافتحه باستخدام Leafpad والصق هذه الأسطر أسفل السطر "" العلوي:

/rapi.mp3

احفظ وأعد التشغيل وستتمكن الآن من بدء محطة البلوتوث المخصصة الخاصة بك من Sonos قبل أن تقوم حتى بتوصيل هاتفك بالبلوتوث!

الخطوة 25: إضافة

إضافة
إضافة
إضافة
إضافة
إضافة
إضافة
إضافة
إضافة

كنت أرغب في أن يكون مصدر طاقة Raspberry Pi و 110 فولت تيار متردد إلى 5 فولت تيار مستمر قائم بذاته في حالة واحدة حتى أتمكن من تحريكه بسهولة في جميع أنحاء المنزل ولكني فوجئت بإيجاد مثل هذه الحالة غير موجودة. قد أقوم بطباعة ثلاثية الأبعاد لاحقًا ولكن في هذه الأثناء قمت بالتبديل إلى استخدام علبة Raspberry Pi مختلفة وعثرت على شاحن حائط USB رفيع وكابل قصير. كان للشاحن طلاء مطاطي لم أتمكن من الحصول على شريط VHB واضح للالتصاق به ولكن اتضح أنه ملصق يمكن إزالته بسهولة ؛ ومع ذلك ، فقد أدى ذلك إلى استراحة صغيرة جعلت شريط VHB رقيقًا جدًا ، لذا استخدمت الفيلكرو.

موصى به: