สารบัญ:

เสียงซิงโครนัสในบ้านของ Raspberry Pi พร้อมรีโมทแอพโทรศัพท์: 10 ขั้นตอน (พร้อมรูปภาพ)
เสียงซิงโครนัสในบ้านของ Raspberry Pi พร้อมรีโมทแอพโทรศัพท์: 10 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: เสียงซิงโครนัสในบ้านของ Raspberry Pi พร้อมรีโมทแอพโทรศัพท์: 10 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: เสียงซิงโครนัสในบ้านของ Raspberry Pi พร้อมรีโมทแอพโทรศัพท์: 10 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: รีวิวบอร์ด Raspberry Pi 5 2024, พฤศจิกายน
Anonim
Raspberry Pi เสียงซิงโครนัสทั้งบ้านพร้อมรีโมทแอพโทรศัพท์
Raspberry Pi เสียงซิงโครนัสทั้งบ้านพร้อมรีโมทแอพโทรศัพท์
Raspberry Pi เสียงซิงโครนัสทั้งบ้านพร้อมรีโมทแอพโทรศัพท์
Raspberry Pi เสียงซิงโครนัสทั้งบ้านพร้อมรีโมทแอพโทรศัพท์

เป้าหมายคือการซิงโครไนซ์เสียงและ/หรือแต่ละแหล่งในห้องใด ๆ ควบคุมได้ง่ายด้วยโทรศัพท์หรือแท็บเล็ตผ่าน iTunes Remote (apple) หรือ Retune (android) ฉันยังต้องการให้โซนเสียงเปิด/ปิดโดยอัตโนมัติดังนั้นฉันจึงหันไปใช้ Raspberry Pi และ Hifiberry เพื่อตั้งค่าและลืมวิธีแก้ปัญหา

รายการอะไหล่สำหรับโซนเสียงหนึ่งโซน:

  • ราสเบอร์รี่ pi 3 $35
  • การ์ด SD 16G $8
  • ไฮไฟเบอร์รี่ AMP2 $50
  • แหล่งจ่ายไฟ 5.5 มม. x 2.1 มม. ปลั๊ก DC, 12V 5A 60W $12
  • ลำโพง 75 เหรียญ (กันสภาพอากาศสำหรับเพดานห้องน้ำ)
  • เซิร์ฟเวอร์เพลง (พีซีที่ใช้ iTunes)

สำหรับการตั้งค่าเท่านั้น

  • เมาส์ USB
  • แป้นพิมพ์ USB
  • จอแสดงผล HDMI
  • ปลั๊กไฟ USB
  • สาย USB เป็นไมโคร USB

ขั้นตอนที่ 1: ดาวน์โหลดไปยังพีซีของคุณ

อัปเดต 7/5/19 ข้ามคำแนะนำนี้และเพียงแค่ติดตั้ง

โอ้ พระเจ้า มันง่ายในการติดตั้ง/ใช้งาน และทำทุกอย่างที่คุณจะได้รับจากบทช่วยสอนนี้ และอีกมากมาย มันยังให้คุณตั้งค่าให้ทำงานเป็นจุดเชื่อมต่อได้หากต้องการ คุณจึงสามารถเพลิดเพลินกับระบบเสียงแบบ headless ที่ยอดเยี่ยมได้ ตาราง.

  1. ดาวน์โหลดตัวจัดรูปแบบการ์ด Sd (หรือไม่ ฉันไม่ต้องการมัน) บิลด์นี้จะใช้เป็นแอมพลิฟายเออร์ในสนามบินเท่านั้น ดังนั้น 16G จึงมีพื้นที่เหลือเฟือและการ์ดถูกฟอร์แมตเป็น fat32
  2. NOOBS บนเครื่อง windows 10 ของฉัน ฉันเพียงแค่เลือก sd card ของฉันเป็นปลายทางเพื่อคลายซิป NOOBS หลังจากดาวน์โหลด
  3. ติดตั้งโปรแกรมแสดง VNC บนพีซี เพื่อให้คุณสามารถเดสก์ท็อประยะไกลไปยัง Pi ของคุณได้หลังจากที่คุณตั้งค่าแล้ว ติดตั้งบน Raspberry Pi ของคุณแล้ว

ขั้นตอนที่ 2: ติดตั้ง Raspbian OS

