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

  man pages->IRIX man pages -> dmedia/dmTCToString (3d)              
Title
Content
Arch
Section
 

Contents


dmTCToString(3dm)					     dmTCToString(3dm)


NAME    [Toc]    [Back]

     dmTCToString, dmTCFromString, DMtimecode, tc_type - digital media
     timecode mathematics

SYNOPSIS    [Toc]    [Back]

     #include <dmedia/dm_timecode.h>

     DMstatus dmTCToString    [Toc]    [Back]
	 ( char	* outstring,
	   const DMtimecode *tc	)

     DMstatus dmTCFromString    [Toc]    [Back]
	 ( DMtimecode *	result,
	   const char *	instring,
	   int tc_type )


TYPES    [Toc]    [Back]

     DMtimecode	  A structure containing a representation of SMPTE time	code
		  on which certain mathematical	and utility functions can be
		  performed.  Can be used with:	 dmTCAddTC(3dm),
		  dmTCAddFrames(3dm), dmTCToString(3dm), dmTCFromSeconds(3dm),
		  dmTCToSeconds(3dm), dmTCFromString(3dm),
		  dmTCFramesPerDay(3dm), and dmTCFramesBetween(3dm).  Can also
		  be used with the dmLTC(3dm) and dmVITC(3dm) routines.

ARGUMENTS    [Toc]    [Back]

     outstring	 The string created by converting tc.


     tc		 The timecode operand to convert to a string.


     result	 The result of converting instring to a	DMtimecode.


     instring	 The string to convert into a DMtimecode.


tc_type
		  The timecode type which dmTCFromString should	assume the
		 string	is in.	See TC_TYPE below.

DESCRIPTION    [Toc]    [Back]

     These utility functions will convert between strings and DMtimecode's.

     To	convert	from a string to a DMtimecode, the string format must a
     colon-separated string (in	the form "h:m:s:f"); if	fields are missing
     (i.e., "01:01:04")	the string will	be interpreted by assuming that	the



									Page 1






dmTCToString(3dm)					     dmTCToString(3dm)



     missing fields are	on the left, and are "0". Thus,	for example, the
     string "2:14" will	be interpreted as "0:0:2:14."

     When converting from a DMtimecode to a string, the	string returned	will
     be	fully justified	and contain all	fields.	(i.e., it will return a
     fully-justified "00:00:02:14").

TC_TYPE    [Toc]    [Back]

     The dmTC routines,	as well	as other timecode-related routines such	as
     dmVITC and	dmLTC, depend on a proper setting of the tc_type field.	 Often
     this tc_type field	appears	as a member of a DMtimecode passed to or from
     one of these routines.

     The tc_type field tells these routines whether the	maximum	frame value is
     25	or 30, whether 30 frame	code is	drop frame or not, and if so what kind
     of	drop frame.

     The tc_type field,	defined	in <dmedia/dm_timecode.h>, consists of an
     or'ed together bitmask of fields indicating format	(DM_TC_FORMAT_...),
     timecode rate (DM_TC_RATE_...), and dropframe status (DM_TC_*DROP*), but
     most users	will find it much easier just to use one of the	preconstructed,
 fully-qualified tokens:

       DM_TC_30_ND - non-drop-frame NTSC or M/PAL timecode
       DM_TC_2997_4FIELD_DROP -	drop-frame NTSC	timecode
       DM_TC_2997_8FIELD_DROP -	drop-frame M/PAL timecode
       DM_TC_25_ND - PAL timecode (not M/PAL)
       DM_TC_24_ND - 24	frame per second film timecode
       DM_TC_60_ND - non-drop-frame 60 frame per second	HDTV
		     timecode (experiemental)
       DM_TC_5594_8FIELD_DROP -	drop-frame 59.94 frame per second
				HDTV timecode (experiemental)

     The most common tokens for	US use are DM_TC_24_ND,	DM_TC_2997_4FIELD_DROP
     and DM_TC_30_ND. In Europe, DM_TC_24_ND and DM_TC_25_ND will be the most
     commonly used tokens.  "NTSC" and "PAL" above really refer	to any 525/60
     signal and	625/50 signal, respectively.

     Note on rates: the	DM_TC_RATE field within	tc_type	does not refer to the
     video signal's rate.  It simply refers to whether "30 frame" timecode is
     drop frame	or not.	 Non-drop frame	code has exactly 30 frames per second,
     drop-frame	code has exactly 29.97 frames per second over the full day.
     The actual	video signal rate is neither requested nor required by dmTC
     and other timecode	routines.  For color NTSC and M/PAL signals, it
     happens to	be 30000/1001 frames per second, which equals neither 30 nor
     29.97.

     Because of	this, any dmTC routines	(such as dmTCToSeconds)	which go
     between a timecode	value and real time will assume	a timecode rate	as
     given by DM_TC_RATE, not as given by the actual video signal's frame
     rate.  This means that over the long term,	drop frame timecode will drift



									Page 2






dmTCToString(3dm)					     dmTCToString(3dm)



     away from real time at the	rate of	about 2	frames per day.

RETURN VALUE    [Toc]    [Back]

     If	a DMtimecode operand (tc) contains an illegal timecode value (e.g., a
     negative entry, invalid frame number, etc.), dmTCToString will return
     DM_FAILURE, and the contents of outstring will be undefined.

     If	dmTCFromString is unable to interpret an input string instring,	it
     will return DM_FAILURE, and the contents of result	will be	undefined.

SEE ALSO    [Toc]    [Back]

      
      
     dmTCAddTC(3dm), dmTCAddFrames(3dm), dmTCFromSeconds(3dm),
     dmTCToSeconds(3dm), dmTCFramesPerDay(3dm),	dmTCFramesBetween(3dm),
     dmLTC(3dm), dmVITC(3dm)


									PPPPaaaaggggeeee 3333
[ Back ]
 Similar pages
Name OS Title
dmSetAudioDefaults IRIX parameters for digital-media audio
dmSetImageDefaults IRIX parameters for digital-media images
annotator IRIX 3D Annotation with Digital Media Notes
dmnet IRIX Digital Media Network Library
dminfo IRIX display information about digital media files
dmic IRIX Digital Media image conversion and compression
dmconvert IRIX digital media file conversion utility
dmrb IRIX digital media ring buffer device
dmParamsGetInt IRIX get values from digital media parameter/value lists
dmbuffer IRIX Digital Media data transport subsystem
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service