<p><br>
><br>
> Of course, this only applies to ALSA devices that can't use tsched, as<br>
> well as to OSS on more exotic platforms.<br>
><br>
> This is needed for compatibility with Wine games that use DirectSound8<br>
> on distributions such as Arch Linux who don't accept the unofficial<br>
> winepulse patch. The reason is that Wine DirectSound8 emulation requests<br>
> a period of 10 ms and expects it to work for the purposes of timing. And<br>
> in fact, it cannot know (via ALSA API) that it is not going to work!<br>
><br>
> A known malware-free test application is Foobar2000 version 1.2. Later<br>
> versions no longer use DirectSound.<br>
><br>
> This issue is not going to be fixed on the Wine side, because the audio<br>
> subsystem in Wine is not really maintained, and the maintainer has<br>
> already privately expressed some negative thoughts about the state of<br>
> the linux audio ecosystem in general.<br>
><br>
> The correct solution (at least from the "isolate the clients from<br>
> hardware limitations as thoroughly as possible"</p>
<p>It is the hardware limitation affect the low latency,<br>
this mean that pulseaudio have to select the maximum of lowest latency of all the sinks / sources as default latency</p>
<p>viewpoint) would be to<br>
> consume audio from sink inputs using a timer if the actual sink does not<br>
> provide sufficiently small minreq. In other words, adapt tsched to BATCH<br>
> cards and drop non-tsched. But that's a whole project. So, as a stopgap<br>
> solution for running Wine games on e.g. USB audio (which is a topic that<br>
> pops up regularly on #pulseaudio IRC channel), let's reduce the default<br>
> fragment size to a value suitable for unpatched Wine.<br>
><br>
> Regarding the value: on my system, for mp3 playback through Foobar2000,<br>
> 8ms fragments work, 9ms fragments result in constant underruns.<br>
><br>
> Wine wiki recommends 5ms.<br>
><br>
> On devices that can use tsched, there is no problem.</p>
<p>><br>
> diff --git a/man/<a href="http://pulse-daemon.conf.5.xml.in">pulse-daemon.conf.5.xml.in</a>b/man/<a href="http://pulse-daemon.conf.5.xml.in">pulse-daemon.conf.5.xml.in</a><br>
> index 8bd076d..ff54435 100644<br>
> --- a/man/<a href="http://pulse-daemon.conf.5.xml.in">pulse-daemon.conf.5.xml.in</a><br>
> +++ b/man/<a href="http://pulse-daemon.conf.5.xml.in">pulse-daemon.conf.5.xml.in</a><br>
> @@ -463,8 +463,8 @@ USA.<br>
> </option><br>
> <option><br>
> <p><opt>default-fragment-size-msec=</opt>The duration of a<br>
> - single fragment. Defaults to 25ms (i.e. the total buffer is thus<br>
> - 100ms long).</p><br>
> + single fragment. Defaults to 5ms (i.e. the total buffer is thus<br>
> + 20ms long).</p><br>
> </option><br>
></p>
<p>Is it feasible to add an alternative parameter in fragment size since some soc driver does not support disable period wakep but dma brust sizes require 8 frames ?</p>
<p><a href="https://bugs.freedesktop.org/show_bug.cgi?id=84585">https://bugs.freedesktop.org/show_bug.cgi?id=84585</a></p>