Time


Modules

 Software timer

Defines

#define GAVL_TIME_SCALE   1000000
#define GAVL_TIME_UNDEFINED   0x8000000000000000LL
#define GAVL_TIME_MAX   0x7fffffffffffffffLL
#define gavl_seconds_to_time(s)   (gavl_time_t)((s)*(double)(GAVL_TIME_SCALE))
 Convert seconds (as double) to a gavl time.
#define gavl_time_to_seconds(t)   ((double)(t)/(double)(GAVL_TIME_SCALE))
 Convert a gavl time to seconds (as double).
#define GAVL_TIME_STRING_LEN   11
 Length of the string passed to gavl_time_prettyprint.

Typedefs

typedef int64_t gavl_time_t
 Times in gavl are 64 bit signed integers.

Functions

gavl_time_t gavl_samples_to_time (int samplerate, int64_t samples)
 Convert a number of samples to a time for a given samplerate.
int64_t gavl_time_to_samples (int samplerate, gavl_time_t time)
 Convert a time to a number of audio samples for a given samplerate.
gavl_time_t gavl_frames_to_time (int rate_num, int rate_den, int64_t frames)
 Convert a number of video frames to a time for a given framerate.
int64_t gavl_time_to_frames (int rate_num, int rate_den, gavl_time_t time)
 Convert a time to a number of video frames for a given framerate.
int64_t gavl_time_scale (int scale, gavl_time_t time)
 Convert a gavl time to a time scaled by another base.
gavl_time_t gavl_time_unscale (int scale, int64_t time)
 Convert a time scaled by another base to a gavl time.
int64_t gavl_time_rescale (int scale1, int scale2, int64_t time)
 Convert a time scaled by one base to a time scaled by another base.
void gavl_time_delay (gavl_time_t *time)
 Sleep for a specified time.
void gavl_time_prettyprint (gavl_time_t time, char str[GAVL_TIME_STRING_LEN])
 Convert a time to a string.

Define Documentation

#define GAVL_TIME_SCALE   1000000

Generic time scale: Microsecond tics

#define GAVL_TIME_UNDEFINED   0x8000000000000000LL

Unknown or undefined time

#define GAVL_TIME_MAX   0x7fffffffffffffffLL

Maximum possible value

#define gavl_seconds_to_time (  )     (gavl_time_t)((s)*(double)(GAVL_TIME_SCALE))

Convert seconds (as double) to a gavl time.

Parameters:
s Seconds as double
Returns:
Integer time scaled by GAVL_TIME_SCALE

#define gavl_time_to_seconds (  )     ((double)(t)/(double)(GAVL_TIME_SCALE))

Convert a gavl time to seconds (as double).

Parameters:
t Integer time scaled by GAVL_TIME_SCALE
Returns:
Seconds as double

#define GAVL_TIME_STRING_LEN   11

Length of the string passed to gavl_time_prettyprint.


Typedef Documentation

typedef int64_t gavl_time_t

Times in gavl are 64 bit signed integers.


Function Documentation

gavl_time_t gavl_samples_to_time ( int  samplerate,
int64_t  samples 
)

Convert a number of samples to a time for a given samplerate.

int64_t gavl_time_to_samples ( int  samplerate,
gavl_time_t  time 
)

Convert a time to a number of audio samples for a given samplerate.

Parameters:
samplerate Samplerate
time Time
Returns:
Number of audio samples

gavl_time_t gavl_frames_to_time ( int  rate_num,
int  rate_den,
int64_t  frames 
)

Convert a number of video frames to a time for a given framerate.

int64_t gavl_time_to_frames ( int  rate_num,
int  rate_den,
gavl_time_t  time 
)

Convert a time to a number of video frames for a given framerate.

Parameters:
rate_num Numerator of the framerate
rate_den Denominator of the framerate
time Time
Returns:
Number of frames

int64_t gavl_time_scale ( int  scale,
gavl_time_t  time 
)

Convert a gavl time to a time scaled by another base.

Parameters:
scale Time scale
time Time scaled by GAVL_TIME_SCALE
Returns:
Time scaled by scale

gavl_time_t gavl_time_unscale ( int  scale,
int64_t  time 
)

Convert a time scaled by another base to a gavl time.

Parameters:
scale Time scale
time Time scaled by scale
Returns:
Time scaled by GAVL_TIME_SCALE

int64_t gavl_time_rescale ( int  scale1,
int  scale2,
int64_t  time 
)

Convert a time scaled by one base to a time scaled by another base.

Parameters:
scale1 Initial time base
scale2 New time base
time Time scaled by scale1
Returns:
Time scaled by scale2

void gavl_time_delay ( gavl_time_t time  ) 

Sleep for a specified time.

Parameters:
time Time after which execution of the current thread is resumed

void gavl_time_prettyprint ( gavl_time_t  time,
char  str[GAVL_TIME_STRING_LEN] 
)

Convert a time to a string.

Parameters:
time Time to print
str String
This prints a gavl_time into ASCII string if a format suitable for player displays. The format is: -hhh:mm:ss


Generated on Wed Aug 12 20:38:36 2009 for gavl by  doxygen 1.5.9