I have added live RTP Forwarding to GStreamer. GStreamer encodes the VP8 video from Janus webrtc browser and creates HLS streaming for playing on HLS player over a different browser (on same machine).
VideoRoom plugin configured with VP8/OPUS codecs.
RTP Forwarding:
sfutest.send({
message: {
room: 1234,
request: “rtp_forward”,
publisher_id: 1683429425832664,
secret: “adminpwd”,
host: “127.0.0.1”,
streams: [ { mid: “0”, port: 50001, pt:111}, {mid: “1”, port: 50000, pt:102}]
}});
GStreamer Command:
[root@localhost demos]# gst-launch-1.0 udpsrc port=50000 ! application/x-rtp,media=video,encoding-name=VP8 ! rtpvp8depay ! vp8dec ! videoconvert ! x264enc tune=zerolatency ! mpegtsmux ! hlssink max-files=5 playlist-length=10 target-duration=5 location=/var/www/html/janus-gateway/html/demos/segment_%ld.ts playlist-location=/var/www/html/janus-gateway/html/demos/playlist.m3u8
The streaming is visible on the desired browser but the latency in video is more than 30 seconds.
There is no system load (< 1.0) while both Janus and Gstreamer is running, so there is no question of load.
Is there any way to reduce the latency?
Regards,