logo

Live Production Software Forums


Welcome Guest! To enable all features please Login or Register.

Notification

Icon
Error

Options
Go to last post Go to first unread
gre2gor  
#1 Posted : Wednesday, December 25, 2024 6:30:19 PM(UTC)
gre2gor

Rank: Advanced Member

Groups: Registered
Joined: 12/14/2018(UTC)
Posts: 82
Slovenia

Was thanked: 17 time(s) in 6 post(s)
Subject: Seeking Help with Stable Native RTSP HEVC Inputs in vMix for Multiple Offsite Cameras

Hello vMix Community,

I'm currently managing a setup with 9 offsite cameras located in mountainous areas. These cameras support the HEVC codec and transmit their feeds via potentially unstable internet connections. Here's a breakdown of my current setup and the challenges I'm facing:

Current Setup:

Camera Inputs:
9 Cameras using HEVC.
Transmission Methods:
SRT: Cameras send streams to my SRT media server.
RTSP: Initially tried directly, but faced issues with vMix compatibility.



Media Server:
Serves multiple output protocols including WebRTC, SRT, RTSP, RTMP, etc.
vMix pulls streams from this local SRT server.


vMix Configuration:
Inputs: 9 camera feeds.
Graphics: A stacked GT title with multiple layers.
Mixes: Mix1 and Mix2 layered on top.
Automation: A Python script rotates camera inputs randomly (24/74) via vMix’s web HTTP API.


Issues Encountered:

1. Using SRT Streams:
Performance Degradation: vMix becomes unresponsive over time.
Memory Usage: Increases from ~2.5GB to ~7GB within a day.
Behavior: Inputs resume automatically when the signal is live, but the overall system stability is compromised.


2. Using RTSP Streams:
Direct RTSP in vMix: Not functioning as expected.
VLC Input Method: Works by selecting VLC as the input source and then using the RTSP URL.
Connection Stability:
When the connection drops, vMix does not automatically resume the RTSP input.
Requires manual resetting of the input to restore the stream.
Desire: A native RTSP input in vMix that supports HEVC and can automatically reconnect when the connection is unstable.




Summary of the Problem:

SRT Method: Causes vMix to become unstable and consume excessive memory over time.
RTSP via VLC: Lacks automatic reconnection capabilities, requiring manual intervention when connections drop.


What I'm Looking For:

Optimal Solution: Implementing native RTSP with HEVC support directly in vMix that can handle unstable connections by automatically resuming streams without manual resets.
Performance Stability: Ensuring that using RTSP does not degrade vMix performance or lead to high memory usage over extended periods.


Additional Notes:

[indent]I've tested different SRT servers, but the issue with vMix remains consistent, suggesting the problem might not be server-specific.
The system runs smoothly with RTSP or VLC RTSP inputs, except for the reconnection issue.


Any Advice or Solutions?
I'm open to suggestions on configuring vMix for better handling of RTSP streams, alternative streaming methods, or any best practices to manage multiple HEVC camera inputs reliably. Your insights would be greatly appreciated!

Thank you!

---
Tags: vMix, HEVC, RTSP, SRT, Streaming Stability, Multiple Cameras, Automation, Python Script
doggy  
#2 Posted : Wednesday, December 25, 2024 6:49:19 PM(UTC)
doggy

Rank: Advanced Member

Groups: Registered
Joined: 12/27/2012(UTC)
Posts: 5,263
Belgium
Location: Belgium

Thanks: 294 times
Was thanked: 965 time(s) in 799 post(s)
Something i played with (for S & G)

SRT feeds to SRTMiniServer -> NDI to vMix

optionally NDI Bridge between server and vMix for NDI/HX instead of NDI FULL. Vmix on one pc server another , NDI/HX over wifi to vMix PC

Didnt play with 9 though ;-)
ckvideo  
#3 Posted : Tuesday, December 31, 2024 6:54:13 AM(UTC)
ckvideo

Rank: Member

Groups: Registered
Joined: 3/21/2022(UTC)
Posts: 29
Germany

