private void containerComboBox_SelectedIndexChanged(object sender, EventArgs e) { ContainerItem item = this.containerComboBox.SelectedItem as ContainerItem; if (item == null && this.parameters.ContainsKey("codec")) { this.parameters.Remove("codec"); } else { this.parameters["codec"] = item.ParamName; } string firstOutVal = (string)this.outputTextBox.Items[0]; if (firstOutVal != "..") { int index = firstOutVal.LastIndexOf('.'); if (index > 0) { this.outputTextBox.Items[0] = firstOutVal.Substring(0, index) + (item == null ? "." : item.Extension); } } this.keepAspectCheckBox.Enabled = item.IsDirectShow; this.subtitlesIntCheckBox.Enabled = item.IsDirectShow && this.extended; while (this.inputTextBox.Items.Count > 1) { this.inputTextBox.Items.RemoveAt(1); } while (this.outputTextBox.Items.Count > 1) { this.outputTextBox.Items.RemoveAt(1); } this.inputTextBox.SelectedIndex = 0; this.outputTextBox.SelectedIndex = 0; if (item.IsDirectShow) { this.inputTextBox.Items.Add("Desktop"); this.inputTextBox.Items.AddRange(DirectShowEncoder.GetVideoInputNames()); } if (item.IsTransportStream) { foreach (IPAddress address in Dns.GetHostAddresses(Dns.GetHostName()).Where(a => a.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork)) { this.outputTextBox.Items.Add(string.Format("Multicast {0} - 239.255.255.251:12346", address)); } } this.outBufSizeTextBox.Enabled = item.IsDirectShow && item.IsStreamable && (item.IsVideo || item.IsAudio); this.paramBox.Text = GetParamString(); }
private void filtersWorker_DoWork(object sender, DoWorkEventArgs e) { e.Result = new bool[] { DirectShowEncoder.IsFFDSHOWInstalled(), DirectShowEncoder.IsWMVInstalled(), DirectShowEncoder.IsMPEG2Installed(), DirectShowEncoder.IsLAVSplitInstalled(), DirectShowEncoder.IsHMCInstalled() }; }