Lines Matching defs:packets

41 - Linked list structure for holding the packets instead of the current fixed-size array
67 #define SPEEX_JITTER_MAX_BUFFER_SIZE 200 /**< Maximum number of packets in jitter buffer */
82 /** Buffer that keeps the time of arrival of the latest packets */
86 spx_int32_t timing[MAX_TIMINGS]; /**< Sorted list of all timings ("latest" packets first) */
87 spx_int16_t counts[MAX_TIMINGS]; /**< Order the packets were put in (will be used for short-term estimate) */
145 JitterBufferPacket packets[SPEEX_JITTER_MAX_BUFFER_SIZE]; /**< Packets stored in the buffer */
162 int max_late_rate; /**< Absolute maximum amount of late packets tolerable (in percent) */
163 int latency_tradeoff; /**< Latency equivalent of losing one percent of packets */
164 int auto_tradeoff; /**< Latency equivalent of losing one percent of packets (automatic default) */
166 int lost_count; /**< Number of consecutive lost packets */
209 /* Pick the TOP_DELAY "latest" packets (doesn't need to actually be late
280 jitter->packets[i].data=NULL;
302 if (jitter->packets[i].data)
305 jitter->destroy(jitter->packets[i].data);
307 speex_free(jitter->packets[i].data);
308 jitter->packets[i].data = NULL;
374 /* Cleanup buffer (remove old packets that weren't played) */
380 if (jitter->packets[i].data && LE32(jitter->packets[i].timestamp + jitter->packets[i].span, jitter->pointer_timestamp))
384 jitter->destroy(jitter->packets[i].data);
386 speex_free(jitter->packets[i].data);
387 jitter->packets[i].data = NULL;
416 if (jitter->packets[i].data==NULL)
423 int earliest=jitter->packets[0].timestamp;
427 if (!jitter->packets[i].data || LT32(jitter->packets[j].timestamp,earliest))
429 earliest = jitter->packets[j].timestamp;
434 jitter->destroy(jitter->packets[i].data);
436 speex_free(jitter->packets[i].data);
437 jitter->packets[i].data=NULL;
444 jitter->packets[i].data = packet->data;
446 jitter->packets[i].data=(char*)speex_alloc(packet->len);
448 jitter->packets[i].data[j]=packet->data[j];
450 jitter->packets[i].timestamp=packet->timestamp;
451 jitter->packets[i].span=packet->span;
452 jitter->packets[i].len=packet->len;
453 jitter->packets[i].sequence=packet->sequence;
454 jitter->packets[i].user_data=packet->user_data;
483 if (jitter->packets[i].data && (!found || LT32(jitter->packets[i].timestamp,oldest)))
485 oldest = jitter->packets[i].timestamp;
526 if (jitter->packets[i].data && jitter->packets[i].timestamp==jitter->pointer_timestamp && GE32(jitter->packets[i].timestamp+jitter->packets[i].span,jitter->pointer_timestamp+desired_span))
535 if (jitter->packets[i].data && LE32(jitter->packets[i].timestamp, jitter->pointer_timestamp) && GE32(jitter->packets[i].timestamp+jitter->packets[i].span,jitter->pointer_timestamp+desired_span))
545 if (jitter->packets[i].data && LE32(jitter->packets[i].timestamp, jitter->pointer_timestamp) && GT32(jitter->packets[i].timestamp+jitter->packets[i].span,jitter->pointer_timestamp))
560 if (jitter->packets[i].data && LT32(jitter->packets[i].timestamp,jitter->pointer_timestamp+desired_span) && GE32(jitter->packets[i].timestamp,jitter->pointer_timestamp))
562 if (!found || LT32(jitter->packets[i].timestamp,best_time) || (jitter->packets[i].timestamp==best_time && GT32(jitter->packets[i].span,best_span)))
564 best_time = jitter->packets[i].timestamp;
565 best_span = jitter->packets[i].span;
575 /*fprintf (stderr, "incomplete: %d %d %d %d\n", jitter->packets[i].timestamp, jitter->pointer_timestamp, chunk_size, jitter->packets[i].span);*/
590 update_timings(jitter, ((spx_int32_t)jitter->packets[i].timestamp) - ((spx_int32_t)jitter->arrival[i]) - jitter->buffer_margin);
597 packet->data = jitter->packets[i].data;
598 packet->len = jitter->packets[i].len;
600 if (jitter->packets[i].len > packet->len)
602 speex_warning_int("jitter_buffer_get(): packet too large to fit. Size is", jitter->packets[i].len);
604 packet->len = jitter->packets[i].len;
607 packet->data[j] = jitter->packets[i].data[j];
609 speex_free(jitter->packets[i].data);
611 jitter->packets[i].data = NULL;
613 offset = (spx_int32_t)jitter->packets[i].timestamp-(spx_int32_t)jitter->pointer_timestamp;
619 packet->timestamp = jitter->packets[i].timestamp;
622 packet->span = jitter->packets[i].span;
623 packet->sequence = jitter->packets[i].sequence;
624 packet->user_data = jitter->packets[i].user_data;
626 jitter->pointer_timestamp = jitter->packets[i].timestamp+jitter->packets[i].span;
685 if (jitter->packets[i].data && jitter->packets[i].timestamp==jitter->last_returned_timestamp)
691 packet->len = jitter->packets[i].len;
694 packet->data = jitter->packets[i].data;
697 packet->data[j] = jitter->packets[i].data[j];
699 speex_free(jitter->packets[i].data);
701 jitter->packets[i].data = NULL;
702 packet->timestamp = jitter->packets[i].timestamp;
703 packet->span = jitter->packets[i].span;
704 packet->sequence = jitter->packets[i].sequence;
705 packet->user_data = jitter->packets[i].user_data;
798 if (jitter->packets[i].data && LE32(jitter->pointer_timestamp, jitter->packets[i].timestamp))