Streaming Radio di FreeBSD 10 dengan IceCast dan Es

Tutorial berikut menjelaskan cara mengatur server streaming radio IceCast dan memutar file audio (musik atau podcast) pada platform FreeBSD. Tutorial ini mengasumsikan bahwa Anda menjalankan FreeBSD 10.0 atau lebih tinggi dan Anda masuk sebagai pengguna root. Juga diasumsikan bahwa Anda memiliki editor teks untuk mengedit file konfigurasi.

Sebelum kita mulai, penting untuk memahami tiga bagian dari server streaming audio. Pertama, kami memiliki perangkat lunak server itu sendiri, IceCast. IceCast bertindak seperti hub pusat tempat streaming audio masuk dan dikirim keluar. Layanan IceCast mengambil aliran audio dari klien sumber. Klien sumber adalah program yang membaca file audio atau sumber audio lainnya, seperti mikrofon. Dalam contoh kami, klien sumber adalah Es dan menyediakan aliran audio ke server IceCast. Komponen ketiga adalah klien yang mendengarkan. Audio stream mengalir dari server IceCast ke pendengar yang kemudian mendengar audio. Biasanya klien yang mendengarkan adalah aplikasi desktop, seperti browser web, pemutar multimedia VLC, atau WinAMP. Secara visual, susunannya terlihat seperti ini:

 Source client (Ices) --> IceCast server --> Listening client (browser)

Untuk mengatur server streaming IceCast di FreeBSD, pertama-tama kita menginstal perangkat lunak server itu sendiri. Ini dapat dilakukan dengan menjalankan perintah berikut.

 pkg install icecast2

Kami kemudian membuka /etc/rc.conffile dan mengaktifkan layanan latar belakang IceCast. Ini dilakukan dengan menambahkan teks berikut ke bagian bawah /etc/rc.conffile.

 icecast_enable="YES"

Langkah selanjutnya adalah mengkonfigurasi layanan IceCast. Paket IceCast dikirimkan bersama file konfigurasi sampel yang dapat kami modifikasi. File sampel ini terletak di /usr/local/etcdirektori. Kami akan membuat salinan file sampel ini sebelum mengeditnya.

 cd /usr/local/etc
 cp icecast.xml.sample icecast.xml

Kami sekarang ingin mengedit beberapa bidang kunci icecast.xmlfile. Sebagian besar file dapat dibiarkan dengan pengaturan default, tetapi kita harus mengubah informasi login. Kita dapat melakukan ini dengan mengunjungi bagian otentikasi (sekitar baris 30) dan mengubah kata sandi sumber dan kata sandi relai menjadi sesuatu yang sesuai. Kata sandi ini akan memungkinkan kami untuk mengalirkan data ke server IceCast dari klien sumber. Kita juga harus mengubah variabel admin-pengguna dan admin-sandi menjadi sesuatu yang unik untuk sistem kami. Kedua kredensial ini menjaga antarmuka berbasis web server IceCast. Kemudian, di sekitar baris 150, kita harus mengubah variabel nama-mount , nama pengguna , dankata sandi . Tiga variabel ini melindungi titik mount server IceCast. Akhirnya, di bagian bawah icecast.xmlfile kita akan melihat bagian keamanan yang telah dikomentari. Kita harus menghapus simbol pembuka <- dan menutup -> dari sekitar paragraf keamanan . Setelah icecast.xmlfile diubah, simpan file tersebut.

Setelah file konfigurasi telah diedit, kami ingin mengaktifkan pencatatan. Untuk melakukan ini, jalankan perintah berikut.

 mkdir /var/log/icecast
 chown nobody:nogroup /var/log/icecast

Akhirnya, kita mulai server IceCast, ini menyebabkan server mendengarkan input dan koneksi klien yang masuk.

 service icecast2 start

Server IceCast aktif dan berjalan, jadi sekarang kita perlu menyediakan sesuatu untuk dimainkan. Langkah selanjutnya adalah menginstal klien sumber Es. FreeBSD saat ini tidak menawarkan paket biner untuk Es, jadi kami perlu membangunnya dari port. Ini dapat dilakukan dengan menjalankan perintah berikut.

 portsnap fetch
 portsnap extract
 cd /usr/ports/audio/ices
 make install
 make clean

