diff options
author | Olivier CrĂȘte <olivier.crete@collabora.com> | 2014-11-29 18:35:42 -0500 |
---|---|---|
committer | Olivier CrĂȘte <olivier.crete@collabora.com> | 2014-11-29 18:38:12 -0500 |
commit | ccac1f8c0bcf2b87ffbda26bac6b6de0c8f37814 (patch) | |
tree | 669da24888a3a40dae6cb9c06033e7a56b53fe75 | |
parent | 023a1637d941bfa22377c89287fb45edcaab4051 (diff) |
rtprtxreceive: Use offset when copying header
The header is not always at the start of the packet, so we need to compute
the offset first.
-rw-r--r-- | gst/rtpmanager/gstrtprtxreceive.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gst/rtpmanager/gstrtprtxreceive.c b/gst/rtpmanager/gstrtprtxreceive.c index 4ae4e6508..32933a1f7 100644 --- a/gst/rtpmanager/gstrtprtxreceive.c +++ b/gst/rtpmanager/gstrtprtxreceive.c @@ -427,12 +427,14 @@ _gst_rtp_buffer_new_from_rtx (GstRTPBuffer * rtp, guint32 ssrc1, guint payload_len = 0; /* copy fixed header */ - mem = gst_memory_copy (rtp->map[0].memory, 0, rtp->size[0]); + mem = gst_memory_copy (rtp->map[0].memory, + (guint8 *) rtp->data[0] - rtp->map[0].data, rtp->size[0]); gst_buffer_append_memory (new_buffer, mem); /* copy extension if any */ if (rtp->size[1]) { - mem = gst_memory_copy (rtp->map[1].memory, 0, rtp->size[1]); + mem = gst_memory_copy (rtp->map[1].memory, + (guint8 *) rtp->data[1] - rtp->map[1].data, rtp->size[1]); gst_buffer_append_memory (new_buffer, mem); } |