Image

(Son değişiklik: 06.11.2024)

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/radio/music")
audio = mksafe(audio)

# video kaynağı (gif, mp4)
background = single("/home/radio/background.gif")

# logo ekle
background = video.add_image(x=1120, y=20, width=153, height=56, file="/home/radio/logo.png", 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://Yayın platformundan alınan adres ve anahtar"
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/Youtube tarafından üretilen Anahtar"
Rutube

url = "rtmp://rtmp-1.brz.rutube.ru/live_push/Rutube tarafından üretilen Anahtar"
VK

url = "rtmp://ovsu.mycdn.me/input/VK tarafından üretilen Anahtar"

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/radio/music")

3.3 Yayın için video arka planının doğru yolunu belirtin:

background = single("/home/radio/background.gif")

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/logo.png", 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.




No Comments Yet