Klien sumber Ices akan memerlukan akun pengguna dan masuk. Untuk membuat pengguna untuk perangkat lunak Es dan menetapkan kata sandi pada akun, jalankan perintah ini.

 pw groupadd ice
 pw useradd ices -g ice -m
 passwd ices

Dengan pengguna yang dibuat, kami sekarang dapat mengaktifkan pencatatan untuk es.

 mkdir /var/log/ices
 chown ices:ice /var/log/ices

Mulai sekarang, kita seharusnya tidak lagi memerlukan akses pengguna root dan dapat beroperasi sebagai pengguna es . Selanjutnya, kita perlu membuat dua direktori. Satu direktori,, musicakan berisi file audio yang akan kami streaming. Direktori kedua conf,, akan berisi file konfigurasi kami.

 su ices
 cd /home/ices
 mkdir music conf
 cp /usr/local/share/ices/ices-playlist.xml conf/configuration.xml

Kami sekarang memiliki file konfigurasi sampel di tempat. Saatnya mengedit conf/configuration.xmlfile yang sesuai dengan lingkungan kita. Satu-satunya bagian file yang perlu kita ubah ada di sekitar baris 60. Di sini kita perlu memberikan kata sandi dan lokasi pemasangan yang kita atur di icecast.xmlfile. Sebagai contoh, jika kita menetapkan nama mount kita di icecast.xmlfile menjadi /radio.ogg, maka kita juga harus mengubah parameter mountconfiguration.xml file kita menjadi . Bidang kata sandi kami harus sesuai dengan kata sandi sumber yang kami buat di file. Setelah file kita diedit, kita perlu menyimpan perubahan kita./radio.oggconfiguration.xmlicecast.xmlconfiguration.xml

