WMScript Class

Summary
A WMScript object used to add Script commands to Windows Media Files or Streams.
Syntax
C#
C++/CLI
public class WMScript : IDisposable 
public ref class WMScript : public System.IDisposable   
Remarks

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, refer to Processing Windows Media Script Commands.

Example
C#
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:\LEADTOOLS22\Media"; 
} 
Requirements

Target Platforms

Help Version 22.0.2023.2.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.