Example #1
0
 private static IVideoSource MakeLocalCameraVideoSource(VideoSourceDescription description)
 {
     VideoCaptureDeviceVideoSource videoSource = new VideoCaptureDeviceVideoSource(description.SourceString);
       videoSource.DesiredFrameSize = new System.Drawing.Size(description.Resolution.Width, description.Resolution.Height);
       videoSource.DesiredFrameRate = description.FrameRate;
       return videoSource;
 }
Example #2
0
        public static IVideoSource BuildVideoSource(VideoSourceDescription description)
        {
            if (description == null)
            throw new ArgumentNullException("description");

              switch (description.SourceType)
              {
            case VideoSourceType.Mock:
              return MakeMockVideoSource(description);
            case VideoSourceType.LocalCamera:
              return MakeLocalCameraVideoSource(description);
            case VideoSourceType.LocalAVIFile:
              return MakeLocalAVIFileVideoSource(description);
            case VideoSourceType.LocalDesktop:
              return MakeLocalDesktopVideoSource(description);
            case VideoSourceType.NetworkJPEG:
              return MakeNetworkJPEGVideoSource(description);
            case VideoSourceType.NetworkMJPEG:
              return MakeNetworkMJPEGVideoSource(description);
            case VideoSourceType.NetworkRtpStream:
              return MakeNetworkRtpStreamVideoSource(description);
            default:
              throw new NotSupportedException();
              }
        }
Example #3
0
 private static IVideoSource MakeLocalDesktopVideoSource(VideoSourceDescription description)
 {
     DesktopVideoSource videoSource = new DesktopVideoSource(Convert.ToInt32(description.SourceString));
       videoSource.FrameInterval = description.FrameInterval;
       videoSource.ResizeWidth = description.Resolution.Width;
       videoSource.ResizeHeight = description.Resolution.Height;
       return videoSource;
 }
Example #4
0
 private static IVideoSource MakeNetworkMJPEGVideoSource(VideoSourceDescription description)
 {
     MJpegVideoSource videoSource = new MJpegVideoSource(description.SourceString);
       videoSource.Login = description.UserName;
       videoSource.Password = description.Password;
       videoSource.HttpUserAgent = description.UserAgent;
       videoSource.RequestTimeout = 20000;
       return videoSource;
 }
Example #5
0
 private static IVideoSource MakeNetworkJPEGVideoSource(VideoSourceDescription description)
 {
     JpegVideoSource videoSource = new JpegVideoSource(description.SourceString);
       videoSource.FrameInterval = description.FrameInterval;
       videoSource.Login = description.UserName;
       videoSource.Password = description.Password;
       videoSource.RequestTimeout = 20000;
       return videoSource;
 }
        public override void SetObject(VideoSourceDescription videoSourceDescription)
        {
            base.SetObject(videoSourceDescription);

              if (VideoSourceDescription != null)
              {
            SelectedFilePath = videoSourceDescription.OriginalSourceString;
              }
        }
        public virtual void SetObject(VideoSourceDescription videoSourceDescription)
        {
            VideoSourceDescription = videoSourceDescription;

              if (VideoSourceDescription != null)
              {
            OKCommand = new RelayCommand(UpdateVideoSource);
              }
              else
              {
            OKCommand = new RelayCommand(CreateVideoSource);
              }
        }
        public override bool Equals(object obj)
        {
            bool result = false;

            if (obj != null && obj is VideoSourceDescription)
            {
                VideoSourceDescription two = obj as VideoSourceDescription;
                if (this.SourceType == two.SourceType &&
                    this.FriendlyName == two.FriendlyName &&
                    this.SourceString == two.SourceString &&
                    this.Resolution == two.Resolution &&
                    this.FrameRate == two.FrameRate &&
                    this.FrameInterval == two.FrameInterval &&
                    this.UserName == two.UserName &&
                    this.Password == two.Password &&
                    this.UserAgent == two.UserAgent)
                {
                    result = true;
                }
            }

            return(result);
        }
        public override void SetObject(VideoSourceDescription videoSourceDescription)
        {
            base.SetObject(videoSourceDescription);

              if (VideoSourceDescription != null)
              {
            foreach (var item in VideoFilterCollection)
            {
              if (item.Uri == VideoSourceDescription.OriginalSourceString)
              {
            SelectedVideoFilter = item;
            FrameRate = VideoSourceDescription.FrameRate;
            FrameWidth = VideoSourceDescription.Resolution.Width;
            FrameHeight = VideoSourceDescription.Resolution.Height;
            break;
              }
            }
              }
        }
Example #10
0
        private static IVideoSource MakeNetworkRtpStreamVideoSource(VideoSourceDescription description)
        {
            int availablePort = 10000;

              // find an available UDP port
              while (IPGlobalProperties
            .GetIPGlobalProperties()
            .GetActiveUdpListeners()
            .Where(p => p.Port == availablePort)
            .Count() >= 1)
              {
            availablePort++;
              }

              RtpVideoSource videoSource = new RtpVideoSource(availablePort);
              return videoSource;
        }
Example #11
0
 private static IVideoSource MakeMockVideoSource(VideoSourceDescription description)
 {
     return new PictureVideoSource(description.SourceString);
 }
Example #12
0
 private static IVideoSource MakeLocalAVIFileVideoSource(VideoSourceDescription description)
 {
     FileVideoSource videoSource = new FileVideoSource(description.SourceString);
       return videoSource;
 }
        public override void SetObject(VideoSourceDescription videoSourceDescription)
        {
            base.SetObject(videoSourceDescription);

              if (VideoSourceDescription != null)
              {
            this.UserName = videoSourceDescription.UserName;
            this.Password = videoSourceDescription.Password;
            this.UserAgent = videoSourceDescription.UserAgent;
            this.URL = videoSourceDescription.OriginalSourceString;
              }
        }