Microsoft DirectX 8.0

IAMTimelineTrans Interface

Provides methods for manipulating transition objects in Microsoft® DirectShow® Editing Services (DES).

A transition is a progression between one layer and the rendered composite of all the layers with a lower priority. Objects that can have transitions implement the IAMTimelineTransable interface. To set properties on a transition, use the IPropertySetter interface. For more information about using transition, see Working with Effects and Transitions.

Requirements

Requires Qedit.h.

Methods in Vtable Order

IUnknown methodsDescription
QueryInterfaceRetrieves pointers to supported interfaces.
AddRefIncrements the reference count.
ReleaseDecrements the reference count.
IAMTimelineTrans MethodsDescription
GetCutPointRetrieves the cut point.
GetCutPoint2Equivalent to GetCutPoint, but takes a REFTIME value.
SetCutPointSets the time at which the transition cuts from one source to the next, if the transition is rendered as a cut.
SetCutPoint2Equivalent to SetCutPoint, but takes a REFTIME value.
GetSwapInputsRetrieves a value that indicates whether the transition inputs are swapped.
SetSwapInputsSpecifies whether the transition inputs are swapped.
GetCutsOnlyDetermines whether the transition is rendered as a cut.
SetCutsOnlySpecifies whether the transition is rendered as a cut.

IAMTimelineTrans::GetCutPoint

IAMTimelineTrans Interface

Retrieves the cut point. If you render a transition as a cut, the cut point is the time when the transition cuts from one source to the next. By default, this value is the middle of the transition. For example, in a transition that spans one second, the default cut point is 0.5 seconds into the transition.

Syntax

HRESULT GetCutPoint(
    REFERENCE_TIME *pTLTime
);

Parameters

pTLTime
Pointer to a variable that receives the cut point, relative to the start time of the transition, in 100-nanosecond units.

Return Value

Returns one of the following HRESULT values:

S_FALSEThe cut point was not set. The value returned is the default value.
S_OKThe cut point was set to a value other than the default.
E_POINTERNULL pointer argument.

See Also

SetCutPoint, GetCutsOnly, IAMTimeline::TransitionsEnabled

IAMTimelineTrans::GetCutPoint2

IAMTimelineTrans Interface

Retrieves the cut point. This method is equivalent to GetCutPoint, but takes a REFTIME value.

Syntax

HRESULT GetCutPoint2(
    REFTIME *pTLTime
);

Parameters

pTLTime
Pointer to a variable that receives the cut point, relative to the start time of the transition, in seconds.

Return Value

Returns one of the following HRESULT values:

S_FALSEThe cut point was not set. The value returned is the default value.
S_OKThe cut point was set to a value other than the default.
E_POINTERNULL pointer argument.

IAMTimelineTrans::GetCutsOnly

IAMTimelineTrans Interface

Determines whether the transition is rendered as a cut. If so, the transition occurs instantaneously at the cut point.

Syntax

HRESULT GetCutsOnly(
    BOOL *pVal
);

Parameters

pVal
Pointer to a variable that receives a Boolean value specifying whether the transition is rendered as a cut. If TRUE, the transition is an instantaneous cut. If FALSE, the transition occurs over its normal duration.

Return Value

Returns S_OK if successful, or E_POINTER otherwise.

See Also

SetCutsOnly, GetCutPoint, IAMTimeline::TransitionsEnabled

IAMTimelineTrans::GetSwapInputs

IAMTimelineTrans Interface

Retrieves a value that indicates whether the transition inputs are swapped.

By default, a transition goes from the composite of all lower-priority layers to the layer where the transition resides. You can reverse this progression, so the transition goes from the layer where it resides back to the composite of lower-priority layers.

Syntax

HRESULT GetSwapInputs(
    BOOL *pVal
);

Parameters

pVal
Pointer to a variable that receives a Boolean value. If the value is FALSE, the transition goes from the composite of all lower-priority layers to the transition layer. If the value is TRUE, the transition goes in the opposite direction. The default value is FALSE.

Return Value

Returns S_OK if successful, or E_POINTER otherwise.

IAMTimelineTrans::SetCutPoint

IAMTimelineTrans Interface

Sets the time at which the transition cuts from one source to the next, if the transition is rendered as a cut.

Syntax

HRESULT SetCutPoint(
    REFERENCE_TIME TLTime
)

Parameters

TLTime
Cut point relative to the start of the transition, in 100-nanosecond units. If the value falls outside the bounds of the transition, it is truncated to the nearest valid time.

Return Value

Returns S_OK.

Remarks

By default, the cut-point is the middle of the transition. For example, in a transition that spans one second, the default cut point is 0.5 seconds into the transition.

IAMTimelineTrans::SetCutPoint2

IAMTimelineTrans Interface

Sets the time at which the transition cuts from one source to the next, if the transition is rendered as a cut. This method is equivalent to SetCutPoint, but takes a REFTIME value.

Syntax

HRESULT SetCutPoint2(
    REFTIME TLTime
)

Parameters

TLTime
Cut point relative to the start of the transition, in seconds.

Return Value

Returns S_OK.

IAMTimelineTrans::SetCutsOnly

IAMTimelineTrans Interface

Specifies whether the transition is rendered as a cut. If so, the transition occurs instantly at the cut point. If a transition takes a long time to render, you might want to preview it as a cut to speed preview.

Syntax

HRESULT SetCutsOnly(
    BOOL Val
);

Parameters

Val
Boolean value that specifies whether to render the transition as a cut. If TRUE, the transition is rendered as an instantaneous cut. If FALSE, the transition renders over its normal duration.

Return Value

Returns S_OK.

Remarks

Rendering a transition as a cut is not compatible with swapping the inputs. (See SetSwapInputs.) If you call SetCutsOnly with a value of TRUE, it temporarily overrides the SetSwapInputs setting. The cuts-only setting is intended for preview, however, so this limitation does not affect file output—just remember to call SetCutsOnly with the value FALSE before writing the file.

IAMTimelineTrans::SetSwapInputs

IAMTimelineTrans Interface

Specifies whether the transition inputs are swapped.

By default, a transition goes from the composite of all lower-priority layers to the layer where the transition resides. You can reverse this progression, so the transition goes from the layer where it resides back to the composite of lower-priority layers. For more information, see Transition Direction.

Syntax

HRESULT SetSwapInputs(
    BOOL Val
);

Parameters

Val
Boolean value that specifies whether the inputs are swapped. If the value is FALSE, the transition goes from the composite of all lower-priority layers to the transition layer. If the value is TRUE, the transition goes in the opposite direction.

Return Value

Returns S_OK.

Remarks

This method does not change the direction of the visual effect. For example, a left-to-right wipe will still go from left to right. To change the direction, set the Progress property using the IPropertySetter interface.