private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
Coordinator cor = new Coordinator();
switch (state)
{
case SaveState.Remux:
if (TsFormatRadioButton.Checked)
{
cor.StartMuxing(OutputFileTextBox.Text, backgroundWorker1, TsFileType.TS, pidsToKeep, TrimStart, TrimEnd, cbxUseAsyncIO.Checked, cbxBypassAudioProcessing.Checked, cbxMlpToAc3.Checked, inFile, supFile, SupStart, ChapterLen);
}
else if (M2tsFormatRadioButton.Checked)
{
cor.StartMuxing(OutputFileTextBox.Text, backgroundWorker1, TsFileType.M2TS, pidsToKeep, TrimStart, TrimEnd, cbxUseAsyncIO.Checked, cbxBypassAudioProcessing.Checked, cbxMlpToAc3.Checked, inFile, supFile, SupStart, ChapterLen);
}
else if (BluRayFormatRadioButton.Checked)
{
cor.StartMuxing(OutputFileTextBox.Text, backgroundWorker1, TsFileType.BLU_RAY, pidsToKeep, TrimStart, TrimEnd, cbxUseAsyncIO.Checked, cbxBypassAudioProcessing.Checked, cbxMlpToAc3.Checked, inFile, supFile, SupStart, ChapterLen);
}
else if (MKVFormatRadioButton.Checked)
{
cor.StartMuxing(OutputFileTextBox.Text, backgroundWorker1, TsFileType.MKV, pidsToKeep, TrimStart, TrimEnd, cbxUseAsyncIO.Checked, cbxBypassAudioProcessing.Checked, cbxMlpToAc3.Checked, inFile, supFile, SupStart, ChapterLen);
}
else if (DemuxFormatRadioButton.Checked)
{
cor.StartMuxing(OutputFileTextBox.Text, backgroundWorker1, TsFileType.DEMUX, pidsToKeep, TrimStart, TrimEnd, cbxUseAsyncIO.Checked, cbxBypassAudioProcessing.Checked, cbxMlpToAc3.Checked, inFile, supFile, SupStart, ChapterLen);
}
break;
case SaveState.DemuxSup:
if (elmPid != 0)
{
List<ushort> elmPids = new List<ushort>();
elmPids.Add(elmPid);
cor.StartMuxing(elmName, backgroundWorker1, TsFileType.SUP_ELEMENTARY, elmPids, TrimStart, TrimEnd, cbxUseAsyncIO.Checked, inFile);
}
break;
case SaveState.DemuxStream:
if (elmPid != 0)
{
List<ushort> elmPids = new List<ushort>();
elmPids.Add(elmPid);
cor.StartMuxing(elmName, backgroundWorker1, TsFileType.ELEMENTARY, elmPids, TrimStart, TrimEnd, cbxUseAsyncIO.Checked, inFile);
}
break;
case SaveState.DemuxPes:
if (elmPid != 0)
{
List<ushort> elmPids = new List<ushort>();
elmPids.Add(elmPid);
cor.StartMuxing(elmName, backgroundWorker1, TsFileType.PES_ELEMENTARY, elmPids, TrimStart, TrimEnd, cbxUseAsyncIO.Checked, inFile);
}
break;
}
}