Working on video offset

This commit is contained in:
niksedk 2014-08-02 17:39:28 +02:00
parent db45959c6b
commit 94c0a2c785
2 changed files with 14 additions and 5 deletions

View File

@ -13741,6 +13741,10 @@ namespace Nikse.SubtitleEdit.Forms
openFileDialog1.FileName = string.Empty; openFileDialog1.FileName = string.Empty;
if (openFileDialog1.ShowDialog() == DialogResult.OK) if (openFileDialog1.ShowDialog() == DialogResult.OK)
{ {
mediaPlayer.Offset = 0;
if (audioVisualizer != null)
audioVisualizer.Offset = 0;
if (audioVisualizer.WavePeaks != null) if (audioVisualizer.WavePeaks != null)
{ {
audioVisualizer.WavePeaks = null; audioVisualizer.WavePeaks = null;
@ -16832,7 +16836,7 @@ namespace Nikse.SubtitleEdit.Forms
} }
closeVideoToolStripMenuItem.Visible = !string.IsNullOrEmpty(_videoFileName); closeVideoToolStripMenuItem.Visible = !string.IsNullOrEmpty(_videoFileName);
setVideoOffsetToolStripMenuItem.Visible = !string.IsNullOrEmpty(_videoFileName) && Configuration.Settings.General.ShowBetaStuff; setVideoOffsetToolStripMenuItem.Visible = !string.IsNullOrEmpty(_videoFileName); // && Configuration.Settings.General.ShowBetaStuff;
toolStripMenuItemSetAudioTrack.Visible = false; toolStripMenuItemSetAudioTrack.Visible = false;
if (mediaPlayer.VideoPlayer != null && mediaPlayer.VideoPlayer is Logic.VideoPlayers.LibVlc11xDynamic) if (mediaPlayer.VideoPlayer != null && mediaPlayer.VideoPlayer is Logic.VideoPlayers.LibVlc11xDynamic)
@ -19626,10 +19630,12 @@ namespace Nikse.SubtitleEdit.Forms
_formPositionsAndSizes.SetPositionAndSize(form); _formPositionsAndSizes.SetPositionAndSize(form);
if (form.ShowDialog(this) == DialogResult.OK) if (form.ShowDialog(this) == DialogResult.OK)
{ {
mediaPlayer.Offset = form.VideoOffset.TotalSeconds; var offsetInSeconds = form.VideoOffset.TotalSeconds;
if (audioVisualizer != null && audioVisualizer.WavePeaks != null && audioVisualizer.WavePeaks.AllSamples.Count > 0) if (form.FromCurrentVideoPosition)
audioVisualizer.Offset = form.VideoOffset.TotalSeconds; offsetInSeconds -= mediaPlayer.VideoPlayer.CurrentPosition;
mediaPlayer.Offset = offsetInSeconds;
if (audioVisualizer != null)
audioVisualizer.Offset = offsetInSeconds;
} }
_formPositionsAndSizes.SavePositionAndSize(form); _formPositionsAndSizes.SavePositionAndSize(form);
} }

View File

@ -7,6 +7,8 @@ namespace Nikse.SubtitleEdit.Forms
{ {
public partial class SetVideoOffset : Form public partial class SetVideoOffset : Form
{ {
public bool FromCurrentVideoPosition { get; set; }
private TimeCode _videoOffset = new TimeCode(0); private TimeCode _videoOffset = new TimeCode(0);
public TimeCode VideoOffset public TimeCode VideoOffset
{ {
@ -45,6 +47,7 @@ namespace Nikse.SubtitleEdit.Forms
private void buttonOK_Click(object sender, EventArgs e) private void buttonOK_Click(object sender, EventArgs e)
{ {
VideoOffset = timeUpDownVideoPosition.TimeCode; VideoOffset = timeUpDownVideoPosition.TimeCode;
FromCurrentVideoPosition = checkBoxFromCurrentPosition.Checked;
DialogResult = DialogResult.OK; DialogResult = DialogResult.OK;
} }