SeekStart Method

Summary
Seeks for the beginning of the media file.
Syntax
C#
C++/CLI
public virtual void SeekStart() 
public: 
virtual void SeekStart();  
Remarks

Call CheckSeekingCapabilities to determine whether PlaySeeking.Forward is enabled. For more information, refer to the PlaySeeking enumeration.

Example
C#
using Leadtools; 
using Leadtools.Multimedia; 
using LeadtoolsMultimediaExamples.Fixtures; 
 
 
public bool _result = false; 
public PlayCtrlForm _form = new PlayCtrlForm(); 
public PlayCtrl _playctrl; 
public PlaySeeking _seekingCaps; 
public TimeSpan _start = TimeSpan.Zero; 
 
public void HasDialogExample() 
{ 
   // reference the play control 
   _playctrl = _form.PlayCtrl; 
 
   // input file for playback 
   string inFile = Path.Combine(LEAD_VARS.MediaDir, "PlayCtrl_Source.avi"); 
 
   try 
   { 
      // turn off autostart and auto rewind 
      _playctrl.AutoStart = false; 
      _playctrl.AutoRewind = false; 
 
      // set the source file 
      _playctrl.SourceFile = inFile; 
 
      // show some media info if available 
      ShowMediaInfo(); 
 
      // the HasDialog method tells us that the control 
      // can display the desired settings dialog. 
      // check to see if the video renderer properties dialog is available 
      if (_playctrl.HasDialog(PlayDlg.VideoRenderer)) 
      { 
         // now show it to change some settings 
         _playctrl.ShowDialog(PlayDlg.VideoRenderer, _form); 
         _result = true; 
      } 
 
      // get the source object type 
      SourceObjectType sot = _playctrl.SourceType; 
 
      // check some audio properties 
      bool mute = _playctrl.Mute; 
      int bal = _playctrl.Balance; 
      int vol = _playctrl.Volume; 
 
      // seeking caps - you can use these to enable menu states or toolbar buttons 
      _seekingCaps = _playctrl.CheckSeekingCapabilities(PlaySeeking.Forward | PlaySeeking.Backward); 
 
      // subscribe to the key press event to demo play functions 
      _playctrl.KeyPress += new Leadtools.Multimedia.KeyPressEventHandler(PlayCtrl_KeyPress); 
 
      // start the capture process 
      _playctrl.Run(); 
 
      // we'll loop on the state and pump messages for this example. 
      // but you should not need to if running from a Windows Forms application. 
      while (_playctrl.State == PlayState.Running 
         || _playctrl.State == PlayState.Paused 
         || _playctrl.State == PlayState.NotReady) 
         Application.DoEvents(); 
 
      // call reset source here to release resources 
      // but not necessary if we are just exiting 
      _playctrl.ResetSource(); 
   } 
   catch (Exception) 
   { 
      _result = false; 
   } 
} 
 
// state variables for helper timer states 
public bool _markedSelStart = false; 
public bool _markedSelEnd = false; 
public bool _seekedSelStart = false; 
public bool _seekedSelEnd = false; 
 
// key press event handler to manage playback functions 
void PlayCtrl_KeyPress(object sender, Leadtools.Multimedia.KeyPressEventArgs e) 
{ 
   char key = (char)e.keyAscii; 
   switch (key) 
   { 
      case 'b': 
         if (!_markedSelStart) 
         { 
            _markedSelStart = true; 
            _playctrl.MarkSelectionStart(); 
            System.Diagnostics.Debug.WriteLine("Mark Selection Start: " + _playctrl.SelectionStart.ToString() + " secs"); 
            System.Diagnostics.Debug.WriteLine("  ... playctrl.State: " + _playctrl.State.ToString()); 
         } 
         break; 
      case 'e': 
         if (!_markedSelEnd) 
         { 
            _markedSelEnd = true; 
            _playctrl.Pause(); 
            _playctrl.MarkSelectionEnd(); 
            System.Diagnostics.Debug.WriteLine("Mark Selection End: " 
                                               + _playctrl.SelectionEnd.ToString() 
                                               + " secs"); 
            System.Diagnostics.Debug.WriteLine("  ... playctrl.State: " 
                                               + _playctrl.State.ToString()); 
            _playctrl.SeekSelectionStart(); 
            _playctrl.Run(); 
         } 
         break; 
      case 's': 
         if (!_seekedSelStart) 
         { 
            _seekedSelStart = true; 
            System.Diagnostics.Debug.WriteLine("Seek To Selection Start: " 
                                               + _playctrl.SelectionStart.ToString() 
                                               + " secs"); 
            System.Diagnostics.Debug.WriteLine("  ... playctrl.State: " 
                                               + _playctrl.State.ToString()); 
            _playctrl.SeekSelectionStart(); 
         } 
         break; 
      case 'f': 
         // toggle full screen 
         _playctrl.ToggleFullScreenMode(); 
         break; 
      case '+': 
         if (_playctrl.State == PlayState.Running) 
            _playctrl.Pause(); 
 
         _playctrl.NextFrame(); 
         break; 
      case '-': 
         if (_playctrl.State == PlayState.Running) 
            _playctrl.Pause(); 
 
         _playctrl.PreviousFrame(); 
         break; 
      case 'z': 
         if (!_seekedSelEnd) 
         { 
            // turn off full screen mode 
            _playctrl.FullScreenMode = false; 
 
            _seekedSelEnd = true; 
            System.Diagnostics.Debug.WriteLine("Seek To Selection End: " 
                                               + _playctrl.SelectionEnd.ToString() 
                                               + " secs"); 
            System.Diagnostics.Debug.WriteLine("  ... playctrl.State: " 
                                               + _playctrl.State.ToString()); 
            _playctrl.SeekSelectionEnd(); 
         } 
         break; 
      case 'x': 
         _playctrl.Stop(); 
         break; 
 
   } 
} 
 
private void ShowMediaInfo() 
{ 
   double d = 0; 
   string sa, scr, sd, sr, st; 
 
   sa = scr = sd = sr = st = "Unavailable"; 
 
   try 
   { 
      d = _playctrl.FrameDuration; 
      sa = _playctrl.Author; 
      scr = _playctrl.Copyright; 
      sd = _playctrl.Description; 
      sr = _playctrl.Rating; 
      st = _playctrl.Title; 
   } 
   catch (Exception) 
   { 
   } 
 
   MessageBox.Show(_form, string.Format("Duration: {0}\nAuthor: {1}\nCopyright: {2}\nDesc: {3}\nRating: {4}\nTitle: {5}\n", 
      d, sa, scr, sd, sr, st), "Media Info"); 
} 
 
void SelectedOptions() 
{ 
   _playctrl.SeekStart(); 
   _playctrl.SeekEnd(); 
   int te = _playctrl.TrackingSelectionEnd; 
   int ts = _playctrl.TrackingSelectionStart; 
   double se = _playctrl.SelectionEnd; 
   double ss = _playctrl.SelectionStart; 
} 
 
static class LEAD_VARS 
{ 
   public const string MediaDir = @"C:\LEADTOOLS23\Media"; 
} 
Requirements

Target Platforms

See Also

Reference

PlayCtrl Class

PlayCtrl Members

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Multimedia Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.