У меня есть сервер Janus (WebRTC).И я использую VP8 / OPUS.Затем Янус RTP Packet пересылается в GStreamer.У меня два вопроса.
Нужно ли запускать один GStreamer (с несколькими потоками) или несколько GStremaer?На самом деле Янус отправил Gstreamer несколько RTP-потоков.Пример) Два участника находятся в комнате WebRTC.Затем Янус отправил 4 пакета RTP в GStreamer.peer1: видео / аудио, peer2: видео / аудио.Если я запускаю только один GStreamer, невозможно определить, от кого поступает каждый поток.Поэтому для классификации я должен разделить порт с несколькими процессами GStreamer.
Как это:
Процесс 1:
gst-launch-1.0 \ rtpbin name=rtpbin \ udpsrc name=videoRTP port=5000 \ caps=“application/x-rtp, media=(string)video, payload=98, encoding-name=(string)VP8-DRAFT-IETF-01, clock-rate=90000” \ ! rtpvp8depay ! webmmux ! queue \ ! filesink location=track1.webm \ udpsrc port=5002 \ caps=“application/x-rtp, media=audio, payload=111, encoding-name=(string)OPUS, clock-rate=48000" \ ! rtpopusdepay ! opusparse ! oggmux \ ! filesink location=audio.ogg
Процесс 2:
gst-launch-1.0 \ rtpbin name=rtpbin \ udpsrc name=videoRTP port=5003 \ caps=“application/x-rtp, media=(string)video, payload=98, encoding-name=(string)VP8-DRAFT-IETF-01, clock-rate=90000” \ ! rtpvp8depay ! webmmux ! queue \ ! filesink location=track1.webm \ udpsrc port=5005 \ caps=“application/x-rtp, media=audio, payload=111, encoding-name=(string)OPUS, clock-rate=48000" \ ! rtpopusdepay ! opusparse ! oggmux \ ! filesink location=audio.ogg
ИтакЯ путаюЕсть ли несколько потоков?или несколько процессов?Скажите мне подробности, плз!
Как я могу перенести VP8 / OPUS в mp4 контейнер в реальном времени?Я долго искал это.Но я пока не могу.GStreamer имеет так много вариантов для каждой версии.Жду ваших советов!Спасибо.
Я старался изо всех сил.
Я ожидаю way и mp4 файлы.