Dengan file konfigurasi di tempat, langkah selanjutnya adalah menyalin file audio yang ingin kita streaming ke musicdirektori. Semua file audio harus dalam .oggformat karena IceCast tidak akan menangani .mp3file dengan pengaturan standarnya. Setelah semua file audio yang ingin kita streaming ada di musicdirektori, kita perlu membuat daftar putar. Daftar putar adalah file teks biasa dengan daftar musik yang ingin kami streaming. Kita dapat dengan mudah membuat daftar putar dengan perintah berikut.

 cd /home/ices/conf
 ls -d ../music/*.ogg > playlist.txt

File audio akan diputar sesuai urutan yang muncul di playlist.txtfile. File dapat diedit di editor teks apa pun untuk menyesuaikan urutan audio streaming.

Yang perlu kita lakukan untuk mulai streaming file audio kita adalah dengan menjalankan perintah ini.

 ices configuration.xml

Catatan: Seringkali kita mungkin ingin menjalankan klien sumber Es dan kemudian keluar dan melakukan sesuatu yang lain. Dalam hal ini, saya suka menjalankan Es dari dalam sesi layar . Berikut adalah contoh cara menjalankan es dengan layar.

 screen
 cd /home/ices/conf
 ices configuration.xml

Kemudian tekan Ctrl + A dan tekan D kunci. Itu akan melepaskan sesi layar dan memungkinkan kita untuk keluar saat es memainkan audio di latar belakang. Kemudian, kita dapat menghentikan Es dengan masuk dan menjalankan:

 screen -r
 killall ices
 exit

Kita sekarang dapat terhubung ke server kami pada port 8000 di browser web untuk mendengarkan aliran audio kami. URL akan terlihat seperti http://myservername:8000. Alamat ini dapat dibuat tersedia untuk umum jika Anda ingin orang lain mendengarkan streaming.

Sebelumnya, saya menyebutkan bahwa IceCast memutar .oggfile dan tidak .mp3. Ini cukup mudah diatasi di FreeBSD. Sebagai pengguna root, kita dapat menginstal alat konversi, yang disebut sox , yang akan mengkonversi .mp3file kita menjadi .oggfile. Dengan asumsi semua .mp3file kita ada di /home/ices/musicdirektori, kita dapat menginstal sox dan melakukan konversi sebagai berikut:

 pkg install sox
 cd /home/ices/music
 for i in *.mp3; do sox ./"$i" ./"$i".ogg; done

Kami kemudian dapat menyegarkan daftar putar kami menggunakan:

 cd ../conf
 ls -d ../music/*.ogg > playlist.txt

Harap diingat bahwa streaming audio bisa menjadi bandwidth intensif. Satu atau dua klien yang mendengarkan stasiun radio kami tidak akan membutuhkan banyak bandwidth, tetapi 50 atau lebih klien dapat mendorong server melebihi bandwidth bulanan yang ditentukan. Adalah ide yang baik untuk mengaktifkan pembatasan bandwidth pada server streaming untuk menghindari biaya keuangan yang tidak terduga.



Leave a Comment

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

6 Hal yang Sangat Menggila dari Nintendo Switch

6 Hal yang Sangat Menggila dari Nintendo Switch

Banyak dari Anda tahu Switch keluar pada Maret 2017 dan fitur-fitur barunya. Bagi yang belum tahu, kami sudah menyiapkan daftar fitur yang membuat 'Switch' menjadi 'gadget yang wajib dimiliki'.

Janji Teknologi Yang Masih Belum Ditepati

Janji Teknologi Yang Masih Belum Ditepati

Apakah Anda menunggu raksasa teknologi untuk memenuhi janji mereka? periksa apa yang belum terkirim.

Fungsionalitas Lapisan Arsitektur Referensi Big Data

Fungsionalitas Lapisan Arsitektur Referensi Big Data

Baca blog untuk mengetahui berbagai lapisan dalam Arsitektur Big Data dan fungsinya dengan cara yang paling sederhana.

Bagaimana AI Dapat Membawa Otomatisasi Proses ke Tingkat Selanjutnya?

Bagaimana AI Dapat Membawa Otomatisasi Proses ke Tingkat Selanjutnya?

Baca ini untuk mengetahui bagaimana Kecerdasan Buatan menjadi populer di antara perusahaan skala kecil dan bagaimana hal itu meningkatkan kemungkinan untuk membuat mereka tumbuh dan memberi keunggulan pada pesaing mereka.

CAPTCHA: Berapa Lama Itu Bisa Tetap Menjadi Teknik yang Layak Untuk Perbedaan Human-AI?

CAPTCHA: Berapa Lama Itu Bisa Tetap Menjadi Teknik yang Layak Untuk Perbedaan Human-AI?

CAPTCHA telah berkembang cukup sulit bagi pengguna untuk dipecahkan dalam beberapa tahun terakhir. Apakah itu akan tetap efektif dalam deteksi spam dan bot di masa mendatang?

Singularitas Teknologi: Masa Depan Peradaban Manusia yang Jauh?

Singularitas Teknologi: Masa Depan Peradaban Manusia yang Jauh?

Saat Sains Berkembang dengan kecepatan tinggi, mengambil alih banyak upaya kita, risiko menundukkan diri kita pada Singularitas yang tidak dapat dijelaskan juga meningkat. Baca, apa arti singularitas bagi kita.

Telemedicine Dan Perawatan Kesehatan Jarak Jauh: Masa Depan Ada Di Sini

Telemedicine Dan Perawatan Kesehatan Jarak Jauh: Masa Depan Ada Di Sini

Apa itu telemedicine, perawatan kesehatan jarak jauh dan dampaknya terhadap generasi mendatang? Apakah itu tempat yang bagus atau tidak dalam situasi pandemi? Baca blog untuk menemukan tampilan!

Pernahkah Anda Bertanya-tanya Bagaimana Hacker Menghasilkan Uang?

Pernahkah Anda Bertanya-tanya Bagaimana Hacker Menghasilkan Uang?

Anda mungkin pernah mendengar bahwa peretas menghasilkan banyak uang, tetapi pernahkah Anda bertanya-tanya bagaimana cara mereka mendapatkan uang sebanyak itu? mari berdiskusi.

Pembaruan Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Masalah Daripada Menyelesaikan

Pembaruan Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Masalah Daripada Menyelesaikan

Baru-baru ini Apple merilis macOS Catalina 10.15.4 pembaruan suplemen untuk memperbaiki masalah tetapi tampaknya pembaruan menyebabkan lebih banyak masalah yang mengarah ke bricking mesin mac. Baca artikel ini untuk mempelajari lebih lanjut