On 28.03.2016 18:10, Georg Chini wrote: > 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. Further investigation showed that this is NOT a problem of module-loopback or any driver - the signal source is not stable enough for those long latencies and even at short latencies there is the occasional glitch. Sorry for the noise ...