diff options
Diffstat (limited to 'jitterbuf.c')
-rwxr-xr-x | jitterbuf.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/jitterbuf.c b/jitterbuf.c index 3bdd3b533..26d58cb6f 100755 --- a/jitterbuf.c +++ b/jitterbuf.c @@ -310,11 +310,16 @@ static void queue_put(jitterbuf *jb, void *data, int type, long ms, long ts) jb->frames = frame; frame->next = frame; frame->prev = frame; + } else if (ts < jb->frames->ts) { + frame->next = jb->frames; frame->prev = jb->frames->prev; frame->next->prev = frame; frame->prev->next = frame; + /* frame is out of order */ + jb->info.frames_ooo++; + jb->frames = frame; } else { p = jb->frames; |