Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
gst-plugins-good
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Labels
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Commits
Open sidebar
George Kiagiadakis
gst-plugins-good
Commits
28641e31
Commit
28641e31
authored
Sep 23, 2013
by
Wim Taymans
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
rtpjitterbuffer: add type to the item
So that the upper layer can know what data is contained in the item.
parent
479c7642
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
21 additions
and
10 deletions
+21
-10
gst/rtpmanager/gstrtpjitterbuffer.c
gst/rtpmanager/gstrtpjitterbuffer.c
+19
-10
gst/rtpmanager/rtpjitterbuffer.h
gst/rtpmanager/rtpjitterbuffer.h
+2
-0
No files found.
gst/rtpmanager/gstrtpjitterbuffer.c
View file @
28641e31
...
...
@@ -654,10 +654,26 @@ gst_rtp_jitter_buffer_init (GstRtpJitterBuffer * jitterbuffer)
GST_OBJECT_FLAG_SET
(
jitterbuffer
,
GST_ELEMENT_FLAG_PROVIDE_CLOCK
);
}
#define ITEM_TYPE_BUFFER 0
#define ITEM_TYPE_LOST 1
static
RTPJitterBufferItem
*
alloc_item
(
void
)
alloc_item
(
gpointer
data
,
guint
type
,
GstClockTime
dts
,
GstClockTime
pts
,
guint
seqnum
,
guint
rtptime
)
{
return
g_slice_new
(
RTPJitterBufferItem
);
RTPJitterBufferItem
*
item
;
item
=
g_slice_new
(
RTPJitterBufferItem
);
item
->
data
=
data
;
item
->
next
=
NULL
;
item
->
prev
=
NULL
;
item
->
type
=
type
;
item
->
dts
=
dts
;
item
->
pts
=
pts
;
item
->
seqnum
=
seqnum
;
item
->
rtptime
=
rtptime
;
return
item
;
}
static
void
...
...
@@ -2013,14 +2029,7 @@ gst_rtp_jitter_buffer_chain (GstPad * pad, GstObject * parent,
}
}
item
=
alloc_item
();
item
->
data
=
buffer
;
item
->
next
=
NULL
;
item
->
prev
=
NULL
;
item
->
dts
=
dts
;
item
->
pts
=
pts
;
item
->
seqnum
=
seqnum
;
item
->
rtptime
=
rtptime
;
item
=
alloc_item
(
buffer
,
ITEM_TYPE_BUFFER
,
dts
,
pts
,
seqnum
,
rtptime
);
/* now insert the packet into the queue in sorted order. This function returns
* FALSE if a packet with the same seqnum was already in the queue, meaning we
...
...
gst/rtpmanager/rtpjitterbuffer.h
View file @
28641e31
...
...
@@ -105,6 +105,7 @@ struct _RTPJitterBufferClass {
* @data: the data of the item
* @next: pointer to next item
* @prev: pointer to previous item
* @type: the type of @data
* @dts: input DTS
* @pts: output PTS
* @seqnum: seqnum
...
...
@@ -116,6 +117,7 @@ struct _RTPJitterBufferItem {
gpointer
data
;
GList
*
next
;
GList
*
prev
;
guint
type
;
GstClockTime
dts
;
GstClockTime
pts
;
guint
seqnum
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment