public override void Start() { try { _videoCodecFactory = this.Scope.GetService(typeof(VideoCodecFactory)) as VideoCodecFactory; } catch (Exception ex) { log.Warn("No video codec factory available.", ex); } }
public void Register() { //Start services GodLesZ.Library.Amf.Messaging.Rtmp.IO.IStreamableFileFactory streamableFileFactory = ObjectFactory.CreateInstance(FluorineConfiguration.Instance.FluorineSettings.StreamableFileFactory.Type) as GodLesZ.Library.Amf.Messaging.Rtmp.IO.IStreamableFileFactory; AddService(typeof(GodLesZ.Library.Amf.Messaging.Rtmp.IO.IStreamableFileFactory), streamableFileFactory, false); streamableFileFactory.Start(null); GodLesZ.Library.Amf.Scheduling.SchedulingService schedulingService = new GodLesZ.Library.Amf.Scheduling.SchedulingService(); AddService(typeof(GodLesZ.Library.Amf.Scheduling.ISchedulingService), schedulingService, false); schedulingService.Start(null); GodLesZ.Library.Amf.Messaging.Rtmp.Stream.IBWControlService bwControlService = ObjectFactory.CreateInstance(FluorineConfiguration.Instance.FluorineSettings.BWControlService.Type) as GodLesZ.Library.Amf.Messaging.Rtmp.Stream.IBWControlService; AddService(typeof(GodLesZ.Library.Amf.Messaging.Rtmp.Stream.IBWControlService), bwControlService, false); bwControlService.Start(null); VideoCodecFactory videoCodecFactory = new VideoCodecFactory(); AddService(typeof(VideoCodecFactory), videoCodecFactory, false); Init(); }
public override void Start() { lock (this.SyncRoot) { IConsumerService consumerManager = this.Scope.GetService(typeof(IConsumerService)) as IConsumerService; try { //_videoCodecFactory = new VideoCodecFactory(); _videoCodecFactory = this.Scope.GetService(typeof(VideoCodecFactory)) as VideoCodecFactory; _checkVideoCodec = true; } catch (Exception ex) { log.Warn("No video codec factory available.", ex); } _firstPacketTime = _audioTime = _videoTime = _dataTime = -1; _connMsgOut = consumerManager.GetConsumerOutput(this); _connMsgOut.Subscribe(this, null); _recordPipe = new InMemoryPushPushPipe(); #if !(NET_1_1) Dictionary<string, object> recordParameterMap = new Dictionary<string, object>(); #else Hashtable recordParameterMap = new Hashtable(); #endif // Clear record flag recordParameterMap.Add("record", null); _recordPipe.Subscribe(this as IProvider, recordParameterMap); _recording = false; _recordingFilename = null; this.CodecInfo = new StreamCodecInfo(); _closed = false; _bytesReceived = 0; _creationTime = System.Environment.TickCount; } }