diff --git a/trunk/conf/full.conf b/trunk/conf/full.conf index 4881feeee..6556700d6 100644 --- a/trunk/conf/full.conf +++ b/trunk/conf/full.conf @@ -90,6 +90,40 @@ http_stream { vhost __defaultVhost__ { } +# vhost for ingest +vhost ingest.srs.com { + # ingest file/stream/device then push to SRS over RTMP. + ingest { + # whether enable ingest features + # default: off + enable on; + # input file/stream/device, can be multiple input. + input { + # the type of input. + # can be file/stream/device, that is, + # file: ingest file specifies by url. + # stream: ingest stream specifeis by url. + # devide: not support yet. + type file; + # the url of file/stream. + url ./doc/source.200kbps.768x320.flv; + } + # the ffmpeg + ffmpeg ./objs/ffmpeg/bin/ffmpeg; + # the transcode engine, @see all.transcode.srs.com + # @remark, the output is specified following. + engine { + # @see enabled of transcode engine. + # default: off. + enable off; + # output stream. variables: + # [vhost] current vhost which start the ingest. + # [port] system RTMP stream port. + output rtmp://127.0.0.1:[port]/live?vhost=[vhost]/livestream; + } + } +} + # vhost for http vhost http.srs.com { # http vhost specified config @@ -151,7 +185,7 @@ vhost bandcheck.srs.com { } # set the chunk size of vhost. -vhost chunksize.vhost.com { +vhost chunksize.srs.com { # the default chunk size is 128, max is 65536, # some client does not support chunk size change, # vhost chunk size will override the global value. @@ -160,7 +194,7 @@ vhost chunksize.vhost.com { } # the http hook callback vhost, srs will invoke the hooks for specified events. -vhost hooks.callback.vhost.com { +vhost hooks.callback.srs.com { http_hooks { # whether the http hooks enalbe. # default off. @@ -252,7 +286,7 @@ vhost hooks.callback.vhost.com { } # the mirror filter of ffmpeg, @see: http://ffmpeg.org/ffmpeg-filters.html#Filtering-Introduction -vhost mirror.transcode.vhost.com { +vhost mirror.transcode.srs.com { transcode { enabled on; ffmpeg ./objs/ffmpeg/bin/ffmpeg; @@ -282,7 +316,7 @@ vhost mirror.transcode.vhost.com { } } # the drawtext filter of ffmpeg, @see: http://ffmpeg.org/ffmpeg-filters.html#drawtext-1 -vhost drawtext.transcode.vhost.com { +vhost drawtext.transcode.srs.com { transcode { enabled on; ffmpeg ./objs/ffmpeg/bin/ffmpeg; @@ -312,7 +346,7 @@ vhost drawtext.transcode.vhost.com { } } # the crop filter of ffmpeg, @see: http://ffmpeg.org/ffmpeg-filters.html#crop -vhost crop.transcode.vhost.com { +vhost crop.transcode.srs.com { transcode { enabled on; ffmpeg ./objs/ffmpeg/bin/ffmpeg; @@ -342,7 +376,7 @@ vhost crop.transcode.vhost.com { } } # the logo filter of ffmpeg, @see: http://ffmpeg.org/ffmpeg-filters.html#overlay -vhost logo.transcode.vhost.com { +vhost logo.transcode.srs.com { transcode { enabled on; ffmpeg ./objs/ffmpeg/bin/ffmpeg; @@ -375,7 +409,7 @@ vhost logo.transcode.vhost.com { # audio transcode only. # for example, FMLE publish audio codec in mp3, and donot support HLS output, # we can transcode the audio to aac and copy video to the new stream with HLS. -vhost audio.transcode.vhost.com { +vhost audio.transcode.srs.com { transcode { enabled on; ffmpeg ./objs/ffmpeg/bin/ffmpeg; @@ -394,7 +428,7 @@ vhost audio.transcode.vhost.com { } # disable video, transcode/copy audio. # for example, publish pure audio stream. -vhost vn.transcode.vhost.com { +vhost vn.transcode.srs.com { transcode { enabled on; ffmpeg ./objs/ffmpeg/bin/ffmpeg; @@ -413,7 +447,7 @@ vhost vn.transcode.vhost.com { } # ffmpeg-copy(forward implements by ffmpeg). # copy the video and audio to a new stream. -vhost copy.transcode.vhost.com { +vhost copy.transcode.srs.com { transcode { enabled on; ffmpeg ./objs/ffmpeg/bin/ffmpeg; @@ -426,7 +460,7 @@ vhost copy.transcode.vhost.com { } } # transcode all app and stream of vhost -vhost all.transcode.vhost.com { +vhost all.transcode.srs.com { # the streaming transcode configs. transcode { # whether the transcode enabled. @@ -434,7 +468,7 @@ vhost all.transcode.vhost.com { # default: off. enabled on; # the ffmpeg - ffmpeg ./objs/ffmpeg/bin/ffmpeg; + ffmpeg ./objs/ffmpeg/bin/ffmpeg; # the transcode engine for matched stream. # all matched stream will transcoded to the following stream. # the transcode set name(ie. hd) is optional and not used. @@ -448,7 +482,7 @@ vhost all.transcode.vhost.com { i ./doc/ffmpeg-logo.png; # the ffmpeg complex filter. # for filters, @see: http://ffmpeg.org/ffmpeg-filters.html - filter_complex 'overlay=10:10'; + filter_complex 'overlay=10:10'; } # video encoder name. can be: # libx264: use h.264(libx264) video encoder. @@ -602,7 +636,7 @@ vhost all.transcode.vhost.com { } } # transcode all stream using the empty ffmpeg demo, donothing. -vhost ffempty.transcode.vhost.com { +vhost ffempty.transcode.srs.com { transcode { enabled on; ffmpeg ./objs/research/ffempty; @@ -629,7 +663,7 @@ vhost ffempty.transcode.vhost.com { } } # transcode all app and stream of app -vhost app.transcode.vhost.com { +vhost app.transcode.srs.com { # the streaming transcode configs. # if app specified, transcode all streams of app. transcode live { @@ -641,7 +675,7 @@ vhost app.transcode.vhost.com { } } # transcode specified stream. -vhost stream.transcode.vhost.com { +vhost stream.transcode.srs.com { # the streaming transcode configs. # if stream specified, transcode the matched stream. transcode live/livestream { @@ -654,31 +688,31 @@ vhost stream.transcode.vhost.com { } # the vhost which forward publish streams. -vhost same.vhost.forward.vhost.com { +vhost same.vhost.forward.srs.com { # forward all publish stream to the specified server. # this used to split/forward the current stream for cluster active-standby, # active-active for cdn to build high available fault tolerance system. # format: {ip}:{port} {ip_N}:{port_N} - # or specify the vhost by params, @see: change.vhost.forward.vhost.com + # or specify the vhost by params, @see: change.vhost.forward.srs.com # if vhost not specified, use the request vhost instead. forward 127.0.0.1:1936 127.0.0.1:1937; } # TODO: FIXME: change the forward schema with vhost. # [plan] the vhost which forward publish streams to other vhosts. -vhost change.vhost.forward.vhost.com { +vhost change.vhost.forward.srs.com { forward 127.0.0.1:1936 127.0.0.1:1937 { # specify the vhost to override the vhost in client request. - vhost forward2.vhost.com; + vhost forward2.srs.com; # specify the refer(pageUrl) to override the refer in client request. refer http://srs/index.html; } forward 127.0.0.1:1938 { - vhost forward3.vhost.com; + vhost forward3.srs.com; } } # the vhost disabled. -vhost removed.vhost.com { +vhost removed.srs.com { # whether the vhost is enabled. # if off, all request access denied. # default: on @@ -686,7 +720,7 @@ vhost removed.vhost.com { } # the vhost with hls specified. -vhost with-hls.vhost.com { +vhost with-hls.srs.com { hls { # whether the hls is enabled. # if off, donot write hls(ts and m3u8) when publish. @@ -713,7 +747,7 @@ vhost with-hls.vhost.com { } } # the vhost with hls disabled. -vhost no-hls.vhost.com { +vhost no-hls.srs.com { hls { # whether the hls is enabled. # if off, donot write hls(ts and m3u8) when publish.