Question / Help RTMP server settings (red5)

Nekuikos

New Member
Hi

I installed red5 RTMP server on my win7 64bit gaming computer.
The goal is to stream gamerecordings with low latency - 2-3 sec but preferably less than 1 sec latency.
So i run my game, i run OBS, i stream to local RTMP server and friends connect via flowplayer.

I'm already experiementing with OBS settings, i have read several posts on this forum and elsewhere.
If you think you found the optimal settings for such a senario, i would love to see them...

But my real question is - how much experience do people here have with the RTMP server setup?

Red5 has the following section in its ./conf/red5.properties file.
Does anyone have any suggestions, i relationg to low latency streaming????
Many thanks in advance.

Code:
# RTMP
rtmp.host=127.0.0.1
rtmp.port=1935
rtmp.io_threads=16
rtmp.send_buffer_size=65536
rtmp.receive_buffer_size=65536
rtmp.ping_interval=1000
rtmp.max_inactivity=60000
rtmp.max_handshake_time=5000
rtmp.tcp_nodelay=true
rtmp.default_server_bandwidth=10000000
rtmp.default_client_bandwidth=10000000
rtmp.client_bandwidth_limit_type=2
rtmp.bandwidth_detection=true
rtmp.encoder_base_tolerance=5000
rtmp.encoder_drop_live_future=false
rtmp.traffic_class=24
# requested maximum length of the queue of incoming connections
rtmp.backlog=10
# the interval (seconds) between each throughput calculation
rtmp.thoughput_calc_interval=1
# enable io event throttler
rtmp.throttle_enable=true
# io event size threshold
rtmp.throttle_threshold_size=65536
# max connections to allow when throttling is in effect
rtmp.throttle_max_permits=128
# keep-alive for io threads when using an executor
rtmp.executor_keepalive_time=3000
 

dodgepong

Administrator
Community Helper
I don't know much about Red5, but having not looked at the documentation at all and only this config file, my first guess would be to investigate changing the Send and Receive buffer sizes.

Again, I have no idea. That is just a guess. I should probably look up the conf documentation... :/
 

hilalpro

Member
There's really nothing you can change there to improve latency.. viewing your stream over a flash player means that there will be atleast 3 seconds delay + the other latency factors.
 

Nekuikos

New Member
Well yah... striking out with google too :|

I'v done PL1 stuff for more than 15 years, basic C# for 4, mostly designlevel analysis, estimation now-a-days.
So i really don't want to start digging into the source for all this... or struggle with a standalone server.
Red5 was the only thing i found could be installed directly on my win7 computer.

1) OBS x264 setup with tune=zerolatency
2) Setting bufferLength = 0 on flowplayer
Proberbly been the best gains i'v been able to find with just goggling.
Edit: With this i get 1-2 seconds delay locally on my computer, but about 4-5 second delay on my friends computer.

RTMPdump and vlc doesn't work for me, so flowplayer was the only simi-easy solution for RTMP playback.
That or i just don't see the alternative...
 

dodgepong

Administrator
Community Helper
Are you using the latest test version of OBS? It reduces client buffering compared to 0.472b
 

rcoenen

New Member
The only way I could get my live streams to sub-1 second latency/delay was to use Flash Media Live Encoder 3.2 and use the VP6 encoder instead of H264.

Somehow with H264 (x264) I cannot get the delay below 3 seconds.
 

Yoshen

New Member
Nekuikos did you ever find a solution to this? I too am looking to stream with minimal latency... I'm streaming to twitch however.
 
Top