Re: Timing Info

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Jun 13, 2010 at 3:47 PM, Paul Dugas <paul@xxxxxxxxxxxxxxxxxxxx> wrote:
> On Sun, Jun 13, 2010 at 10:10 AM, Clemens Ladisch <clemens@xxxxxxxxxx>
> wrote:
>>
>> Paul Dugas wrote:
>> > What's the "timestamp mode".  Does it generate a timestamp each
>> > period?  How would I access that timestamp?
>>
>> Set SND_PCM_TSTAMP_ENABLE to generate a timestamp whenever the hardware
>> position is updated.  Call snd_pcm_status to read the position and the
>> corresponding timestamp.
>
> So, does setting SND_PCM_TSTAMP_ENABLE change the meaning of the tstamp
> field in the status?  I believe I read somewhere that with TSTAMP_NONE,
> tstamp was set to "now" when readi() was called.  Does it change to meaning
> " the timestamp od the first frame returned"?  If not, where do I look?

I spun up a test program but I'm not seeing what I expect.  I'm still
missing something.

I'm calling snd_pcm_status() and snd_pcm_status_dump() before each
snd_pcm_readi() call.  I see the "trigger_time" not changing (after
the first readi call).  The "tsamp" isn't increasing in consistent
steps.  I expect it to be consistently 10,666 usecs per the
"period_time" value below.

The PCM device is configured like so:
  >  Plug PCM: Linear Integer <-> Linear Float conversion PCM (S32_LE)
  >  Its setup is:
  >    stream       : CAPTURE
  >    access       : RW_INTERLEAVED
  >    format       : FLOAT64_LE
  >    subformat    : STD
  >    channels     : 8
  >    rate         : 96000
  >    exact rate   : 96000 (96000/1)
  >    msbits       : 64
  >    buffer_size  : 32768
  >    period_size  : 1024
  >    period_time  : 10666
  >    tstamp_mode  : ENABLE
  >    period_step  : 1
  >    avail_min    : 1024
  >    period_event : 0
  >    start_threshold  : 1
  >    stop_threshold   : 32768
  >    silence_threshold: 0
  >    silence_size : 0
  >    boundary     : 4611686018427387904
  >  Slave: Route conversion PCM (sformat=S32_LE)
  >    Transformation table:
  >      0 <- 0
  >      1 <- 1
  >      2 <- none
  >      3 <- none
  >      4 <- none
  >      5 <- none
  >      6 <- none
  >      7 <- none
  >  Its setup is:
  >    stream       : CAPTURE
  >    access       : MMAP_INTERLEAVED
  >    format       : S32_LE
  >    subformat    : STD
  >    channels     : 8
  >    rate         : 96000
  >    exact rate   : 96000 (96000/1)
  >    msbits       : 32
  >    buffer_size  : 32768
  >    period_size  : 1024
  >    period_time  : 10666
  >    tstamp_mode  : ENABLE
  >    period_step  : 1
  >    avail_min    : 1024
  >    period_event : 0
  >    start_threshold  : 1
  >    stop_threshold   : 32768
  >    silence_threshold: 0
  >    silence_size : 0
  >    boundary     : 4611686018427387904
  >  Slave: Hardware PCM card 0 'HDA Intel' device 0 subdevice 0
  >  Its setup is:
  >    stream       : CAPTURE
  >    access       : MMAP_INTERLEAVED
  >    format       : S32_LE
  >    subformat    : STD
  >    channels     : 2
  >    rate         : 96000
  >    exact rate   : 96000 (96000/1)
  >    msbits       : 32
  >    buffer_size  : 32768
  >    period_size  : 1024
  >    period_time  : 10666
  >    tstamp_mode  : ENABLE
  >    period_step  : 1
  >    avail_min    : 1024
  >    period_event : 0
  >    start_threshold  : 1
  >    stop_threshold   : 32768
  >    silence_threshold: 0
  >    silence_size : 0
  >    boundary     : 4611686018427387904
  >    appl_ptr     : 0
  >    hw_ptr       : 0

Hmmm....   Not sure what to try next.

Paul
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel



[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux