Commit graph

26 commits

Author SHA1 Message Date
Sebastian Rasmussen
c090201ca5 rtpjpegpay: Ceil jpeg dimensions, instead of floor
A JPEG image inside an RTP stream has a preceeding RFC2435 header that
conveys width/height. The dimensions in this header are limited to be
multiples of 8. Since JPEG uses an MCU of 8x8 pixels any image must
already indirectly have image data dimensions that are rounded up in
order to contain enough data to render the image. Therefore this fix
safely rounds the image dimensions in the RFC2435 header up to the
closest multiple of 8.
2011-12-05 10:48:54 +01:00
Vincent Penquerc'h
c0e101e93f various: fix pad template leaks
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:30:27 +00:00
Robert Krakora
f7893b8721 rtpjpegpay: Add support for H.264 payload in MJPEG container
See http://www.quickcamteam.net/uvc-h264/USB_Video_Payload_H.264_0.87.pdf

Fixes bug #655530.
2011-08-03 10:09:42 +02:00
Stefan Kost
d122ea0122 rtp: fix static array overruns in a nicer way
Use G_N_ELEMENTS instead of hard-coding the array size.
2011-05-20 10:34:47 +03:00
Stefan Kost
5792d3b9c0 rtp: fix static array overruns
Yes array[10] has elements from 0...9.
2011-05-20 00:53:44 +03:00
Wim Taymans
f4155f3cf3 rtp: add RTP hint to the klass 2010-12-21 17:23:03 +01:00
Wim Taymans
f357e09ac1 rtp: fix rank of payloaders and depayloaders
Set the payloaders and depayloaders to a reasonable rank.
2010-12-21 17:22:58 +01:00
Stefan Kost
d8167e3071 various (gst): add a missing G_PARAM_STATIC_STRINGS flags 2010-10-13 18:00:28 +03:00
Wim Taymans
604c6555a4 rtpjpegpay: cleanups for DRI markers
Protect against invalid DRI markers.
do some cleanups
2010-09-13 17:31:35 +02:00
American Dynamics
0f3151c73b gstrtpjpegpay: Added Define Restart Interval (DRI) Marker
Added ability to detect and respond to a JPEG-defined DRI marker
2010-09-13 16:47:23 +02:00
Wim Taymans
de4a7fc4c4 rtpjpegpay: improve debugging 2010-09-09 18:48:53 +02:00
Sebastian Dröge
640cb863d4 rtpjpegpay: Fix uninitialized variable compiler warning
Fixes bug #629018.
2010-09-08 07:13:42 +02:00
Wim Taymans
2ed53fd77f rtpjpegpay: do some more sanitity checks
Protect some more against invalid input.
2010-09-07 16:40:08 +02:00
American Dynamics
a482677a14 jpegpay: handle corrupted jpeg better
Protect against corrupted jpeg input.
2010-09-07 15:20:12 +02:00
Stefan Kost
6772badb88 docs: enable the 2 of 65 rtp elements in the docs 2010-04-08 17:19:41 +03:00
Benjamin Otte
cccfeaa59c gst_element_class_set_details => gst_element_class_set_details_simple 2010-03-18 14:32:00 +01:00
Wim Taymans
ad6d4540a7 rtppay: don't ignore result from set_outcaps
set_outcaps can fail and we need to propagate the result upstream.
2010-02-12 13:53:58 +01:00
Ognyan Tonchev
d5d0364d7b rtpjpegpay: add support for buffer-lists
See #585559
2009-06-19 17:57:12 +02:00
Wim Taymans
ee1f1ae5d5 rtpjpegpay: we only need to swap bits on LE 2009-05-08 10:31:12 +02:00
Wim Taymans
e2a483f0f9 rtpjpegpay: refuse some unsupported jpeg formats 2009-05-06 23:56:44 +02:00
Wim Taymans
d87871f5f7 rtpjpegpay: rewrite quant table handling
Rewrite the quant table parsing to also handle multiple tables in one JPEG HDQ
segment.
Handle more jpeg types by keeping track of the tables used per component and
putting the used ones in the quant headers.
2009-05-06 16:11:49 +02:00
Wim Taymans
b7c5847dbd rtpjpegpay: handle input with 1 quant table
Also handle input with just one quant table, simply duplicate the quant table.
Handle invalid SOF correctly and some small cleanups.
Fixes #578257
2009-05-06 12:56:58 +02:00
Wim Taymans
0f1033c59f rtpjpegpay: correctly set the type header
Don't require width/height on the caps. Use the SOF header to find width/height
and fall back to the caps if there is no SOF. Also use the SOF info to find the
subsampling and quantization tables used. This allows us to set the right type
value in the JPEG rtp header.

Deprecate the quality property, it's unused now and it was used wrongly before.

Always send full quant tables for now until we have some code to detect default
ones.

Fixes #580880
2009-05-05 16:32:17 +02:00
Stefan Kost
a99d3f8769 Update and add documentation for plugins with no deps (gst).
Link to properties. Correct titles for examples. Document a few trivial cases. Keep lists in section file and docs/plugins/Makefile.am alphabetically ordered.
2009-01-28 12:32:59 +02:00
Wim Taymans
5c9ebea381 gst/rtp/: Add a jpeg depayloader.
Original commit message from CVS:
* gst/rtp/Makefile.am:
* gst/rtp/gstrtp.c: (plugin_init):
* gst/rtp/gstrtpjpegdepay.c: (gst_rtp_jpeg_depay_base_init),
(gst_rtp_jpeg_depay_class_init), (gst_rtp_jpeg_depay_init),
(gst_rtp_jpeg_depay_finalize), (MakeTables), (MakeQuantHeader),
(MakeHuffmanHeader), (MakeDRIHeader), (MakeHeaders),
(gst_rtp_jpeg_depay_setcaps), (gst_rtp_jpeg_depay_process),
(gst_rtp_jpeg_depay_change_state),
(gst_rtp_jpeg_depay_plugin_init):
* gst/rtp/gstrtpjpegdepay.h:
Add a jpeg depayloader.
* gst/rtp/gstrtpjpegpay.c:
Set the default properties on the payloader to better defaults.
2008-11-14 18:41:29 +00:00
Bjorn Ostby
d8e74cabdc gst/rtp/: Add JPEG payloader. Fixes #560756.
Original commit message from CVS:
Patch by: Bjorn Ostby <bjornos at axis dot com>
* gst/rtp/Makefile.am:
* gst/rtp/gstrtp.c: (plugin_init):
* gst/rtp/gstrtpjpegpay.c: (gst_rtp_jpeg_pay_base_init),
(gst_rtp_jpeg_pay_class_init), (gst_rtp_jpeg_pay_init),
(gst_rtp_jpeg_pay_setcaps), (gst_rtp_jpeg_pay_header_size),
(gst_rtp_jpeg_pay_read_quant_table),
(gst_rtp_jpeg_pay_scan_marker), (gst_rtp_jpeg_pay_handle_buffer),
(gst_rtp_jpeg_pay_set_property), (gst_rtp_jpeg_pay_get_property),
(gst_rtp_jpeg_pay_plugin_init):
* gst/rtp/gstrtpjpegpay.h:
Add JPEG payloader. Fixes #560756.
2008-11-14 11:41:55 +00:00