winlin

update feature list

@@ -515,72 +515,74 @@ Please select your language: @@ -515,72 +515,74 @@ Please select your language:
515 515
516 ### Features 516 ### Features
517 517
518 -1. Simple, also stable enough.  
519 -1. High-performance([CN][v1_CN_Performance], [EN][v1_EN_Performance]): single-thread, async socket, event/st-thread driven.  
520 -1. High-concurrency([CN][v1_CN_Performance], [EN][v1_EN_Performance]), 6000+ connections(500kbps), 900Mbps, CPU 90.2%, 41MB  
521 -1. Support RTMP Origin Server([CN][v1_CN_DeliveryRTMP],[EN][v1_EN_DeliveryRTMP])  
522 -1. Support RTMP Edge Server([CN][v1_CN_Edge], [EN][v1_EN_Edge]) for CDN, push/pull stream from any RTMP server  
523 -1. Support single process; no multiple processes.  
524 -1. Support Vhost([CN][v1_CN_RtmpUrlVhost], [EN][v1_EN_RtmpUrlVhost]), support \_\_defaultVhost\_\_.  
525 -1. Support RTMP([CN][v1_CN_DeliveryRTMP], [EN][v1_EN_DeliveryRTMP]) live streaming; no vod streaming.  
526 -1. Support Apple HLS(m3u8)([CN][v1_CN_DeliveryHLS], [EN][v1_EN_DeliveryHLS]) live streaming.  
527 -1. Support HLS audio-only([CN][v1_CN_DeliveryHLS2], [EN][v1_EN_DeliveryHLS2]) live streaming.  
528 -1. Support Reload([CN][v1_CN_Reload], [EN][v1_EN_Reload]) config to enable changes.  
529 -1. Support cache last gop([CN][v1_CN_LowLatency2], [EN][v1_EN_LowLatency2]) for flash player to fast startup.  
530 -1. Support listen at multiple ports.  
531 -1. Support long time(>4.6hours) publish/play.  
532 -1. Support Forward([CN][v1_CN_Forward], [EN][v1_EN_Forward]) in master-slave mode.  
533 -1. Support live stream Transcoding([CN][v1_CN_FFMPEG], [EN][v1_EN_FFMPEG]) by ffmpeg.  
534 -1. Support ffmpeg([CN][v1_CN_FFMPEG], [EN][v1_EN_FFMPEG]) filters(logo/overlay/crop), x264 params, copy/vn/an.  
535 -1. Support audio transcode([CN][v1_CN_FFMPEG], [EN][v1_EN_FFMPEG]) only, speex/mp3 to aac  
536 -1. Support http callback api hooks([CN][v1_CN_HTTPCallback], [EN][v1_EN_HTTPCallback])(for authentication and injection).  
537 -1. Support bandwidth test([CN][v1_CN_BandwidthTestTool], [EN][v1_EN_BandwidthTestTool]) api and flash client.  
538 -1. Player, publisher(encoder), and demo pages(jquery+bootstrap)([CN][v1_CN_SampleDemo],[EN][v1_EN_SampleDemo]).  
539 -1. Demo([CN][v1_CN_SampleDemo], [EN][v1_EN_SampleDemo]) video meeting or chat(SRS+cherrypy+jquery+bootstrap).  
540 -1. Full documents in wiki([CN][v1_CN_Home], [EN][v1_EN_Home]), both Chinese and English.  
541 -1. Support RTMP(play-publish) library: srs-librtmp([CN][v2_CN_SrsLibrtmp], [EN][v2_EN_SrsLibrtmp])  
542 -1. Support ARM cpu arch([CN][v1_CN_SrsLinuxArm], [EN][v1_EN_SrsLinuxArm]) with rtmp/ssl/hls/librtmp.  
543 -1. Support init.d([CN][v1_CN_LinuxService], [EN][v1_EN_LinuxService]) and packge script, log to file.  
544 -1. Support RTMP ATC([CN][v1_CN_RTMP-ATC], [EN][v1_EN_RTMP-ATC]) for HLS/HDS to support backup(failover)  
545 -1. Support HTTP RESTful management api([CN][v1_CN_HTTPApi], [EN][v1_EN_HTTPApi]).  
546 -1. Support Ingest([CN][v1_CN_Ingest], [EN][v1_EN_Ingest]) FILE/HTTP/RTMP/RTSP(RTP, SDP) to RTMP using external tools(e.g ffmepg).  
547 -1. Support DVR([CN][v1_CN_DVR], [EN][v1_EN_DVR]), record live to flv file for vod.  
548 -1. Support tracable log, session based log([CN][v1_CN_SrsLog], [EN][v1_EN_SrsLog]).  
549 -1. Support DRM token traverse([CN][v1_CN_DRM2], [EN][v1_EN_DRM2]) for fms origin authenticate.  
550 -1. Support system full utest on gtest.  
551 -1. Support embeded HTTP server([CN][v2_CN_SampleHTTP], [EN][v2_EN_SampleHTTP]) for hls(live/vod)  
552 -1. Support vod stream(http flv/hls vod stream)([CN][v2_CN_FlvVodStream], [EN][v2_EN_FlvVodStream]).  
553 -1. Stable [1.0release branch][branch1].  
554 -1. Support publish h264 raw stream([CN][v2_CN_SrsLibrtmp2], [EN][v2_EN_SrsLibrtmp2]) by srs-librtmp.  
555 -1. Support [6k+ clients][bug #194], 3Gbps per process.  
556 -1. Suppport [English wiki][v1_EN_Home].  
557 -1. Research and simplify st, [bug #182][bug #182].  
558 -1. Support compile [srs-librtmp on windows][srs-librtmp], [bug #213][bug #213].  
559 -1. Support [10k+ clients][bug #251], 4Gbps per process.  
560 -1. Support publish aac adts raw stream([CN][v2_CN_SrsLibrtmp3], [EN][v2_EN_SrsLibrtmp3]) by srs-librtmp.  
561 -1. Support 0.1s+ latency, read [bug #257][bug #257].  
562 -1. Support allow/deny publish/play for all or specified ip([CN][v2_CN_Security], [EN][v2_EN_Security]).  
563 -1. Support custom dvr path and http callback, read [bug #179][bug #179] and [bug #274][bug #274].  
564 -1. Support rtmp remux to http flv/mp3/aac/ts live stream, read [bug #293][bug #293]([CN][v2_CN_DeliveryHttpStream], [EN][v2_CN_DeliveryHttpStream]).  
565 -1. Support HLS(h.264+mp3) streaming, read [bug #301][bug #301].  
566 -1. Rewrite HLS(h.264+aac/mp3) streaming, read [bug #304][bug #304].  
567 -1. [dev] Realease [2.0release branch][branch2].  
568 -1. [experiment] Support Adobe HDS(f4m)([CN][v1_CN_DeliveryHDS], [EN][v1_EN_DeliveryHDS]) dynamic streaming.  
569 -1. [experiment] Support push MPEG-TS over UDP to SRS, read [bug #250][bug #250].  
570 -1. [experiment] Support push RTSP to SRS, read [bug #133][bug #133].  
571 -1. [experiment] Support push flv stream over HTTP POST to SRS, read [wiki]([CN][v2_CN_Streamer2], [EN][v2_EN_Streamer2]).  
572 -1. [experiment] Support [srs-dolphin][srs-dolphin], the multiple-process SRS.  
573 -1. [experiment] Support [remote console][console], read [srs-ngb][srs-ngb].  
574 -1. Support nginx-rtmp style exec, read [bug #367][bug #367].  
575 -1. Support NGINX-RTMP style EXEC, read [#367][bug #367].  
576 -1. Support NGINX-RTMP style dvr control module, read [#459][bug #459].  
577 -1. Support HTTP Security Raw Api, read [#459][bug #459], [#470][bug #470], [#319][bug #319].  
578 -1. Support Integration with Kafka/Spark Big-Data system, read [#467][bug #467].  
579 -1. [plan]Support Origin Cluster for Load Balance and Fault Tolarence, read [#464][bug #464], [RTMP 302][bug #92].  
580 -1. [plan]Support H.265, push RTMP with H.265, delivery in HLS, read [#465][bug #465].  
581 -1. [plan]Support MPEG-DASH, the future streaming protocol, read [#299][bug #299].  
582 -1. [plan]Support HLS edge server, read [#466][bug #466].  
583 -1. [plan]Support HLS realtime latency mode, read [#468][bug #468]. 518 +1. [x]Simple, also stable enough.
  519 +1. [x]High-performance([CN][v1_CN_Performance], [EN][v1_EN_Performance]): single-thread, async socket, event/st-thread driven.
  520 +1. [x]High-concurrency([CN][v1_CN_Performance], [EN][v1_EN_Performance]), 6000+ connections(500kbps), 900Mbps, CPU 90.2%, 41MB
  521 +1. [x]Support RTMP Origin Server([CN][v1_CN_DeliveryRTMP],[EN][v1_EN_DeliveryRTMP])
  522 +1. [x]Support RTMP Edge Server([CN][v1_CN_Edge], [EN][v1_EN_Edge]) for CDN, push/pull stream from any RTMP server
  523 +1. [x]Support single process; no multiple processes.
  524 +1. [x]Support Vhost([CN][v1_CN_RtmpUrlVhost], [EN][v1_EN_RtmpUrlVhost]), support \_\_defaultVhost\_\_.
  525 +1. [x]Support RTMP([CN][v1_CN_DeliveryRTMP], [EN][v1_EN_DeliveryRTMP]) live streaming; no vod streaming.
  526 +1. [x]Support Apple HLS(m3u8)([CN][v1_CN_DeliveryHLS], [EN][v1_EN_DeliveryHLS]) live streaming.
  527 +1. [x]Support HLS audio-only([CN][v1_CN_DeliveryHLS2], [EN][v1_EN_DeliveryHLS2]) live streaming.
  528 +1. [x]Support Reload([CN][v1_CN_Reload], [EN][v1_EN_Reload]) config to enable changes.
  529 +1. [x]Support cache last gop([CN][v1_CN_LowLatency2], [EN][v1_EN_LowLatency2]) for flash player to fast startup.
  530 +1. [x]Support listen at multiple ports.
  531 +1. [x]Support long time(>4.6hours) publish/play.
  532 +1. [x]Support Forward([CN][v1_CN_Forward], [EN][v1_EN_Forward]) in master-slave mode.
  533 +1. [x]Support live stream Transcoding([CN][v1_CN_FFMPEG], [EN][v1_EN_FFMPEG]) by ffmpeg.
  534 +1. [x]Support ffmpeg([CN][v1_CN_FFMPEG], [EN][v1_EN_FFMPEG]) filters(logo/overlay/crop), x264 params, copy/vn/an.
  535 +1. [x]Support audio transcode([CN][v1_CN_FFMPEG], [EN][v1_EN_FFMPEG]) only, speex/mp3 to aac
  536 +1. [x]Support http callback api hooks([CN][v1_CN_HTTPCallback], [EN][v1_EN_HTTPCallback])(for authentication and injection).
  537 +1. [x]Support bandwidth test([CN][v1_CN_BandwidthTestTool], [EN][v1_EN_BandwidthTestTool]) api and flash client.
  538 +1. [x]Player, publisher(encoder), and demo pages(jquery+bootstrap)([CN][v1_CN_SampleDemo],[EN][v1_EN_SampleDemo]).
  539 +1. [x]Demo([CN][v1_CN_SampleDemo], [EN][v1_EN_SampleDemo]) video meeting or chat(SRS+cherrypy+jquery+bootstrap).
  540 +1. [x]Full documents in wiki([CN][v1_CN_Home], [EN][v1_EN_Home]), both Chinese and English.
  541 +1. [x]Support RTMP(play-publish) library: srs-librtmp([CN][v2_CN_SrsLibrtmp], [EN][v2_EN_SrsLibrtmp])
  542 +1. [x]Support ARM cpu arch([CN][v1_CN_SrsLinuxArm], [EN][v1_EN_SrsLinuxArm]) with rtmp/ssl/hls/librtmp.
  543 +1. [x]Support init.d([CN][v1_CN_LinuxService], [EN][v1_EN_LinuxService]) and packge script, log to file.
  544 +1. [x]Support RTMP ATC([CN][v1_CN_RTMP-ATC], [EN][v1_EN_RTMP-ATC]) for HLS/HDS to support backup(failover)
  545 +1. [x]Support HTTP RESTful management api([CN][v1_CN_HTTPApi], [EN][v1_EN_HTTPApi]).
  546 +1. [x]Support Ingest([CN][v1_CN_Ingest], [EN][v1_EN_Ingest]) FILE/HTTP/RTMP/RTSP(RTP, SDP) to RTMP using external tools(e.g ffmepg).
  547 +1. [x]Support DVR([CN][v1_CN_DVR], [EN][v1_EN_DVR]), record live to flv file for vod.
  548 +1. [x]Support tracable log, session based log([CN][v1_CN_SrsLog], [EN][v1_EN_SrsLog]).
  549 +1. [x]Support DRM token traverse([CN][v1_CN_DRM2], [EN][v1_EN_DRM2]) for fms origin authenticate.
  550 +1. [x]Support system full utest on gtest.
  551 +1. [x]Support embeded HTTP server([CN][v2_CN_SampleHTTP], [EN][v2_EN_SampleHTTP]) for hls(live/vod)
  552 +1. [x]Support vod stream(http flv/hls vod stream)([CN][v2_CN_FlvVodStream], [EN][v2_EN_FlvVodStream]).
  553 +1. [x]Stable [1.0release branch][branch1].
  554 +1. [x]Support publish h264 raw stream([CN][v2_CN_SrsLibrtmp2], [EN][v2_EN_SrsLibrtmp2]) by srs-librtmp.
  555 +1. [x]Support [6k+ clients][bug #194], 3Gbps per process.
  556 +1. [x]Suppport [English wiki][v1_EN_Home].
  557 +1. [x]Research and simplify st, [bug #182][bug #182].
  558 +1. [x]Support compile [srs-librtmp on windows][srs-librtmp], [bug #213][bug #213].
  559 +1. [x]Support [10k+ clients][bug #251], 4Gbps per process.
  560 +1. [x]Support publish aac adts raw stream([CN][v2_CN_SrsLibrtmp3], [EN][v2_EN_SrsLibrtmp3]) by srs-librtmp.
  561 +1. [x]Support 0.1s+ latency, read [bug #257][bug #257].
  562 +1. [x]Support allow/deny publish/play for all or specified ip([CN][v2_CN_Security], [EN][v2_EN_Security]).
  563 +1. [x]Support custom dvr path and http callback, read [bug #179][bug #179] and [bug #274][bug #274].
  564 +1. [x]Support rtmp remux to http flv/mp3/aac/ts live stream, read [bug #293][bug #293]([CN][v2_CN_DeliveryHttpStream], [EN][v2_CN_DeliveryHttpStream]).
  565 +1. [x]Support HLS(h.264+mp3) streaming, read [bug #301][bug #301].
  566 +1. [x]Rewrite HLS(h.264+aac/mp3) streaming, read [bug #304][bug #304].
  567 +1. [x]Support nginx-rtmp style exec, read [bug #367][bug #367].
  568 +1. [x]Support NGINX-RTMP style EXEC, read [#367][bug #367].
  569 +1. [x]Support NGINX-RTMP style dvr control module, read [#459][bug #459].
  570 +1. [x]Support HTTP Security Raw Api, read [#459][bug #459], [#470][bug #470], [#319][bug #319].
  571 +1. [x][experiment] Support Integration with Kafka/Spark Big-Data system, read [#467][bug #467].
  572 +1. [x][experiment] Support Adobe HDS(f4m)([CN][v1_CN_DeliveryHDS], [EN][v1_EN_DeliveryHDS]) dynamic streaming.
  573 +1. [x][experiment] Support push MPEG-TS over UDP to SRS, read [bug #250][bug #250].
  574 +1. [x][experiment] Support push RTSP to SRS, read [bug #133][bug #133].
  575 +1. [x][experiment] Support push flv stream over HTTP POST to SRS, read [wiki]([CN][v2_CN_Streamer2], [EN][v2_EN_Streamer2]).
  576 +1. [x][experiment] Support [srs-dolphin][srs-dolphin], the multiple-process SRS.
  577 +1. [x][experiment] Support [remote console][console], read [srs-ngb][srs-ngb].
  578 +1. [x]Support http api/stream CORS for js.
  579 +1. [ ] Enhanced forward with vhost and url variables.
  580 +1. [ ] Support source or idle stream cleanup.
  581 +1. [ ]Support Origin Cluster for Load Balance and Fault Tolarence, read [#464][bug #464], [RTMP 302][bug #92].
  582 +1. [ ]Support H.265, push RTMP with H.265, delivery in HLS, read [#465][bug #465].
  583 +1. [ ]Support MPEG-DASH, the future streaming protocol, read [#299][bug #299].
  584 +1. [ ]Support HLS edge server, read [#466][bug #466].
  585 +1. [ ]Support HLS realtime latency mode, read [#468][bug #468].
584 586
585 ### Compare 587 ### Compare
586 588
@@ -374,6 +374,7 @@ int srs_config_transform_vhost(SrsConfDirective* root) @@ -374,6 +374,7 @@ int srs_config_transform_vhost(SrsConfDirective* root)
374 SrsConfDirective* hstrs = conf->get("hstrs"); 374 SrsConfDirective* hstrs = conf->get("hstrs");
375 conf->remove(hstrs); 375 conf->remove(hstrs);
376 srs_freep(hstrs); 376 srs_freep(hstrs);
  377 + srs_warn("Always enable hstrs, please never config it.");
377 } 378 }
378 379
379 // SRS3.0, change the refer style 380 // SRS3.0, change the refer style