private void RemuxButton_Click(object sender, EventArgs e)
{
if(0 == pidsToKeep.Count)
{
MessageBox.Show(
this,
"No single stream to keep selected !",
"Error",
MessageBoxButtons.OK,
MessageBoxIcon.Error);
return;
}
if (backgroundWorker1.IsBusy == false && backgroundWorker2.IsBusy == false)
{
SendMPlayerCmd("frame_step");
RemuxButton.Text = "Cancel";
InputFileBrowseButton.Enabled = false;
OutputFileBrowseButton.Enabled = false;
InputFileTextBox.Enabled = false;
OutputFileTextBox.Enabled = false;
this.Cursor = Cursors.WaitCursor;
RemuxProgressTimeTextBox.Text = length.Subtract(TrimEnd).ToString();
RemuxProgressBar.Value = RemuxProgressBar.Minimum;
RemuxProgressBar.Maximum = (int)length.Subtract(TrimEnd).TotalMinutes;
FormatBox.Enabled = false;
TsFormatRadioButton.Enabled = false;
M2tsFormatRadioButton.Enabled = false;
BluRayFormatRadioButton.Enabled = false;
MKVFormatRadioButton.Enabled = false;
DemuxFormatRadioButton.Enabled = false;
Quit.Enabled = false;
cbxUseAsyncIO.Enabled = false;
cbxBypassAudioProcessing.Enabled = false;
cbxMlpToAc3.Enabled = false;
ElementaryStreamsListBox.Enabled = false;
DisableNumerics();
whenStarted = DateTime.Now;
backgroundWorker1.RunWorkerAsync();
}
else if (backgroundWorker1.IsBusy)
{
RemuxButton.Enabled = false;
backgroundWorker1.CancelAsync();
}
else if (backgroundWorker2.IsBusy)
{
RemuxButton.Enabled = false;
backgroundWorker2.CancelAsync();
}
}