İnternet radyosu kurmak, çoğu kişinin sandığından daha sade bir iştir; ama birkaç parçanın doğru sırayla bir araya gelmesi gerekir. Bilgisayarınızdaki yayın yazılımı sesi sıkıştırır, internetteki bir yayın sunucusuna gönderir, sunucu da bu akışı web sitenizdeki oynatıcıya ve dinleyicilerin uygulamalarına dağıtır. Siz yokken müziğin kesilmemesi için de bir AutoDJ devreye girer.

Bu rehberde baştan sona teknik kurulumu anlatıyoruz: bileşenler, Ubuntu üzerinde kendi Icecast sunucunuzu kurmak ile hazır radyo hosting almak arasındaki fark, bitrate seçimi, yayına çıkmadan önceki yasal kontrol listesi ve web sitenize oynatıcı eklemek. Lisans ve telif gibi hukuki konuları ayrıntılı ele aldığımız yazılara yeri geldikçe bağlantı veriyoruz.

Bir internet radyosunun bileşenleri

Bir internet radyosunun bileşenleri: Source client / encoder, Yayın sunucusu, AutoDJ, Oynatıcı
BileşenGöreviÖrnekler
Source client / encoderMikrofon ve müziği alır, MP3, AAC veya Ogg olarak sıkıştırıp sunucuya gönderirBUTT, Mixxx, RadioBOSS, SAM Broadcaster
Yayın sunucusuGelen akışı kabul eder ve dinleyicilere çoğaltırIcecast, SHOUTcast DNAS
AutoDJCanlı yayın yokken çalma listelerinden otomatik yayın yaparAzuraCast içindeki Liquidsoap, yayın yazılımlarının otomasyon özellikleri
OynatıcıDinleyicinin yayını açtığı arayüzHTML5 audio, mobil uygulama, VLC
DizinlerRadyonuzun keşfedilmesini sağlarIcecast YP dizini, SHOUTcast dizini, TuneIn, Radio Garden

Encoder kelimesi burada sesi sıkıştıran yazılım anlamında kullanılır; çoğu yayın programı encoder'ı içinde barındırır. Sunucu tarafını seçerken SHOUTcast ve Icecast farkı yazısına, yayın programı seçerken radyo yayın programları karşılaştırmasına göz atabilirsiniz.

Kendi sunucunuz mu, hazır radyo hosting mi?

KonuKendi sunucunuz (VPS)Hazır radyo hosting
KurulumPaket kurulumu, yapılandırma, güvenlik duvarı sizdeSunucu ve panel hazır gelir
Güncelleme ve güvenlikSizin sorumluluğunuzdaSağlayıcı yürütür
AutoDJLiquidsoap veya AzuraCast'i ayrıca kurarsınızGenellikle panelde hazırdır
Bant genişliğiVPS'in port hızı ve trafik kotasıyla sınırlıPaket kapsamına göre
Uygun olduğu kişiLinux komut satırına alışkın, tam kontrol isteyenlerYayına odaklanmak isteyenler

Ev internetinden doğrudan sunucu çalıştırmak da mümkündür ama yükleme hızınız dinleyici sayısını hemen sınırlar ve modemde port yönlendirme gerekir. Bağlantı türlerinin farkı için fiber, VDSL ve ADSL farkı yazısına bakabilirsiniz.

Ubuntu üzerinde Icecast kurulumu

Ubuntu üzerinde Icecast kurulumu: <hostname>, <source-password>, <admin-password>, <listen-socket>

Icecast, Ubuntu'nun universe deposunda icecast2 paket adıyla bulunur. Ubuntu paket arşivine göre 24.04 LTS'te 2.4.4, 26.04 LTS'te 2.5.0 sürümü gelir. Paket; yapılandırma dosyasını /etc/icecast2/icecast.xml, systemd hizmetini icecast2.service olarak kurar.

bash
sudo apt update
sudo apt install icecast2

# yapılandırmayı düzenleyin: şifreler, hostname, limitler
sudo nano /etc/icecast2/icecast.xml

sudo systemctl restart icecast2
sudo systemctl status icecast2