Thanks: 1 times
Was thanked: 7 time(s) in 7 post(s)
Originally Posted by: gre2gor Go to Quoted Post
Subject: Seeking Help with Stable Native RTSP HEVC Inputs in vMix for Multiple Offsite Cameras

Hello vMix Community,

I'm currently managing a setup with 9 offsite cameras located in mountainous areas. These cameras support the HEVC codec and transmit their feeds via potentially unstable internet connections. Here's a breakdown of my current setup and the challenges I'm facing:

Current Setup:

Camera Inputs:
9 Cameras using HEVC.
Transmission Methods:
SRT: Cameras send streams to my SRT media server.
RTSP: Initially tried directly, but faced issues with vMix compatibility.



Media Server:
Serves multiple output protocols including WebRTC, SRT, RTSP, RTMP, etc.
vMix pulls streams from this local SRT server.


vMix Configuration:
Inputs: 9 camera feeds.
Graphics: A stacked GT title with multiple layers.
Mixes: Mix1 and Mix2 layered on top.
Automation: A Python script rotates camera inputs randomly (24/74) via vMix’s web HTTP API.


Issues Encountered:

1. Using SRT Streams:
Performance Degradation: vMix becomes unresponsive over time.
Memory Usage: Increases from ~2.5GB to ~7GB within a day.
Behavior: Inputs resume automatically when the signal is live, but the overall system stability is compromised.


2. Using RTSP Streams:
Direct RTSP in vMix: Not functioning as expected.
VLC Input Method: Works by selecting VLC as the input source and then using the RTSP URL.
Connection Stability:
When the connection drops, vMix does not automatically resume the RTSP input.
Requires manual resetting of the input to restore the stream.
Desire: A native RTSP input in vMix that supports HEVC and can automatically reconnect when the connection is unstable.




Summary of the Problem:

SRT Method: Causes vMix to become unstable and consume excessive memory over time.
RTSP via VLC: Lacks automatic reconnection capabilities, requiring manual intervention when connections drop.


What I'm Looking For:

Optimal Solution: Implementing native RTSP with HEVC support directly in vMix that can handle unstable connections by automatically resuming streams without manual resets.
Performance Stability: Ensuring that using RTSP does not degrade vMix performance or lead to high memory usage over extended periods.


Additional Notes:

[indent]I've tested different SRT servers, but the issue with vMix remains consistent, suggesting the problem might not be server-specific.
The system runs smoothly with RTSP or VLC RTSP inputs, except for the reconnection issue.


Any Advice or Solutions?
I'm open to suggestions on configuring vMix for better handling of RTSP streams, alternative streaming methods, or any best practices to manage multiple HEVC camera inputs reliably. Your insights would be greatly appreciated!

Thank you!

---
Tags: vMix, HEVC, RTSP, SRT, Streaming Stability, Multiple Cameras, Automation, Python Script


Hi gre2gor,

what is the time frame around this? Running 24/7 or just for a few hours? What is the pattern of the network instability from the cameras? What kind of network goes to the cameras? What do you want to achive in general?

Apart from that, I would recommend using SRT with high enough latency (800 ms min, on mobile unstable networks go to 2000 ms). If you feed the SRT stream directly into vMix or if you use a SRT gateway server inbetween does not matter, since in any case vMix gets SRT feeds. I can not confirm a memory leak on vMix for SRT, I would rather suspect HEVC being the problem. If you can, do a long term crosscheck with SRT and H.264. However, if you run vMix 24/7, a lot of interesting things might happen. :-)

I was running SRT/H.264 from a Atem Mini Pro to vMix for 5 days conference on a LAN without issues.

You might have a chance with converting SRT to NDI, MPEG-TS or RTSP using Multistreamer or some media server (Datahrei Restreamer) and find out, if vMix works better. Changing HEVC to H.264 might help too.

VLC does not reconnect because it uses ffmpeg. ffmpeg needs to be restarted, once a connection drops. Datarhei restreamer "wraps around" this, but you get some offline time between connection retries.


Good luck,

Christian



