SND_PCM_TSTAMP_LAST = SND_PCM_TSTAMP_ENABLE
} snd_pcm_tstamp_t;
+/** PCM timestamp type */
typedef enum _snd_pcm_tstamp_type {
SND_PCM_TSTAMP_TYPE_GETTIMEOFDAY = 0, /**< gettimeofday equivalent */
SND_PCM_TSTAMP_TYPE_MONOTONIC, /**< posix_clock_monotonic equivalent */
SND_PCM_TSTAMP_TYPE_LAST = SND_PCM_TSTAMP_TYPE_MONOTONIC_RAW,
} snd_pcm_tstamp_type_t;
+/** PCM audio timestamp type */
typedef enum _snd_pcm_audio_tstamp_type {
/**
* first definition for backwards compatibility only,
SND_PCM_AUDIO_TSTAMP_TYPE_LAST = SND_PCM_AUDIO_TSTAMP_TYPE_LINK_SYNCHRONIZED
} snd_pcm_audio_tstamp_type_t;
+/** PCM audio timestamp config */
typedef struct _snd_pcm_audio_tstamp_config {
/* 5 of max 16 bits used */
- unsigned int type_requested:4;
- unsigned int report_delay:1; /* add total delay to A/D or D/A */
+ unsigned int type_requested:4; /**< requested audio tstamp type */
+ unsigned int report_delay:1; /**< add total delay to A/D or D/A */
} snd_pcm_audio_tstamp_config_t;
+/** PCM audio timestamp report */
typedef struct _snd_pcm_audio_tstamp_report {
/* 6 of max 16 bits used for bit-fields */
- /* for backwards compatibility */
- unsigned int valid:1;
+ unsigned int valid:1; /**< for backwards compatibility */
+ unsigned int actual_type:4; /**< actual type if hardware could not support requested timestamp */
- /* actual type if hardware could not support requested timestamp */
- unsigned int actual_type:4;
-
- /* accuracy represented in ns units */
- unsigned int accuracy_report:1; /* 0 if accuracy unknown, 1 if accuracy field is valid */
- unsigned int accuracy; /* up to 4.29s, will be packed in separate field */
+ unsigned int accuracy_report:1; /**< 0 if accuracy unknown, 1 if accuracy field is valid */
+ unsigned int accuracy; /**< up to 4.29s in ns units, will be packed in separate field */
} snd_pcm_audio_tstamp_report_t;
/** Unsigned frames quantity */
* \param dst_size size in frames of the destination buffer
* \param src_channels source areas specification (one for each channel)
* \param src_offset offset in frames inside source area
- * \param dst_size size in frames of the source buffer
+ * \param src_size size in frames of the source buffer
* \param channels channels count
* \param frames frames to copy
* \param format PCM sample format
/**
* \brief Get audio_tstamp_report from a PCM status container
* \param obj pointer to #snd_pcm_status_t
- * \param audio_tstamp_report Pointer to returned report (valid fields are accuracy and type)
+ * \param audio_tstamp_report Pointer to returned report
*/
void snd_pcm_status_get_audio_htstamp_report(const snd_pcm_status_t *obj,
snd_pcm_audio_tstamp_report_t *audio_tstamp_report)
/**
* \brief set audio_tstamp_config from a PCM status container
* \param obj pointer to #snd_pcm_status_t
- * \param audio_tstamp_config Pointer to config (valid fields are type and report_analog_delay)
+ * \param audio_tstamp_config Pointer to config (valid fields are type_requested and report_delay)
*/
void snd_pcm_status_set_audio_htstamp_config(snd_pcm_status_t *obj,
snd_pcm_audio_tstamp_config_t *audio_tstamp_config)