ฉันจะติดตั้งคอนโทรลเลอร์Sonosบน Ubuntu และเข้าถึงคลังเพลงได้อย่างไร
ฉันจะติดตั้งคอนโทรลเลอร์Sonosบน Ubuntu และเข้าถึงคลังเพลงได้อย่างไร
คำตอบ:
นี่คือบทแนะนำการติดตั้ง Sonos บน Ubuntu โดยใช้ Wine, PlayonLinux และ Samba (สำหรับคลังเพลง)
ติดตั้ง Sonos Controller
สิ่งแรกที่ต้องทำคือติดตั้ง Wine และ PlayonLinux เพื่อให้คอมพิวเตอร์ของคุณสามารถใช้ซอฟต์แวร์ Windows เปิดเทอร์มินัล (ctrl + alt + t) และคัดลอก / วางบรรทัดต่อไปนี้ตามบรรทัด
sudo apt-get install wine
sudo apt-get install playonlinux
จากนั้นดาวน์โหลด Sonos Controller รุ่นล่าสุดสำหรับ Windows
เริ่ม PlayonLinux และคลิกที่ "ติดตั้งโปรแกรม" หน้าต่างใหม่จะเปิดขึ้น เลือก "ติดตั้งโปรแกรมที่ไม่มีในรายการ" (ที่ด้านล่าง) หากเป็นครั้งแรกที่คุณใช้ PlayonLinux คุณอาจไม่มีตัวเลือกนี้ จากนั้นปิดหน้าต่างแล้วเปิดใหม่
เลือก "ติดตั้งในไดรฟ์เสมือนใหม่" ตั้งชื่อไดรฟ์ตามที่คุณต้องการ (แต่ "sonos" ดูเหมือนจะเป็นตัวเลือกที่สมเหตุสมผล) ยกเลิกการเลือกกล่องที่อาจถูกเลือกและเลือก "การติดตั้ง 32- บิต" เรียกดูคอนโทรลเลอร์ sonos ที่คุณดาวน์โหลดและคลิก "ถัดไป"
ตัวติดตั้งเริ่มต้นขึ้น ติดตั้งซอฟต์แวร์ (ปล่อยทุกอย่างตามที่เป็นอยู่) แต่อย่ารันแอพพลิเคชั่นหลังการติดตั้ง ในตอนท้ายของการติดตั้ง PlayonLinux เสนอให้คุณสร้างทางลัด สร้างหนึ่งสำหรับไฟล์ sonos.exe ตอนนี้คุณมีตัวเรียกใช้ Sonos บนเดสก์ท็อปของคุณ คุณสามารถเปลี่ยนไอคอนเป็นไอคอน Sonos และลากไปยังตัวเรียกใช้งาน
Sonos แสดงอยู่ใน PlayonLinux แล้ว คลิกขวาและเลือก "กำหนดค่าไวน์" ใน "แอปพลิเคชัน" ตรวจสอบให้แน่ใจว่าได้เลือก "Windows XP"
ใน PlayonLinux เลือก "Sonos" และคลิกที่ "configure" (ทางด้านขวาของหน้าต่าง) หน้าต่างจะเปิดขึ้น ไปที่ "ติดตั้งคอมโพเนนต์" ค้นหา "dotnet40" และติดตั้ง
เริ่มแอปพลิเคชัน คลิก "ถัดไป" จากนั้นเลือก "ไม่ได้กำหนดค่าไฟร์วอลล์ windows" ตัวควบคุม Sonos ของคุณได้รับการติดตั้งและพร้อมใช้งานแล้ว
สร้าง Sonos Controller แบบเต็มหน้าจอ
หากการดับเบิลคลิกที่แถบเมนูของตัวควบคุม Sonos เหมาะกับคุณให้ข้ามบทช่วยสอนนี้
หากดับเบิลคลิกที่แถบเมนูค้างคอนโทรลเลอร์ของคุณทำตามขั้นตอนเหล่านี้เพื่อให้คอนโทรลเลอร์เต็มหน้าจอ
ตรวจสอบให้แน่ใจว่า Sonos ไม่ทำงาน เปิด PlayonLinux คลิกขวาที่ Sonos แล้วเลือก "configure wine" ไปที่แท็บ "กราฟิก" และเลือก "จำลองเดสก์ท็อปเสมือน" เพิ่มความละเอียดเป็น 1000x800 ปิดไวน์
เริ่ม Sonos แอปพลิเคชันจะเริ่มในเดสก์ท็อปเสมือน มันน่าเกลียด แต่เราจะกำจัดมัน ดับเบิลคลิกที่แถบเมนูเพื่อสร้าง Sonos แบบเต็มจอในเดสก์ท็อปเสมือน ปิด Sonos
กลับไปที่ PlayonLinux คลิกขวา "กำหนดค่าไวน์" ยกเลิกการเลือก "จำลองเดสก์ท็อปเสมือน" ปิดไวน์และ PlayonLinux เริ่ม Sonos มันควรจะเป็นแบบเต็มหน้าจอ
หากคอนโทรลเลอร์ของคุณยังไม่เต็มหน้าจอให้ทำซ้ำการดำเนินการ แต่เพิ่มความละเอียดของเดสก์ท็อปเสมือนให้สูงสุด (คล้ายกับความละเอียดของคุณเอง)
เข้าถึงคลังเพลง
ในการเข้าถึงคลังเพลงของคุณนั้นซับซ้อนกว่าเล็กน้อย แต่ก็ยังทำได้ ในการทำเช่นนั้นเราจะใช้ Samba และสร้างเครือข่ายแชร์
สิ่งแรกที่ต้องทำคือติดตั้ง Samba
sudo apt-get update
sudo apt-get install samba
สร้างชื่อผู้ใช้และรหัสผ่านสำหรับ Samba (อาจแตกต่างกันหรือคล้ายกับชื่อผู้ใช้และรหัสผ่านปกติของคุณ) ในบรรทัดต่อไปนี้แทนที่ชื่อผู้ใช้ด้วยชื่อผู้ใช้ที่คุณเลือก
sudo smbpasswd -a username
คุณจะถูกขอให้สร้างรหัสผ่าน
ในกรณีต่อไปนี้ฉันคิดว่าโฟลเดอร์ที่คุณต้องการแบ่งปันและตั้งเป็นคลังเพลงของคุณคือโฟลเดอร์เพลง (/ home / ชื่อผู้ใช้ / เพลง) ถ้าไม่เปลี่ยนตามที่ต้องการ
แก้ไขไฟล์การกำหนดค่า samba
sudo gedit /etc/samba/smb.conf
เมื่อไฟล์ถูกเปิดเพิ่มที่ส่วนท้ายสุด
[Folder Name]
path = /home/username/Music
valid users = username
read only = n
ตั้งชื่อโฟลเดอร์ตามที่คุณต้องการ เปลี่ยนพา ธ เพื่อตั้งค่าด้วยชื่อผู้ใช้ของคุณ ชื่อผู้ใช้ใน "ผู้ใช้ที่ถูกต้อง" ควรเป็นชื่อผู้ใช้ที่คุณตั้งไว้ก่อนหน้านี้สำหรับ samba บันทึกการเปลี่ยนแปลงและปิด gedit
ตอนนี้คุณต้องรีสตาร์ทแซมบ้า
sudo service smbd restart
โฟลเดอร์เพลงของคุณพร้อมที่จะแชร์แล้ว
เริ่ม Sonos คลิกที่ "จัดการ" และเปิด "การตั้งค่าคลังเพลง" คลิก "เพิ่ม" และเลือก "บนอุปกรณ์เครือข่ายเช่นไดรฟ์ที่เชื่อมต่อกับเครือข่ายที่เก็บข้อมูล (NAS)"
เขียนเส้นทางด้วยวิธีนี้:
//computer's name/folder name
ดังนั้นหากคอมพิวเตอร์ของฉันเรียกว่า "Poulpe" และฉันตั้งชื่อโฟลเดอร์ "Music" ในไฟล์กำหนดค่าแซมบ้าเครือข่ายของฉันจะเป็น:
//Poulpe/Music
Sonos ถามชื่อผู้ใช้และรหัสผ่านของคุณ ให้สิ่งที่คุณตั้งไว้ที่การขอทานในแซมบ้า
Sonos ของคุณทำงานได้เต็มหน้าจอและคุณสามารถเข้าถึงคลังเพลงของคุณ
ขอบคุณ
คงเป็นไปไม่ได้ที่ฉันจะใช้ Sonos บนคอมพิวเตอร์ของฉันและเขียนบทช่วยสอนนี้โดยไม่ต้องเขียนบทความนี้ในบล็อกของ Michael บทช่วยสอนนี้บน help.ubuntu และโพสต์บนฟอรัมสนับสนุน sonos จากคนที่ชื่อ Keith
ภาษาอังกฤษไม่ใช่ภาษาแม่ของฉัน หากมีข้อผิดพลาดหรือหากมีสิ่งใดที่สามารถอธิบายได้ดีกว่าโปรดบอกฉันฉันจะขอบคุณ
แอปพลิเคชั่นที่ใช้ในการควบคุมอุปกรณ์ Sonos มีอยู่เป็นเวลาสองสามปี
ดูของฉันได้ที่: https://launchpad.net/~jlbarriere68/+archive/ubuntu/noson-app
แหล่งที่มาเป็นเจ้าภาพที่https://github.com/janbar/noson-app
ภาพหน้าจอ: https://uappexplorer.com/app/noson.janbar
หากคุณใช้ Spotify - ไคลเอ็นต์ดั้งเดิมของ Spotify ใน Linux สามารถควบคุมระบบ Sonos ของคุณได้แล้ว หนึ่งในคุณสมบัติที่ดีที่สุดที่พวกเขาได้เพิ่ม IMO ..
คุณสามารถหาวิธีติดตั้งไคลเอนต์ Spotify บน Ubuntu ได้ที่นี่:
ฉันใช้ยูทิลิตี้ไคลเอนต์ java ฟรีดังนั้นสิ่งนี้ควรทำงาน Janos
ฉันได้รับตัวควบคุมใหม่ล่าสุดที่ไม่ทำงานกับไวน์และยังไม่เล่นบน linux แต่ฉันสามารถดำเนินการส่วนใหญ่กับยูทิลิตี้ที่; )
บางครั้งฉันก็ใช้คอนโทรลเลอร์ที่เป็นเบราว์เซอร์ในตอนนี้
sudo apt install nodejs-legacy
เพียงแค่ดึงเนื้อหาของSONOS-browser.tar.gz/home/yourusername/bin/
ไป
เรียกใช้ sonos.sh (หรือเพียงแค่คำสั่งในนั้น)
เรียกใช้ sonos.html ภายในโฟลเดอร์ sonos (คั่นหน้าไว้)
มันให้การเข้าถึงรายการโปรดและการควบคุม (ฉันได้ตั้งค่าเริ่มต้นของฉันผ่านตัวควบคุม Android sonos)
PS คุณอาจต้องเปลี่ยน IP เป็น SonoS IP ของคุณ แต่ฉันคิดว่ามันควรจะทำงานได้โดยไม่มีการเปลี่ยนแปลงใด ๆ
สำหรับโปรแกรมเมอร์ฉันพบว่าใช้http://python-soco.comกับ ipython ได้อย่างสะดวกสบายตัวอย่างเช่น:
import soco
s=soco.SoCo('1.2.3.4')
s.clear_queue()
with open('playlist.m3u', 'r') as f:
for l in f:
s.add_uri_to_queue('http://192.168.1.5:8080/MusicShared/'+l.rstrip('\n'))
s.play _from_queue(0)
ตัวอย่างที่ยาวกว่าจาก https://gist.github.com/gwpl/92ab540016bf43359654d5b0f013b1ec :
#!/usr/bin/env python3
import sys
import soco
# Take ip from `socos list` or soco.discover()
ip='192.168.1.106'
print('Playing on Speaker with ip='+ip)
s=soco.SoCo(ip)
print(' get_speaker_info()='+str(s.get_speaker_info()))
s.clear_queue()
for m3u_filename in sys.argv[2:]:
print('Adding m3u...'+m3u_filename)
with open(m3u_filename, 'r') as m3u_filehandler:
for line in m3u_filehandler:
filename = line.rstrip('\n')
print('..."'+filename+'"')
s.add_uri_to_queue('http://192.168.1.99:8080/MusicShared/'+filename)
s.play_from_queue(0)
(btw. เธรดของฉันเกี่ยวกับสิ่งนี้: https://twitter.com/GWierzowiecki/status/991453357234585601 )