Media Authoring
with Java API

tv.amwa.maj.iface
Interface Pulldown

All Superinterfaces:
Component, InterchangeObject, Segment
All Known Implementing Classes:
Pulldown

public interface Pulldown
extends Segment

Specifies a conversion between film frame rates and videotape frame rates. Implementations of this interface provides a mechanism to convert essence to and from video and film rates and describe the mechanism that was used to convert the essence.

A pulldown is typically used in one of three ways:

  1. In a tape source mob to describe how the videotape was created from film.
  2. In a file source mob that has digital essence at film speed, to describe how the digital essence was created from the videotape.
  3. In a mob to create timecode tracks at different edit rates.

Author:
Richard Cartwright
See Also:
makePulldown()

Method Summary
 Segment getInputSegment()
          Returns the input segment of this pulldown, which is either a source clip or timecode.
 int getPhaseFrame()
          Returns the phase frame property of this pulldown, which specifies the phase within the repeating pulldown pattern of the first frame after the pulldown conversion.
 PulldownDirectionType getPulldownDirection()
          Returns the pulldown direction of this pulldown, which specifies whether the pulldown is converting from tape to film speed or from film to tape speed.
 PulldownKindType getPulldownKind()
          Returns the pulldown kind of this pulldown, which specifies whether the pulldown is converting from nominally 30 Hz or 25 Hz video frame rate and whether frames are dropped or the video is played at another speed.
 void setInputSegment(Segment inputSegment)
          Sets the input segment for this pulldown, which is either a source clip or timecode.
 void setPhaseFrame(int phaseFrame)
          Sets the phase frame property of the pulldown, which specifies the phase within the repeating pulldown pattern of the first frame after the pulldown conversion.
 void setPulldownDirection(PulldownDirectionType pulldownDirection)
          Sets the pulldown direction of the pulldown, which specifies whether the pulldown is converting from tape to film speed or from film to tape speed.
 void setPulldownKind(PulldownKindType pulldownKind)
          Sets the pulldown kind of this pulldown, which specifies whether the pulldown is converting from nominally 30 Hz or 25 Hz video frame rate and whether frames are dropped or the video is played at another speed.
 
Methods inherited from interface tv.amwa.maj.iface.Segment
segmentOffsetToTC, segmentTCToOffset
 
Methods inherited from interface tv.amwa.maj.iface.Component
appendAttribute, appendAttribute, appendComment, appendComment, appendKLVData, countAttributes, countComments, countKLVData, getAttributes, getComments, getDataDefinition, getKLVData, getLength, removeAttribute, removeComment, removeKLVData, setDataDefinition, setLength
 
Methods inherited from interface tv.amwa.maj.iface.InterchangeObject
countProperties, createOptionalPropertyValue, disableGenerationTracking, enableGenerationTracking, getDefinition, getGeneration, getGenerationAUID, getProperties, getPropertyValue, isGenerationTracked, isPropertyPresent, omitOpionalProperty, setPropertyValue
 

Method Detail

getInputSegment

Segment getInputSegment()

Returns the input segment of this pulldown, which is either a source clip or timecode. The length of the source clip or timecode is in the edit units determined by the properties pulldown kind and pulldown direction.

Returns:
Input segment of this pulldown.

setInputSegment

void setInputSegment(Segment inputSegment)
                     throws NullPointerException,
                            IllegalArgumentException

Sets the input segment for this pulldown, which is either a source clip or timecode.

The length of the source clip or timecode is in the edit units determined by the properties pulldown kind and pulldown direction.

Parameters:
inputSegment - Input segment for the pulldown.
Throws:
NullPointerException - The given input segment is null.
IllegalArgumentException - The given input segment must be either a source clip or a timecode.

getPulldownKind

PulldownKindType getPulldownKind()

Returns the pulldown kind of this pulldown, which specifies whether the pulldown is converting from nominally 30 Hz or 25 Hz video frame rate and whether frames are dropped or the video is played at another speed.

Returns:
Pulldown kind of this pulldown.
See Also:
PulldownKindType

setPulldownKind

void setPulldownKind(PulldownKindType pulldownKind)
                     throws NullPointerException

Sets the pulldown kind of this pulldown, which specifies whether the pulldown is converting from nominally 30 Hz or 25 Hz video frame rate and whether frames are dropped or the video is played at another speed.

Parameters:
pulldownKind - Pulldown kind of this pulldown.
Throws:
NullPointerException - The given pulldown kind is null.
See Also:
PulldownKindType

getPulldownDirection

PulldownDirectionType getPulldownDirection()

Returns the pulldown direction of this pulldown, which specifies whether the pulldown is converting from tape to film speed or from film to tape speed.

Returns:
Pulldown direction field of the pulldown.

See Also:
PulldownDirectionType, TapeDescriptor, FilmDescriptor

setPulldownDirection

void setPulldownDirection(PulldownDirectionType pulldownDirection)
                          throws NullPointerException

Sets the pulldown direction of the pulldown, which specifies whether the pulldown is converting from tape to film speed or from film to tape speed.

Parameters:
pulldownDirection - Pulldown direction of this pulldown.
Throws:
NullPointerException - The given pulldown direction is null.
See Also:
PulldownDirectionType, TapeDescriptor, FilmDescriptor

getPhaseFrame

@PhaseFrameType
int getPhaseFrame()

Returns the phase frame property of this pulldown, which specifies the phase within the repeating pulldown pattern of the first frame after the pulldown conversion. A value of zero specifies that the pulldown object starts at the beginning of the pattern.

Returns:
Phase frame property of this pulldown.

setPhaseFrame

void setPhaseFrame(@PhaseFrameType
                   int phaseFrame)

Sets the phase frame property of the pulldown, which specifies the phase within the repeating pulldown pattern of the first frame after the pulldown conversion. A value of zero specifies that the pulldown object starts at the beginning of the pattern.

Parameters:
phaseFrame - Phase frame property for this pulldown.

Media Authoring
with Java API

(c) 2007-2008 Richard Cartwright, all rights reserved. Subject to the terms of the AAF SDK Public Source License.