Commit graph

738 commits

Author SHA1 Message Date
Marc Leeman
bab2f3c92b rtp: remove payload requirements from selected depayloaders
encoding name is required in the caps and is a better fit for autoplugging than
the pt value. Hardware manufacturers have a bad habit of skimming through RFCs
and in this case; use unassigned numbers for encoders instead of dynamic
numbers.

In essence, this patch will add support for a lot of Bosch hardware encoders
without breaking autoplugging.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=639292
2013-01-28 12:23:41 +01:00
Tim-Philipp Müller
9455a3aee1 rtpsbcpay: update some fields in the caps to their new name
and to match the parser. "mode" got renamed to "channel-mode"
and "allocation" to "allocation-method".
2013-01-16 10:19:36 +00:00
Tim-Philipp Müller
39ef892938 rtp: import rtpsbcpay from bluez and port to 1.0
Compiles, but not tested yet (sbc elements still need to be ported).

https://bugzilla.gnome.org/show_bug.cgi?id=690582
2013-01-10 12:43:50 +00:00
Marcel Holtmann
4196feb659 rtpsbcpay: Remove workaround for compiler warnings 2013-01-10 00:18:03 +00:00
Marcel Holtmann
fe79c60d74 rtpsbcpay: Add pragma based workaround for GStreamer warnings 2013-01-10 00:18:03 +00:00
Marcel Holtmann
08e95e7249 rtpsbcpay: Update copyright information 2013-01-10 00:15:36 +00:00
Marcel Holtmann
7fa03c0076 rtpsbcpay: Fix signed/unsigned comparison issue within GStreamer plugin 2013-01-10 00:15:35 +00:00
Marcel Holtmann
27a6b0abfe rtpsbcpay: Update copyright information 2013-01-10 00:15:35 +00:00
Marcel Holtmann
f890079aae rtpsbcpay: First attempt in fixing compiler warnings (still needs cleanup) 2013-01-10 00:15:35 +00:00
Johan Hedberg
7d4f846112 rtpsbcpay: More coding style fixes 2013-01-10 00:15:35 +00:00
Luiz Augusto von Dentz
151ad9b28d rtpsbcpay: Remove possible extra memcpy for gstreamer plugin. 2013-01-10 00:13:14 +00:00
Luiz Augusto von Dentz
69c8374b7c rtpsbcpay: Fix bug sending empty packages and remove a buffer copy. 2013-01-10 00:13:14 +00:00
Luiz Augusto von Dentz
7b3e4356ea rtpsbcpay: Fix runtime warnings of gstreamer plugin. 2013-01-10 00:13:14 +00:00
Luiz Augusto von Dentz
f74f061f3b rtpsbcpay: Update gstreamer plugin to use new sbc API. 2013-01-10 00:13:14 +00:00
Marcel Holtmann
b9be04f07b rtpsbcpay: Update copyright information 2013-01-10 00:13:14 +00:00
Luiz Augusto von Dentz
687400ecf4 rtpsbcpay: Fixes gstreamer caps and code cleanup. 2013-01-10 00:13:14 +00:00
Luiz Augusto von Dentz
a4f9624261 rtpsbcpay: Fix gtreamer payloader sending fragmented frames. 2013-01-10 00:13:14 +00:00
Luiz Augusto von Dentz
41e2f4f544 rtpsbcpay: Fix use of gstreamer plugin with rhythmbox and banshee and rtp timestamps. 2013-01-10 00:13:14 +00:00
Luiz Augusto von Dentz
96971cd323 rtpsbcpay: Make a2dpsink to act like a bin and split the payloader. 2013-01-10 00:13:14 +00:00
Jonas Holmberg
e12457f138 rtpjpegpay: handle width and height > 2040
If width or height is greater than 2040 set width and height to zero in
the rtp header and add x-dimensions to outcaps.

Solves #684955
2012-12-20 15:40:49 +01:00
Thijs Vermeir
de41376231 rtp: use appropriate printf format for gsize 2012-12-18 16:02:09 +01:00
Tim-Philipp Müller
bdf3c77828 gst_adapter_prev_timestamp -> gst_adapter_prev_pts
https://bugzilla.gnome.org/show_bug.cgi?id=675598
2012-11-14 00:13:36 +00:00
Christian Fredrik Kalager Schaller
485505f323 Fix vp8rtp header names in Makefile 2012-11-07 13:36:33 +01:00
Tim-Philipp Müller
230cf41cc9 Fix FSF address
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:07:18 +00:00
Wim Taymans
9857e6af4d vrawdepay: don't access rtp buffer after unmap
Read the marker bit before we unmap the rtp packet.
2012-11-02 18:48:17 +00:00
Tim-Philipp Müller
5ac789408b rtpvp8: include config.h and minor style fixes 2012-11-01 21:10:21 +00:00
Tim-Philipp Müller
4a849d6690 rtp: fix tabs/space mess in Makefile.am 2012-11-01 20:53:48 +00:00
Tim-Philipp Müller
321acd14dc rtp: move VP8 payloader and depayloader from -bad
Spec is still in draft state, but should hopefully not
change much now. Besides, we announce things as VP8-DRAFT-IETF-01
in our caps, so even if things change in incompatible ways it
should not break anything.

