Jitter Buffer Sizing in Chrome

1,965 views
Skip to first unread message

Ben Weekes

unread,
Sep 28, 2015, 4:54:34 PM9/28/15
to discuss-webrtc
Hi,

When Chrome receives audio and video it buffers the incoming audio and video in order to allow for a volatility in packet latency i.e. packets arriving in clusters rather than smoothly. This dynamic buffer introduces a latency into the call but allows for smoother audio and video.

However, I feel it is important to control the maximum size of this jitter buffer through javascript (or even SDP) because different applications have different priorities. For example, it might be preferable to have audio played even if its quite late (up to 1000ms of latency say) or the use-case might dictate that a only a maximum of 40ms is acceptable e.g. where a users is controlling a game being rendered in the server. I think the current maximum jitter buffer in Chrome is around 250ms. Is it possible to configure it? Any other thoughts?

Thanks

Ben


Christoffer Jansson

unread,
Nov 9, 2015, 5:46:55 AM11/9/15
to discuss-webrtc
Hi,

It is currently not possible to control the jitter buffer size, see this post for an answer from Stefan.

If you want to reduce audio latency you can turn off audio processing, however be aware that you will have issues with echo, background noise and stereo channels will be separated (if a stereo mic is used), i.e. the audio is basically untouched. (the audio processing module muxes stereo to mono regardless of input before processing.)

/Chris

bl...@webrtc.org

unread,
Nov 10, 2015, 2:07:11 PM11/10/15
to discuss-webrtc, Henrik Lundin
+henrik.lundin

Olivier BERTHONNEAU

unread,
Mar 21, 2018, 11:02:40 PM3/21/18
to discuss-webrtc
We are now in 2018.
Is there still no way to control the jitter size ?

Nam Duong

unread,
Jul 8, 2020, 2:40:46 AM7/8/20
to discuss-webrtc
No yet, 

- Nam from 2020.

Sean DuBois

unread,
Jul 8, 2020, 3:03:34 AM7/8/20
to discuss...@googlegroups.com
Not exactly what you want, but playoutDelay[0] is useful if you are
trying to reduce latency.

You will be clamped by 'minimum allowed delay', but better then nothing
:)

[0] https://w3c.github.io/webrtc-extensions/#attributes-1

On Tue, Jul 07, 2020 at 06:15:21AM -0700, Nam Duong wrote:
> No yet,
>
> - Nam from 2020.
>
> On Thursday, March 22, 2018 at 2:02:40 PM UTC+11, Olivier BERTHONNEAU wrote:
> >
> > We are now in 2018.
> > Is there still no way to control the jitter size ?
> >
> > Le mardi 10 novembre 2015 12:07:11 UTC-7, Niklas Blum a écrit :
> >>
> >> +henrik.lundin
> >>
> >> On Monday, November 9, 2015 at 11:46:55 AM UTC+1, Christoffer Jansson
> >> wrote:
> >>>
> >>> Hi,
> >>>
> >>> It is currently not possible to control the jitter buffer size, see this
> >>> post
> >>> <https://groups.google.com/forum/#!searchin/discuss-webrtc/jitter/discuss-webrtc/TjN8fbA53RY/UxQg149_CgAJ> for
> >>> an answer from Stefan.
> >>>
> >>> If you want to reduce audio latency you can turn off audio processing,
> >>> however be aware that you will have issues with echo, background noise and
> >>> stereo channels will be separated (if a stereo mic is used), i.e. the audio
> >>> is basically untouched. (the audio processing module muxes stereo to mono
> >>> regardless of input before processing.)
> >>>
> >>> /Chris
> >>>
> >>> On Monday, September 28, 2015 at 10:54:34 PM UTC+2, Ben Weekes wrote:
> >>>>
> >>>> Hi,
> >>>>
> >>>> When Chrome receives audio and video it buffers the incoming audio and
> >>>> video in order to allow for a volatility in packet latency i.e. packets
> >>>> arriving in clusters rather than smoothly. This dynamic buffer introduces a
> >>>> latency into the call but allows for smoother audio and video.
> >>>>
> >>>> However, I feel it is important to control the maximum size of this
> >>>> jitter buffer through javascript (or even SDP) because different
> >>>> applications have different priorities. For example, it might be preferable
> >>>> to have audio played even if its quite late (up to 1000ms of latency say)
> >>>> or the use-case might dictate that a only a maximum of 40ms is acceptable
> >>>> e.g. where a users is controlling a game being rendered in the server. I
> >>>> think the current maximum jitter buffer in Chrome is around 250ms. Is it
> >>>> possible to configure it? Any other thoughts?
> >>>>
> >>>> Thanks
> >>>>
> >>>> Ben
> >>>>
> >>>>
> >>>>
>
> --
>
> ---
> You received this message because you are subscribed to the Google Groups "discuss-webrtc" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to discuss-webrt...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/discuss-webrtc/fa062907-83dc-4227-bca9-35670a00e054o%40googlegroups.com.

Reply all
Reply to author
Forward
0 new messages