Scrub Method

Summary
Forces a frame to the renderer while stopped.
Syntax
C#
C++/CLI
public virtual void Scrub() 
public: 
virtual void Scrub();  
Remarks

This method has no effect unless the object is in the PlayState.Stopped state. It is usually only useful if you have set AutoScrub to false.

Example
C#
using Leadtools; 
using Leadtools.Multimedia; 
using LeadtoolsMultimediaExamples.Fixtures; 
 
public bool _result = false; 
public PlayCtrlForm _form = new PlayCtrlForm(); 
double _duration = 0.0; 
double _currentPos = -1; 
public void PlayExample() 
{ 
   // reference the play control 
   PlayCtrl playctrl = _form.PlayCtrl; 
 
   // input file 
   string inFile =Path.Combine(LEAD_VARS.MediaDir,"PlayCtrl_Source.avi"); 
 
   try 
   { 
      // set autoscrub to false 
      playctrl.AutoScrub = false; 
 
      // set autostart to false 
      playctrl.AutoStart = false; 
 
      // set our source media file 
      playctrl.SourceFile = inFile; 
 
      // this is the location where you can safely install callbacks 
 
      // force a poster frame if wanted 
      playctrl.Scrub(); 
 
      // get the reported duration 
      _duration = playctrl.Duration; 
 
      // set event handler to get tracking position changes 
      playctrl.TrackingPositionChanged += new TrackingPositionChangedEventHandler(PlayCtrl_TrackingPositionChanged); 
 
      // run it! 
      playctrl.Run(); 
   } 
   catch (Exception) 
   { 
      _result = false; 
   } 
 
   // 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) 
      Application.DoEvents(); 
 
   // set the result to determine if the reported duration 
   // is the same as the final position from tracking 
   _result = (_duration == _currentPos && _duration > 0.0); 
} 
 
void PlayCtrl_TrackingPositionChanged(object sender, TrackingPositionChangedEventArgs e) 
{ 
   // get the frame and tracking positions for demonstration only 
   int frame = _form.PlayCtrl.CurrentFramePosition; 
   int tracking = _form.PlayCtrl.CurrentTrackingPosition; 
 
   // get the current position 
   _currentPos = Math.Max(_currentPos, _form.PlayCtrl.CurrentPosition); 
} 
 
static class LEAD_VARS 
{ 
public const string MediaDir = @"C:\LEADTOOLS22\Media"; 
} 
Requirements

Target Platforms

See Also

Reference

PlayCtrl Class

PlayCtrl Members

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

Leadtools.Multimedia Assembly

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