Overnght  
#4 Posted : Wednesday, January 1, 2025 7:31:23 AM(UTC)
Overnght

Rank: Newbie

Groups: Registered
Joined: 8/27/2023(UTC)
Posts: 1
United States
Location: Nevada

Thanks for your post. I was searching the forum for this very topic. I am fairly new to SRT and RTMP protocols, but learning a lot in the last two weeks. I was sending SRT HEVC 8mbs (output) from one vMix in Orange County, CA to another vMix in Las Vegas, NV the video signal would drop (audio would stay) after 5-10 minutes of playing a file. When I switched to H.264 8mbs (output), the SRT is stable and has been running for 45 minutes without error.

I probably should post the following in a new post but on a side subject, has anyone here configured a "nginx" configuration file for setting up a rtmp server? I am looking to modify the streamkey in the config file but can't seem to figure it out. Here is the default config file info:


#user nobody;
# multiple workers works !
worker_processes 2;

#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;

#pid logs/nginx.pid;


events {
worker_connections 8192;
# max value 32768, nginx recycling connections+registry optimization =
# this.value * 20 = max concurrent connections currently tested with one worker
# C1000K should be possible depending there is enough ram/cpu power
# multi_accept on;
}

rtmp {
server {
listen 2165;
chunk_size 4096;

application live {
live on;

record off;
# record all;
# record_path /recordings;

# To push to multiple locations, uncomment lines below and substitute in your RTMP URI and stream key
# push rtmp://server/path/streamkey;
# push rtmp://server/path/streamkey;

# HLS options below
#hls on;
#hls_path /http/directory/;
#hls_fragment 3;
#hls_playlist_length 60;
#hls_continuous on;
}
}
}


Thank you,

Ken
ckvideo  
#5 Posted : Thursday, January 2, 2025 10:30:20 PM(UTC)
ckvideo

Rank: Member

Groups: Registered
Joined: 3/21/2022(UTC)
Posts: 29
Germany

Thanks: 1 times
Was thanked: 7 time(s) in 7 post(s)
Hi Ken,

thanks for confirming the HEVC issue. 8 Mbit/s on HEVC is solid for HD, do you need that bandwidth? What format were you streaming? I think I'll set up a test for the HEVC problem. Anybody else here who can confirm this? If yes, please drop a line.

About the nginx I can not really help, setting this up is still on my todo list. However, if you only need to go RTMP->HLS, give Datarhei Restreamer a try. This is the quickest way to solve this. You could than setup nginx as cache server for distribution.

Best,

Christian

Originally Posted by: Overnght Go to Quoted Post
Thanks for your post. I was searching the forum for this very topic. I am fairly new to SRT and RTMP protocols, but learning a lot in the last two weeks. I was sending SRT HEVC 8mbs (output) from one vMix in Orange County, CA to another vMix in Las Vegas, NV the video signal would drop (audio would stay) after 5-10 minutes of playing a file. When I switched to H.264 8mbs (output), the SRT is stable and has been running for 45 minutes without error.

I probably should post the following in a new post but on a side subject, has anyone here configured a "nginx" configuration file for setting up a rtmp server? I am looking to modify the streamkey in the config file but can't seem to figure it out. Here is the default config file info:


#user nobody;
# multiple workers works !
worker_processes 2;

#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;

#pid logs/nginx.pid;


events {
worker_connections 8192;
# max value 32768, nginx recycling connections+registry optimization =
# this.value * 20 = max concurrent connections currently tested with one worker
# C1000K should be possible depending there is enough ram/cpu power
# multi_accept on;
}

rtmp {
server {
listen 2165;
chunk_size 4096;

application live {
live on;

record off;
# record all;
# record_path /recordings;

# To push to multiple locations, uncomment lines below and substitute in your RTMP URI and stream key
# push rtmp://server/path/streamkey;
# push rtmp://server/path/streamkey;

# HLS options below
#hls on;
#hls_path /http/directory/;
#hls_fragment 3;
#hls_playlist_length 60;
#hls_continuous on;
}
}
}


Thank you,

Ken


Users browsing this topic
Guest (2)
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.