ILMIsoMux

This is the interface for the LEAD ISO Multiplexer.

Data Types

IsoMux_OutputType

typedef enum 
{ 
   IsoMux_OutputType_Default = 0x00000000, 
   IsoMux_OutputType_MP4     = 0x00000001, 
   IsoMux_OutputType_PSP     = 0x00000002, 
   IsoMux_OutputType_iPod    = 0x00000003, 
   IsoMux_OutputType_3GP     = 0x00000004, 
} IsoMux_OutputType; 

Holds the output type constants.

Enumeration Description
IsoMux_OutputType_Default Default output type. Generate a regular ISO base file format, without tags required by any particular device.
IsoMux_OutputType_MP4 Generate a regular MP4 file.
IsoMux_OutputType_PSP Generate a file compatible with PSP devices.
IsoMux_OutputType_iPod Generate a file compatible with iPod, iPhone and iPad devices.
IsoMux_OutputType_3GP Generate a 3GPP file.

IsoMux_OutputFlags

typedef enum 
{ 
   IsoMux_OutputFlags_Default  = 0x00000000, 
   IsoMux_OutputFlags_FastSave = 0x00000001, 
} IsoMux_OutputFlags; 

Holds the output flags constants.

Enumeration Description
IsoMux_OutputFlags_Default Default behavior - headers are written before data. Allows for faster playback in streaming situations.
IsoMux_OutputFlags_FastSave The data is written before the headers. Allows for faster save, but the file playback cannot start until the file is completely downloaded.

IsoMux_APILEVEL

typedef enum 
{ 
   IsoMux_APILEVEL_1 = 0, 
} IsoMux_APILEVEL; 
Enumeration Description
IsoMux_APILEVEL_1 Use the defaults from the current version of the resize filter.

Properties

Type Name Description
BSTR Title The name used to identify the file on PSP devices. (Used only when generating PSP files).
long OutputType The output type, as indicated by the IsoMux_OutputType enumeration.
long OutputFlags Various flags, as indicated by the IsoMux_OutputFlags enumeration. Right now, the only useful flag is IsoMux_OutputFlags_FastSave, which speeds up the save.

Methods

HRESULT ResetToDefaultsEx(IsoMux_APILEVEL ApiLevel)

Description

Resets the multiplexer to default values.

Parameters

ApiLevel

Determines which default values to use. Current applications should set ApiLevel to IsoMux_APILEVEL_1 = 0.

Comments

The multiplexer may change in the future and have different properties or default behavior. Calling this method ensures the filter will have the same default values as they were at the time you developed your application.

It is best to call ResetToDefaultsEx(IsoMux_APILEVEL_1) before you start setting properties and start calling other methods for this interface.

This method does the following:

  1. Clears the Title property.
  2. Sets OutputType property to IsoMux_OutputType_Default.
  3. Sets OutputFlags property to IsoMux_OutputFlags_Default.

Returns

Return Description
S_OK Connected.
S_FALSE Otherwise.

For more information on how the filter's properties are used, please see the Notes and Comments section of the LEAD ISO Multiplexer User Interface topic.

HRESULT AddMarker( BSTR marker, double time, long Flags)

Description

Adds a marker to the internal list of markers.

Parameters

marker

String indicating the text that should be added. Cannot be NULL.

time

The position (in seconds) where the marker should be added. The marker will not be written if this value is past the end of the file.

Flags

Reserved for future use. Pass 0.

Comments

This method and RemoveMarkers should be called before beginning a conversion. The markers are written the next time the file is written, so call this method with all of the markers added before beginning the conversion. Do not call this method while the conversion is running.

Some ISO/MP4 file players can detect this list of markers and allow the user to select one such points as a quick-seeking point. For example, when playing files with this information on iPad and iPhone devices, the seek bar allows you to go to next and previous marker points the same way a DVD player allows you to go to the next/previous chapter. The seek bar should look like the following figure:

seekwithmarkers.png

Use this method to preserve DVD chapter information when you convert DVDs to MP4 files. Get the strings for each DVD chapter by using the ILMMetaInfo interface. See the ConvertWithMarkers demos for an example.

Returns

Return Description
S_OK Successful.
< 0 An error occurred.

HRESULT RemoveMarkers();

Description

Removes all of the markers previously added with the AddMarker method.

Comments

This method and AddMarker should be called before beginning a conversion. Do not call either method while the conversion is running.

Call this method prior to adding any markers for this conversion. If you do not call this method and convert two files with different marker information, the markers for the second conversion will have all the markers from previous conversion plus the markers from the current conversion.

Returns

Return Description
S_OK Connected.
S_FALSE Otherwise.
Help Version 22.0.2022.4.7
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2022 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Filters C API Help

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