codecparsers: h264: fix rbsp_more_data() implementation.

Account for trailing zero bits when checking for rbsp_more_data().

In particular, fix an hypothetical stream whereby rbsp_more_data()
is called in the following conditions for PPS header: NalReader
reached position 20, 12 bits are remaining and trailing data at
current byte position is c8 00.

rbsp_more_data() used to return TRUE whereas it should obviously
return FALSE because x8 00 represents a valid rbsp_trailing_bits()
structure.

https://bugzilla.gnome.org/show_bug.cgi?id=685890

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
codecparsers: h264: fix SEI buffering_period() parsing.

Fix parsing of buffering_period() SEI messages. The number of bits
used to express {nal,vcl}_initial_cpb_removal_delay{,_offset} syntax
elements is not 5 but 1 + initial_cpb_removal_delay_length_minus1.

https://bugzilla.gnome.org/show_bug.cgi?id=726828

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
codecparsers: h264: fix skipping of unsupported SEI messages.

The payloadSize does not account for emulation prevention bytes. So,
just use nal_reader_skip() for skipping payload_size bits. It should
be possible to further optimize this code since the NAL reader shall
be aligned to byte boundary already.

Kill the now unused nal_reader_skip_to_next_byte() function.

https://bugzilla.gnome.org/show_bug.cgi?id=726829

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
codecparsers: h264: clean-up gst_h264_parser_parse_sei_message().

Fix build when GST_DISABLE_GST_DEBUG is not defined. Use a switch
statement to dispatch to the various SEI payload handlers.

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
codecparsers: h264: complete set of NAL unit types.

Add missing NAL unit types. They are mostly related to alpha blending,
scalable video coding extensions (SVC, Annex.G), and multiview video
coding extensions (MVC, Annex.H).

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
codecparsers: h264: add gst_h264_parse_sps_data() helper.

Split seq_parameter_set_data() parsing off gst_h264_parse_sps() so
that it could be re-used later on.

https://bugzilla.gnome.org/show_bug.cgi?id=685215

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
codecparsers: h264: add gst_h264_parse_nalu_header() helper.

Add helper to parse the NALU header. Move bounds checking to there.

https://bugzilla.gnome.org/show_bug.cgi?id=685215

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
codecparsers: h264: fix slice_header() parsing for MVC.

The idr_pic_id syntax element depends on IdrPicFlag, which is a calculated
value that does not only depend on NAL unit type (IDR), but possibly also
on MVC non_idr_flag syntax element.

The computed idr_pic_flag is already stored in GstH264NalUnit structure.

https://bugzilla.gnome.org/show_bug.cgi?id=721772

Signed-off-by: Li Xiaowei <xiaowei.a.li@intel.com>
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
dvbsuboverlay: Fix 8-bit subpicture rendering.

Fix 2 small flaws handling 8-bit subpictures that makes
my one test file work.
dvbsuboverlay: Remove warning for 2-bit and 8-bit subpictures

Both 2-bit and 8-bit mode now seem fine, so remove the warning
messages about them
tsdemux: Fix mpegts_packetizer_set_current_pcr_offset()

When adjusting the PCR offset of groups, adjust the correct group
entry from the list - not the current group repeatedly.
dvbsuboverlay: Clarify confusing debug message

The message is describing the number of bytes remaining for
parsing, not 'missing'.
codecparsers: cosmetics: drop TAB characters.

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
srtpenc: unlock object lock before posting error

Posting an error with the object lock will deadlock. Rework the code
a bit to make things more simple.
rtmpsink: Remove URL check for valid playpath.

The playpath is an optional component of the URL - don't require it.
gl: Only enabled cocoa backend on osx (and not ios)

ios requires using EAGL
gl: fix crash if _build_extension_string is not called

On GLES2 then (gl->GetIntegerv && gl->GetStringi) is false
regression introduced by cc6df204e2f58fffda5cbe90f3450aeba95889c4

https://bugzilla.gnome.org/show_bug.cgi?id=703343
pkgconfig: add gstreamer-gl

https://bugzilla.gnome.org/show_bug.cgi?id=703343
gl: remove commented and unsued code in x11 Makefile.am

https://bugzilla.gnome.org/show_bug.cgi?id=703343
gl: deploy egl headers in gst/gl/egl instead of gst/gl

https://bugzilla.gnome.org/show_bug.cgi?id=703343