สารบัญ:
- ขั้นตอนที่ 1: ข้อกำหนดเบื้องต้น:
- ขั้นตอนที่ 2: ติดตั้ง Python และ Pip
- ขั้นตอนที่ 3: ติดตั้ง MPG123 และ Adafruit Blinka
- ขั้นตอนที่ 4: ปรับระดับเสียงเป็น 50% ใน Alsamixer
- ขั้นตอนที่ 5: การบ้านบางส่วน: ค้นหาสถานีวิทยุ 5 แห่งที่น่าฟัง
- ขั้นตอนที่ 6: ตัวเลือก: ขูด URL โดยใช้ Vtuner
- ขั้นตอนที่ 7: ตั้งค่าปุ่มของเรา
- ขั้นตอนที่ 8: ระบุพิน GPIO ของเรา
- ขั้นตอนที่ 9: รหัส
- ขั้นตอนที่ 10: ทดสอบในแซนด์บ็อกซ์ของเรา
- ขั้นตอนที่ 11: ตั้งค่ารหัสของเราให้ทำงานโดยอัตโนมัติบน Boot
- ขั้นตอนที่ 12: ทดสอบอีกครั้ง
- ขั้นตอนที่ 13: ใส่กล่องแล้วเสร็จ
วีดีโอ: Keeping It Stoopid Simple Internet Radio: KISSIR: 13 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:02
บางครั้งก็ต้องสัมผัส ไม่มีอินเทอร์เฟซใด ๆ เพียงแค่ปุ่ม
Raspberry Pi ในฐานะเครื่องเล่นวิทยุอินเทอร์เน็ตไม่มีอะไรใหม่ และมีคำแนะนำมากมายเกี่ยวกับวิธีสร้างเครื่องเล่นวิทยุอินเทอร์เน็ตโดยใช้ Raspberry Pi ที่มีหรือไม่มีจอภาพเพื่อสตรีมสถานีอินเทอร์เน็ตจากทั่วโลก หากคุณต้องเลือกที่จะไร้หัว (โดยไม่ใช้จอมอนิเตอร์) คุณยังคงต้องใช้วิธีการเชื่อมต่อกับ pi player ซึ่งมักจะเป็นเว็บอินเตอร์เฟส หากไม่ใช่วิธีการสื่อสารกับโฮสต์โดยตรง เช่น ssh คำแนะนำนี้จะแตกต่างกันเล็กน้อย เราจะใช้การกดปุ่มง่ายๆ เพื่อส่งคำสั่งไปยัง pi ซึ่งทำให้ไม่จำเป็นต้องใช้เว็บอินเตอร์เฟสและหน้าจอ LCD ฟังดูง่ายพอใช่ไหม (?)
เราจะเริ่มต้นด้วยการออกแบบที่เรียบง่ายโดยใช้ปุ่มรหัสสี แต่ละสีจะเป็นตัวแทนของสถานีวิทยุอินเทอร์เน็ต เราจะแนะนำรหัสหลามเพื่อจัดการกับการกดปุ่ม: การกดจะดำเนินการคำสั่งเพื่อเล่นสถานีวิทยุอินเทอร์เน็ตที่เข้ารหัสไว้ล่วงหน้าโดยใช้ MPG123 ซึ่งเป็นเครื่องมือบรรทัดคำสั่งที่ยอดเยี่ยมสำหรับการเล่นเสียงบน pi ของเรา
ทักษะหลามของคุณไม่จำเป็นต้องก้าวหน้า อันที่จริงฉันเปลี่ยนจาก "Hello World" มาเขียนสิ่งนี้ และอย่างที่คุณเห็น ฉันยืมรหัสจำนวนมาก - ดังนั้นถ้าฉันทำได้และจัดทำเป็นเอกสารไว้บ้าง คนอื่นๆ ก็ไม่น่าจะมีปัญหา
ไปกันเถอะ!
เสบียง:
วัสดุที่จำเป็น
- Raspberry pi/ pi zero w พร้อมส่วนเสริมทั้งหมด: พาวเวอร์ซัพพลาย, การ์ด SD และ Raspbian หรือ Raspbian lite
- อินเตอร์เน็ตไร้สายและอินเทอร์เน็ต
- พีซีเครื่องอื่นเพื่อทำการท่องเว็บและความสามารถในการ SSH ไปยังราสเบอร์รี่pi
- ตัวแปลงดิจิทัลเป็นแอนะล็อก (DAC) - เป็นทางเลือก แต่คุณจะรู้สึกขอบคุณ
- เครื่องขยายเสียง
- ลำโพง
- สายต่อและจัมเปอร์
- หัวแร้งและหัวแร้ง
- Perf Board สำหรับปุ่ม
- ปุ่มสัมผัส: ปกติเปิด- หนึ่งปุ่มสำหรับเพลงแต่ละประเภท ปุ่มเปิดปิด และปุ่มปิดเสียงเสริม (แนะนำ 7 ปุ่ม)
- หน่วยที่อยู่อาศัยสำหรับสิ่งที่กล่าวมาทั้งหมด (ไม่จำเป็น แต่เป็นระเบียบเรียบร้อย)
ขั้นตอนที่ 1: ข้อกำหนดเบื้องต้น:
เราจะเริ่มต้นโดยสมมติว่าคุณได้ตั้งค่า raspberry pi, DAC และแอมพลิฟายเออร์แล้ว และจะถือว่าคุณสามารถเข้าถึงอินเทอร์เน็ตได้ เนื่องจากมีตัวเลือกอุปกรณ์เสียง ค่ากำหนด และตัวเลือกสำหรับการฟังเสียงจำนวนมาก เราจะถือว่าการตั้งค่าของคุณเสร็จสมบูรณ์แล้ว: คุณควรมีเสียงที่ออกมาจากลำโพงของคุณก่อนที่จะเริ่มโครงการนี้ เราจะต้อง ssh ไปที่ raspberry pi ด้วย ดังนั้นโดยใช้การกำหนดค่า pi ตรวจสอบให้แน่ใจว่าอินเทอร์เฟซได้เปิดใช้งาน ssh แล้ว ฉันจะใช้ Raspbian lite และแนะนำให้คุณติดตั้งสำเนาล่าสุดบนการ์ด sd ใหม่เฉพาะสำหรับโครงการนี้ หากประสบความสำเร็จ เราจะสร้างอุปกรณ์ติดตั้งแบบสแตนด์อโลนที่เปิดใช้งานได้ตลอด 24 ชั่วโมงทุกวันในฐานะอุปกรณ์ฟังเฉพาะ
ขั้นตอนที่ 2: ติดตั้ง Python และ Pip
ฉันชอบที่จะ ssh ไปที่ pi โดยใช้พีซีเครื่องอื่น และใช้งานฟังก์ชั่นที่จำเป็นทั้งหมดโดยใช้เซสชัน ssh แต่ฉันเดาว่ามันเป็นไปได้ที่จะตั้งค่า pi เป็นจอภาพ คีย์บอร์ด และเมาส์ในขั้นต้น และทำงานโดยตรงบน pi จนกว่าจะถึง ทำงานแล้วปรับใช้เป็นแบบสแตนด์อโลน
อันดับแรก ให้ทำการตรวจสอบบำรุงรักษาระบบและเวอร์ชันหลามของเราเป็นประจำ:
sudo apt-get update
sudo apt-get อัพเกรด
ตรวจสอบให้แน่ใจว่าติดตั้ง Python แล้ว ในเซสชันเทอร์มินัลพิมพ์สิ่งต่อไปนี้ที่พรอมต์คำสั่ง:
หลาม --version
หากคุณเห็น python 2.7.13 (หรือเก่ากว่า) ให้ติดตั้ง python 3.+:
sudo apt-get ติดตั้ง python3
sudo apt-get ติดตั้ง python-pip
sudo apt-get ติดตั้ง python3-pip
sudo pip3 ติดตั้ง -- อัพเกรด pip
ขั้นตอนที่ 3: ติดตั้ง MPG123 และ Adafruit Blinka
ตอนนี้วางรากฐานแล้ว มีการติดตั้งเพิ่มเติมอีกเล็กน้อย:
MPG123 เป็นซอฟต์แวร์เสียงที่จะเล่นเพลงของเรา การติดตั้งนั้นง่ายมาก:
sudo apt-get ติดตั้ง mpg123
ฉันค้นคว้ามามาก และพบเทมเพลตที่ยอดเยี่ยมบนเว็บไซต์ของ Adafruit เกี่ยวกับการเล่นไฟล์เสียงโดยใช้การกดปุ่ม ดังนั้น แทนที่จะเริ่มต้นจากศูนย์ เรามาดำเนินการต่อในแนวทางที่ผู้คนใน Adafruit ได้จุดประกายให้เราแล้ว โปรแกรมของพวกเขาขอให้เราติดตั้ง Adafruit Blinka:
$ sudo pip3 ติดตั้ง adafruit-blinka
ก่อนที่เราจะดำเนินการต่อ มาตรวจสอบอย่างรวดเร็วเพื่อให้แน่ใจว่าเรามีการตั้งค่า Alsa:
aplay --version
ผลลัพธ์ของเราควรอ่าน: เวอร์ชัน 1.1.3 โดย Jaroslav Kysela
ขั้นตอนที่ 4: ปรับระดับเสียงเป็น 50% ใน Alsamixer
ตอนนี้ ให้ใช้มาตรการป้องกันไว้ก่อนและปรับระดับเสียงของเราเป็น 50% เพื่อหลีกเลี่ยงความประหลาดใจที่ทำให้หูอื้อ:
ที่พรอมต์คำสั่ง พิมพ์ alsamixer:
อัลซามิเซอร์
หากเราดูหน้าจอสีแดงขาวและเขียว หรือระดับเสียงสูงสุด 100% เป็นความคิดที่ดีที่จะลดระดับเสียงลงเหลือ 50% เพื่อประหยัดแก้วหูของเรา เราสามารถปรับในภายหลังได้เสมอ (ขึ้นหรือลง) หากจำเป็น
ขั้นตอนที่ 5: การบ้านบางส่วน: ค้นหาสถานีวิทยุ 5 แห่งที่น่าฟัง
เราต้องการหนึ่งสถานีสำหรับแต่ละปุ่ม อันที่จริงเราต้องการ URL ของสถานี การกดปุ่มจะเรียก URL ของสถานีวิทยุอินเทอร์เน็ตด้วยรหัสบรรทัดเดียวง่ายๆ อย่างไรก็ตาม เรากำลังก้าวไปข้างหน้า ดังนั้นเราจึงมีการบ้านที่ต้องทำ ค้นหาสถานีวิทยุ 5 สถานีและ URL การค้นหาสถานีวิทยุ 5 สถานีไม่ใช่เรื่องยาก แต่การค้นหา URL ของสถานีวิทยุนั้นอาจเป็นเรื่องยาก ฉันจะอธิบายว่าทำไมในอีกสักครู่
SomaFm * เป็นแหล่งที่ดีในการเริ่มต้น โดยเฉพาะอย่างยิ่งหากคุณยังไม่มีความคิดเกี่ยวกับสิ่งที่คุณต้องการฟังในตอนนี้ พวกเขามีตัวเลือกเพลงที่หลากหลาย ซึ่งฉันไม่คิดว่าเป็นการล่วงละเมิด ไม่มีโฆษณา และส่วนที่ดีที่สุด: พวกเขาเปิดเผย URL ของพวกเขาอย่างเปิดเผย ในการคว้า URL ให้คลิกที่ภาพของสถานีที่คุณสนใจ และที่แถบนำทางด้านซ้าย ให้คลิก "ลิงก์สตรีมโดยตรง" จากนั้นค้นหาส่วน MP3 และขูด URL ของอัตราการเล่นสูงสุด (เช่น 128 จังหวะ 64) วาง URL ลงในโปรแกรมแก้ไขข้อความหรือแผ่นจดบันทึกก่อน
ตัวอย่างเช่น หากต้องการขูด Christmas Rocks URL จะเป็น: (เราไม่ต้องการคำอธิบายเซิร์ฟเวอร์)
ice4.somafm.com/xmasrocks-128-mp3
นอกโลกของ SomaFm จะได้รับความน่าสนใจเล็กน้อย หลายสถานีใช้คนกลางระหว่างผู้ฟังกับสถานี ไม่ว่าจะเป็นเพื่อการโฆษณา การตลาด หรือการติดตาม - และโดยทั่วไปแล้ว ผมพยายามหลีกเลี่ยงสถานีประเภทนี้ เนื่องจากพ่อค้าคนกลางชอบให้คุณฟังสถานีผ่านพวกเขา มักจะค่อนข้างยากที่จะหา URL; และนั่นคือที่มาของ Vtuner
* ฉันคงจะสะเพร่าถ้าไม่ได้ขอให้คุณบริจาคให้กับสถานีวิทยุที่คุณชื่นชอบ เนื่องจากหลายสถานีอาศัยการสนับสนุนผู้ฟังเพียงอย่างเดียว
ขั้นตอนที่ 6: ตัวเลือก: ขูด URL โดยใช้ Vtuner
มาถึงส่วนที่สนุกแล้ว….ที่หน้าแรกของ Vtuner ให้ตรวจสอบลิงก์รายการสถานีขนาดใหญ่ที่มุมขวาบน เลือกแนวเพลงที่คุณสนใจ แล้วจัดเรียงด้วยความเร็วที่เร็วที่สุด ซึ่งคุณจะเห็นรายชื่อสถานี เลือกสถานีที่คุณคิดว่าคุณอาจชอบ คลิกที่ลิงก์หรือปุ่มเล่นและลองฟังเพลง หากไม่ใช่เพื่อคุณ ไม่ต้องกังวล ให้ทำซ้ำจนกว่าเราจะพบวิธีที่เหมาะสมกับความบันเทิงในระยะยาว ในภาพหน้าจอของฉัน ฉันเลือกเพลงคันทรี่เวอร์ชันอิมพัลส์ดิจิทัล และในหน้าจอถัดไป ฉันสังเกตเห็นว่ากำลังเล่นเพลงจากโครเอเชีย เพลงคันทรี่จากโครเอเชียฟังดูน่าสนใจทีเดียว
ฉันชอบมัน. แต่ฉันจะรับ URL ได้อย่างไร เพียงคลิกขวาบนพื้นที่สีขาวทางด้านขวาของภาพสถานี ใต้ชื่อสถานี แล้วเลือก "ดูแหล่งที่มาของหน้า" แล้วเลื่อนลงไปที่แถวที่ 150 เรากำลังหาบรรทัดที่ระบุว่า "// ลอง เพื่อจัดการกับ icecast". และพบ url ด้านล่างทันที!
orion.shoutca.st:8110/stream
เนียนกริ๊บ!
ทำซ้ำขั้นตอนนี้จนกว่าเราจะมีอย่างน้อย 5 สถานีในรายการของเรา
ตัวเลือกเสริม: สำหรับการวัดพิเศษ หากคุณพบแนวเพลง 5 ประเภทที่คุณสนใจ (แทนที่จะเป็น 5 สถานี) ให้สร้างรายการสถานีวิทยุสำหรับแต่ละประเภทและบันทึกรายการเป็นไฟล์ข้อความ เราจะกลับมาที่นี่ในภายหลัง
ขั้นตอนที่ 7: ตั้งค่าปุ่มของเรา
ส่วนที่สำคัญที่สุด! ปัดฝุ่นหัวแร้งเก่าหรืออย่างน้อยก็เสียบปลั๊กแล้วปัดฝุ่นออก ถึงเวลาที่จะประสาน ฉันใช้ปุ่มกดชั่วขณะ 4 ง่าม ซึ่งปกติเปิดอยู่ ฉันจะสร้างอาร์เรย์ของปุ่มต่างๆ (ภาพซ้าย) และติดไว้กับบอร์ดที่สมบูรณ์แบบ ในรูปนั้นบอกยาก แต่ทิศทางของง่ามปุ่มทั้งหมดวิ่งจากเหนือ-ใต้ ทางด้านขวา คุณจะเห็นตำแหน่งที่ฉันใช้รางกราวด์สำหรับสายกราวด์ของฉัน และติดสายจัมเปอร์ปลายสายตัวผู้บางตัวที่ด้านตรงข้ามของแต่ละปุ่ม แทนที่จะมีจุดเชื่อมต่อกราวด์ 7 เส้น รางจะช่วยให้เราสามารถแบ่งปันการเชื่อมต่อกราวด์เดียวกับ pi สำหรับทุกคน ผลลัพธ์ที่ได้คือแผ่นเวเฟอร์ที่ละเอียดอ่อนซึ่งจะอยู่ใต้การติดตั้งที่ด้านบนของวิทยุโดยใช้สกรูบางตัวผ่านรูนำร่องที่ให้มา เฉพาะปุ่มด้านบนเท่านั้นที่จะปรากฏผ่านร่องที่ฉันตัดออกจากด้านบน เนื่องจากพื้นผิวด้านบนของฉันมีความหนาเพียง 1/4 ฉันจึงต้องระวังไม่ให้สกรูเกิน กาวอาจช่วยยึดแผ่น perf เข้ากับวิทยุได้
ขั้นตอนที่ 8: ระบุพิน GPIO ของเรา
ในคำแนะนำอื่น ๆ ของฉันฉันนำเสนอการใช้งานใหม่สำหรับหมวกเสียง Google AIY เวอร์ชัน 1 รุ่นเก่า ในคำแนะนำที่ไม่เป็นที่นิยมอย่างกว้างขวาง (หรือเป็นที่นิยมอย่างจำกัด) นี้ ฉันได้กล่าวถึงความประทับใจที่ฉันประทับใจกับการออกแบบหมวก ฉันมีไม่กี่แห่งที่อยู่รอบ ๆ ดังนั้นฉันจะสร้างต้นแบบโดยใช้หมวกเพราะมันมีทั้ง dac และแอมพลิฟายเออร์ในตัว
ตอนนี้เรามาระบุหมุดหกตัวที่จะโฮสต์การกดปุ่มของเรา ฉันจะขอให้คุณโฟกัสที่ด้านซ้ายของหมวก Google AIY ซึ่งมีข้อความว่า "เซอร์โว" มีเสา 6 รูสำหรับพินที่ฉันจะติดและประสานปุ่มตัวผู้ของฉันสิ้นสุดจากขั้นตอนก่อนหน้าของเรา หากคุณทำงานโดยไม่มีหมวกเสียง google aiy ไม่ต้องกังวล รูปภาพทางด้านขวาจะนำทางคุณ ไม่ว่าในกรณีใด เราจะใช้หมุด gpio (BCM) 26, 06, 13, 05, 12 และ 24 จากบนลงล่าง (หรือ 0-5) GPIO #24 จะถูกสงวนไว้สำหรับปุ่มหยุดชั่วคราว
อย่าลืมต่อสายดินด้วย
ขั้นตอนที่ 9: รหัส
ฉันสงสัยว่าโค้ดจะเปลี่ยนไปมากจากที่นี่ แต่สำหรับโค้ด python เวอร์ชันล่าสุด โปรดไปที่ github ของฉัน ฉันได้แนบสำเนาเมื่อ 2019-18-12 ชื่อ pytiful3.py
โค้ดนี้ไม่ใช่โค้ดที่มีประสิทธิภาพสูงสุดเท่าที่คุณเคยเห็นมา และมันก็ค่อนข้างละเอียด แต่ก็ทำให้งานสำเร็จลุล่วง
เริ่มต้นด้วยการสร้างแซนด์บ็อกซ์เพื่อเล่น จากไดเร็กทอรีหลักของเรา ให้สร้างไดเร็กทอรีบน raspberry pi ที่เรียกว่า kissir:
mkdir คิสเซอร์/
และคัดลอกเนื้อหาไฟล์ pytiful3.py ลงในไดเร็กทอรีโดยเปิดไฟล์ตัวอย่างในโปรแกรมแก้ไขข้อความแล้วใช้
sudo nano kissir/pytiful3.py
คัดลอก / วางเนื้อหาไฟล์ลงในสคริปต์หลามที่สร้างขึ้นใหม่ของเรา อย่าลืมบันทึกงานของเราโดยใช้ Ctrl-x, Y และ enter
หากคุณต้องการดูสคริปต์อย่างรวดเร็ว เรานำเข้าโมดูลหลามที่เราต้องการ จากนั้นเราจะกำหนดปุ่มของเราและกำหนดพิน gpio ให้กับแต่ละปุ่มทั้ง 7 ปุ่ม จะมีสถานีวิทยุ 5 สถานี (โปรดแก้ไขตามการตั้งค่าสถานีของคุณได้ตามต้องการ) ปุ่มหยุด และปุ่มปิดเครื่อง while true loop จะรันและรันจนกว่าจะมีการกดปุ่ม ซึ่งโดยส่วนใหญ่แล้วจะหยุดเล่น mpg123 ที่มีอยู่และเริ่มเล่นสถานีที่กำหนดให้กับปุ่มที่ถูกกด ปุ่มหยุดชั่วคราว/หยุดไม่ใช่ปุ่มหยุดชั่วคราวจริงๆ แต่เป็นปุ่มฆ่ามากกว่า เนื่องจากเราไม่สามารถหยุดวิทยุอินเทอร์เน็ตชั่วคราวได้ วิทยุอินเทอร์เน็ตไม่คอยใคร
ขั้นตอนที่ 10: ทดสอบในแซนด์บ็อกซ์ของเรา
ก่อนที่เราจะปรับใช้วิทยุของเรา ในขณะที่ยังอยู่ในเซสชัน ssh ของเรา ให้ไปที่โฟลเดอร์ kissir ที่จัดเก็บสคริปต์ของเราไว้ เราสามารถเรียกใช้สคริปต์จากบรรทัดคำสั่งด้วยตนเองโดยพิมพ์:
python3 pytiful3.py
หากคุณเปิดดูโค้ดก่อน คุณอาจสังเกตเห็นว่าฉันได้พิมพ์ข้อความสั่งพิมพ์ไว้เพื่อให้เราสามารถบอกได้ว่าเกิดอะไรขึ้น หากทุกอย่างเป็นไปด้วยดี เราจะมีข้อความแจ้งว่า "กดปุ่ม" นั่นบอกเราว่าสคริปต์ของเรากำลังทำงานและผ่านการตรวจสอบรหัสเบื้องต้น ความพยายามครั้งแรกของฉันมี "เพลงหยุดชั่วคราว - กดปุ่มเพื่อดำเนินการต่อ" วนซ้ำไม่รู้จบ และฉันพบว่าฉันมีปุ่มหยุดชั่วคราวแบบต่อสายเพื่อปิดเสมอ แทนที่จะเปิดตามปกติ หวังว่าคุณจะโชคดีกับขั้นตอนการบัดกรี
Ctrl-C จะหยุดสคริปต์หากคุณต้องการยกเลิก
แล้วถ้าเห็น "กดปุ่ม" จะรออะไร ? เลือกปุ่มสถานีวิทยุห้าปุ่มของเรา
เป็นไปได้มากที่คุณจะได้ยินเสียงลำโพงดังเพื่อเริ่มเล่นเพลง และตอนนี้ฉันก็ช่วยไม่ได้ Mpg123 อนุญาตให้ใช้คำต่อท้าย "--preload 1" หลังที่อยู่สถานีในคำสั่ง os.system แต่ฉันไม่สามารถบอกได้ว่ามันสร้างความแตกต่างหรือไม่ ควรให้บัฟเฟอร์เล็กน้อย
โค้ดอีกเล็กน้อยที่คุณอาจสงสัย: มีแฟล็ก " -f 7000" หลังจากการเรียก mpg123 สิ่งนี้จะลดระดับเสียงจนถึงระดับเสียงสูงสุด ปริมาณเต็มจะเป็น 32K ตามที่ฉันเข้าใจ สเกลโวลลุ่มไม่ใช่สเกลเชิงเส้น ดังนั้นฉันจึงไม่สามารถพูดได้ว่ามันเป็นเพียงหนึ่งในห้าของระดับเสียงสูงสุด แต่ยังดังมาก ฉันต้องทำสิ่งนี้เพราะการ์ดเสียงของฉัน - การ์ดเสียงเสียง Google AIY เล่นไม่ดีกับ Alsamixer ในบางครั้ง
ดำเนินการต่อเพื่อเลือกปุ่มที่คุณเลือก นั่งเอนหลัง ผ่อนคลาย และเพลิดเพลินกับความสบายในการฟังของคุณในตอนนี้
ขั้นตอนที่ 11: ตั้งค่ารหัสของเราให้ทำงานโดยอัตโนมัติบน Boot
ดังนั้นหากทุกอย่างทำงานได้ดี และคุณชอบการเสี่ยงภัยด้วยพรอมต์คำสั่งบนแซนด์บ็อกซ์ ตอนนี้ก็เป็นเวลาที่เหมาะสมในการทำให้การโหลดสคริปต์เป็นแบบอัตโนมัติ ตรวจสอบให้แน่ใจว่าคุณยังคงอยู่ในไดเร็กทอรี kissir และวางโค้ดสคริปต์ใน user bin:
sudo cp pytiful3.py /usr/local/bin/
ทำให้ปฏิบัติการได้:
sudo chmod +x /usr/local/bin/pytiful3.py
เขียนเชลล์สคริปต์เพื่อรันเมื่อเริ่มต้น:
sudo nano pytiful3.sh
และใส่ข้อความต่อไปนี้:
#! /bin/sh ### เริ่มต้น INIT INFO # ให้: pytiful3.py # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 ### สิ้นสุดข้อมูล INIT # ตรวจสอบให้แน่ใจว่าระดับเสียงไม่ดัง TODO # ใช้งานฟังก์ชันเฉพาะเมื่อระบบถาม "$1" ในการเริ่มต้น) echo "กำลังเริ่ม pytiful3.py" /usr/local/bin/pytiful3.py &;; หยุด) echo "กำลังหยุด pytiful3.py" pkill -f /usr/local/bin/pytiful3.py;; *) echo "การใช้งาน: /etc/init.d/pytiful3.sh {start|stop}" exit 1;; esac ทางออก 0
ย้ายไปที่ init.d:
sudo mv pytiful3.sh /etc/init.d/
ทำให้ปฏิบัติการได้:
sudo chmod +x /etc/init.d/pytiful3.sh
ลงทะเบียนสคริปต์เพื่อรันเมื่อเริ่มต้น:
sudo update-rc.d pytiful3.sh defaults
ขั้นตอนที่ 12: ทดสอบอีกครั้ง
ตอนนี้เราได้โหลดสคริปต์ของเราให้ทำงานเมื่อเริ่มต้นใช้งานแล้ว อย่าลืมว่าการเปลี่ยนแปลงใดๆ ที่เราทำจะต้องถูกนำไปยังถังผู้ใช้ และสคริปต์ kissir/pytiful3.py ที่สวยงามของเราตอนนี้เป็นเพียงเด็กกำพร้า แต่ในแง่ดี เรายังมีแซนด์บ็อกซ์ให้เล่นอยู่ ฉันอาจจะเล่นบทต่อไป ทำการเปลี่ยนแปลง และบันทึกเป็นเวอร์ชันใหม่ในอนาคตอันใกล้ ยังคงเป็นโครงการที่ทำงานอยู่
มาเริ่มระบบใหม่กันเถอะ รอให้ pi รีสตาร์ท จากนั้นประมาณหนึ่งนาที ให้กดปุ่มอีกครั้ง
หากระดับเสียงของคุณเบามาก โปรดจำไว้ว่าเรามีระดับเสียง alsamixer ที่ 50% เพื่อให้เราสามารถเพิ่มได้ตามนั้นจากพรอมต์คำสั่ง
สำหรับผู้เริ่มต้น สิ่งหนึ่งที่จำเป็นคือค่าปริมาณสากล แทนที่จะต้องเปลี่ยนระดับเสียง 5 ครั้งที่ต่างกัน
เฮ้ แล้วรายชื่อสถานีวิทยุที่เราสร้างในขั้นตอนที่ 6 ล่ะ? ปรากฎว่า MPG123 มีคำสั่งสุ่มเลือก ง่ายพอๆ กับการสร้างรายการ URL ของสถานี และแทนที่จะเรียก URL สถานีวิทยุเพียงรายการเดียว ให้ใช้
"btn1234_choice = random.choice(btn1234)" ทันทีหลังจากระบุรายชื่อสถานีของเรา โดยที่ btn1234_choice คือรายการของเรา อย่าลืมใช้วงเล็บเหลี่ยม รอบรายการสถานีของเราโดยคั่นด้วยเครื่องหมายจุลภาค การเรียกคำสั่งกระบวนการย่อยจะเล่นตัวเลือกแบบสุ่มของเรา:
subprocess.call(['mpg123', '-q', btn1234_choice, " --preload 1"])
ขั้นตอนที่ 13: ใส่กล่องแล้วเสร็จ
หากคุณมาถึงขั้นตอนนี้ แสดงว่างานเสร็จสมบูรณ์! ขอแสดงความยินดี คุณเพิ่งสร้างเครื่องเล่นวิทยุอินเทอร์เน็ตแบบสแตนด์อโลน
ขึ้นอยู่กับอุปกรณ์ที่คุณมี (ลำโพง, dac และแอมพลิฟายเออร์) คุณอาจสงสัยว่าจะซ่อนสายไฟบางส่วนได้อย่างไร บางทีอาจเป็นคำสั่งอื่นสำหรับวันอื่น แต่ถ้าคุณวางแผนที่จะสร้างหน่วยที่อยู่อาศัยเพื่อเก็บสายไฟไว้ฉันขอแนะนำให้มีพื้นที่เพิ่มขึ้นอีกมาก
ดังที่คุณเห็นในภาพด้านบน - จริง ๆ แล้วฉันสร้างจูบสองอัน อันหนึ่งใช้เศษกาวติดอุบัติเหตุในการพยายามครั้งแรกของฉัน (จากอารมณ์ขันที่บิดเบี้ยวมาเป็นกระดานที่บิดเบี้ยว) หน่วยที่สองใช้เครื่องกระตุ้นเสียงมากกว่าลำโพงทั่วไป และถ้าคุณเลือกชื่ออุปกรณ์จากภาพหน้าจออันใดอันหนึ่งของฉัน ฉันจะตั้งชื่อมันว่า slimbox
ฉันพบว่าโครงการนี้ค่อนข้างสนุก ทั้งสองครั้ง แน่นอนว่าไม่ใช่โครงการที่ยาก อาจใช้เวลานานเล็กน้อย แต่คุ้มค่ามาก ฉันหวังว่าคุณจะสนุกกับการฟังของคุณเช่นกัน
แนะนำ:
BOSEBerry Pi Internet Radio: 4 ขั้นตอน (พร้อมรูปภาพ)
BOSEBerry Pi Internet Radio: ฉันชอบฟังวิทยุ! ฉันใช้วิทยุ DAB ในบ้าน แต่พบว่าการรับสัญญาณค่อนข้างหยาบและเสียงขาดหาย ดังนั้นฉันจึงตัดสินใจสร้างวิทยุอินเทอร์เน็ตของตัวเอง ฉันมีสัญญาณ wifi แรงรอบบ้านและพี่ชายดิจิทัล
Simple Light-Up Ugly Christmas Sweater: 9 ขั้นตอน (พร้อมรูปภาพ)
Simple Light-Up Ugly Christmas Sweater: มีทุกปี… คุณต้องมี "เสื้อกันหนาวที่น่าเกลียด" และคุณลืมที่จะวางแผนล่วงหน้า ปีนี้คุณโชคดี! การผัดวันประกันพรุ่งของคุณจะไม่ใช่ความหายนะของคุณ เราจะแสดงวิธีการทำเสื้อกันหนาว Light-Up Ugly Christmas แบบง่ายๆ ใน l
1964 Dansette Pi Internet Radio: 6 ขั้นตอน (พร้อมรูปภาพ)
วิทยุอินเทอร์เน็ต Dansette Pi ปี 1964: วิทยุแบบพกพา Dansette ที่มีสไตล์ในช่วงกลางทศวรรษ 1960 ปัจจุบันกำลังเล่นสถานีวิทยุอินเทอร์เน็ตที่ดีที่สุดแห่งศตวรรษที่ 21 ด้วยการอัพเกรดที่น่ารัก การควบคุมเดิมทั้งหมดถูกใช้ซ้ำแล้วซ้ำเล่า และคุณจะไม่มีทางรู้ว่าเป็นการแปลง จนกว่าคุณจะเปิด
Roberts RM33 Raspberry Pi Internet Radio (ยังอีก…): 8 ขั้นตอน (พร้อมรูปภาพ)
Roberts RM33 Raspberry Pi Internet Radio (อีกเรื่องหนึ่ง…): ใช่ มันเป็นวิทยุอินเทอร์เน็ต Raspberry Pi อีกรุ่นหนึ่งและไม่ใช่เครื่องแรกของฉันด้วย ฉันไม่แน่ใจว่าทำไมงานสร้างนี้ยังคงเป็นที่นิยม แต่ฉันยังคงสนุกกับมันและไม่สามารถพูดได้ว่างานสร้างนี้จะเป็นครั้งสุดท้ายของฉันเช่นกัน ชอบลุคของโรเบิร์ตมาก
RASPBERRY ZERO INTERNET RADIO / เครื่องเล่น MP3: 4 ขั้นตอน
RASPBERRY ZERO INTERNET RADIO / MP3 PLAYER: นี่ไม่ใช่วิทยุอินเทอร์เน็ตราสเบอร์รี่เครื่องแรก ฉันรู้ แต่อันนี้คือ: ราคาถูกมากและใช้งานได้ดีกับทุกฟังก์ชั่นที่ควบคุมได้ผ่านเว็บอินเตอร์เฟส โทรศัพท์ของคุณคือรีโมตคอนโทรลที่ง่ายต่อการสร้างและใช้งาน p