Gregor Riepl
Gregor Riepl
Fixes: #34 Closure of the output queue channel is guarded against by adding an atomic flag around it. To make the code more readable and slightly less error-prone, the output...
This pull request adds (limited) support for RTP stream origins. RTCP, RTSP and separated A/V streams are not part of the PR. Both unicast and multicast endpoints are possible. Since...
In `Streamer.Stream()`, there is an inherent concurrency issue, because the `Connection.Closed` flag is used to determine if the `Connection.Queue` channel needs to be closed or not: https://github.com/onitake/restreamer/blob/6a701cadf949030788c0d29b3952ac40da487053/streaming/streamer.go#L334-L336 If someone closes...
This PR implements a sliding window buffer to allow bursting new client connections and achieve faster time-to-play. Fixes #10 .
Buffer prefilling may be useful. Investigate and implement if appropriate.
There is an occasional crash that should be fixed urgently. Version: 0.8.1 ``` restreamer: panic: close of closed channel restreamer: goroutine 7328 [running]: restreamer: github.com/onitake/restreamer/streaming.(*Streamer).Stream(0xc0001a49a0, 0xc00205a420, 0xc007571298, 0x0) restreamer: /go/restreamer/streaming/streamer.go:322...
This is a follow-up to #32 . The Prometheus packet counters can cause performance issues when they are called very often. Find a replacement for them that doesn't impact stream...
For authentication purposes, the new auth feature in 0.6.0 can be used, but there are other use cases where custom HTTP headers may be needed. This is not a high-priority...
Add a buffer queue fill rate stat for better load analysis.
Configuration should also be accessible via command line and/or environment variables, not just a config file. Extend config.go to support all 3 options.