Exemple #1
0
        private void cbWMVVideoMode_SelectedIndexChanged(object sender, EventArgs e)
        {
            var mode = VFWMVStreamMode.CBR;

            switch (cbWMVVideoMode.SelectedIndex)
            {
            case 0:
            {
                mode = VFWMVStreamMode.CBR;
                edWMVVideoBitrate.Enabled     = true;
                edWMVVideoPeakBitrate.Enabled = false;
                edWMVVideoQuality.Enabled     = false;
                break;
            }

            case 1:
            {
                mode = VFWMVStreamMode.VBRBitrate;
                edWMVVideoBitrate.Enabled     = true;
                edWMVVideoPeakBitrate.Enabled = false;
                edWMVVideoQuality.Enabled     = false;
                break;
            }

            case 2:
            {
                mode = VFWMVStreamMode.VBRPeakBitrate;
                edWMVVideoBitrate.Enabled     = true;
                edWMVVideoPeakBitrate.Enabled = true;
                edWMVVideoQuality.Enabled     = false;
                break;
            }

            case 3:
            {
                mode = VFWMVStreamMode.VBRQuality;
                edWMVVideoBitrate.Enabled     = false;
                edWMVVideoPeakBitrate.Enabled = false;
                edWMVVideoQuality.Enabled     = true;
                break;
            }
            }

            cbWMVVideoCodec.Items.Clear();
            if (_coreVideoCapture != null)
            {
                foreach (string codec in _coreVideoCapture.WMV_CustomProfile_VideoCodecs(mode))
                {
                    cbWMVVideoCodec.Items.Add(codec);
                }
            }
            else
            {
                foreach (string codec in _coreVideoEdit.WMV_CustomProfile_VideoCodecs(mode))
                {
                    cbWMVVideoCodec.Items.Add(codec);
                }
            }

            if (cbWMVVideoCodec.Items.Count > 0)
            {
                cbWMVVideoCodec.SelectedIndex = 0;
            }
        }