A WMScript object used to add Script commands to Windows Media Files or Streams.
public class WMScript : IDisposable
Public Class WMScript
Implements System.IDisposable
public ref class WMScript : public System.IDisposable
The WMScript class exposes a Windows Media script management interface, useful for adding and removing script commands in the WMV video format. The CaptureCtrl and ConvertCtrl objects use this object to allow the insertion of header and stream-based scripts. A WMScript object cannot be created externally and is only obtained through the parent object's interface. To get this interface, call either CaptureCtrl.WMScripter or ConvertCtrl.WMScripter. See the Microsoft documentation, Using Script Commands Supported by Windows Media Player, for a complete list of script commands supported by Windows Media Player.
For more information on LEADTOOLS Multimedia support, see Windows Media Support. For more information on Windows Media Scripts and for an example of how Windows Media Scripts are processed, Processing Windows Media Script Commands.
using Leadtools;
using Leadtools.Multimedia;
using LeadtoolsMultimediaExamples.Fixtures;
public bool _result = false;
public PlayCtrlForm _form = new PlayCtrlForm();
public void HandleScriptExample()
{
PlayCtrl playctrl = _form.PlayCtrl;
string inFile = Path.Combine(LEAD_VARS.MediaDir, "WriteScriptStream_Dest.wmv");
try
{
playctrl.MediaEvent += new MediaEventHandler(PlayCtrl_MediaEvent);
playctrl.SourceFile = inFile;
}
catch (Exception)
{
return;
}
// 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();
}
public void PlayCtrl_MediaEvent(object sender, MediaEventArgs e)
{
if (e.eventCode == MediaEventCode.EC_OLE_EVENT)
{
string nameString = System.Runtime.InteropServices.Marshal.PtrToStringBSTR(new IntPtr(e.param1));
string commandString = System.Runtime.InteropServices.Marshal.PtrToStringBSTR(new IntPtr(e.param2));
Console.WriteLine("EC_OLE_EVENT: name={0}, command={1}", nameString, commandString);
_result = true;
}
}
static class LEAD_VARS
{
public const string MediaDir = @"C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 20\Media";
}
Imports Leadtools
Imports Leadtools.Multimedia
Imports LeadtoolsMultimediaExamples.Fixtures
Public _result As Boolean = False
Public _form As New PlayCtrlForm()
Public Sub HandleScriptExample()
Dim playctrl As PlayCtrl = _form.PlayCtrl
Dim inFile As String = Path.Combine(LEAD_VARS.MediaDir, "WriteScriptStream_Dest.wmv")
Try
AddHandler playctrl.MediaEvent, AddressOf PlayCtrl_MediaEvent
playctrl.SourceFile = inFile
Catch generatedExceptionName As Exception
Exit Sub
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.
While playctrl.State = PlayState.Running
Application.DoEvents()
End While
End Sub
Public Sub PlayCtrl_MediaEvent(ByVal sender As Object, ByVal e As MediaEventArgs)
If (e.eventCode = MediaEventCode.EC_OLE_EVENT) Then
Dim nameString As String = System.Runtime.InteropServices.Marshal.PtrToStringBSTR(New IntPtr(e.param1))
Dim commandString As String = System.Runtime.InteropServices.Marshal.PtrToStringBSTR(New IntPtr(e.param2))
Console.WriteLine("EC_OLE_EVENT: name={0}, command={1}", nameString, commandString)
_result = True
End If
End Sub
Public NotInheritable Class LEAD_VARS
Public Const MediaDir As String = "C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 20\Media"
End Class
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document