alsa sink latency - how to account for startup delay

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

 



On 22.03.2016 12:57, Georg Chini wrote:
> On 22.03.2016 12:51, Tanu Kaskinen wrote:
>> On Tue, 2016-03-22 at 12:33 +0100, Georg Chini wrote:
>>> On 22.03.2016 12:20, Tanu Kaskinen wrote:
>>>> On Tue, 2016-03-22 at 10:11 +0100, Georg Chini wrote:
>>>>> Hi,
>>>>>
>>>>> when a sink is started, there is some delay before the first 
>>>>> sample is
>>>>> really played.
>>>>> This delay is a constant part of the sink latency that will be always
>>>>> present, so the
>>>>> minimum sink latency cannot go below that start delay.
>>>>> Would it be acceptable to adjust the latency range for the device 
>>>>> after
>>>>> each unsuspend
>>>>> to reflect that?
>>>>> USB devices (those I have access to) for example have a startup 
>>>>> delay in
>>>>> the range of
>>>>> 10ms, but have a latency range that starts at 0.5ms which does not 
>>>>> make
>>>>> a lot of sense
>>>>> in my opinion.
>>>> I don't understand why the startup delay would limit the minimum
>>>> latency once the stream is flowing. Imagine a sound card that is
>>>> powered by a nuclear power plant. I don't know how long it takes to
>>>> start a nuclear power plant, but let's say it takes a couple of days.
>>>> Now the sound card startup delay is a couple of days, but there's no
>>>> reason that the audio latency has to be a couple of days once the 
>>>> power
>>>> plant is running. Where would all that audio be buffered anyway?
>>>>
>>> Hi Tanu,
>>>
>>> you are wrong.
>> I don't believe you :)
> Look at the code of alsa-sink. It never drops samples. The only way to 
> compensate
> for the startup delay would be to drop audio as long as the sink is 
> not yet playing,
> but that is not done. I could try to implement that however and then 
> you would be
> right, but with the current code at least for the alsa-sink the 
> startup delay will persist.
In fact, the first data is pushed to the sound card even before 
snd_pcm_start(), so
dropping audio seems to be difficult. We would have to feed silence to 
the card until
we are sure it is playing and drop audio during that period.


[Index of Archives]     [Linux Audio Users]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux