|
void * | RTPCreateSequencingArray (U32BIT fec_layer) |
| Creates a sequence queue for holding RTP packets as they arrive from the network. The sequence number for each RTP packet is used to find the position for the packet in this sequence queue. Therefore, RTP packets in this queue will be in the order that they were sent from the server. FEC processing will be used while the RTP packets remain in this queue. More...
|
|
void | RTPDestroySequencingArray (void *handle) |
| Destroys sequence queue created by RTPCreateSequencingArray, freeing all RTP packets still in the queue. More...
|
|
void * | RTPCreatePlayoutQueue (U32BIT low_threshold, U32BIT high_threshold) |
| Creates a queue for holding RTP packets. The queue has low and high thresholds and no packets can be removed from it initially until the time period is greater than or equal to the high threshold. If the queue time difference drops below the low threshold then removing packets from the queue will be paused until the level has returned to the high threshold value again. If the number of buffered bytes goes above the max buffer size, then the packet won't be added. If max_size is 0 then the queue size isn't limited and RTP packets will always be added. More...
|
|
void | RTPDeletePlayoutQueue (void *handle) |
| Deletes a queue created by RTPCreatePlayoutQueue, freeing all RTP packets still on the queue. More...
|
|
void | RTPConnectSeqArrayToPlayoutQueue (void *seq_array_hdl, void *queue_hdl) |
| Connect sequencing array to a playout queue created by RTPCreatePlayoutQueue This will allow sequencing array to add to the playout queue. More...
|
|
void * | RTPAllocateMedia (U8BIT **buffer, U16BIT data_size) |
| Allocates an RTP packet structure including the buffer for the RTP packet. More...
|
|
void * | RTPAllocateFEC (U8BIT **buffer, U16BIT buff_size) |
| Allocates an FEC packet including the buffer for the RTP packet. More...
|
|
void | RTPFreePkt (void *handle) |
| Free an RTP packet allocated with RTPAllocateMedia or RTPAllocateFEC. More...
|
|
BOOLEAN | RTPInsertMedia (void *seq_array_hdl, void *rtp_packet_hdl, U16BIT buffer_bytes) |
| Insert RTP media packet to the sequencing array as long as the packet has matching SSRC. The packet is inserted in the array in position according bottom 11 bits of sequence number. More...
|
|
void | RTPParseCntl (void *seq_array_hdl, U8BIT *buffer, U16BIT buffer_bytes) |
| Parse RTCP packet - Sender Report, Source Description or Goodbye packet. More...
|
|
BOOLEAN | RTPInsertFec (void *seq_array_hdl, void *fec_packet_hdl, U16BIT buffer_len, BOOLEAN second_stream) |
| Inserts the RTP packet to the sequencing array as long as the packet has matching SSRC. The packet is inserted in the array in position according bottom 11 bits of sequence number. More...
|
|
void * | RTPRemoveQueueItem (void *queue_handle, S_ITEM_INFO *info) |
| Removes next queue item, but the item isn't freed. The queue item is returned with info for buffer pointer, buffer size, timestamp and received clock time This function blocks until the minimum amount of data is present in the queue's buffer. More...
|
|
void | RTPUnpauseQueue (void *queue_handle) |
| Unpauses the queue even if the number of time difference is less than the low threshold. Note that if a call is made to RTPRemoveQueueItem after this function is called and the time difference is less than the low threshold then the queue will be paused again. More...
|
|
DVB-IPTV RTP queue manager.
- Date
- July 2020
void* RTPCreatePlayoutQueue |
( |
U32BIT |
low_threshold, |
|
|
U32BIT |
high_threshold |
|
) |
| |
Creates a queue for holding RTP packets. The queue has low and high thresholds and no packets can be removed from it initially until the time period is greater than or equal to the high threshold. If the queue time difference drops below the low threshold then removing packets from the queue will be paused until the level has returned to the high threshold value again. If the number of buffered bytes goes above the max buffer size, then the packet won't be added. If max_size is 0 then the queue size isn't limited and RTP packets will always be added.
- Parameters
-
low_threshold | Threshold value that pauses removing items from the queue. |
high_threshold | Threshold value that will cause the queue to be unpaused. |
- Returns
- Queue handle, or NULL if queue can't be created
Creates a queue for holding RTP packets. The queue has low and high thresholds and no packets can be removed from it initially until the time period is greater than or equal to the high threshold. If the queue time difference drops below the low threshold then removing packets from the queue will be paused until the level has returned to the high threshold value again. If the number of buffered bytes goes above the max buffer size, then the packet won't be added. If max_size is 0 then the queue size isn't limited and RTP packets will always be added.
- Parameters
-
low_threshold | Threshold value that pauses removing items from the queue. |
high_threshold | Threshold value that will cause the queue to be unpaused. |
- Returns
- Queue handle, or NULL if queue can't be created
void* RTPCreateSequencingArray |
( |
U32BIT |
fec_layer | ) |
|
Creates a sequence queue for holding RTP packets as they arrive from the network. The sequence number for each RTP packet is used to find the position for the packet in this sequence queue. Therefore, RTP packets in this queue will be in the order that they were sent from the server. FEC processing will be used while the RTP packets remain in this queue.
- Returns
- Queue handle, or NULL if queue can't be created
Creates a sequence queue for holding RTP packets as they arrive from the network. The sequence number for each RTP packet is used to find the position for the packet in this sequence queue. Therefore, RTP packets in this queue will be in the order that they were sent from the server. FEC processing will be used while the RTP packets remain in this queue.
- Returns
- Queue handle, or NULL if queue can't be created