Exemple #1
0
        /// <summary>
        /// 设置大小模式
        /// </summary>
        /// <param name="Model"></param>
        public void SetModel(VideoSizeModel Model)
        {
            switch (Model)
            {
            case VideoSizeModel.W160_H120:
                Width  = 160;
                Height = 120;
                break;

            case VideoSizeModel.W176_H144:
                Width  = 176;
                Height = 144;
                break;

            case VideoSizeModel.W320_H240:
                Width  = 320;
                Height = 240;
                break;

            case VideoSizeModel.W352_H288:
                Width  = 352;
                Height = 288;
                break;

            case VideoSizeModel.W640_H480:
                Width  = 640;
                Height = 480;
                break;

            case VideoSizeModel.W800_H600:
                Width  = 800;
                Height = 600;
                break;
            }
        }
Exemple #2
0
 /// <summary>
 /// 设置大小模式
 /// </summary>
 /// <param name="Model"></param>
 public void SetModel(VideoSizeModel Model)
 {
     switch (Model)
     {
         case VideoSizeModel.W160_H120:
             Width = 160;
             Height = 120;
             break;
         case VideoSizeModel.W176_H144:
             Width = 176;
             Height = 144;
             break;
         case VideoSizeModel.W320_H240:
             Width = 320;
             Height = 240;
             break;
         case VideoSizeModel.W352_H288:
             Width = 352;
             Height = 288;
             break;
         case VideoSizeModel.W640_H480:
             Width = 640;
             Height = 480;
             break;
         case VideoSizeModel.W800_H600:
             Width = 800;
             Height = 600;
             break;
     }
 }
Exemple #3
0
        /// <summary>
        /// 初始化音视频通信组件
        /// </summary>
        /// <param name="Model">视频显示大小模式</param>
        public void iniAV(VideoSizeModel Model)
        {
            if (!IsIni)
            {
                IsIni = true;//标识已经初始化
            }
            else
            {
                return; //如果已经初始化,则退出
            }
            if (VC == null)
            {
                VC = new  VideoCapturer(this.cLocal);//创建新的视频捕捉组件
                VC.VideoCapturerBefore += new VideoCapturer.VideoCaptureredEventHandler(VC_VideoCapturerBefore);
                VC.VideoDataCapturered += new VideoCapturer.VideoCaptureredEventHandler(VC_VideoDataCapturered);
                VC.StartVideoCapture(Model);//开始捕捉视频
            }

            if (AE == null)
            {
                AE = new AudioEncoder();//创建G711音频编解码器
            }

            if (AC == null)
            {
                AC = new AudioCapturer(this.trackBarOut, this.trackBarIn);//创建新的音频捕捉组件
                AC.AudioDataCapturered += new AudioCapturer.AudioDataCaptureredEventHandler(AC_AudioDataCapturered);
            }

            if (AR == null)
            {
                AR = new AudioRender();//创建G711音频回放组件
            }
        }
Exemple #4
0
        /// <summary>
        /// 初始化音视频通信组件
        /// </summary>
        /// <param name="Model">视频显示大小模式</param>
        public void iniAV(VideoSizeModel Model, System.Net.IPEndPoint ServerEP)
        {
            if (!IsIni)
            {
                IsIni = true;//标识已经初始化
            }
            else
            {
                return;                //如果已经初始化,则退出
            }
            VideoSize.SetModel(Model); //设置视频编码尺寸

            if (cam == null)
            {
                iniVideoCapturer();
            }

            #region //创建新的视频捕捉组件
            //if (VC == null)
            //{
            //    VC = new  VideoCapturer(this.cLocal);
            //    VC.VideoCapturerBefore += new VideoCapturer.VideoCaptureredEventHandler(VC_VideoCapturerBefore);
            //    VC.VideoDataCapturered += new VideoCapturer.VideoCaptureredEventHandler(VC_VideoDataCapturered);
            //    VC.StartVideoCapture(Model);//开始捕捉视频
            //}
            #endregion

            if (AE == null)
            {
                AE = new AudioEncoder();//创建G711音频编解码器
            }

            if (AC == null)
            {
                AC = new AudioCapturer(this.trackBarOut, this.trackBarIn);//创建新的音频捕捉组件
                AC.AudioDataCapturered += new AudioCapturer.AudioDataCaptureredEventHandler(AC_AudioDataCapturered);
            }

            if (AR == null)
            {
                AR = new AudioRender();//创建G711音频回放组件
            }

            if (frameTransmit == null)
            {
                frameTransmit = new FrameTransmit(ServerEP);
                frameTransmit.GetIPEndPoint     += new FrameTransmit.GetIPEndPointEventHandler(frameTransmit_GetIPEndPoint);
                frameTransmit.RecAudioData      += new FrameTransmit.RecDataEventHandler(frameTransmit_RecAudioData);
                frameTransmit.RecVideoData      += new FrameTransmit.RecDataEventHandler(frameTransmit_RecVideoData);
                frameTransmit.TransmitConnected += new FrameTransmit.TransmitEventHandler(frameTransmit_TransmitConnected);
                frameTransmit.Start();
            }
        }
Exemple #5
0
 /// <summary>
 /// 开始视频捕获
 /// </summary>
 /// <param name="videoSizeModel"></param>
 public void StartVideoCapture(VideoSizeModel videoSizeModel)
 {
     CapturerSize.SetModel(videoSizeModel);
     StartVideoCapture();
 }
Exemple #6
0
 /// <summary>
 /// 设置大小模式
 /// </summary>
 /// <param name="Model">视频显示尺寸大小</param>
 public VideoCapturerSize(VideoSizeModel Model)
 {
     SetModel(Model);
 }