ติดตั้ง Raspbian OS
ติดตั้ง Raspbian OS
  1. ใส่การ์ด SD ในราสเบอร์รี่ของคุณและเชื่อมต่อจอภาพ HDMI, แป้นพิมพ์ USB และเมาส์ USB
  2. จ่ายไฟให้กับ Pi ด้วยการเชื่อมต่อ mini usb ห้ามใช้ไฟ usb หากติดตั้งแอมป์ไฮไฟเบอร์รี่ไว้ (แอมป์ไฮไฟเบอร์รี่ให้พลังแก่ราสเบอร์รี่ของคุณ)
  3. เมาส์และคีย์บอร์ด usb จะทำงานให้คุณเมื่อเปิดเครื่อง เลือกภาษา/แป้นพิมพ์ของคุณที่ด้านล่างของหน้าจอ
  4. เลือกระบบปฏิบัติการ Raspian
  5. หากใช้ wifi ให้เลือกเครือข่าย wifi ของคุณและลงชื่อเข้าใช้ สิ่งดีๆ มากมายจะพร้อมใช้งานหลังจากที่ pi ของคุณเข้าร่วมเครือข่ายแล้ว อย่าทำอย่างนั้น เพียงแค่ติดกับ raspbian คลิกติดตั้ง ดูข้อมูลเกี่ยวกับราสเบอร์รี่ของคุณบนหน้าจอขณะติดตั้ง ผมล้อเล่น. ไปทำอะไรซักอย่างแล้วค่อยกลับมาดูใหม่ มันจะใช้เวลาสักครู่

ขั้นตอนที่ 3: หลังจากติดตั้ง Raspbian OS

  1. หลังจากบูทเดสก์ท็อป raspbian ใหม่ของคุณแล้ว ให้คลิกที่ราสเบอร์รี่ (เหมือนกับเมนูเริ่มใน Windows)
  2. เลือกการกำหนดค่า Raspberry Pi และทำทั้งหมดต่อไปนี้:

    1. เปลี่ยนรหัสผ่าน!
    2. อินเทอร์เฟซ

      เปิดใช้งาน SSH และ VNC (ฉันชอบ VNC ฉันจะบอกคุณว่าทำไมในภายหลัง)

    3. รองรับหลายภาษา

      ตั้งค่าข้อมูลทั้งหมดของคุณ (เขตเวลา ประเทศ …)

    4. เปลี่ยนชื่อโฮสต์

      เปลี่ยนชื่อเป็นโซนเสียง ทำให้ชื่อไม่ซ้ำกัน คุณจะมีหลายโซน

  3. รีบูต

ขั้นตอนที่ 4: ค้นหาที่อยู่ IP ของ Rasberry

  1. ราสเบอร์รี่ที่ตั้งค่าเป็นแหล่งกำเนิดเสียงแบบไม่มีหัวจะไม่สะดวกในการเข้าถึงโดยตรง คุณจะต้องการจากระยะไกลจากพีซี
  2. คุณจะต้องทราบที่อยู่ IP ของ Pi ของคุณ

    บนเดสก์ท็อป raspbian หากคุณวางเมาส์เหนือไอคอน wifi ในทาสก์บาร์ กล่องข้อมูลจะปรากฏขึ้นซึ่งคุณสามารถดู IP ที่เราเตอร์ของคุณกำหนดให้กับราสเบอร์รี่ เราเตอร์ของฉันมีคุณสมบัติในการเลือกอุปกรณ์บนเครือข่ายและกำหนด IP เดียวกันเสมอ นี่เป็นเส้นทางที่มีความต้านทานน้อยที่สุดในการกำหนดที่อยู่ IP "คงที่" ให้กับ Pi ของฉัน ที่อยู่ IP เฉพาะทำให้ชีวิตง่ายขึ้นมาก

ขั้นตอนที่ 5: ติดตั้ง Stuff

ติดตั้ง Stuff
ติดตั้ง Stuff
ติดตั้ง Stuff
ติดตั้ง Stuff
ติดตั้ง Stuff
ติดตั้ง Stuff

หากคุณยังไม่ได้แนบการ์ดเสียง / แอมพลิฟายเออร์ให้ทำตอนนี้โดยปิด Pi ของคุณ

เพิ่มพลังให้ Pi ของคุณและเปิดโปรแกรมดู VNC บนพีซีของคุณ แอปเซิร์ฟเวอร์ VNC รวมอยู่ใน Raspberry Pi และคุณเปิดใช้งานในขั้นตอนก่อนหน้า สร้างการเชื่อมต่อใหม่โดยบอกผู้ดู VNC ถึง IP ของราสเบอร์รี่ของคุณ

