Artikel ini menjelaskan cara membuat stasiun radio internet Anda sendiri. Untuk mencapai ini, kami menggunakan program open source Icecast dan Mixxx, yang berjalan di Fedora atau Debian, Ubuntu, Linux Mint, Pop! _OS, dan distribusi Linux berbasis Debian / Ubuntu lainnya.
Icecast (Icecast 2) adalah server media streaming yang memungkinkan pengguna untuk melakukan streaming stasiun radio internet kami dan Mixxx adalah aplikasi pencampuran DJ (yang juga dapat Anda gunakan sebagai pemutar musik sederhana jika perlu). kami gunakan untuk mengirim aliran audio ke server streaming Icecast2 berkat fungsi siaran langsungnya.
Perlu dicatat bahwa Anda dapat menggunakan Icecast2 dan Mixxx pada distribusi Linux lainnya (serta Windows dan macOS) untuk membuat stasiun radio Internet Anda sendiri Distribusi Linux yang Anda gunakan, jadi artikel ini hanya akan fokus pada Fedora dan Debian / Ubuntu.
Sebelum kita mulai, izinkan saya memberi tahu Anda sedikit lebih banyak tentang Icecast dan Mixxx.
Icecast adalah server streaming lintas platform gratis, open source, yang mendukung aliran Ogg Vorbis dan Theora, MP3, Opus, dan WebM, dengan dukungan untuk beberapa aliran audio simultan (setiap aliran disebut sebagai "titik pemasangan"). Perangkat lunak ini dapat digunakan untuk membuat stasiun radio Internet publik, disiarkan secara pribadi melalui jaringan lokal, dan banyak lagi. Ada beberapa jenis klien yang dapat terhubung ke server Icecast, baik untuk menyediakan "titik mount" untuk streaming musik, seperti:B. Mixxx, atau untuk mendengarkan audio yang dikirimkan.
Mixxx adalah perangkat lunak DJ open source gratis untuk Windows, Mac, dan Linux yang mencakup sebagian besar fitur yang ditemukan dalam perangkat lunak DJS, serta fitur unik seperti dukungan untuk pengontrol MIDI dan HID DJ tingkat lanjut. Ini dikembangkan untuk DJ profesional dan amatir dan menawarkan, di antara banyak fungsi lainnya, BPM, deteksi dan sinkronisasi kunci, efek, kontrol rekaman vinil, DJ otomatis, dan perekaman. Dari versi 1.9, Mixxx mengaktifkan siaran langsung dan mendukung server streaming Shoutcast dan Icecast.
Instal dan konfigurasikan Icecast dan Mixxx untuk membuat stasiun radio internet Anda sendiri
1. Instal Icecast.
Icecast dapat diinstal di server terpisah atau di komputer yang sama yang dijalankan Mixxx untuk siaran.
Unduh Icecast untuk Linux / Unix dan Windows.
Instal Icecast2 dari repositori:
- Instal Icecast2 di Debian, Ubuntu, Linux Mint, Pop! _OS dan distribusi Linux berbasis Debian / Ubuntu lainnya:
sudo apt install icecast2
Selama instalasi Icecast2 di Debian atau Ubuntu, beberapa opsi konfigurasi disajikan (ini tidak terjadi dengan Fedora):
Ganti kata sandi preset dengan kata sandi Anda sendiri. Jika Anda melewatkan konfigurasi awal, Anda dapat menjalankannya kembali dengan menggunakan sudo dpkg-reconfigure icecast2
. Anda juga dapat mengubah pengaturan awal ini dan lainnya dengan mengedit file konfigurasi Icecast2 (kita akan membahasnya di langkah berikutnya).
- Instal Icecast di Fedora:
sudo dnf install icecast
2. Konfigurasikan Icecast.
Jalur file konfigurasi Icecast di Debian / Ubuntu (diinstal oleh manajer paket) adalah /etc/icecast2/icecast.xml
saat berada di fedora /etc/icecast.xml
. Anda dapat mengedit file ini untuk mengubah informasi stasiun radio Internet Icecast2, menetapkan batasan (membatasi jumlah klien/pendengar), mengubah kata sandi untuk pengguna sumber, relai dan admin, dan banyak lagi.
Di Debian / Ubuntu, konfigurasi awal Icecast2 yang muncul saat Anda pertama kali menginstal Icecast2 akan mengambil alih sebagian besar konfigurasi ini. Anda masih dapat mengedit file konfigurasi Icecast2.
Buka file konfigurasi Icecast ini sebagai root dengan editor teks seperti Nano pada contoh di bawah ini (gunakan Ctrl + O
, lalu Enter
untuk menyimpan file dengan nano; Untuk keluar dari editor nano setelah menyimpan file, tekan Ctrl + X
):
- Debian, Ubuntu, Fedora, Linux Mint, Pop! _OS:
sudo nano /etc/icecast2/icecast.xml
- Fedora:
sudo nano /etc/icecast.xml
Dalam file ini Anda dapat (antara lain):
- Lokasi dan administrator
<!-- location and admin are two arbitrary strings that are e.g. visible
on the server info page of the icecast web interface
(server_version.xsl). -->
<location>Earth</location>
<admin>localhost</admin>
Seperti yang disebutkan dalam komentar di lokasi dan pengaturan administrator, ini adalah informasi yang ditampilkan di halaman info server radio Internet dari antarmuka web Icecast, yaitu untuk tujuan tampilan saja.
Bagian ini tidak ada secara default di Fedora dalam file konfigurasi Icecast (namun ada di bagian atas file konfigurasi di Debian / Ubuntu).
- Otentikasi
<authentication>
<!-- Sources log in with username 'source' -->
<source-password>hackme</source-password>
<!-- Relays log in with username 'relay' -->
<relay-password>hackme</relay-password>
<!-- Admin logs in with the username given below -->
<admin-user>admin</admin-user>
<admin-password>hackme</admin-password>
</authentication>
Di sini, pastikan untuk mengganti hackme
default Kata sandi dengan kata sandi Anda sendiri.
- Nama host, dengarkan port soket, ikat alamat, dan streaming
<!-- This is the hostname other people will use to connect to your server.
It affects mainly the urls generated by Icecast for playlists and yp
listings. You MUST configure it properly for YP listings to work!
-->
<hostname>localhost</hostname>
<!-- You may have multiple <listen-socket> elements -->
<listen-socket>
<port>8000</port>
<!-- <bind-address>127.0.0.1</bind-address> -->
<!-- <shoutcast-mount>/stream</shoutcast-mount> -->
</listen-socket>
<!--
<listen-socket>
<port>8080</port>
</listen-socket>
Anda dapat menggunakan nilai default ini, yang berarti Anda hanya melakukan streaming di localhost dan menggunakan 8000 sebagai port. Dalam hal ini Anda dapat mengakses halaman web server Icecast 2 di browser web Anda dengan https://localhost:8000
, dan halaman admin dengan mengunjungi https://localhost:8000/admin
. Tapi belum, karena pada langkah selanjutnya kita harus mengaktifkan dan memulai (atau me-restart) layanan Icecast2.
Namun, Anda mungkin ingin mengubah beberapa pengaturan ini. Ganti hostname
itu Nilai dengan nama host/domain atau alamat IP yang digunakan untuk streaming. bind-address
memungkinkan Anda untuk membatasi alamat yang mendengarkan Icecast; Jika alamat pengikatan tidak ditentukan untuk soket pendengar tertentu (ini adalah konfigurasi default), soket akan terikat ke semua antarmuka (termasuk IPv6, jika tersedia). Port 8000 digunakan secara default oleh banyak proyek, jadi mungkin sudah digunakan. Dalam hal ini Anda harus mengubahnya.
Ada banyak pengaturan lain dalam file Icecast2 ini, tetapi pengaturan default seharusnya cukup dalam banyak kasus.
3. Aktifkan dan mulai server Icecast2.
Aktifkan dan mulai layanan Icecast2 di bawah Debian / Ubuntu:
sudo systemctl --now enable icecast2
Aktifkan dan mulai layanan Icecast di Fedora:
sudo systemctl --now enable icecast
Sekarang Anda dapat mengakses halaman web server Icecast di browser web Anda dengan mengunjungi https://localhost:8000
(ini menggunakan pengaturan default, Anda mungkin telah mengubah ini) dan halaman admin dengan mengunjungi https://localhost:8000/admin
.
Status Icecast2 dan halaman admin (dengan informasi mountpoint) setelah mengaktifkan siaran langsung di Mixxx:
Selain itu, Anda harus me-restart layanan systemd Icecast2 setiap kali Anda membuat perubahan pada file konfigurasinya. Ini dimungkinkan dengan:
- Debian / Ubuntu:
sudo systemctl restart icecast2
- Fedora:
sudo systemctl restart icecast
Periksa status layanan Icecast dengan:
- Debian / Ubuntu:
systemctl status icecast2
- Fedora:
systemctl status icecast
4. Instal Mixxx.
Unduh Mixxx untuk Linux (paket sumber, Ubuntu, dan Fedora), Windows, atau macOS.
Instal Mixxx dari repositori:
- Di Debian / Ubuntu, Linux Mint, Pop! _OS dll. Anda dapat menginstal Mixxx dari repositori (dan libmp3lame0 untuk mendukung aliran MP3):
sudo apt install mixxx libmp3lame0
Anda juga dapat menginstal versi Mixxx yang lebih baru di Ubuntu atau Linux Mint dengan menggunakan PPA yang disebutkan di halaman unduhan Mixxx.
- Di Fedora:
Aktifkan repositori RPGFusion gratis (tidak gratis tidak diperlukan) jika Anda belum melakukannya:
sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
Dan instal Mixxx dan lumpuh (untuk streaming MP3):
sudo dnf install mixxx lame
5. Siarkan langsung dengan radio internet Anda! Konfigurasikan Mixxx sehingga aliran audio diumpankan ke server streaming Icecast2.
Dari Mixxx Options
Menu mulai Preferences
, lalu alihkan ke Live Broadcasting
tab. Di sini, lihat Server connection
dan masukkan:
- Jenis:Icecast2
- Host:nama host yang ditentukan dalam setelan Icecast2 (dengan “localhost” sebagai default)
- Masuk:sumber
- Sandi:sandi yang telah Anda tetapkan untuk nama pengguna “sumber” di file konfigurasi Icecast2 (di area autentikasi).
- Gunung:/ aliran
- Port:8000 (ini adalah port default, gunakan port kustom Anda sendiri jika Anda mengubahnya)
Hanya itu yang perlu Anda siapkan untuk membuat semuanya berfungsi. Anda juga dapat mengubah pengkodean (memilih bitrate yang lebih tinggi untuk streaming atau mengubah format dari MP3 ke Ogg Vorbis), metadata (informasi yang muncul saat aplikasi musik memutar stasiun radio internet Anda) dan mengaktifkan "Stream Publik", yang menempatkan stasiun radio internet Anda di direktori publik Icecast untuk ditemukan orang lain.
Setelah selesai dengan pengaturan ini, klik Apply
dan tutup Preferences
Jendela.
Saatnya menambahkan musik ke Mixx. Klik dua kali sebuah lagu untuk menambahkannya ke dek 1, lalu klik tombol putar untuk dek tersebut untuk mulai memainkan lagu:
Sekarang Anda dapat mulai menyiarkan melalui Mixxx dengan masuk ke. berjalan Options -> Enable Live Broadcasting
. Stasiun radio internet Anda kemudian akan ditayangkan. Di kanan atas jendela Mixxx juga terdapat ikon yang bisa Anda klik untuk mengaktifkan/menonaktifkan siaran langsung. simbol ini juga digunakan untuk menunjukkan status siaran langsung:
Gunakan pemutar audio seperti VLC, Audacious dll dan buka url radio internet Anda:https://localhost:8000/stream.m3u
atau https://localhost:8000/stream.xspf
(dengan localhost
dan 8000
adalah nama host dan port default, yang mungkin telah Anda ubah di pengaturan!). Anda juga dapat menemukan tautan ini dengan mengunjungi halaman status server Icecast2 di browser web Anda:https://localhost:8000/status.xsl
(ganti lagi localhost:8000
dengan nama host dan port Anda).
Ekstra (ini opsional):Anda ingin mengirim ke Icecast dengan Mixxx, tetapi Mixxx harus tetap bisu di sistem Anda dan hanya pendengar radio Internet Anda yang dapat mendengar suaranya (ini berarti tidak semua suara dari sistem Anda diteruskan ke aliran Icecast, jadi apakah hanya output suara dari Mixxx yang diputar di aliran Icecast)? Untuk melakukan ini, Anda dapat menjalankan JACK dengan output dummy. Instal JACK:
- Debian / Ubuntu:
sudo apt install jackd
- Fedora:
sudo dnf install jack-audio-connection-kit
Selanjutnya, jalankan JACK dengan driver keluaran dummy:
jackd -d dummy
Lalu pergi ke Mixxx Preferences -> Sound Hardware
, dan atur Sound API
Opsi juga JACK Audio Connection Kit
(Master
Output lebih jauh ke bawah halaman ini dapat diatur ke None
atau system
). Jika Anda tidak melihat JACK di bawah opsi Sound API, mulai ulang Mixxx.