Commit graph

342 commits

Author SHA1 Message Date
Wim Taymans 1968127650 rtp: Fix extension data support
Allocate header, payload and padding in separate memory blocks in
gst_rtp_buffer_allocate().
don't use part of the payload data as storage for the extension data but store
it in a separate memory block that can be enlarged when needed.
Rework the one and two-byte header extension to make it reserve space for the
extra extension first.
Fix RTP unit test. Don't map the complete buffer or make assumptions on the
memory layout of the underlaying implementation. We can now always add extension
data because we have a separate memory block for it.
2012-08-22 09:56:39 +02:00
Wim Taymans 2d6fd0f72d rtp: fix extension length calculation 2012-08-22 09:56:39 +02:00
Wim Taymans f548e58385 rtp: remove unused field 2012-08-22 09:56:39 +02:00
Andoni Morales Alastruey d2aebc7f94 rtpbuffer: use proper format for gsize 2012-08-08 17:41:19 +02:00
Wim Taymans 11a494d5c9 rtp: Add support for multiple memory blocks in RTP
Add support RTP buffers with multiple memory blocks. We allow one block for the
header, one for the extension data, N for data and one memory block for the
padding.
Remove the validate function, we validate now when we map because we need to
parse things in order to map multiple memory blocks.
2012-07-17 16:41:36 +02:00
Evan Nemerson f21c4667b9 rtp: add many missing annotations on RTP/RTCP buffer functions 2012-07-17 11:10:37 +02:00
Evan Nemerson 63579633f5 rtpbaseaudiopayload: add transfer annotation to get_adapter return 2012-07-17 11:10:04 +02:00
Edward Hervey 2817bdadc9 libs: Remove "Since" markers and minor doc fixups 2012-07-13 12:11:06 +02:00
Wim Taymans baa2fac2f8 audiopayload: disable broken bufferlist handling
The bufferlist handling is broken so make sure it is never enabled.
2012-06-06 16:40:24 +02:00
Sebastian Rasmussen b7b123964b gst-libs: make pkg-config get path to pkg-config dirs from configure
When --with-pkg-config-path is supplied to configure this path is now
explicitly propagated to pkg-config.

https://bugzilla.gnome.org/show_bug.cgi?id=673377
2012-05-05 23:26:20 +01:00
Sebastian Dröge 65307dd132 gst: Update versioning 2012-04-04 14:55:15 +02:00
Wim Taymans 296e1bf3dd rtpbuffer: removed old memory
Ensure writability of rtp buffer and remove old memory first
Fix some docs
2012-04-04 09:34:00 +02:00
Wim Taymans 6e9d28eef6 rtp: fix initializer 2012-04-02 11:05:38 +02:00
Wim Taymans 92f46c07fe rtpbuffer: keep more state
Prepare for the future, make it possible to map multiple buffer regions, like
the header and the payload.
2012-04-02 10:31:18 +02:00
Wim Taymans 9ef519d99a Improve buffer allocation of wrapped memory 2012-04-01 18:11:23 +02:00
Wim Taymans 345dc31f20 update for buffer api change 2012-03-30 18:15:30 +02:00
Mark Nauwelaerts 6039266c43 rtpbasepayload: plug caps leak 2012-03-29 17:15:43 +02:00
Wim Taymans df5253b22c update for memory api changes 2012-03-15 13:32:08 +01:00
Wim Taymans 28034226c6 update for memory api changes 2012-03-14 21:35:45 +01:00
Wim Taymans 37e940df83 rtpbasepay: add support for DTS and PTS 2012-03-13 18:15:04 +01:00
Wim Taymans 25137962ad fix for caps API changes 2012-03-11 19:04:41 +01:00
Wim Taymans 63f3f27164 update for new memory api 2012-02-22 02:05:24 +01:00
Olivier Crête cb044668d3 rtcpbuffer: Set the map.size to the current size of the RTCP packet
maxsize is the maximum size
2012-01-27 19:01:55 +01:00
Olivier Crête b993b8457d rtpcbuffer: To write inside a RTCP buffer, you must be able to read
So always require read
2012-01-27 19:01:55 +01:00
Olivier Crête 6b559a50fb rtcpbuffer: Return errors if the map mode doesn't match the actions 2012-01-27 19:01:55 +01:00
Olivier Crête ab359d36d5 rtcpbuffer: Don't try to modify read-only buffers 2012-01-27 19:01:55 +01:00
Wim Taymans e7575bc525 rtp: improve structures
Remove flags that is in the mapinfo now
2012-01-25 12:30:53 +01:00
Wim Taymans fcdc385aa1 port to new map API 2012-01-25 12:30:53 +01:00
Olivier Crête 1a592199e9 rtpbasepayload: Port to group-less GstBufferList 2012-01-25 11:55:02 +01:00
Wim Taymans d9ef75b799 rtcp: handle size update correctly
Do explicit resize to set the size of a buffer instead of setting a value in
unmap.
2012-01-19 15:20:01 +01:00
Wim Taymans 5872bcc33a Update for memory API changes 2012-01-19 12:15:18 +01:00
Sebastian Dröge dc8984d76c Merge branch 'master' into 0.11
Conflicts:
	gst-libs/gst/app/gstappsrc.c
	gst-libs/gst/audio/multichannel.h
	gst-libs/gst/video/videooverlay.c
	gst/playback/gstplaysink.c
	gst/playback/gststreamsynchronizer.c
	tests/check/Makefile.am
	win32/common/libgstvideo.def
