示例#1
0
        public RemoteVideoSourceStats(IntPtr obj)
        {
            objPtr = obj;

            List <LocalRendererStreamStats> csLocalRendererStreams = new List <LocalRendererStreamStats>();
            int    nLocalRendererStreamsSize  = 0;
            IntPtr nLocalRendererStreams      = VidyoRemoteVideoSourceStatsGetlocalRendererStreamsArrayNative(VidyoRemoteVideoSourceStatsGetlocalRendererStreamsNative(objPtr), ref nLocalRendererStreamsSize);
            int    nLocalRendererStreamsIndex = 0;

            while (nLocalRendererStreamsIndex < nLocalRendererStreamsSize)
            {
                LocalRendererStreamStats csTlocalRendererStreams = new LocalRendererStreamStats(Marshal.ReadIntPtr(nLocalRendererStreams + (nLocalRendererStreamsIndex * Marshal.SizeOf(nLocalRendererStreams))));
                csLocalRendererStreams.Add(csTlocalRendererStreams);
                nLocalRendererStreamsIndex++;
            }

            codecFir        = VidyoRemoteVideoSourceStatsGetcodecFirNative(objPtr);
            codecIFrames    = VidyoRemoteVideoSourceStatsGetcodecIFramesNative(objPtr);
            codecLayers     = VidyoRemoteVideoSourceStatsGetcodecLayersNative(objPtr);
            codecNacks      = VidyoRemoteVideoSourceStatsGetcodecNacksNative(objPtr);
            codecName       = Marshal.PtrToStringAnsi(VidyoRemoteVideoSourceStatsGetcodecNameNative(objPtr));
            fpsDecoded      = VidyoRemoteVideoSourceStatsGetfpsDecodedNative(objPtr);
            fpsDecoderInput = VidyoRemoteVideoSourceStatsGetfpsDecoderInputNative(objPtr);
            fpsRendered     = VidyoRemoteVideoSourceStatsGetfpsRenderedNative(objPtr);
            height          = VidyoRemoteVideoSourceStatsGetheightNative(objPtr);
            id                             = Marshal.PtrToStringAnsi(VidyoRemoteVideoSourceStatsGetidNative(objPtr));
            lastFrameMs                    = VidyoRemoteVideoSourceStatsGetlastFrameMsNative(objPtr);
            localRendererStreams           = csLocalRendererStreams;
            maxStreamFrameRate             = VidyoRemoteVideoSourceStatsGetmaxStreamFrameRateNative(objPtr);
            maxStreamHeight                = VidyoRemoteVideoSourceStatsGetmaxStreamHeightNative(objPtr);
            maxStreamWidth                 = VidyoRemoteVideoSourceStatsGetmaxStreamWidthNative(objPtr);
            name                           = Marshal.PtrToStringAnsi(VidyoRemoteVideoSourceStatsGetnameNative(objPtr));
            receiveNetworkBitRate          = VidyoRemoteVideoSourceStatsGetreceiveNetworkBitRateNative(objPtr);
            receiveNetworkPacketsConcealed = VidyoRemoteVideoSourceStatsGetreceiveNetworkPacketsConcealedNative(objPtr);
            receiveNetworkPacketsLost      = VidyoRemoteVideoSourceStatsGetreceiveNetworkPacketsLostNative(objPtr);
            receiveNetworkPacketsReordered = VidyoRemoteVideoSourceStatsGetreceiveNetworkPacketsReorderedNative(objPtr);
            receiveNetworkRecoveredWithFec = VidyoRemoteVideoSourceStatsGetreceiveNetworkRecoveredWithFecNative(objPtr);
            showFrameRate                  = VidyoRemoteVideoSourceStatsGetshowFrameRateNative(objPtr);
            showHeight                     = VidyoRemoteVideoSourceStatsGetshowHeightNative(objPtr);
            showPixelRate                  = VidyoRemoteVideoSourceStatsGetshowPixelRateNative(objPtr);
            showState                      = Marshal.PtrToStringAnsi(VidyoRemoteVideoSourceStatsGetshowStateNative(objPtr));
            showWidth                      = VidyoRemoteVideoSourceStatsGetshowWidthNative(objPtr);
            videoDeltaFromAudioMs          = VidyoRemoteVideoSourceStatsGetvideoDeltaFromAudioMsNative(objPtr);
            width                          = VidyoRemoteVideoSourceStatsGetwidthNative(objPtr);
            VidyoRemoteVideoSourceStatsFreelocalRendererStreamsArrayNative(nLocalRendererStreams, nLocalRendererStreamsSize);
        }
