• Pierre-Louis Bossart's avatar
    ALSA: core: selection of audio_tstamp type and accuracy reports · 229d0430
    Pierre-Louis Bossart authored
    Audio timestamps can be extracted from sample counters, wall clocks,
    PHC clocks (Ethernet AVB), on-demand synchronized snapshots. This
    patch provides the ability to report timestamping capabilities, select
    timestamp types and retrieve timestamp accuracy, if supported.
    Details can be found in Documentations/sound/alsa/timestamping.txt
    
    This functionality is introduced by reclaiming the reserved_aligned
    field introduced by commit9c7066ae
    in snd_pcm_status to provide userspace with selection/query capabilities.
    Additional driver_tstamp and audio_tstamp_accuracy fields are also added.
    
    snd_pcm_mmap_status remains a read-only structure with only
    the audio timestamp value accessible from user space. The selection
    of audio timestamp type is done through snd_pcm_status only
    
    This commit does not impact ABI and does not impact the default
    behavior. By default audio timestamp is aligned with hw_pointer and
    reports the DMA position. Backwards compatibility is handled by using
    the HDAudio wall clock for playback and the hw_ptr for all other
    cases.
    
    For timestamp selection a new STATUS_EXT ioctl is introduced with
    read/write parameters. Alsa-lib will be modified to make use of
    STATUS_EXT.
    Signed-off-by: default avatarPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
    Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
    229d0430
timestamping.txt 10.5 KB