Пример #1
0
        internal static IVideoStreamInfo Parse(int index, Dictionary<string, string> values)
        {
            var info = new VideoStreamInfo();

            info.Resolution = (Resolution)Enum.Parse(typeof(Resolution), values.ReadValue<string>(string.Format("resolution{0}", index)));
            info.BitRate = values.ReadIntValue(string.Format("bitRate{0}", index));
            info.FrameRate = values.ReadIntValue(string.Format("frameRate{0}", index));
            info.GOP = values.ReadIntValue(string.Format("GOP{0}", index));
            info.IsVBR = values.ReadIntValue(string.Format("isVBR{0}", index)) == 1 ? true : false;

            return info;
        }
Пример #2
0
        private void SaveValues()
        {
            var info = new VideoStreamInfo();

            info.IsVBR = cmbVariableBitrate.Active == 0 ? true : false;
            info.GOP = cmbGroupOfPics.Active + 10;
            info.FrameRate = cmbFramerate.Active + 1;

            var value = IsMainStream() ? _mainBitrates[cmbBitrate.Active] : _subBitrates[cmbBitrate.Active];
            var kvp = _bitrates.FirstOrDefault(x => string.Compare(x.Key.ToUpper(), value.ToUpper()) == 0);
            info.BitRate = kvp.Value;

            if(cmbResolution.Active == 0)
                info.Resolution = Resolution.HD_720;
            else if(cmbResolution.Active == 1)
                info.Resolution = Resolution.VGA_640_480;
            else if(cmbResolution.Active == 2)
                info.Resolution = Resolution.VGA_640_360;
            else if(cmbResolution.Active == 3)
                info.Resolution = Resolution.QVGA_320_240;
            else if(cmbResolution.Active == 4)
                info.Resolution = Resolution.QVGA_320_180;

            if(InitCam())
            {
                if(IsMainStream())
                    Cam.SetMainVideoStreamInfo(_mainStreamType, info);
                else
                    Cam.SetSubVideoStreamInfo(_subStreamType, info);
            }
        }