มีทางลัดหน้าต่างคำสั่งบนทาสก์บาร์บนเดสก์ท็อปของราสเบอร์รี่ของคุณ เปิดพรอมต์คำสั่งและป้อน:

sudo apt-get update

หลังจากเสร็จสิ้นให้ป้อน:

sudo apt-get อัพเกรด

ปิดพรอมต์คำสั่งและเปิดเมนูราสเบอร์รี่ เราจะติดตั้งซอฟต์แวร์ด้วยวิธีง่ายๆ

คลิกการตั้งค่า => เพิ่ม/ลบซอฟต์แวร์

ค้นหา shairport-sync และติดตั้ง

ทำเช่นเดียวกันสำหรับ EQ

คุณสามารถติดตั้ง EQ ด้วย

sudo apt-get install -y libasound2-plugin-equal

ขั้นตอนที่ 6: อีกครั้งในพรอมต์คำสั่ง

เราต้องรู้อะไรเกี่ยวกับการ์ดเสียงบ้าง

เปิดพรอมต์บรรทัดคำสั่ง

ป้อนคำสั่ง aplay –l เหมือนในตัวอย่างที่นี่

สังเกตว่าเครื่องขยายเสียงไฮไฟเบอร์รี่เป็นการ์ด 1

pi@Balcony:~ $ เล่น -l

**** รายการอุปกรณ์ฮาร์ดแวร์ PLAYBACK **** การ์ด 0: ALSA [bcm2835 ALSA] อุปกรณ์ 0: bcm2835 ALSA [bcm2835 ALSA] อุปกรณ์ย่อย: อุปกรณ์ย่อย #0: อุปกรณ์ย่อย #0 อุปกรณ์ย่อย #1: อุปกรณ์ย่อย #1 อุปกรณ์ย่อย #2: อุปกรณ์ย่อย #2 อุปกรณ์ย่อย #3: อุปกรณ์ย่อย #3 อุปกรณ์ย่อย #4: อุปกรณ์ย่อย #4 อุปกรณ์ย่อย #5: อุปกรณ์ย่อย #5 อุปกรณ์ย่อย #6: อุปกรณ์ย่อย #6 อุปกรณ์ย่อย #7: อุปกรณ์ย่อย #7 การ์ด 0: ALSA [bcm2835 ALSA] อุปกรณ์ 1: bcm2835 ALSA [bcm2835 IEC958/HDMI] อุปกรณ์ย่อย: อุปกรณ์ย่อย #0: อุปกรณ์ย่อย #0 การ์ด 1: sndrpihifiberry [snd_rpi_hifiberry_dacplus] อุปกรณ์ 0: HiFiBerry DAC+ ไฮไฟ pcm512x-hifi-0 อุปกรณ์ย่อย: อุปกรณ์ย่อย #0:

ขั้นตอนที่ 7: สร้างไฟล์ Asound.conf

คุณต้องมีไฟล์ "asound.conf" ซึ่งอยู่ที่ /etc/asound.conf

มาทำกัน (ตอนนี้เราจะมาทำความเข้าใจกันว่าทำไมฉันถึงชอบให้ VNC อยู่ห่างไกลจาก Pi ของคุณกับบางอย่างเช่นสีโป๊ว)

ที่พรอมต์คำสั่งบน Pi ของคุณไปที่ไดเร็กทอรี / etc / และป้อนสิ่งนี้:

sudo leafpad asound.conf

หากคุณใช้ผงสำหรับอุดรู คำสั่ง leafpad จะไม่ทำงาน ในกรณีนั้นคุณจะพิมพ์:

sudo nano asound.conf

คำสั่ง nano เปิดตัวแก้ไขข้อความในหน้าต่างคำสั่ง ใช้งานง่ายพอใช้แต่ค่อนข้างอึดอัด คุณไม่สามารถใช้เมาส์ได้และฉันพบว่ามันอ่านยากนิดหน่อย

ในทางกลับกัน Leafpad จะเปิดหน้าต่างแยกต่างหากที่ทำงานเหมือนแผ่นจดบันทึกในหน้าต่าง ฉันพบว่าอ่านง่ายกว่าและใช้งานง่ายกว่ามาก

อย่างไรก็ตามคุณไปถึงที่นั่น คุณต้องทำให้ asound.conf ของคุณมีลักษณะดังนี้:

