mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
fix #241, add mw(merged-write) config. 2.0.53
This commit is contained in:
parent
72fa33d9fb
commit
b1d7fbe668
12 changed files with 125 additions and 28 deletions
|
@ -31,7 +31,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||
// current release version
|
||||
#define VERSION_MAJOR 2
|
||||
#define VERSION_MINOR 0
|
||||
#define VERSION_REVISION 52
|
||||
#define VERSION_REVISION 53
|
||||
// server info.
|
||||
#define RTMP_SIG_SRS_KEY "SRS"
|
||||
#define RTMP_SIG_SRS_ROLE "origin/edge server"
|
||||
|
@ -48,6 +48,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||
#define RTMP_SIG_SRS_HANDSHAKE RTMP_SIG_SRS_KEY"("RTMP_SIG_SRS_VERSION")"
|
||||
#define RTMP_SIG_SRS_RELEASE "https://github.com/winlinvip/simple-rtmp-server/tree/1.0release"
|
||||
#define RTMP_SIG_SRS_HTTP_SERVER "https://github.com/winlinvip/simple-rtmp-server/wiki/v1_CN_HTTPServer#feature"
|
||||
#define RTMP_SIG_SRS_ISSUES(id) "https://github.com/winlinvip/simple-rtmp-server/issues/"#id
|
||||
#define RTMP_SIG_SRS_VERSION __SRS_XSTR(VERSION_MAJOR)"."__SRS_XSTR(VERSION_MINOR)"."__SRS_XSTR(VERSION_REVISION)
|
||||
|
||||
// internal macros, covert macro values to str,
|
||||
|
|
|
@ -38,6 +38,8 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||
* to improve read performance, merge some packets then read,
|
||||
* when it on and read small bytes, we sleep to wait more data.,
|
||||
* that is, we merge some data to read together.
|
||||
* @see SrsConfig::get_mr_enabled()
|
||||
* @see SrsConfig::get_mr_sleep_ms()
|
||||
* @see https://github.com/winlinvip/simple-rtmp-server/issues/241
|
||||
* @example, for the default settings, this algorithm will use:
|
||||
* that is, when got nread bytes smaller than 4KB, sleep(780ms).
|
||||
|
@ -55,11 +57,14 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||
* For example, sleep 120ms. Then there is, and always 120ms data in buffer.
|
||||
* That is, the latency is 120ms(the sleep time).
|
||||
*/
|
||||
// to enable merged read.
|
||||
#define SRS_PERF_MERGED_READ
|
||||
// the default config of mr.
|
||||
#define SRS_PERF_MR_ENABLED false
|
||||
#define SRS_PERF_MR_SLEEP 500
|
||||
|
||||
/**
|
||||
* the send cache time in ms.
|
||||
* the MW(merged-write) send cache time in ms.
|
||||
* the default value, user can override it in config.
|
||||
* to improve send performance, cache msgs and send in a time.
|
||||
* for example, cache 500ms videos and audios, then convert all these
|
||||
* msgs to iovecs, finally use writev to send.
|
||||
|
@ -67,8 +72,10 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||
* the latency+ when cache+.
|
||||
* @remark the socket send buffer default to 185KB, it large enough.
|
||||
* @see https://github.com/winlinvip/simple-rtmp-server/issues/194
|
||||
* @see SrsConfig::get_mw_sleep_ms()
|
||||
*/
|
||||
#define SRS_PERF_SEND_MSGS_CACHE 500
|
||||
// the default config of mw.
|
||||
#define SRS_PERF_MW_SLEEP 500
|
||||
|
||||
/**
|
||||
* how many chunk stream to cache, [0, N].
|
||||
|
@ -78,5 +85,13 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||
*/
|
||||
#define SRS_PERF_CHUNK_STREAM_CACHE 16
|
||||
|
||||
/**
|
||||
* the gop cache and play cache queue.
|
||||
*/
|
||||
// whether gop cache is on.
|
||||
#define SRS_PERF_GOP_CACHE true
|
||||
// in seconds, the live queue length.
|
||||
#define SRS_PERF_PLAY_QUEUE 30
|
||||
|
||||
#endif
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue