Debian 12 Linux Radio stream (rtmp) (Opam, gd, ffmpeg, Liquidsoap)
इस गाइड में, हम अपना खुद का इंटरनेट रेडियो बनाएंगे और इसे Youtube या Rutube (RTMP) पर प्रसारित करना शुरू करेंगे, बैकग्राउंड एनीमेशन जोड़ेंगे और एक प्लेलिस्ट तैयार करेंगे। इस गाइड में, हम रूट उपयोगकर्ता के रूप में इंस्टॉल कर रहे हैं, यदि आप एक सामान्य उपयोगकर्ता हैं, तो sudo कमांड का उपयोग करें।
आप वीपीएस सर्वर ऑर्डर फॉर्म पर इस कॉन्फ़िगरेशन के साथ एक तैयार सर्वर ऑर्डर कर सकते हैं। |
सबसे अक्सर पूछे जाने वाले प्रश्न:
-
हम चाहते हैं कि सारा डेटा हमारे पास रहे। क्या आप यह सारा सेटअप हमारे उपकरण पर कर सकते हैं?
हां, आप अपने उपकरण पर इस कॉन्फ़िगरेशन की स्थापना और कॉन्फ़िगरेशनlink.
इस कॉन्फ़िगरेशन के परिणाम का अंश:
1. आइए आवश्यक पैकेज स्थापित करें:
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. आइए संगीत और पृष्ठभूमि वीडियो के लिए फ़ोल्डर बनाएं:
mkdir /home/radio
mkdir /home/radio/music
3. आइए रेडियो स्टेशन के लिए एक कॉन्फ़िगरेशन फ़ाइल बनाएं:
nano /home/radio/radio1.liq
# permission to run the script from the root user
settings.init.allow_root.set(true)
# metadata functions
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
# audio source
audio = playlist(reload_mode="watch", "/home/")
audio = mksafe(audio)
# video source (gif, mp4)
background = single("/home/radio/")
# add logo
background = video.add_image(x=1120, y=20, width=153, height=56, file="/home/radio/", background)
# calling metadata
audio.on_track(apply_song)
audio.on_track(apply_song2)
# drawtext
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)
# mixing sources
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"))
# output
output.url(fallible=true, url=url, enc, radio)
3.1 जिस सेवा पर आप प्रसारण करेंगे उसके आधार पर यूआरएल वैरिएबल निर्दिष्ट करें:
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 जांचें कि कॉन्फ़िगरेशन फ़ाइल में पथ संगीत फ़ोल्डर के रूप में सही है और अपनी संगीत फ़ाइलों को वहां रखें, reload_mode = "watch" विकल्प का अर्थ है कि जैसे ही फ़ोल्डर में एक नई फ़ाइल दिखाई देगी, इसे तुरंत प्लेबैक कतार में जोड़ दिया जाएगा .
audio = playlist(reload_mode="watch", "/home/")
3.3 वीडियो पृष्ठभूमि प्रसारित करने के लिए सही पथ निर्दिष्ट करें:
background = single("/home/radio/")
यह एक स्थिर पीएनजी, जेपीजी चित्र या वीडियो एनीमेशन GIF, mp4 हो सकता है। पृष्ठभूमि एनीमेशन फ़ाइल एक लूप में है.
3.4 अपने चैनल लोगो फ़ाइल के लिए सही पथ निर्दिष्ट करें:
background = video.add_image(x=1120, y=20, width=153, height=56, file="/home/radio/", background)
यदि आवश्यक हो तो आकार और स्थिति संपादित करें।
4. रेडियो और जाँच अभियान शुरू करना:
cd /home/radio
liquidsoap radio1.liq
एक प्रोसेसिंग लॉग दिखाई देगा और यदि कोई त्रुटि नहीं है, तो प्रसारण सफल है, उस पृष्ठ पर जाएं जहां आपने इसे बनाया था और ऑपरेशन की जांच करें।
4.1 सेवा बनाना और स्वतः प्रारंभ करना:
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 आदेश:
Run
systemctl start radio1-liquidsoap
रुकना
systemctl stop radio1-liquidsoap
स्थिति
systemctl status radio1-liquidsoap
हमारा रेडियो तैयार है, आप सेटअप शुरू करने से पहले उदाहरण वीडियो में देख सकते हैं कि क्या हुआ था। यह प्रोटोकॉल बड़ी संख्या में लोकप्रिय सेवाओं द्वारा समर्थित है।