The ConferenceSession is a centralized object that manages the conference. This object makes a mapping between the attendees of a multicast session, and the Attendee objects that represent them in the virtual world. The general model of message distribution is to send all the frames received from a particular session participant to their Attendee object. From there, the frames can be rendered in the appropriate way for that attendee.
Inheritance: MultiSession, IReceiveConferenceFrames
Beispiel #1
0
        static void Main()
        {
            IPEndPoint ep = new IPEndPoint(IPAddress.Parse("239.1.1.1"), 5006);
            ConferenceSession session = new ConferenceSession(ep);

            session.Run();
        }
Beispiel #2
0
        public ShowItModel(ConferenceSession session)
        {
            fSession = session;

            fCameraLocation = new Vector3f(0.0f, -1.0f, -2.3f);
            fCameraRotation = new Vector3f(0.0f, 0.0f, 0.0f);
            fExpansionFactor = 1.0f;
            fExpansionRatio = 1.005f;

            fRenderables = new List<IRenderable>();
            fPendingParticipants = new Queue<RtpParticipant>();
            fAttendees = new Dictionary<int, ConferenceAttendee>();

        }
        public ConferenceAttendee(ConferenceSession session, RtpParticipant participant)
        {
            fSession = session;
            fParticipant = participant;

            // Create the equipment the attendee controls
            // Personal desktop capture
            fDesktopCapture = new DesktopCapture(this);

            // Personal video Capture
            int camIndex = 0;
            int numSources = VideoCaptureDevice.GetNumberOfInputDevices();
            if (numSources > 4)
                camIndex = 4;

            fCaptureCamera = new AttendeeCamera(this, camIndex);
            fCaptureCamera.Start();

            // Personal audio capture

            // Desk Set
            fDeskSet = session.Model.CreateDeskSet(this);
        }