Debian 12 Linux Radio stream (rtmp) (Opam, gd, ffmpeg, Liquidsoap)
이 가이드에서는 우리만의 인터넷 라디오를 만들어 Youtube나 Rutube(RTMP)에서 방송을 시작하고 배경 애니메이션을 추가하고 재생 목록을 준비하겠습니다. 이 가이드에서는 루트로 설치합니다. 일반 루트가 있으면 sudo 명령을 사용하세요.
VPS 서버 주문 양식에서 이 구성으로 기성 서버를 주문할 수 있습니다. |
가장 자주 묻는 질문:
-
우리는 모든 데이터가 우리와 함께 있기를 원합니다. 우리 장비에서 이 모든 설정을 할 수 있나요?
예, 링크.
이 구성 결과의 일부:
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 방송할 서비스에 따라 URL 변수를 지정하세요:
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/")
정적 png, jpg 사진 또는 비디오 애니메이션 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 명령:
Start
systemctl start radio1-liquidsoap
멈추다
systemctl stop radio1-liquidsoap
상태
systemctl status radio1-liquidsoap
라디오가 준비되었습니다. 설정을 시작하기 전에 비디오 예시에서 무슨 일이 일어났는지 확인할 수 있습니다. 이 프로토콜은 수많은 인기 서비스에서 지원됩니다.
No Comments Yet