private void SetFFMPEGEXEOutput(ref VFFFMPEGEXEOutput ffmpegOutput) { if (ffmpegEXESettingsDialog == null) { ffmpegEXESettingsDialog = new FFMPEGEXESettingsDialog(); } ffmpegEXESettingsDialog.SaveSettings(ref ffmpegOutput); }
private void btOutputConfigure_Click(object sender, EventArgs e) { switch (cbOutputFormat.SelectedIndex) { case 0: { if (aviSettingsDialog == null) { aviSettingsDialog = new AVISettingsDialog(VideoCapture1.Video_Codecs.ToArray(), VideoCapture1.Audio_Codecs.ToArray()); } aviSettingsDialog.ShowDialog(this); break; } case 1: { if (aviSettingsDialog == null) { aviSettingsDialog = new AVISettingsDialog(VideoCapture1.Video_Codecs.ToArray(), VideoCapture1.Audio_Codecs.ToArray()); } aviSettingsDialog.ShowDialog(this); break; } case 2: { if (wmvSettingsDialog == null) { wmvSettingsDialog = new WMVSettingsDialog(VideoCapture1); } wmvSettingsDialog.WMA = false; wmvSettingsDialog.ShowDialog(this); break; } case 3: { if (dvSettingsDialog == null) { dvSettingsDialog = new DVSettingsDialog(); } dvSettingsDialog.ShowDialog(this); break; } case 4: { if (webmSettingsDialog == null) { webmSettingsDialog = new WebMSettingsDialog(); } webmSettingsDialog.ShowDialog(this); break; } case 5: { if (ffmpegDLLSettingsDialog == null) { ffmpegDLLSettingsDialog = new FFMPEGDLLSettingsDialog(); } ffmpegDLLSettingsDialog.ShowDialog(this); break; } case 6: { if (ffmpegEXESettingsDialog == null) { ffmpegEXESettingsDialog = new FFMPEGEXESettingsDialog(); } ffmpegEXESettingsDialog.ShowDialog(this); break; } case 7: { if (mp4V10SettingsDialog == null) { mp4V10SettingsDialog = new MP4v10SettingsDialog(); } mp4V10SettingsDialog.ShowDialog(this); break; } case 8: { if (mp4v11SettingsDialog == null) { mp4v11SettingsDialog = new MFSettingsDialog(MFSettingsDialogMode.MP4v11); } mp4v11SettingsDialog.ShowDialog(this); break; } case 9: { if (gifSettingsDialog == null) { gifSettingsDialog = new GIFSettingsDialog(); } gifSettingsDialog.ShowDialog(this); break; } case 10: { if (mp4V10SettingsDialog == null) { mp4V10SettingsDialog = new MP4v10SettingsDialog(); } mp4V10SettingsDialog.ShowDialog(this); break; } case 11: { if (mpegTSSettingsDialog == null) { mpegTSSettingsDialog = new MFSettingsDialog(MFSettingsDialogMode.MPEGTS); } mpegTSSettingsDialog.ShowDialog(this); break; } case 12: { if (movSettingsDialog == null) { movSettingsDialog = new MFSettingsDialog(MFSettingsDialogMode.MOV); } movSettingsDialog.ShowDialog(this); break; } } }
private void btConfigure_Click(object sender, EventArgs e) { switch (cbOutputFormat.SelectedIndex) { case 0: case 1: { if (aviSettingsDialog == null) { aviSettingsDialog = new AVISettingsDialog(VideoEdit1); } aviSettingsDialog.ShowDialog(this); break; } case 2: { if (wmvSettingsDialog == null) { wmvSettingsDialog = new WMVSettingsDialog(VideoEdit1); } wmvSettingsDialog.WMA = false; wmvSettingsDialog.ShowDialog(this); break; } case 3: { if (dvSettingsDialog == null) { dvSettingsDialog = new DVSettingsDialog(); } dvSettingsDialog.ShowDialog(this); break; } case 4: { if (webmSettingsDialog == null) { webmSettingsDialog = new WebMSettingsDialog(); } webmSettingsDialog.ShowDialog(this); break; } case 5: { if (ffmpegSettingsDialog == null) { ffmpegSettingsDialog = new FFMPEGSettingsDialog(); } ffmpegSettingsDialog.ShowDialog(this); break; } case 6: { if (ffmpegEXESettingsDialog == null) { ffmpegEXESettingsDialog = new FFMPEGEXESettingsDialog(); } ffmpegEXESettingsDialog.ShowDialog(this); break; } case 7: case 10: { if (mp4SettingsDialog == null) { mp4SettingsDialog = new MP4SettingsDialog(); } mp4SettingsDialog.ShowDialog(this); break; } case 8: { if (mp4HWSettingsDialog == null) { mp4HWSettingsDialog = new HWEncodersOutputSettingsDialog(HWSettingsDialogMode.MP4); } mp4HWSettingsDialog.ShowDialog(this); break; } case 9: { if (gifSettingsDialog == null) { gifSettingsDialog = new GIFSettingsDialog(); } gifSettingsDialog.ShowDialog(this); break; } } }
private void BtConfigure_Click(object sender, EventArgs e) { switch (cbOutputVideoFormat.SelectedIndex) { case 0: { if (aviSettingsDialog == null) { aviSettingsDialog = new AVISettingsDialog(VideoEdit1.Video_Codecs.ToArray(), VideoEdit1.Audio_Codecs.ToArray()); } aviSettingsDialog.ShowDialog(this); break; } case 1: { if (aviSettingsDialog == null) { aviSettingsDialog = new AVISettingsDialog(VideoEdit1.Video_Codecs.ToArray(), VideoEdit1.Audio_Codecs.ToArray()); } aviSettingsDialog.ShowDialog(this); break; } case 2: { if (wmvSettingsDialog == null) { wmvSettingsDialog = new WMVSettingsDialog(VideoEdit1); } wmvSettingsDialog.WMA = false; wmvSettingsDialog.ShowDialog(this); break; } case 3: { if (dvSettingsDialog == null) { dvSettingsDialog = new DVSettingsDialog(); } dvSettingsDialog.ShowDialog(this); break; } case 4: { if (pcmSettingsDialog == null) { pcmSettingsDialog = new PCMSettingsDialog(VideoEdit1.Audio_Codecs.ToArray()); } pcmSettingsDialog.ShowDialog(this); break; } case 5: { if (mp3SettingsDialog == null) { mp3SettingsDialog = new MP3SettingsDialog(); } mp3SettingsDialog.ShowDialog(this); break; } case 6: { if (m4aSettingsDialog == null) { m4aSettingsDialog = new M4ASettingsDialog(); } m4aSettingsDialog.ShowDialog(this); break; } case 7: { if (wmvSettingsDialog == null) { wmvSettingsDialog = new WMVSettingsDialog(VideoEdit1); } wmvSettingsDialog.WMA = true; wmvSettingsDialog.ShowDialog(this); break; } case 8: { if (oggVorbisSettingsDialog == null) { oggVorbisSettingsDialog = new OggVorbisSettingsDialog(); } oggVorbisSettingsDialog.ShowDialog(this); break; } case 9: { if (flacSettingsDialog == null) { flacSettingsDialog = new FLACSettingsDialog(); } flacSettingsDialog.ShowDialog(this); break; } case 10: { if (speexSettingsDialog == null) { speexSettingsDialog = new SpeexSettingsDialog(); } speexSettingsDialog.ShowDialog(this); break; } case 11: { if (customFormatSettingsDialog == null) { customFormatSettingsDialog = new CustomFormatSettingsDialog(VideoEdit1.Video_Codecs.ToArray(), VideoEdit1.Audio_Codecs.ToArray(), VideoEdit1.DirectShow_Filters.ToArray()); } customFormatSettingsDialog.ShowDialog(this); break; } case 12: { if (webmSettingsDialog == null) { webmSettingsDialog = new WebMSettingsDialog(); } webmSettingsDialog.ShowDialog(this); break; } case 13: { if (ffmpegDLLSettingsDialog == null) { ffmpegDLLSettingsDialog = new FFMPEGDLLSettingsDialog(); } ffmpegDLLSettingsDialog.ShowDialog(this); break; } case 14: { if (ffmpegEXESettingsDialog == null) { ffmpegEXESettingsDialog = new FFMPEGEXESettingsDialog(); } ffmpegEXESettingsDialog.ShowDialog(this); break; } case 15: { if (mp4V10SettingsDialog == null) { mp4V10SettingsDialog = new MP4v10SettingsDialog(); } mp4V10SettingsDialog.ShowDialog(this); break; } case 16: { if (mp4v11SettingsDialog == null) { mp4v11SettingsDialog = new MFSettingsDialog(MFSettingsDialogMode.MP4v11); } mp4v11SettingsDialog.ShowDialog(this); break; } case 17: { if (gifSettingsDialog == null) { gifSettingsDialog = new GIFSettingsDialog(); } gifSettingsDialog.ShowDialog(this); break; } case 18: { if (mp4V10SettingsDialog == null) { mp4V10SettingsDialog = new MP4v10SettingsDialog(); } mp4V10SettingsDialog.ShowDialog(this); break; } } }
private void btOutputConfigure_Click(object sender, EventArgs e) { switch (cbOutputFormat.SelectedIndex) { case 0: { if (aviSettingsDialog == null) { aviSettingsDialog = new AVISettingsDialog(VideoCapture1.Video_Codecs.ToArray(), VideoCapture1.Audio_Codecs.ToArray()); } aviSettingsDialog.ShowDialog(this); break; } case 1: { if (aviSettingsDialog == null) { aviSettingsDialog = new AVISettingsDialog(VideoCapture1.Video_Codecs.ToArray(), VideoCapture1.Audio_Codecs.ToArray()); } aviSettingsDialog.ShowDialog(this); break; } case 2: { if (wmvSettingsDialog == null) { wmvSettingsDialog = new WMVSettingsDialog(VideoCapture1.Core); } wmvSettingsDialog.WMA = false; wmvSettingsDialog.ShowDialog(this); break; } case 3: { if (dvSettingsDialog == null) { dvSettingsDialog = new DVSettingsDialog(); } dvSettingsDialog.ShowDialog(this); break; } case 4: { if (pcmSettingsDialog == null) { pcmSettingsDialog = new PCMSettingsDialog(VideoCapture1.Audio_Codecs.ToArray()); } pcmSettingsDialog.ShowDialog(this); break; } case 5: { if (mp3SettingsDialog == null) { mp3SettingsDialog = new MP3SettingsDialog(); } mp3SettingsDialog.ShowDialog(this); break; } case 6: { if (m4aSettingsDialog == null) { m4aSettingsDialog = new M4ASettingsDialog(); } m4aSettingsDialog.ShowDialog(this); break; } case 7: { if (wmvSettingsDialog == null) { wmvSettingsDialog = new WMVSettingsDialog(VideoCapture1.Core); } wmvSettingsDialog.WMA = true; wmvSettingsDialog.ShowDialog(this); break; } case 8: { if (flacSettingsDialog == null) { flacSettingsDialog = new FLACSettingsDialog(); } flacSettingsDialog.ShowDialog(this); break; } case 9: { if (oggVorbisSettingsDialog == null) { oggVorbisSettingsDialog = new OggVorbisSettingsDialog(); } oggVorbisSettingsDialog.ShowDialog(this); break; } case 10: { if (speexSettingsDialog == null) { speexSettingsDialog = new SpeexSettingsDialog(); } speexSettingsDialog.ShowDialog(this); break; } case 11: { if (customFormatSettingsDialog == null) { customFormatSettingsDialog = new CustomFormatSettingsDialog(VideoCapture1.Video_Codecs.ToArray(), VideoCapture1.Audio_Codecs.ToArray(), VideoCapture1.DirectShow_Filters.ToArray()); } customFormatSettingsDialog.ShowDialog(this); break; } case 12: case 13: case 14: case 15: { MessageBox.Show("No settings available for selected output format."); break; } case 16: case 17: case 18: { if (customFormatSettingsDialog == null) { customFormatSettingsDialog = new CustomFormatSettingsDialog(VideoCapture1.Video_Codecs.ToArray(), VideoCapture1.Audio_Codecs.ToArray(), VideoCapture1.DirectShow_Filters.ToArray()); } customFormatSettingsDialog.ShowDialog(this); break; } case 19: { if (webmSettingsDialog == null) { webmSettingsDialog = new WebMSettingsDialog(); } webmSettingsDialog.ShowDialog(this); break; } case 20: { if (ffmpegDLLSettingsDialog == null) { ffmpegDLLSettingsDialog = new FFMPEGDLLSettingsDialog(); } ffmpegDLLSettingsDialog.ShowDialog(this); break; } case 21: { if (ffmpegEXESettingsDialog == null) { ffmpegEXESettingsDialog = new FFMPEGEXESettingsDialog(); } ffmpegEXESettingsDialog.ShowDialog(this); break; } case 22: { if (mp4V10SettingsDialog == null) { mp4V10SettingsDialog = new MP4v10SettingsDialog(); } mp4V10SettingsDialog.ShowDialog(this); break; } case 23: { if (mp4v11SettingsDialog == null) { mp4v11SettingsDialog = new MFSettingsDialog(MFSettingsDialogMode.MP4v11); } mp4v11SettingsDialog.ShowDialog(this); break; } case 24: { if (gifSettingsDialog == null) { gifSettingsDialog = new GIFSettingsDialog(); } gifSettingsDialog.ShowDialog(this); break; } case 25: { if (mp4V10SettingsDialog == null) { mp4V10SettingsDialog = new MP4v10SettingsDialog(); } mp4V10SettingsDialog.ShowDialog(this); break; } case 26: { if (mpegTSSettingsDialog == null) { mpegTSSettingsDialog = new MFSettingsDialog(MFSettingsDialogMode.MPEGTS); } mpegTSSettingsDialog.ShowDialog(this); break; } case 27: { if (movSettingsDialog == null) { movSettingsDialog = new MFSettingsDialog(MFSettingsDialogMode.MOV); } movSettingsDialog.ShowDialog(this); break; } } }
private void BtConfigure_Click(object sender, EventArgs e) { switch (cbOutputVideoFormat.SelectedIndex) { case 0: case 1: { if (aviSettingsDialog == null) { aviSettingsDialog = new AVISettingsDialog(VideoEdit1); } aviSettingsDialog.ShowDialog(this); break; } case 2: { if (wmvSettingsDialog == null) { wmvSettingsDialog = new WMVSettingsDialog(VideoEdit1); } wmvSettingsDialog.WMA = false; wmvSettingsDialog.ShowDialog(this); break; } case 3: { if (dvSettingsDialog == null) { dvSettingsDialog = new DVSettingsDialog(); } dvSettingsDialog.ShowDialog(this); break; } case 4: { if (pcmSettingsDialog == null) { pcmSettingsDialog = new PCMSettingsDialog(VideoEdit1); } pcmSettingsDialog.ShowDialog(this); break; } case 5: { if (mp3SettingsDialog == null) { mp3SettingsDialog = new MP3SettingsDialog(); } mp3SettingsDialog.ShowDialog(this); break; } case 6: { if (m4aSettingsDialog == null) { m4aSettingsDialog = new M4ASettingsDialog(); } m4aSettingsDialog.ShowDialog(this); break; } case 7: { if (wmvSettingsDialog == null) { wmvSettingsDialog = new WMVSettingsDialog(VideoEdit1); } wmvSettingsDialog.WMA = true; wmvSettingsDialog.ShowDialog(this); break; } case 8: { if (oggVorbisSettingsDialog == null) { oggVorbisSettingsDialog = new OggVorbisSettingsDialog(); } oggVorbisSettingsDialog.ShowDialog(this); break; } case 9: { if (flacSettingsDialog == null) { flacSettingsDialog = new FLACSettingsDialog(); } flacSettingsDialog.ShowDialog(this); break; } case 10: { if (speexSettingsDialog == null) { speexSettingsDialog = new SpeexSettingsDialog(); } speexSettingsDialog.ShowDialog(this); break; } case 11: { if (customFormatSettingsDialog == null) { customFormatSettingsDialog = new CustomFormatSettingsDialog(VideoEdit1); } customFormatSettingsDialog.ShowDialog(this); break; } case 12: { if (webmSettingsDialog == null) { webmSettingsDialog = new WebMSettingsDialog(); } webmSettingsDialog.ShowDialog(this); break; } case 13: { if (ffmpegSettingsDialog == null) { ffmpegSettingsDialog = new FFMPEGSettingsDialog(); } ffmpegSettingsDialog.ShowDialog(this); break; } case 14: { if (ffmpegEXESettingsDialog == null) { ffmpegEXESettingsDialog = new FFMPEGEXESettingsDialog(); } ffmpegEXESettingsDialog.ShowDialog(this); break; } case 15: case 18: { if (this.mp4SettingsDialog == null) { this.mp4SettingsDialog = new MP4SettingsDialog(); } this.mp4SettingsDialog.ShowDialog(this); break; } case 16: { if (mp4HWSettingsDialog == null) { mp4HWSettingsDialog = new HWEncodersOutputSettingsDialog(HWSettingsDialogMode.MP4); } mp4HWSettingsDialog.ShowDialog(this); break; } case 17: { if (gifSettingsDialog == null) { gifSettingsDialog = new GIFSettingsDialog(); } gifSettingsDialog.ShowDialog(this); break; } } }
private void Dispose(bool disposing) { ReleaseUnmanagedResources(); if (disposing) { if (mfSettingsDialog != null) { mfSettingsDialog.Dispose(); mfSettingsDialog = null; } if (ffmpegDLLSettingsDialog != null) { ffmpegDLLSettingsDialog.Dispose(); ffmpegDLLSettingsDialog = null; } if (webmSettingsDialog != null) { webmSettingsDialog.Dispose(); webmSettingsDialog = null; } if (pcmSettingsDialog != null) { pcmSettingsDialog.Dispose(); pcmSettingsDialog = null; } if (mp3SettingsDialog != null) { mp3SettingsDialog.Dispose(); mp3SettingsDialog = null; } if (dvSettingsDialog != null) { dvSettingsDialog.Dispose(); dvSettingsDialog = null; } if (wmaSettingsDialog != null) { wmaSettingsDialog.Dispose(); wmaSettingsDialog = null; } if (wmvSettingsDialog != null) { wmvSettingsDialog.Dispose(); wmvSettingsDialog = null; } if (mkvSettingsDialog != null) { mkvSettingsDialog.Dispose(); mkvSettingsDialog = null; } if (aviSettingsDialog != null) { aviSettingsDialog.Dispose(); aviSettingsDialog = null; } if (mp4V10SettingsDialog != null) { mp4V10SettingsDialog.Dispose(); mp4V10SettingsDialog = null; } if (gifSettingsDialog != null) { gifSettingsDialog.Dispose(); gifSettingsDialog = null; } if (m4aSettingsDialog != null) { m4aSettingsDialog.Dispose(); m4aSettingsDialog = null; } if (speexSettingsDialog != null) { speexSettingsDialog.Dispose(); speexSettingsDialog = null; } if (oggVorbisSettingsDialog != null) { oggVorbisSettingsDialog.Dispose(); oggVorbisSettingsDialog = null; } if (customFormatSettingsDialog != null) { customFormatSettingsDialog.Dispose(); customFormatSettingsDialog = null; } if (flacSettingsDialog != null) { flacSettingsDialog.Dispose(); flacSettingsDialog = null; } if (ffmpegEXESettingsDialog != null) { ffmpegEXESettingsDialog.Dispose(); ffmpegEXESettingsDialog = null; } } }
public void ShowDialog(VFVideoCaptureOutputFormat format, IWin32Window parent, VideoCaptureCore core) { switch (format) { case VFVideoCaptureOutputFormat.AVI: { if (aviSettingsDialog == null) { aviSettingsDialog = new AVISettingsDialog(core.Video_Codecs().ToArray(), core.Audio_Codecs().ToArray()); } aviSettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.WMV: { if (wmvSettingsDialog == null) { wmvSettingsDialog = new WMVSettingsDialog(core); } wmvSettingsDialog.WMA = false; wmvSettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.DV: { if (dvSettingsDialog == null) { dvSettingsDialog = new DVSettingsDialog(); } dvSettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.MKVv1: { if (mkvSettingsDialog == null) { mkvSettingsDialog = new AVISettingsDialog(core.Video_Codecs().ToArray(), core.Audio_Codecs().ToArray()); } mkvSettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.PCM_ACM: { if (pcmSettingsDialog == null) { pcmSettingsDialog = new PCMSettingsDialog(core.Audio_Codecs().ToArray()); } pcmSettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.WMA: { if (wmaSettingsDialog == null) { wmaSettingsDialog = new WMVSettingsDialog(core); } wmaSettingsDialog.WMA = true; wmaSettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.MP3: { if (mp3SettingsDialog == null) { mp3SettingsDialog = new MP3SettingsDialog(); } mp3SettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.Custom: { if (customFormatSettingsDialog == null) { customFormatSettingsDialog = new CustomFormatSettingsDialog(core.Video_Codecs().ToArray(), core.Audio_Codecs().ToArray(), core.DirectShow_Filters().ToArray()); } customFormatSettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.DirectCaptureDV: case VFVideoCaptureOutputFormat.DirectCaptureMPEG: case VFVideoCaptureOutputFormat.DirectCaptureAVI: case VFVideoCaptureOutputFormat.DirectCaptureMKV: { MessageBox.Show("No settings available for selected output format."); break; } case VFVideoCaptureOutputFormat.FFMPEG_DLL: { if (ffmpegDLLSettingsDialog == null) { ffmpegDLLSettingsDialog = new FFMPEGDLLSettingsDialog(); } ffmpegDLLSettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.WebM: { if (webmSettingsDialog == null) { webmSettingsDialog = new WebMSettingsDialog(); } webmSettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.DirectCaptureMP4_GDCL: case VFVideoCaptureOutputFormat.DirectCaptureMP4_Monogram: { MessageBox.Show("No settings available for selected output format."); break; } case VFVideoCaptureOutputFormat.DirectCaptureCustom: { if (customFormatSettingsDialog == null) { customFormatSettingsDialog = new CustomFormatSettingsDialog(core.Video_Codecs().ToArray(), core.Audio_Codecs().ToArray(), core.DirectShow_Filters().ToArray()); } customFormatSettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.MP4_CUDA: { if (mp4V10SettingsDialog == null) { mp4V10SettingsDialog = new MP4v10SettingsDialog(); } mp4V10SettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.MP4v8v10: { if (mp4V10SettingsDialog == null) { mp4V10SettingsDialog = new MP4v10SettingsDialog(); } mp4V10SettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.MP4v11: { if (mfSettingsDialog == null) { mfSettingsDialog = new MFSettingsDialog(MFSettingsDialogMode.MP4v11); } mfSettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.Encrypted: { if (mp4V10SettingsDialog == null) { mp4V10SettingsDialog = new MP4v10SettingsDialog(); } mp4V10SettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.FLAC: { if (flacSettingsDialog == null) { flacSettingsDialog = new FLACSettingsDialog(); } flacSettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.OggVorbis: { if (oggVorbisSettingsDialog == null) { oggVorbisSettingsDialog = new OggVorbisSettingsDialog(); } oggVorbisSettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.Speex: { if (speexSettingsDialog == null) { speexSettingsDialog = new SpeexSettingsDialog(); } speexSettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.FFMPEG_EXE: { if (ffmpegEXESettingsDialog == null) { ffmpegEXESettingsDialog = new FFMPEGEXESettingsDialog(); } ffmpegEXESettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.M4A: { if (m4aSettingsDialog == null) { m4aSettingsDialog = new M4ASettingsDialog(); } m4aSettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.AnimatedGIF: { if (gifSettingsDialog == null) { gifSettingsDialog = new GIFSettingsDialog(); } gifSettingsDialog.ShowDialog(parent); break; } case VFVideoCaptureOutputFormat.VLC_EXE: { MessageBox.Show("No settings available for selected output format."); break; } default: throw new ArgumentOutOfRangeException(nameof(format), format, null); } }