Liquidsoap + gstream с рестримом

Я пытаюсь перенаправить свой канал на другой канал с помощью LiquidSoap и gstream. Я хочу сделать это из-за отката и использовать другой источник, если первый не используется. Я получил:

set("frame.video.width", 1920)
set("frame.video.height", 1080)
#set("frame.video.samplerate", 30)
set("gstreamer.add_borders", false)
set("clock.allow_streaming_errors",false)

s = single("rtmp://link_to_rtmp_stream/test")
s = fallback([s, blank()])

output.gstreamer.audio_video(
  video_pipeline=
    "videoconvert ! x264enc bitrate=4000 ! video/x-h264,profile=baseline ! queue ! mux.",
  audio_pipeline=
    "audioconvert ! voaacenc bitrate=128000 ! queue ! mux.",
  pipeline=
    "flvmux name=mux ! rtmpsink location=\"rtmp://wherewewhantstream.com live=1\"",
  s)

У меня есть одна проблема.. Распознаю первый поток.. Скрипт не хочет его распознавать, потому что думает, что это файл. Как распознать поток rtmp и расшифровать его?


person Dominik Traskowski    schedule 24.03.2016    source источник
comment
Я пытаюсь что-то вроде: input.http("rtmp://91.121.144.88/live/test"):source(2,1,0) Но не помогает..   -  person Dominik Traskowski    schedule 25.03.2016
comment
Привет! Удалось ли вам проработать это решение с Gstreamer?   -  person skhalymon    schedule 01.10.2019


Ответы (1)


попробуй это:

set("frame.video.width", 1920)
set("frame.video.height", 1080)
#set("frame.video.samplerate", 30)
set("gstreamer.add_borders", false)
set("clock.allow_streaming_errors",false)

def gstreamer.rtmp(~id="",uri) =
  pipeline = "rtmpsrc location=#{uri} ! tee name=t"
  audio_pipeline = "t. ! queue"
  video_pipeline = "t. ! queue"
  input.gstreamer.audio_video(id=id, pipeline=pipeline, audio_pipeline=audio_pipeline, video_pipeline=video_pipeline)
end

s = gstreamer.rtmp("rtmp://link_to_rtmp_stream/test")
s = fallback([s, blank()])

output.gstreamer.audio_video(
  video_pipeline=
    "videoconvert ! x264enc bitrate=4000 ! video/x-h264,profile=baseline ! queue ! mux.",
  audio_pipeline=
    "audioconvert ! voaacenc bitrate=128000 ! queue ! mux.",
  pipeline=
    "flvmux name=mux ! rtmpsink location=\"rtmp://wherewewhantstream.com live=1\"",
  s)
person César Dalmacio Sepúlveda    schedule 09.06.2016