Dosyada en az şunları değiştirin (Icecast Basic Setup belgesi de aynı listeyi verir):

  • <hostname>: dizinlerde kullanılacak DNS adı veya IP.
  • <source-password>: yayın yazılımınızın bağlanırken kullanacağı şifre.
  • <admin-password>: yönetim sayfasının şifresi. Örnek dosyada her ikisi de hackme olarak gelir.
  • <listen-socket>: varsayılan port 8000; değiştirirseniz encoder'da da aynı portu girin.
  • <clients>: beklediğiniz dinleyici sayısına göre (örnek dosyada 100).

Ardından güvenlik duvarında yayın portunu açın. UFW kullanıyorsanız:

bash
sudo ufw allow 8000/tcp
sudo ufw status

UFW ayrıntıları için Ubuntu UFW güvenlik duvarı rehberi yazımız var. Tarayıcıdan http://sunucu-ip:8000/ adresine giderek durum sayfasını, /admin/stats.xsl ile yönetim arayüzünü görebilirsiniz. Sorun çıkarsa Icecast belgesinin önerdiği gibi önce error.log dosyasına bakın.

AutoDJ'li hepsi bir arada seçenek: AzuraCast

Komut satırında Icecast ve Liquidsoap'ı ayrı ayrı yapılandırmak istemiyorsanız AzuraCast, kendi sunucunuza kurabileceğiniz açık kaynak (AGPL v3) bir web radyo yönetim paketidir. Belgelerine göre AutoDJ için Liquidsoap, yayın tarafında Icecast-KH kullanır; SHOUTcast 2 DNAS isteğe bağlıdır ve kurulumdan sonra yönetim panelinden eklenir. Önerilen kurulum yöntemi Docker'dır; Docker temelleri için Docker Compose rehberine göz atabilirsiniz.

Bitrate seçimi ve bant genişliği

Bitrate, saniyede gönderilen veri miktarıdır ve hem ses kalitesini hem de sunucu trafiğini belirler. Kaynaklarda sık geçen değerler şöyle: Mixxx kılavuzu 128 veya 160 kbps'nin yaygın olduğunu söyler; RadioBOSS'ta varsayılan çıkış 44100 Hz, MP3, 128 kbps stereo'dur; AzuraCast belgesi SAM Cast için varsayılan 64 kbps yerine en az 128 kbps önerir.

Gereken çıkış bant genişliğini basit çarpmayla hesaplayabilirsiniz:

Bitrate50 dinleyici200 dinleyici1000 dinleyici
64 kbps3,2 Mbps12,8 Mbps64 Mbps
128 kbps6,4 Mbps25,6 Mbps128 Mbps
192 kbps9,6 Mbps38,4 Mbps192 Mbps

Bu sayılar yalnızca ses verisidir; protokol ek yükü için biraz pay bırakın. Codec karşılaştırması ve hangi bitrate'in hangi tür yayına uygun olduğu için bitrate, MP3 ve AAC rehberini okuyun.

Yayın yazılımını sunucuya bağlamak

