Beispiel #1
0
        public override void Send()
        {
            lock (Conference.ActiveVenue)
            {
                lock (this)
                {
                    try
                    {
                        if (!isSending)
                        {
                            base.Send();

                            if (cg.VideoRenderer == null)
                            {
                                cg.RenderNetwork(RtpSender, MSR.LST.Net.Rtp.PayloadType.dynamicVideo);
                            }

                            cg.Run();

                            // TODO: We shouldn't have to deal with adding capabilities
                            //       in the capabilitySenders collection here. This code should
                            //       be removed from here when Conference has been cleaned-up
                            if (!Conference.CapabilitySenders.ContainsKey(ID))
                            {
                                Conference.AddCapabilitySender(this);
                            }
                        }
                    }
                    catch (Exception e)
                    {
                        eventLog.WriteEntry(e.ToString(), System.Diagnostics.EventLogEntryType.Error, 99);

                        StopSending();

                        throw;
                    }
                }
            }
        }