pcm.!default {

ประเภทปลั๊ก slave.pcm plugequal; } ctl.!default { พิมพ์ hw การ์ด 1 } ctl.equal { ประเภทเท่ากับ; } pcm.plugequal { ประเภทเท่ากับ; slave.pcm "plughw:1, 0"; } pcm.equal { ปลั๊กชนิด; slave.pcm plugequal; }

สังเกตบรรทัดที่บอกว่า hw card 1 และ plughw:1, 0

หากอุปกรณ์เสียงของคุณที่พบในขั้นตอนก่อนหน้าไม่ใช่การ์ด 1 คุณจะต้องแก้ไขบรรทัดที่นี่เพื่อให้สะท้อนถึงการ์ดของคุณ

บันทึกงานของคุณ ต้องตั้งชื่อเป็น asound.conf และอยู่ในไดเร็กทอรี /etc/

ปิดพรอมต์คำสั่ง (คุณสามารถป้อนคำสั่ง "exit" เพื่อปิดเทอร์มินัล)

รีบูต! ฉันลืมรีบูตเมื่อถึงจุดนี้มาก่อน และนั่นน่าหงุดหงิดมากเมื่อคุณคิดว่ามีบางอย่างผิดพลาด และคุณเริ่มมีปัญหาในการแก้ไขปัญหาเมื่อสิ่งที่คุณต้องทำคือรีบูต

คุณต้องรีบูตที่นี่

ขั้นตอนที่ 8: การเปลี่ยนระดับ Eq

การเปลี่ยนระดับ Eq
การเปลี่ยนระดับ Eq

หลังจากบูทเครื่องแล้ว คุณจะสามารถออกอากาศไปยังราสเบอร์รี่ของคุณได้โดยตรงจากโทรศัพท์ของคุณ สิ่งนี้จะไม่ซิงค์หลายห้อง แต่ก็ยังยอดเยี่ยม เล่นอะไรบางอย่าง

คุณอาจพบว่าห้องนั้นต้องการ EQ บ้าง เปิดพรอมต์คำสั่งบนราสเบอร์รี่ของคุณอีกครั้ง แล้วเราจะได้ชุด EQ

ที่ไดเร็กทอรีโฮมของพรอมต์คำสั่งของคุณให้พิมพ์:

sudo -u shairport-sync alsamixer -D เท่ากัน

นี้ทำอะไร?

sudo = สิทธิ์ของผู้ดูแลระบบ

-u shairport-sync = รันคำสั่งในฐานะผู้ใช้อื่น ในกรณีนี้ shairport-sync

alsamixer -D equal = เปิดอีควอไลเซอร์

อย่างไรก็ตาม หากคุณป้อน:

อัลซามิเซอร์

จะนำคุณไปสู่การตั้งค่าสำหรับการ์ดเสียงของคุณ

ขั้นตอนที่ 9: ใช้ iTunes จากพีซีและประหยัดแบตเตอรี่ในโทรศัพท์ของคุณ

ใช้ iTunes จากพีซีและประหยัดแบตเตอรี่ในโทรศัพท์ของคุณ
ใช้ iTunes จากพีซีและประหยัดแบตเตอรี่ในโทรศัพท์ของคุณ
ใช้ iTunes จากพีซีและประหยัดแบตเตอรี่ในโทรศัพท์ของคุณ
ใช้ iTunes จากพีซีและประหยัดแบตเตอรี่ในโทรศัพท์ของคุณ

ณ จุดนี้คุณมีเครื่องเล่นเสียงที่สนามบินที่ยอดเยี่ยมอยู่แล้ว ตอนนี้เราสามารถยกระดับได้ด้วยการเปิด iTunes

ติดตั้งแอพ iTunes Remote หรือ Retune บน Android เปิดแอพนั้นแล้วคุณสามารถเชื่อมโยงอุปกรณ์ของคุณกับ iTunes ที่กำลังทำงานอยู่บนพีซีของคุณ

ตอนนี้คุณมี shairport-sync ที่ยอดเยี่ยมแล้ว ทุกโซนของคุณกำลังเล่นเป็นหนึ่งเดียว คุณสามารถควบคุมระดับเสียงในแต่ละโซนและเรียกดูคลัง iTunes ของคุณจากอุปกรณ์ทั้งหมดที่คุณติดตั้งแอพ ภรรยาของคุณสามารถเริ่มเล่นเพลงได้ และคุณสามารถเปิดแอปในโทรศัพท์ของคุณ คลิกเลย กำลังเล่น และดูว่ากำลังเล่นอะไรอยู่ราวกับว่าคุณทำเองและควบคุมมัน หรือคุณสามารถปิดห้องที่คุณอยู่และออกอากาศอย่างอื่นไปยังโซนของคุณได้โดยตรงจากโทรศัพท์ของคุณเหมือนที่เคยทำก่อนที่ iTunes จะทำงาน