Hangi programı kullanırsanız kullanın, aynı dört bilgiyi girersiniz: sunucu adresi (http:// olmadan), port, şifre ve Icecast'te mount point. Mixxx kılavuzu bunu açıkça uyarır: host alanına URL değil, yalnızca alan adı veya IP yazılır. RadioBOSS kılavuzu da adresin başındaki http:// kısmının kaldırılmasını söyler; aksi hâlde Error 2 (sunucuya ulaşılamıyor) alırsınız.

AlanIcecast örneğiSHOUTcast 2 örneği
Sunucuradyo.ornek.comradyo.ornek.com
Port80008000 (v1 protokolü için 8001)
KullanıcısourceYazılıma göre; çoğu zaman gerekmez
Şifresource-password değeripassword veya streampassword_X
Mount / Stream ID/canliStream ID 1

BUTT ve Mixxx için alan alan anlatım yayın programları yazısında yer alıyor.

Yasal kontrol listesi

Yasal kontrol listesi: RTÜK yayın lisansı gerekiyor mu?, Başvuru süreci, Genel gereksinimler, Müzik telifi

Teknik kurulum biter bitmez yayına çıkmadan önce şu soruları cevaplayın. Bu bölüm hukuki tavsiye değildir; ayrıntılar için ilgili yazılarımıza ve resmî kurumlara başvurun.

Web sitenize oynatıcı eklemek

En basit oynatıcı, tarayıcıların yerleşik HTML5 <audio> öğesidir. Mount point adresini src olarak vermeniz yeterlidir:

html
<audio controls preload="none" src="https://radyo.ornek.com/canli">
  Tarayıcınız ses öğesini desteklemiyor.
</audio>

Siteniz HTTPS ise yayın adresiniz de HTTPS olmalıdır. MDN'nin karışık içerik (mixed content) belgesine göre tarayıcılar HTTPS sayfadaki http:// ses adresini otomatik olarak https://'ye yükseltmeye çalışır; adres bir IP ise yükseltme yapılmaz ve istek engellenir. Yani http://1.2.3.4:8000/canli gibi bir adres HTTPS sitenizde çalmaz. Çözüm, yayına alan adı ve SSL sertifikası vermektir: ya Icecast'in TLS dinleyen portu ya da önüne konan bir ters vekil. Bunun için SSL sertifikası nasıl alınır ve Nginx yapılandırma rehberi yazılarımızı kullanabilirsiniz.

Son adım olarak radyonuzu dizinlere ekleyin. Icecast'te bir mount'un dizinde görünmesi için kaynağın bağlanırken Ice-Public: 1 başlığını göndermesi gerekir; bu davranış sunucu tarafında mount ayarıyla değiştirilebilir. TuneIn ve Radio Garden gibi platformlara kayıt için radyo dizinlerine kayıt rehberine bakın.

Sık yapılan hatalar

  • Sunucu alanına http:// ile tam URL yazmak.
  • Icecast'te mount point'i boş bırakmak veya başına / koymamak.
  • SHOUTcast'e Ogg Vorbis ile bağlanmaya çalışmak (Mixxx kılavuzu bunun çalışmayacağını belirtir).
  • Güvenlik duvarında yalnızca 8000'i açıp SHOUTcast v1 kaynaklarının kullandığı 8001'i unutmak.
  • Varsayılan hackme şifrelerini değiştirmemek.
  • HTTPS siteye IP adresli http:// yayın bağlantısı koymak.

Sık Sorulan Sorular

İnternet radyosu kurmak için ne kadar internet hızı gerekir?

Kendi bilgisayarınızdan sunucuya tek bir akış gönderirsiniz; bu da yayın bitrate'iniz kadar yükleme hızı demektir (128 kbps yayın için 128 kbps ve biraz pay). Dinleyicilere dağıtımı sunucu yapar; onun çıkış hızı bitrate x dinleyici sayısı kadar olmalıdır.

Bilgisayarım kapalıyken yayın devam eder mi?

Yalnızca sunucu tarafında bir AutoDJ varsa. Ayrıntılar için AutoDJ nedir yazısına bakın.

Icecast mı SHOUTcast mı kurmalıyım?

Açık kaynak ve Linux deposundan kurulum istiyorsanız Icecast; SHOUTcast dizini veya AAC odaklı bir yayın planlıyorsanız SHOUTcast mantıklıdır. Karşılaştırma SHOUTcast ve Icecast farkı yazısında.

Ücretsiz yayın programı var mı?

Evet. BUTT ve Mixxx ücretsizdir; Mixxx sitesi ücretli bir sürümü olmadığını belirtir. RadioBOSS ve SAM Broadcaster ticari yazılımlardır.

Yazılım ve platform adları sahiplerine aittir. Bu yazı bağımsız bir teknik rehberdir; adı geçen şirketlerle ortaklık ilişkisi bulunduğu anlamına gelmez.

İlgili içerikler: SHOUTcast ve Icecast farkı · Radyo yayın programları · AutoDJ nedir · Bitrate ve ses kalitesi · Müzik telifi · Radyo dizinleri · Radyo kurmak için ne gerekir · İnternet ve ağ temelleri