LEADTOOLS Multimedia (Leadtools.Multimedia assembly)

IsRateSupported Method

Show in webframe
Example 



The playback rate, expressed as a ratio of the normal playback speed. For example, use 1.0 for normal speed, 2.0 for double speed, 0.5 for half speed and -2.0 for double reverse speed.
Determines whether a specific playback rate is supported.
Syntax
'Declaration
 
Public Overridable Function IsRateSupported( _
   ByVal rate As Double _
) As Boolean
'Usage
 
Dim instance As PlayCtrl
Dim rate As Double
Dim value As Boolean
 
value = instance.IsRateSupported(rate)
public virtual bool IsRateSupported( 
   double rate
)
public:
virtual bool IsRateSupported( 
   double rate
) 

Parameters

rate
The playback rate, expressed as a ratio of the normal playback speed. For example, use 1.0 for normal speed, 2.0 for double speed, 0.5 for half speed and -2.0 for double reverse speed.

Return Value

true if the specified playback rate is supported; false, otherwise.
Example
Copy Code  
Imports Leadtools
Imports Leadtools.Multimedia
Imports LeadtoolsMultimediaExamples.Fixtures

Public _result As Boolean = False
Public _form As PlayCtrlForm = New PlayCtrlForm()
Private _duration As Double = 0.0
Private _currentPos As Double = -1
Public Sub PlayExample()
   ' reference the play control
   Dim playctrl As PlayCtrl = _form.PlayCtrl

   ' input file
   Dim inFile As String = Path.Combine(LEAD_VARS.MediaDir, "PlayCtrl_Source.avi")

   Try
      ' set autostart to false
      playctrl.AutoStart = False

      ' set the play count to 2
      playctrl.PlayCount = 2

      ' set our source media file
      playctrl.SourceFile = inFile

      ' get the reported duration
      _duration = playctrl.Duration

      ' set the playback rate to 2x
      If playctrl.IsRateSupported(2.0) Then
         playctrl.Rate = 2.0
      End If

      ' set event handler to get tracking position changes
      AddHandler playctrl.TrackingPositionChanged, AddressOf PlayCtrl_TrackingPositionChanged

      ' run it!
      playctrl.Run()
   Catch e1 As Exception
      _result = False
   End Try

   ' 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.
   Do While playctrl.State = PlayState.Running
      Application.DoEvents()
   Loop

   ' set the result to determine if the reported duration
   ' is the same as the final position from tracking
   _result = (_duration = _currentPos AndAlso _duration > 0.0)
End Sub

Private Sub PlayCtrl_TrackingPositionChanged(ByVal sender As Object, ByVal e As TrackingPositionChangedEventArgs)
   ' get the frame and tracking positions for demonstration only
   Dim frame As Integer = _form.PlayCtrl.CurrentFramePosition
   Dim tracking As Integer = _form.PlayCtrl.CurrentTrackingPosition

   ' get the current position
   _currentPos = Math.Max(_currentPos, _form.PlayCtrl.CurrentPosition)
End Sub

Public NotInheritable Class LEAD_VARS
Public Const MediaDir As String = "C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 18\Media"
End Class
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 autostart to false
      playctrl.AutoStart = false;

      // set the play count to 2
      playctrl.PlayCount = 2;

      // set our source media file
      playctrl.SourceFile = inFile;

      // get the reported duration
      _duration = playctrl.Duration;

      // set the playback rate to 2x
      if (playctrl.IsRateSupported(2.0))
         playctrl.Rate = 2.0;

      // 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:\Program Files (x86)\LEAD Technologies\LEADTOOLS 18\Media";
}
Requirements

Target Platforms

See Also

Reference

PlayCtrl Class
PlayCtrl Members

 

 


Products | Support | Contact Us | Copyright Notices
© 2006-2014 All Rights Reserved. LEAD Technologies, Inc.

Leadtools.Multimedia requires a Multimedia or Multimedia Suite license and unlock key. For more information, refer to: LEADTOOLS Toolkit Features