Menu

Suggestion - Offer a choice of "Auto" levels for Jitter Buffer

2021-01-16
2021-01-26
  • Jonathan S Watson

    In the Settings / Jitter Buffer control, using Auto is recommended. The tooltip says "The network buffers of the local client and the remote server are set to a conservative value to minimize the audio dropout probability. To tweak the audio delay/latency it is recommended to disable the Auto setting and to lower the jitter buffer size"

    As a fairly sophisticated user, I find this advice difficult to follow. Sometimes I hear crackling which seems to come from dropouts. Is it worth manually controlling the buffer size? How could I pick the right size for the client? Ditto for the server? What if the dropouts come and go inconsistently? And while I'm calculating all this, I am also singing with the group. This method seems too difficult.

    What if the user had a level of control between auto and manual? Suppose the auto checkbox was a radio button with 4 states:
    1. Less dropout
    2. Intermediate
    3. Less delay
    4. Manual
    The auto algorithm would have to be enhanced to use three different values, rather than the current single value.
    Under this proposal, if dropouts seem high, the user could go to setting 1, while if there were few dropouts, the user could go to setting 3. Either way it's one click. That would require less thinking on-the-fly than trying to set buffer sizes manually.

     
  • Vincenzo

    Vincenzo - 2021-01-17

    What I am doing, and other people do, is to let the auto system reach stability - it takes some time to go down to some decent value. Then I disable Auto and lower both of 1 (or increase).

     
    • Jonathan S Watson

      Good idea.

      Another UI design would be to allow the user to set an offset, which would be added to the value calculated by Auto. So if Auto calculates 10 but your offset is -2, your buffer would be 8.

      I've had a situation where one person in a session is creating dropouts or similar network-induced noise, and it seems to help if I push my Local Buffer to the max (20 I think). Anybody else had a similar experience?