Exemple #7
0
        /// <summary>
        /// 初始化音视频通信组件
        /// </summary>
        /// <param name="Model">视频显示大小模式</param>
        public void iniAV(VideoSizeModel Model)
        {
            if (!IsIni)
                IsIni = true;//标识已经初始化
            else
                return; //如果已经初始化,则退出

            if (VC == null)
            {
                VC = new  VideoCapturer(this.cLocal);//创建新的视频捕捉组件
                VC.VideoCapturerBefore += new VideoCapturer.VideoCaptureredEventHandler(VC_VideoCapturerBefore);
                VC.VideoDataCapturered += new VideoCapturer.VideoCaptureredEventHandler(VC_VideoDataCapturered);
                VC.StartVideoCapture(Model);//开始捕捉视频
            }

            if (AE == null)
            {
                AE = new AudioEncoder();//创建G711音频编解码器
            }

            if (AC == null)
            {
                AC = new AudioCapturer(this.trackBarOut, this.trackBarIn);//创建新的音频捕捉组件
                AC.AudioDataCapturered += new AudioCapturer.AudioDataCaptureredEventHandler(AC_AudioDataCapturered);
            }

            if (AR == null)
            {
                AR = new AudioRender();//创建G711音频回放组件
            }
        }
Exemple #8
0
        /// <summary>
        /// 初始化音视频通信组件
        /// </summary>
        /// <param name="Model">视频显示大小模式</param>
        public void iniAV(VideoSizeModel Model, System.Net.IPEndPoint ServerEP)
        {
            if (!IsIni)
                IsIni = true;//标识已经初始化
            else
                return; //如果已经初始化,则退出

            VideoSize.SetModel(Model);//设置视频编码尺寸

            if (cam == null)
                iniVideoCapturer();

            #region //创建新的视频捕捉组件
            //if (VC == null)
            //{
            //    VC = new  VideoCapturer(this.cLocal);
            //    VC.VideoCapturerBefore += new VideoCapturer.VideoCaptureredEventHandler(VC_VideoCapturerBefore);
            //    VC.VideoDataCapturered += new VideoCapturer.VideoCaptureredEventHandler(VC_VideoDataCapturered);
            //    VC.StartVideoCapture(Model);//开始捕捉视频
            //}
            #endregion

            if (AE == null)
            {
                AE = new AudioEncoder();//创建G711音频编解码器
            }

            if (AC == null)
            {
                AC = new AudioCapturer(this.trackBarOut, this.trackBarIn);//创建新的音频捕捉组件
                AC.AudioDataCapturered += new AudioCapturer.AudioDataCaptureredEventHandler(AC_AudioDataCapturered);
            }

            if (AR == null)
            {
                AR = new AudioRender();//创建G711音频回放组件
            }

            if (frameTransmit == null)
            {
                frameTransmit = new FrameTransmit(ServerEP);
                frameTransmit.GetIPEndPoint += new FrameTransmit.GetIPEndPointEventHandler(frameTransmit_GetIPEndPoint);
                frameTransmit.RecAudioData += new FrameTransmit.RecDataEventHandler(frameTransmit_RecAudioData);
                frameTransmit.RecVideoData += new FrameTransmit.RecDataEventHandler(frameTransmit_RecVideoData);
                frameTransmit.TransmitConnected += new FrameTransmit.TransmitEventHandler(frameTransmit_TransmitConnected);
                frameTransmit.Start();
            }
        }
Exemple #9
0
 /// <summary>
 /// 设置大小模式
 /// </summary>
 /// <param name="Model">视频显示尺寸大小</param>
 public VideoCapturerSize(VideoSizeModel Model)
 {
     SetModel(Model);
 }
 /// <summary>
 /// 开始视频捕获
 /// </summary>
 /// <param name="videoSizeModel"></param>
 public void StartVideoCapture(VideoSizeModel videoSizeModel)
 {
     CapturerSize.SetModel(videoSizeModel);
     StartVideoCapture();
 }
Exemple #11
0
        /// <summary>
        /// 初始化音视频通信组件
        /// </summary>
        /// <param name="Model">视频显示大小模式</param>
        public void iniAV(VideoSizeModel Model)
        {
            if (!IsIni)
                IsIni = true;//标识已经初始化
            else
                return; //如果已经初始化,则退出

            if (WebCam == null)
            {
                DsDevice[] capDevices = DsDevice.GetDevicesOfCat(FilterCategory.VideoInputDevice);
                if (capDevices.Length>0)
                {
                    codeinfo = GetEncoderInfo("image/jpeg");
                    ep = new EncoderParameter(System.Drawing.Imaging.Encoder.Quality, (long)64);
                    coderpam = new EncoderParameters(1);
                    coderpam.Param[0] = ep;

                    try
                    {
                        WebCam = new HuaSDKSolution.DirectShow.Capture(0, 0, 320, 240);
                        WebCam.Start();
                    }
                    catch (Exception ex)
                    {
                        WebCam.Dispose();
                        WebCam = null;
                        MsgBox.Show("CSS&IM", ex.Message + " 当前系统摄像头正在使用!");
                    }

                }
            }

            if (AE == null)
            {
                AE = new AudioEncoder();//创建G711音频编解码器
            }

            if (AC == null)
            {
                AC = new AudioCapturer(this.trackBar1, this.trackBar2);//创建新的音频捕捉组件
                AC.AudioDataCapturered += new AudioCapturer.AudioDataCaptureredEventHandler(AC_AudioDataCapturered);
            }

            if (AR == null)
            {
                try
                {
                    AR = new CSS.IM.Library.AV.Controls.AudioRender();//创建G711音频回放组件
                }
                catch (Exception)
                {
                    AR = null;
                }

            }

            sendding = true;
            sendthread = new Thread(this.Sending);
            sendthread.Start();
        }