*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->IRIX man pages -> movie/mvGetBoundary (3d)              


mvGetBoundary(3dm)					    mvGetBoundary(3dm)

NAME    [Toc]    [Back]

     mvGetBoundary: mvGetMovieBoundary,	mvGetTrackBoundary - get timing
     information about movie or	track

SYNOPSIS    [Toc]    [Back]

     #include <dmedia/moviefile.h>

     DMstatus mvGetMovieBoundary( MVid movie,
	      MVtime time, MVtimescale timeScale,
	      MVdirection Direction, MVboundtype BoundType,
	      int numMedia, DMmedium *medium,
	      MVtime *returnTime );

     DMstatus mvGetTrackBoundary( MVid track,
	      MVtime time, MVtimescale timeScale,
	      MVdirection Direction, MVboundtype BoundType,
	      MVtime *returnTime );

DESCRIPTION    [Toc]    [Back]

     Each track	is made	up of frames, each of which can	be typed.  Current
     frame types supported are key frames (MV_FRAMETYPE_KEY) or	delta frames
     (MV_FRAMETYPE_DELTA). Frames can be grouped into chunks and/or edit
     atoms.  mvGetMovieBoundary	and mvGetTrackBoundary allow the user to get
     at	this information.

     Valid values for MVdirection are: MV_FORWARD and MV_BACKWARD.  Valid
     values for	MVboundtype are: MV_FRAME, MV_KEYFRAME,	MV_TRACKDATA,

     mvGetMovieBoundary	takes a	time cursor, described in user's timeScale, a
     Direction for searching, and a boundtype that the user is looking for.
     Users also	need to	specify	the media he/she is interested in, passed as
     an	array in medium, with numMedium	specifying the number of medium	to
     look for in the array.  The time for the concerned	boundary is returned
     in	returnTime.  If	the cursor time	passed in to this function happens to
     be	the boundtype described	in BoundType, the time for the next/prev
     boundary will be returned.

     mvGetTrackBoundary	takes a	track, a time cursor, a	time scale, a
     direction,	and a boundtype	and returns the	time for the boundary being
     searched for.

     If	no more	valid boundaries can be	found between the time passed in and
     the end of	the track (tail	of the track if	direction is forward and head
     of	the track if direction is backward), DM_FAILURE	is returned and	the
     error code	will be	set to MV_TIME_OUT_OF_RANGE.

     These functions return DM_SUCCESS if a valid time boundary	could be found
     and returned.  Otherwise, it returns DM_FAILURE, and the error may	be
     retrieved by mvGetErrno(3dm).

									Page 1

mvGetBoundary(3dm)					    mvGetBoundary(3dm)

EXAMPLES    [Toc]    [Back]

	   * this piece	of code	describes how to find all the times for	the
	   * key frames	in a track.

	  #include <moviefile.h>

	  void ListTrackKeyFrameTimes( MVid track )
	      MVtimescale timeScale;
	      MVtime	  lastKeyFrame = 0;
	      MVtime	  cursor = 0;
	      timeScale	= mvGetTrackTimeScale( track );
	      mvGetTrackBoundary( track,
				  mvGetTrackDuration( track, timeScale ), timeScale,
				  &lastKeyFrame	);
	      while( cursor < lastKeyFrame )
		  MVtime tmp;
		  mvGetTrackBoundary( track, cursor, timeScale,
				      MV_FORWARD, MV_KEYFRAME, &tmp );
		  fprintf( stderr, "key	frame found at : %lld0,	tmp );
		  cursor = tmp;

SEE ALSO    [Toc]    [Back]

     mvIntro(3dm), mvGetTimeScale(3dm),	mvGetErrno(3dm).

									PPPPaaaaggggeeee 2222
[ Back ]
 Similar pages
Name OS Title
mvParams IRIX get and set the parameters of a movie or track
mvGetTrackTimeScale IRIX get and set a movie or track timescale.
mvGetMoviePlayVolume IRIX get and set the volume of a movie or track
iflMT IRIX a multi-track movie file
mvGetTrackDuration IRIX get and set movie/track offset and duration.
mvMatrix IRIX Matrix manipulation of movie and track
mvEditByFrame IRIX edit/manipulate a movie track
mvInsertFramesAtTime IRIX edit/manipulate a movie track
mvDeleteFramesAtTime IRIX edit/manipulate a movie track
mvGetTrackUserDataListHandle IRIX get user data dmParams of the track/movie
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service