آموزش رزبری پایپروژه رزبری پای

ساخت رادیو اینترنتی و پخش زنده صدا با رزبری پای

در این آموزش ، ما با استفاده از DarkIce و Icecast قصد داریم یک ایستگاه رادیو با Raspberry Pi راه اندازی کنیم. DarkIce و Icecast دو بسته برای رزبری پای هستند که برای ضبط صدا ، رمزگذاری و پخش جریانی استفاده می شوند. DarkIce یک پخش کننده صوتی زنده است که صدا را از یک رابط صوتی ، یعنی میکروفون ضبط می کند ، آن را رمزگذاری می کند و به یک سرور ارسال می کند. DarkIce می تواند صدا را از دستگاه های صوتی OSS ، دستگاه های صوتی ALSA ، جک و CoreAudio ضبط کند. این بسته می تواند صدای ضبط شده را در قالب های MP3 ، MP2 ، AAC LC ، AAC HEv2 ، Opus و Vorbis رمزگذاری کند. سپس می تواند صدای رمزگذاری شده را به سرورهای پخش جریانی ShoutCast ، IceCast و Darwin ارسال کند.

Icecast یک سرور استریم صوتی / تصویری است که از استریم Ogg ، Opus ، WebM و MP3 پشتیبانی می کند. می توان از آن برای ایجاد ایستگاه های رادیویی اینترنتی و… استفاده کرد.

قطعات مورد نیاز

  • تمشک پی
  • میکروفن USB
قطعات مورد نیاز را از فروشگاه قطعات آیرنکس تهیه کنید.

نصب DarkIce و Icecast در رزبری پای

قبل از نصب DarkIce و Icecast ، رزبری پای باید کاملاً به روز شود. از دستورات زیر برای به روزرسانی Raspberry Pi به آخرین نسخه آن استفاده کنید:

sudo apt-get update
sudo apt-get upgrade

برای بارگیری بسته darkice deb و نصب آن از دستورات زیر استفاده کنید. بسته پیش فرض DarkIce بدون پشتیبانی از MP3 ارائه می شود.

برای یادگیری آردوینو (برنامه نویسی، ساخت ربات، ارتباط با اندروید) روی دوره آموزش آردوینو کلیک کنید.
برای یادگیری کامل الکترونیک روی دوره آموزش الکترونیک کلیک کنید.
Wget https://github.com/x20mar/darkice-with-mp3-for-raspberry-pi/blob/master/darkice_1.0.1-999~mp3+1_armhf.deb?raw=true
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

اکنون ، قبل از پیکربندی DarkIce باید Icecast را روی Raspberry Pi نصب کنید. برای نصب Icecast از دستور زیر استفاده کنید:

sudo apt-get install icecast2

در طی مراحل نصب ، از شما سوال می شود که آیا می خواهید Icecast2 را پیکربندی کنید. Yes را انتخاب کنید.

نصب DarkIce و Icecast در رزبری پای

در صفحه بعدی از شما می خواهید نام دامنه را مشخص کنید. برای استفاده از نام میزبان پیش فرض “localhost” فقط OK را بزنید.

پیکربندی Icecast در رزبری پای

اکنون ، در مراحل بعدی ، باید 3 گذرواژه اضافه کنید. اولین مورد برای کنترل دسترسی به منابع رسانه ای ، دوم استفاده از رله های جریان و رمز سوم برای دسترسی به کنسول مدیریت است. برای استفاده از گذرواژه پیش فرض روی «OK» کلیک کنید. نام کاربری پیش فرض “admin” خواهد بود.

تنظیمات پیشفرض IceCast رادیو

پس از نصب Icecast2 ، باید یک فایل پیکربندی darkice ایجاد کنیم تا از کارت صدای مناسب استفاده کرده و با icecast2 ارتباط برقرار کنیم. با استفاده از دستور زیر یک فایل پیکربندی ایجاد کنید:

sudo nano darkice.cfg

سپس این پیکربندی ها را در پرونده جایگذاری کنید:

