流媒体技术世界——分享技术,增值服务
如何对MediaCaster输入流进行实时监控?
ModuleMediaCasterStreamMonitorAdvanced用于native-RTP 和 MPEG-TS 直播流。www.ttstream.com,它可以对这些输入流进行实时监控,当出现时间戳不稳定或断开等不健康的问题,它会依据下面的配置参数对实时流进行重置,这些参数的设置略有些保守。如果将streamMonitorVideoTCToleranceEnablestreamMonitorAudioTCToleranceEnable设置为true,就可以更实时的监控时间戳错误等问题。

这个module可以和MediaStreamNameGroups module一起配合使用,用来监控一组输入流。

注意: 需要Wowza 2.0.0.14 及以上版本的支持。

这个Module的安装步骤
  1. [install-dir]/conf/[application]/Application.xml<Modules>的最后添加Module定义:

    Code:
    <Module>
    	<Name>ModuleMediaCasterStreamMonitorAdvanced</Name>
    	<Description>ModuleMediaCasterStreamMonitorAdvanced</Description>
    	<Class>com.wowza.wms.module.ModuleMediaCasterStreamMonitorAdvanced</Class>
    </Module>
    注意: 如果你正在使用MediaStreamNameGroups,那么这个module只需要被添加到源(origin)服务器上。 在边缘服务器(edge server)上不需要做任何调整。


  2. [install-dir]/conf/[application]/Application.xml文件最下面的Application级别的<Properties>中添加一下参数

    Code:
    <!--
    Monitor incoming packets (stream, audio, video) to be sure packets continue to flow from encoder to stream. The streamMonitor[type]StartTimeout controls the timeout (milliseconds) for the first packet. The streamMonitor[type]Timeout 
    controls the timeout (milliseconds) for packets after the first packet. The stream type refers to a catch all of any packet of 
    any type (audio, video, data). If any of these values are set to zero, the test is turned off.
    -->
    <Property>
    	<Name>streamMonitorStreamStartTimeout</Name>
    	<Value>20000</Value>
    	<Type>Integer</Type>
    </Property>
    <Property>
    	<Name>streamMonitorStreamTimeout</Name>
    	<Value>12000</Value>
    	<Type>Integer</Type>
    </Property>
    <Property>
    	<Name>streamMonitorVideoStartTimeout</Name>
    	<Value>0</Value>
    	<Type>Integer</Type>
    </Property>
    <Property>
    	<Name>streamMonitorVideoTimeout</Name>
    	<Value>0</Value>
    	<Type>Integer</Type>
    </Property>
    <Property>
    	<Name>streamMonitorAudioStartTimeout</Name>
    	<Value>0</Value>
    	<Type>Integer</Type>
    </Property>
    <Property>
    	<Name>streamMonitorAudioTimeout</Name>
    	<Value>0</Value>
    	<Type>Integer</Type>
    </Property>
    
    <!--
    Monitor the incoming packet timecodes (audio, video or data) to be sure packets do not arrive out of order or late. The 
    streamMonitor[type]TCPosTolerance and streamMonitor[type]TCNegTolerance (milliseconds) values define a sliding window 
    based on the timecode of the previous packet. For example if these values are set to -500 and 3000 respectively then the 
    timecode difference between the current arriving packet and the previous packet of that type must fall within 
    -500 and 3000 milliseconds.  If not and streamMonitor[type]TCToleranceEnable is set to true then stream will be considered 
    unhealthy and will be reset.
    -->
    <Property>
    	<Name>streamMonitorVideoTCToleranceEnable</Name>
    	<Value>true</Value>
    	<Type>Boolean</Type>
    </Property>
    <Property>
    	<Name>streamMonitorVideoTCPosTolerance</Name>
    	<Value>3000</Value>
    	<Type>Integer</Type>
    </Property>
    <Property>
    	<Name>streamMonitorVideoTCNegTolerance</Name>
    	<Value>-500</Value>
    	<Type>Integer</Type>
    </Property>
    <Property>
    	<Name>streamMonitorAudioTCToleranceEnable</Name>
    	<Value>true</Value>
    	<Type>Boolean</Type>
    </Property>
    <Property>
    	<Name>streamMonitorAudioTCPosTolerance</Name>
    	<Value>3000</Value>
    	<Type>Integer</Type>
    </Property>
    <Property>
    	<Name>streamMonitorAudioTCNegTolerance</Name>
    	<Value>-500</Value>
    	<Type>Integer</Type>
    </Property>
    <Property>
    	<Name>streamMonitorDataTCToleranceEnable</Name>
    	<Value>false</Value>
    	<Type>Boolean</Type>
    </Property>
    <Property>
    	<Name>streamMonitorDataTCPosTolerance</Name>
    	<Value>3000</Value>
    	<Type>Integer</Type>
    </Property>
    <Property>
    	<Name>streamMonitorDataTCNegTolerance</Name>
    	<Value>-500</Value>
    	<Type>Integer</Type>
    </Property>
    
    
    <!--
    Monitors the time difference between the audio and video channel of a stream. If the difference between the currently arriving
    video packet and the previous audio packet (or vice-versa) is greater than streamMonitorAVSyncTolerance and streamMonitorAVSyncToleranceEnable
    is set to true, then the stream will be considered unhealthy and will be reset.
    -->
    <Property>
    	<Name>streamMonitorAVSyncToleranceEnable</Name>
    	<Value>false</Value>
    	<Type>Boolean</Type>
    </Property>
    <Property>
    	<Name>streamMonitorAVSyncTolerance</Name>
    	<Value>1500</Value>
    	<Type>Integer</Type>
    </Property>
    
    <!--
    If set to true, then when a stream is reset and it belong to a MediaStreamNameGroup all streams in the group will be reset. If
    false only the unhealthy stream will be reset.
    -->
    <Property>
    	<Name>streamMonitorResetNameGroups</Name>
    	<Value>true</Value>
    	<Type>Boolean</Type>
    </Property>
    
    <!--
    Turns on debug logging of the monitoring.
    -->
    <Property>
    	<Name>streamMonitorDebug</Name>
    	<Value>false</Value>
    	<Type>Boolean</Type>
    </Property>
www.ttstream.com
匿名用户
评论

我们的地址


北京市朝阳区管庄西里建基商务楼423室


邮编:100024

关于我们


北京联方信科信息技术有限责任公司


官网:www.ttstream.com

联系我们


王经理:phone


柳经理:phone

京ICP备14033868号-2