2012-01-10 13:15:12 +01:00
Pascal Buhler 0febae7443 rtcpbuffer: prevent overflow of 16bit header length.
RTCP header can be  (2^16 + 1) * 4 bytes long, so when validating a bogus
packet it was possible to get a 16bit overflow resulting in a length of 0.
This would put the gst_rtcp_buffer_validate_data function in a endless loop.

https://bugzilla.gnome.org/show_bug.cgi?id=667313
2012-01-05 11:12:25 +00:00
Wim Taymans 6be9a67148 rtp: add INIT macros 2011-12-09 19:22:21 +01:00
Tim-Philipp Müller 54c5cd8c3f rtpbuffer: add GST_RTP_BUFFER_INIT to initialize RTP buffers on the stack
Fixes build of -good.
2011-12-09 15:03:41 +00:00
Edward Hervey ea0ed511f8 rtp: Initialize GstRTPBuffer before usage 2011-12-05 18:42:24 +01:00
Edward Hervey 94230af7a3 rtp: Don't forget to initialize GstRTPBuffer 2011-12-05 18:30:37 +01:00
Tim-Philipp Müller 177525f89f Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	gst-libs/gst/netbuffer/gstnetbuffer.c
	gst/ffmpegcolorspace/avcodec.h
	gst/ffmpegcolorspace/gstffmpegcodecmap.c
	gst/ffmpegcolorspace/imgconvert.c
	gst/ffmpegcolorspace/imgconvert_template.h
	gst/ffmpegcolorspace/mem.c
	gst/playback/README
	gst/playback/gstplaybasebin.c
	gst/playback/gstplaybasebin.h
	gst/playback/gstplaybin.c
	sys/v4l/v4lmjpegsrc_calls.c
	sys/v4l/videodev_mjpeg.h
	tests/check/elements/gnomevfssink.c
2011-12-02 11:10:17 +00:00
Piotr Fusik 14644457b0 various: typo fixes
Fix typos in code and docs. Fixes. #658984
2011-12-02 12:03:27 +01:00
Edward Hervey d94535832b gst-libs: Add --warn-all to introspection scanner
And let's get fixing those docs :)
2011-11-25 10:31:38 +01:00
Wim Taymans 7afdff3575 Merge branch 'master' into 0.11
Conflicts:
	gst-libs/gst/audio/gstaudiodecoder.c
2011-11-17 17:07:41 +01:00
Wim Taymans e302833e65 add parent to pad functions 2011-11-17 12:48:25 +01:00
Wim Taymans 2202511e77 add parent to query function 2011-11-16 17:25:17 +01:00
Wim Taymans 026ec68f75 _peer_get_caps() -> _peer_query_caps() 2011-11-15 18:04:17 +01:00
Wim Taymans ab9ffa93f5 change getcaps to query
Add sink and src event functions in rtpbasepayload
Add query vmethod to rtpbasepayload.
2011-11-15 18:04:16 +01:00
Olivier Crête 82827df405 rtcpbuffer: Add feedback message types from RFC 5104
These are Codec Control messages (CCM)

https://bugzilla.gnome.org/show_bug.cgi?id=658419
2011-11-14 12:24:16 +01:00
Wim Taymans fc04bcecbe fix docs 2011-11-14 10:46:56 +01:00
Wim Taymans 107d5a3d05 rtp: fix headers
indent, add padding, remove old abidata
2011-11-11 19:21:09 +01:00
Wim Taymans 5f1312b5d8 rename files to match object names 2011-11-11 12:32:23 +01:00
Wim Taymans ccf511a5d4 rename BaseRTP -> RTPBase 2011-11-11 12:24:08 +01:00