https://bugzilla.gnome.org/show_bug.cgi?id=687263
2012-11-01 20:53:48 +00:00
Tim-Philipp Müller
44efab8e3d rtpvp8: use gst_element_class_set_static_metadata()
where possible. Avoids some string copies. Also re-indent
some stuff. Also some indent fixes here and there.
2012-11-01 20:53:48 +00:00
Mark Nauwelaerts
bc7dbbbd4f rtpvp8: replace gst_element_class_set_details_simple with gst_element_class_set_metadata 2012-11-01 20:53:48 +00:00
Sebastian Dröge
4853001547 rtpvp8: update for GST_PLUGIN_DEFINE() API changes 2012-11-01 20:53:48 +00:00
Wim Taymans
fccfca38d4 rtpvp8: update for buffer changes 2012-11-01 20:53:48 +00:00
Danilo Cesar Lemes de Paula
3edffb13e3 rtpvp8; fix compatibility with the third draft
https://bugzilla.gnome.org/show_bug.cgi?id=671073
2012-11-01 20:53:48 +00:00
Mark Nauwelaerts
d9581832a0 rtpvp8: port some more to new memory API 2012-11-01 20:53:47 +00:00
Olivier Crête
c6761daa27 rtpvp8: port to 0.11 2012-11-01 20:53:47 +00:00
Sebastian Dröge
2c5ea76bdc rtpvp8pay: Fix typo 2012-11-01 20:53:47 +00:00
Youness Alaoui
1cf155d70d rtpvp8: Update the pay/depay to the ietf-draft-01 spec 2012-11-01 20:53:47 +00:00
Vincent Penquerc'h
88aade4150 rtpvp8: fix bitstream parsing using the wrong kind of bitreader
VP8 uses a probabilistic bool coder, not a straight bit coder.
This fixes parsing when error-resilient is set.

This commit includes a copy of libvpx's bool coder, BSD licensed.

https://bugzilla.gnome.org/show_bug.cgi?id=652694
2012-11-01 20:53:47 +00:00
Olivier Crête
97c3f3617c rtpvp8: Reject unknown bitstream versions 2012-11-01 20:53:47 +00:00
Edward Hervey
74a1a704bf rtpvp8: Fix unitialized variable
Makes macosx compiler happy.
2012-11-01 20:53:47 +00:00
Sjoerd Simons
6ed6318076 rtpvp8depay: Accept packets with only one byte of data
When fragmenting partions it can happen that an RTP packet only caries 1
byte of RTP data.
2012-11-01 20:53:47 +00:00
Sjoerd Simons
a45e7a3fc0 rtpvp8pay: Treat the frame header just like any other partition
When setting up the initial mapping just act as if the global frame
information is another partition. This saves special-casing it later in
the actual packetizing code.
2012-11-01 20:53:47 +00:00
Sjoerd Simons
e9f4e9342f rtpvp8: Add simple payloaders and depayloaders for VP8
Minimal implementation of http://www.webmproject.org/code/specs/rtp/,
version 0.3.2
2012-11-01 20:53:47 +00:00
Wim Taymans
d6fd0ebd04 gstpay: fix for 1.0 events
Caps events are sometimes not followed by a buffer but by an event. Flush any
pending caps before we make a packet with the event.
Chain up to the parent event handler before we attempt to push RTP packets, it
might be a segment event.
2012-11-01 18:42:39 +00:00
Wim Taymans
05232c55a5 gstdepay: fix small leak 2012-11-01 18:42:24 +00:00
Wim Taymans
08e5a197b4 gstdepay: add support for events
Conflicts:
	gst/rtp/gstrtpgstdepay.c
2012-11-01 18:18:19 +00:00
Wim Taymans
54b783b5a3 rtpgstpay: add support for sending events
We currently only send tags and custom events. The other events
might interfere with the receiver timings or are otherwise handled
by RTP.

Conflicts:
	gst/rtp/gstrtpgstpay.c
2012-11-01 18:06:11 +00:00
Wim Taymans
6502d08e43 gstpay: rewrite payloader
Use adapter to assemble the payload and make a flush function to
turn this payload into (fragmented) packets.

Conflicts:
	gst/rtp/gstrtpgstpay.c
	gst/rtp/gstrtpgstpay.h
2012-11-01 17:57:52 +00:00
Wim Taymans
c0713e4b80 gstdepay: check for correct fragment offset
Make sure we only insert the rtp packet in the adapter when the
frag_offset matches. When the first packet of a fragment is dropped,
it avoids putting the remaining packets in the adapter and processing
the partial fragment.

Conflicts:
	gst/rtp/gstrtpgstdepay.c
2012-11-01 12:09:47 +00:00
Wim Taymans
8a402e0c06 gstpay: set C flag on all buffers of the fragment
Set the C flags on all the fragments instead of only those with
caps in them. This makes it easier in the receiver to check if there
is a caps in the assembled fragments just by looking at the last RTP
packet flags.
2012-11-01 12:06:08 +00:00