# this section describes general aspects of the live streaming session
[general]
duration     = 0     # duration of encoding, in seconds. 0 means forever
bufferSecs   = 5     # size of internal slip buffer, in seconds
reconnect    = yes   # reconnect to the server(s) if disconnected
# this section describes the audio input that will be streamed
[input]
device          = plughw:0,0  # Soundcard device for the audio input
sampleRate      = 22050     # sample rate in Hz. try 11025, 22050 or 44100
bitsPerSample   = 16        # bits per sample. try 16
channel         = 2         # channels. 1 = mono, 2 = stereo
# this section describes a streaming connection to an IceCast2 server
# there may be up to 8 of these sections, named [icecast2-0] ... [icecast2-7]
[icecast2-0]
bitrateMode     = abr       # average bit rate
format          = mp3       # format of the stream: ogg vorbis
bitrate         = 320       # bitrate of the stream sent to the server
server          = localhost # host name of the server
port            = 8000      # port of the IceCast2 server, usually 8000
password        = lolcat123 # source password to the IceCast2 server
mountPoint      = Stream.mp3  # mount point of this stream on the IceCast2 server
name            =  Raspberry Pi Stream # name of the stream
description     = Broadcast from Raspberry Pi # description of the stream
#public          = yes       advertise this stream?

با استفاده از Ctrl + X > Y> Enter تغییرات را ذخیره کنید.

سپس با استفاده از دستور زیر پرونده دیگری به نام “darkice.sh” ایجاد کنید:

همچنین اگر در مورد این مطلب سوالی داشتید در انتهای صفحه در قسمت نظرات بپرسید
sudo nano darkice.sh

خط زیر را در پرونده جایگذاری کنید. این خط حاوی آدرس فایل پیکربندی است.

sudo /usr/bin/darkice -c /home/pi/darkice.cfg

سپس با استفاده از دستور زیر فایل darkice.sh را اجرا کنید:

sudo chmod 777 /home/pi/darkice.sh

بعد ، سرویس Icecast2 را با استفاده از دستور زیر اجرا کنید:

sudo service icecast2 start

بوت شدن در شروع:

اکنون ، ما DarkIce را استفاده می کنیم و هر آنچه که برای اجرای DarkIce به محض شروع Raspberry Pi نیاز داریم ، داریم. از دستور زیر برای باز کردن crontab استفاده کنید:

crontab –e

و دستور زیر را در انتهای پرونده اضافه کنید. مسیر فایل را متناسب با مکان نصب خود تغییر دهید.

@reboot sleep 10 && sudo /home/pi/darkice.sh

با تایپ CTRL + X و سپس Y و فشار دادن کلید ENTER تغییرات را ذخیره کنید. با انجام این کار ، نصب به پایان رسیده است. با استفاده از دستور زیر Pi را مجدداً راه اندازی کنید:

sudo reboot

تست رادیو اینترنتی مبتنی بر رزبری پای

اکنون که همه چیز آماده است ، بیایید بررسی کنیم استریم به درستی تنظیم شده است یا خیر. برای آن به مرورگر خود بروید و آدرس زیر را تایپ کنید:

http://IP:8000

به جای IP، آدرس آیپی رزبری پای را وارد کنید. برای من 192.168.1.226:8000 است.

تست رادیو اینترنتی مبتنی بر رزبری پای

برای باز کردن استریم، روی M3U در گوشه بالا سمت راست کلیک کنید یا وارد http://IP:8000/Stream.mp3 شوید. اگر می توانید به محتوا گوش دهید یعنی رادیو شما به درستی ایجاد شده است.

به این ترتیب می توانید رادیو اینترنتی و ایستگاه استریم را با Raspberry Pi بسازید. در زیر یک فیلم کامل کار آورده شده است.

برای مشاهده توضیحات روی دوره مورد نظر کلیک کنید.

برای دریافت مطالب جدید کانال تلگرام یا پیج اینستاگرام آیرنکس را دنبال کنید.

تصویر از محمد رحیمی

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید را قرار دهم. (در خصوص سوال در مورد این مطلب از قسمت نظرات همین مطلب اقدام کنید) سعی میکنم تمام نظرات را پاسخ دهم.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *