Debian 12 Linux Radyo Akışı (rtmp) (Opam, gd, ffmpeg, Liquidsoap)
Bu rehberde, kendi İnternet radyomuzu kuracak ve Youtube veya Rutube (RTMP) üzerinde yayın yapmaya başlayacağız, arka plan animasyonu ekleyecek ve bir çalma listesi hazırlayacağız. Bu rehberde, root olarak kurulum yapıyoruz, eğer normal bir kullanıcıysanız, sudo komutunu kullanın.
Bu yapılandırmaya sahip hazır bir sunucu siparişini VPS sunucu sipariş formundan verebilirsiniz. |
En sık sorulan sorular:
-
Мы хотим, чтобы все данные находились у нас. Можете ли Вы произвести всю эту настройку на нашем оборудовании?
Да, Вы можете заказать установку и настройку данной конфигурации на Вашем оборудовании по ссылке.
Bu yapılandırmanın bir örneği:
1. Gerekli paketleri kurun:
apt update
apt upgrade
apt-get install libfreetype6-dev
apt-get install opam
opam init
eval $(opam env)
opam switch create cs3110-2022fa ocaml-base-compiler.4.14.0
eval $(opam env)
opam depext gd ffmpeg liquidsoap
opam install gd ffmpeg liquidsoap
eval $(opam env)
2. Müzik ve arka plan videosu için klasörler oluşturun:
mkdir /home/radio
mkdir /home/radio/music
3. Radyo istasyonunun yapılandırma dosyasını oluşturalım:
nano /home/radio/radio1.liq
# root kullanıcı olarak script'i çalıştırmaya izin ver
settings.init.allow_root.set(true)
# meta veri fonksiyonları
song_author = ref('')
def apply_song(m) =
song_author := m["artist"]
end
song_title = ref('')
def apply_song2(m) =
song_title := m["title"]
end
def get_track_name_text()
"$(artist) - $(title)" % [
("artist", song_author()),
("title", song_title())
]
end
# ses kaynağı
audio = playlist(reload_mode="watch", "/home/")
audio = mksafe(audio)
# video kaynağı (gif, mp4)
background = single("/home/radio/")
# logo ekle
background = video.add_image(x=1120, y=20, width=153, height=56, file="/home/radio/", background)
# meta veri çağrıları
audio.on_track(apply_song)
audio.on_track(apply_song2)
# yazı ekleme
background = video.add_text(color=0xFFFFFF, font="/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf", speed=0, x=50, y=50, size=26,
get_track_name_text,
background)
# kaynakları karıştırma
radio = mux_video(video=background, audio)
#rtmp+codec
url = "rtmp://"
enc = %ffmpeg(format="flv",
%video(codec="libx264", width=1280, height=720, pixel_format="yuv420p",
b="750k", maxrate="750k", minrate="750k", bufsize="1500k", profile="Main", preset="veryfast", framerate=30, g=60),
%audio(codec="aac", samplerate=44100, b="128k"))
# çıkış
output.url(fallible=true, url=url, enc, radio)
3.1 Yayın yapacağınız servise göre URL değişkenini belirtin:
Youtube
url = "rtmp://a.rtmp.youtube.com/live2/"
Rutube
url = "rtmp://rtmp-1.brz.rutube.ru/live_push/"
VK
url = "rtmp://ovsu.mycdn.me/input/"
3.2 Yapılandırma dosyanızda müzik klasörünün yolunun doğru olduğunu kontrol edin ve müzik dosyalarınızı bu klasöre yerleştirin, reload_mode="watch" seçeneği, yeni bir dosya klasöre eklendiğinde hemen çalma kuyruğuna ekleneceğini belirtir.
audio = playlist(reload_mode="watch", "/home/")
3.3 Yayın için video arka planının doğru yolunu belirtin:
background = single("/home/radio/")
Bu, statik bir png, jpg resim veya animasyonlu bir gif, mp4 video olabilir. Arka plan animasyon dosyası döngüye alınır.
3.4 Kanalınızın logosunun doğru yolunu belirtin:
background = video.add_image(x=1120, y=20, width=153, height=56, file="/home/radio/", background)
Boyutları ve konumu gerektiği şekilde düzenleyin.
4. Radyoyu başlatma ve çalışmasını kontrol etme:
cd /home/radio
liquidsoap radio1.liq
İşlem günlüğü görünecek ve hata yoksa yayın başarıyla yapılır, oluşturduğunuz sayfaya gidin ve çalışmasını kontrol edin.
4.1 Hizmet oluşturma ve otomatik başlatma:
cd /home
apt install git
git clone https://github.com/savonet/liquidsoap-daemon.git
cd /home/liquidsoap-daemon
./daemonize-liquidsoap.sh /home/radio/radio1.liq
4.2 Komutlar:
Başlat
systemctl start radio1-liquidsoap
Duraklat
systemctl stop radio1-liquidsoap
Durum
systemctl status radio1-liquidsoap
Radyo hazır, kuruluma başlamadan önce video örneğinde ne olduğunu görebilirsiniz. Bu protokol, birçok popüler servis tarafından desteklenmektedir.