เราปล่อยให้ iTunes ทำงานตลอดเวลาบนพีซีในชั้นใต้ดินซึ่งมีคลัง iTunes ขนาดใหญ่มากของเราอยู่บน RAID1 NAS

ฉันเกือบลืมบอกไป คุณสามารถควบคุมระบบนี้ด้วย apple watch ได้ เนื่องจาก Apple Watch กันน้ำได้ ฉันจึงเปลี่ยนเพลงและปรับระดับเสียงขณะอาบน้ำได้

ขั้นตอนที่ 10: ขั้นตอนโบนัส: พารามิเตอร์การซิงค์ Sharport ขั้นสูง

วิธีที่คำแนะนำนี้มีการตั้งค่าราสเบอร์รี่ของคุณ ไม่จำเป็นต้องเปลี่ยนไฟล์ shairport-sync.conf แต่ฉันจะทำการปรับนี้เพื่อสร้างโซนเสียงของฉัน ดังนั้นฉันจึงแสดงรายการที่นี่

ใช้วิธีการที่คุณต้องการสำหรับการแก้ไขข้อความบรรทัดคำสั่งเหมือนที่คุณทำในขั้นตอนก่อนหน้า ทำการเปลี่ยนแปลงไฟล์การกำหนดค่า shairport-sync /etc/shairport-sync.conf

ฉันยกเลิกความคิดเห็น "allow_session_interruption" และเปลี่ยนเป็น = "ใช่"

// พารามิเตอร์ขั้นสูงสำหรับควบคุมวิธีที่ Shairport Sync รันเซสชั่นcontrol = { // run_this_before_play_begins = "/full/path/to/application and args"; // ตรวจสอบให้แน่ใจว่าแอปพลิเคชันได้รับอนุญาต มันเป็นสคริปต์ รวม #!… สิ่งที่อยู่ในบรรทัดแรก // run_this_after_play_ends = "/full/path/to/application and args"; // ตรวจสอบให้แน่ใจว่าแอปพลิเคชันได้รับอนุญาต มันเป็นสคริปต์ รวม #!… สิ่งในบรรทัดแรก // wait_for_completion = "no"; // ตั้งค่าเป็น "ใช่" เพื่อให้ Shairport Sync รอจนกว่าแอปพลิเคชัน "run_this…" จะหยุดทำงานก่อนที่จะดำเนินการต่อ allow_session_interruption = "yes"; // ตั้งค่าเป็น "ใช่" เพื่ออนุญาตให้อุปกรณ์อื่นขัดจังหวะ Shairport Sync ในขณะที่กำลังเล่นจากแหล่งเสียงที่มีอยู่ // session_timeout = 120; // รอจำนวนวินาทีนี้หลังจากที่แหล่งที่มาหายไปก่อนที่จะยุติเซสชันและพร้อมใช้งานอีกครั้ง };

วิธีนี้จะช่วยให้คุณจี้โซนเสียงกับแหล่งที่มาของคุณเมื่อมีคนอื่นใช้งานอยู่

หากปราศจากการเปลี่ยนแปลงนี้ โซนอาจปฏิเสธที่จะเล่นเพลงของคุณเมื่อมีบุคคลอื่นใช้งานอยู่แล้ว สิ่งนี้ไม่จำเป็นหากคุณใช้แอพระยะไกลของ iTunes อุปกรณ์ทั้งหมดที่ใช้แอพนั้นทำหน้าที่เป็นรีโมทเพื่อควบคุมแหล่งเดียวกัน การเปลี่ยนแปลง shairport-sync.conf นี้มีไว้สำหรับเมื่อคุณกำลังจะออกอากาศไปยังโซนจากแหล่งใหม่ เช่น โดยตรงจากโทรศัพท์ของคุณไปยังโซนเดียวที่เล่นจากแหล่งอื่นอยู่แล้ว หากคุณคิดว่าการหยุดชะงักของเซสชั่นฟังดูเหมือนเสียงอนาธิปไตยซึ่งสามารถนำไปสู่การนองเลือดเท่านั้น ให้ข้ามขั้นตอนโบนัสนี้

แนะนำ: