On 28.03.2016 16:45, Pierre-Louis Bossart wrote:
On 3/28/16 9:30 AM, Georg Chini wrote:
On 28.03.2016 16:27, Pierre-Louis Bossart wrote:
On 3/20/16 2:24 PM, Georg Chini wrote:
On 20.03.2016 19:13, Alexander E. Patrakov wrote:
20.03.2016 22:41, Georg Chini пишет:
Hello,

I am still working on module-loopback and hit a problem that I cannot
explain.
When running a HDA card with long latency (333ms) I see that the
resulting
latency is not stable but varies around 300 usec. What is worse, the
changes
in latency are not even reported, module-loopback sees a completely
stable
value ( +/-10 usec).
My setup: I have a bitscope dual channel USB oscilloscope attached to
another
machine. This device also has a function generator that I set to 1kHz
rectangle.
The signal is input to the HDA card and fed to the output of the same
card via
module-loopback. Input and output signal are measured using the
oscilloscope.
The movement of the edge of the output signal now shows the "latency
jitter"
which can be made visible by using the overlay mode of the
oscilloscope.

The result for HDA (module-loopback running with 500ms adjust time
and 1s
latency) is shown at http://georg.chini.tk/hda_333ms_3.png. Some of
the
original
input signal is somehow fed into the output signal, don't know where
this happens,
so please ignore it as it has no impact on the result.

No idea either, just some blind pokes...

1. Are you using the trivial resampler? Does anything change if you
change the resampler type?
2. Do you get the same trace with a "weird" latency (not something
that can be derived from one second by multiplication or division by
small factors)? E.g. something like 318 ms.

To me, it looks like something is sometimes creating an
off-by-one-sample error when copying the data. Which is exactly the
job of the trivial resampler, that's why the question.

why is a resampler needed when doing a loopback on the same card?

The resampler is there for the more general case when the two cards
are different. I just have no system with two HDA cards, so I have to
do my tests HDA -> HDA on the same card.

Understood, the point was whether you can remove this resampler to look for the root cause.


I think I can't because it is an integral part of module-loopback. But I see the same issue with different resamplers and even with Jack and zita-aj bridge. At low latencies there is only a "double line" with about 7.5 usec distance between the lines, but it is still there. It also looks like it does not depend on the device latency but on the overall latency of module-loopback. I tested 3 seconds with source/sink set to 20 ms
and it's the same pattern.
_______________________________________________
pulseaudio-discuss mailing list
pulseaudio-discuss@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss

Reply via email to