示例#2
0
        public LocalVideoSourceStats(IntPtr obj)
        {
            objPtr = obj;

            List <LocalRendererStreamStats> csLocalRendererStreams = new List <LocalRendererStreamStats>();
            int    nLocalRendererStreamsSize  = 0;
            IntPtr nLocalRendererStreams      = VidyoLocalVideoSourceStatsGetlocalRendererStreamsArrayNative(VidyoLocalVideoSourceStatsGetlocalRendererStreamsNative(objPtr), ref nLocalRendererStreamsSize);
            int    nLocalRendererStreamsIndex = 0;

            while (nLocalRendererStreamsIndex < nLocalRendererStreamsSize)
            {
                LocalRendererStreamStats csTlocalRendererStreams = new LocalRendererStreamStats(Marshal.ReadIntPtr(nLocalRendererStreams + (nLocalRendererStreamsIndex * Marshal.SizeOf(nLocalRendererStreams))));
                csLocalRendererStreams.Add(csTlocalRendererStreams);
                nLocalRendererStreamsIndex++;
            }

            List <RemoteRendererStreamStats> csRemoteRendererStreams = new List <RemoteRendererStreamStats>();
            int    nRemoteRendererStreamsSize  = 0;
            IntPtr nRemoteRendererStreams      = VidyoLocalVideoSourceStatsGetremoteRendererStreamsArrayNative(VidyoLocalVideoSourceStatsGetremoteRendererStreamsNative(objPtr), ref nRemoteRendererStreamsSize);
            int    nRemoteRendererStreamsIndex = 0;

            while (nRemoteRendererStreamsIndex < nRemoteRendererStreamsSize)
            {
                RemoteRendererStreamStats csTremoteRendererStreams = new RemoteRendererStreamStats(Marshal.ReadIntPtr(nRemoteRendererStreams + (nRemoteRendererStreamsIndex * Marshal.SizeOf(nRemoteRendererStreams))));
                csRemoteRendererStreams.Add(csTremoteRendererStreams);
                nRemoteRendererStreamsIndex++;
            }

            format = VidyoLocalVideoSourceStatsGetformatNative(objPtr);
            frameIntervalMeasured = VidyoLocalVideoSourceStatsGetframeIntervalMeasuredNative(objPtr);
            frameIntervalSet      = VidyoLocalVideoSourceStatsGetframeIntervalSetNative(objPtr);
            height = VidyoLocalVideoSourceStatsGetheightNative(objPtr);
            id     = Marshal.PtrToStringAnsi(VidyoLocalVideoSourceStatsGetidNative(objPtr));
            localRendererStreams = csLocalRendererStreams;
            name = Marshal.PtrToStringAnsi(VidyoLocalVideoSourceStatsGetnameNative(objPtr));
            remoteRendererStreams = csRemoteRendererStreams;
            targetBitRate         = VidyoLocalVideoSourceStatsGettargetBitRateNative(objPtr);
            totalFrames           = VidyoLocalVideoSourceStatsGettotalFramesNative(objPtr);
            width = VidyoLocalVideoSourceStatsGetwidthNative(objPtr);
            VidyoLocalVideoSourceStatsFreeremoteRendererStreamsArrayNative(nRemoteRendererStreams, nRemoteRendererStreamsSize);
            VidyoLocalVideoSourceStatsFreelocalRendererStreamsArrayNative(nLocalRendererStreams, nLocalRendererStreamsSize);
        }