Commit graph

13513 commits

Author SHA1 Message Date
Gwenole Beauchesne
10639eb889 codecparsers: vc1: fix bitplanes decoding (DIFF6 or NORM6 residual bytes).
Fix parsing of residual bytes. This is a two-step process. First,
remaining colums of full vertical resolution (<height>) need to be
processed. Next, remaining bytes in the first row can be processed,
while taking into account the fact that we may have filled in the
first columns already. So, this is not full horizontal resolution.

The following figure helps in understanding the expected order of
operations, for a 8x5 MBs bitplane.

    5 5 6 6 6 6 6 6
    5 5 1 1 1 2 2 2
    5 5 1 1 1 2 2 2
    5 5 3 3 3 4 4 4
    5 5 3 3 3 4 4 4

So, after tiles 1 to 4 are decoded, vertical tile 5 needs to be
processed (2x5 MBs) and then the horizontal tile 6 (6x1 MBs).

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

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-01-25 09:53:05 +01:00
Gwenole Beauchesne
fa2a526f04 codecparsers: vc1: fix bitplanes decoding (DIFF6 or NORM6).
Fix decoding of DIFF6 or NORM6 bitplanes with an odd number of lines
(3x2 "horizontal" tiles). In this case, we have to skip the first line
of macroblocks but <width> number of bytes was used to do so, instead
of the actual <stride> size.

This fixes decoding for the video sample attached to:
https://bugzilla.gnome.org/show_bug.cgi?id=668565

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

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-01-25 09:39:01 +01:00
Olivier Crête
d1023646f9 insertbin: Add bin to dynamically insert elements in a running pipeline
This element automatically links in any element added using it's
action signals. These elements must have a single source pad and a single
sink pad.
2013-01-23 21:13:03 -05:00
Gwenole Beauchesne
07a51b16eb codecparsers: vc1: add API to parse slice headers.
Add gst_vc1_parse_slice_header() function to parse slice headers as
described in 7.1.2. Slice layers are optional and allowed in advanced
profile mode only. Picture header, if available (PIC_HEADER_FLAG),
is parsed but not recorded because it shall be the same as that was
previously parsed with gst_vc1_parse_frame_header().

This fixes SA00049.vc1 conformance test.

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

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-01-23 17:22:07 +01:00
Gwenole Beauchesne
82200d75ae codecparsers: vc1: fix bitplanes decoding.
Fix decoding of DIFF2 or NORM2 bitplanes with an odd number of macroblocks.
In particular, account for the first bit that was already parsed so that to
avoid a buffer overflow after all pairs are parsed.

This fixes SA00040.vc1 conformance test.

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

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-01-23 09:35:11 +01:00
Mark Nauwelaerts
1bf59acad8 configure.ac: disable MFC if some v4l2 PIX_FMT missing 2013-01-22 19:31:02 +01:00
Gwenole Beauchesne
cbec9bfcd0 codecparsers: vc1: simplify GstVC1VopDquant structure.
Rename dqsbedge to dqbedge. The intent is that we can only have a single
boundary edge selector, depending on the value of dqprofile. So, dqbedge
represents DQSBEDGE if dqprofile == GST_VC1_DQPROFILE_SINGLE_EDGE, or
DQDBEDGE if dqprofile == GST_VC1_DQPROFILE_DOUBLE_EDGE.

The former dqbedge field is marked as unused and can be removed on the
next gst-plugins-bad version that allows ABI changes.

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

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-01-22 14:22:30 +01:00
Patricia Muscalu
4202eeff7d curltlssink: set correct level of SSL for the transfer
https://bugzilla.gnome.org/show_bug.cgi?id=692010
2013-01-22 10:55:14 +00:00
Gwenole Beauchesne
93fbcfda23 codecparsers: vc1: fix VOPDQUANT parser for DQUANT == 2.
Fix parsing of VOPDQUANT when DQUANT == 2. In particular, DQUANTFRM is
not present in the bitstream in this case and it shall be derived to
the default value of zero (7.1.1.31.1).

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

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-01-22 11:20:06 +01:00
Gwenole Beauchesne
73213e273f codecparsers: vc1: fix calculation of ALTPQUANT.
Fix calculation of ALTPQUANT when DQUANT == 1. PQDIFF alters ALTPQUANT
in any case. See 7.1.1.31.6.

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

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-01-22 11:19:56 +01:00
Gwenole Beauchesne
f3698c6289 codecparsers: vc1: fix parser for DQPROFILE in VOPDQUANT.
Fix parse_vopdquant() to correctly parse DQPROFILE, which is 2 bits
instead of a single bit.

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

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-01-22 11:19:44 +01:00
Gwenole Beauchesne
56e2405a35 codecparsers: h264: add inferred value for slice_beta_offset_div2.
The standard specifies that when slice_beta_offset_div2 is not present
in the slice header, then the value of slice_beta_offset_div2 shall be
inferred to be equal to 0.

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

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-01-22 11:19:17 +01:00
Arnaud Vrac
8d837cbac4 assrender: reenable unit tests and up rank to primary again 2013-01-22 00:24:52 +00:00
Arnaud Vrac
143c0cbd45 assrender: use overlay composition to blit subtitles on video frames
Re-uses existing blitting code and also means we can support
a lot more video formats out of the box, hence avoid unnecessary
pixel format or colour space conversions.

https://bugzilla.gnome.org/show_bug.cgi?id=692012
2013-01-22 00:24:31 +00:00
Arnaud Vrac
5f91366553 assrender: render overlay composition if supported downstream
This allows rendering ASS subtitles on top of video when
using hardware-accelerated video decoders based on e.g.
VA-API or VDPAU.

https://bugzilla.gnome.org/show_bug.cgi?id=678389
https://bugzilla.gnome.org/show_bug.cgi?id=692012
2013-01-22 00:24:25 +00:00
Arnaud Vrac
30222d6080 assrender: add wait-text property
This is the same property as in the pango element, to allow waiting for
text on the text pad before rendering the video.

https://bugzilla.gnome.org/show_bug.cgi?id=692012
2013-01-22 00:24:20 +00:00
Arnaud Vrac
c78714ced3 assrender: fix some subtitles being ignored
https://bugzilla.gnome.org/show_bug.cgi?id=692012
2013-01-22 00:24:17 +00:00
Arnaud Vrac
c16d41d709 assrender: refactor code to avoid duplication
https://bugzilla.gnome.org/show_bug.cgi?id=692012
2013-01-22 00:24:13 +00:00
Arnaud Vrac
61976b7aa7 assrender: proxy allocations on video pad
Forward allocation queries on video sink pad instead
of discarding them.

This allows the upstream elements to use the allocation
parameters or pools from the downstream elements like
videosink.

https://bugzilla.gnome.org/show_bug.cgi?id=692012
2013-01-22 00:24:06 +00:00
Tim-Philipp Müller
f198d04bf8 bluez: clean up GValue handling a little
Allocate GValues on the stack, and unset/free them properly, fixing
a few leaks in the process. Also use gst_structure_take_value()
where appropriate to avoid unnecessary list copies.
2013-01-20 17:49:32 +00:00
Tim-Philipp Müller
ee6d8a7e62 bluez: update SBC caps for renamed fields
mode -> channel-mode
allocation -> allocation-method
2013-01-20 17:49:26 +00:00
Olivier Crête
feb113e87a shm: Initialize shm_area_buf to invalid value 2013-01-17 19:29:31 -05:00
Roland Elek
2cacfa2932 shm: apply shm area permissions to shmpipe control socket
Apply shared memory area permissions to the control socket (more
precisely, the path it is bound to) as well.

https://bugzilla.gnome.org/show_bug.cgi?id=682775
2013-01-17 19:16:42 -05:00
Youness Alaoui
49fefbde65 uvch264: Define LIBUSB_CLASS_VIDEO if using an old version of libusb 2013-01-16 15:10:40 -05:00
Olivier Crête
e82e434730 uvch264: Prevent temporary elements from going to playing 2013-01-16 14:51:11 -05:00
Youness Alaoui
c9fbf274f4 uvch264: do not double-unref if transform_caps fails 2013-01-16 14:51:07 -05:00
Youness Alaoui
410d0c0194 uvch264: Add a fakesink to the transform_caps
Some version of basetransform will return the template caps if the src
pad is not linked, so the capsfilter will return ANY. Linking it to
fakesink allows us to return the right caps in the capsfilter and have
them transformed by the colorspace converter.
2013-01-16 14:51:01 -05:00
Martin Pitt
e358ec6ddd tests: use _1_0 variants for the various registry variables
These override the variants without version suffix. Makes 'make check' work
properly in environments that set the suffixed variant for 1.0, such as
jhbuild.
2013-01-16 11:38:52 +00:00
Mark Nauwelaerts
c20d13d8f8 codecparsers: h264: zero-initialize SPS VUI parameters
... so all 'present' flags indicate no presence of optional parts
in case VUI parameters end up not being parsed.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681818
2013-01-15 19:44:06 +01:00
Tim-Philipp Müller
91412b85ee Automatic update of common submodule
From a72faea to a942293
2013-01-15 15:05:54 +00:00
Christian Fredrik Kalager Schaller
280e81d9f9 Add two latest plugins to spec file 2013-01-12 18:10:35 +01:00
Olivier Crête
81b452ba5d dtmf/spandsp: Move dtmfdetect to use libspandsp
Remove our copy of the tone_detect.c file and use the original
from libspandsp. Also move the element to the spandsp plugin.
2013-01-09 20:05:16 -05:00
Tim-Philipp Müller
e89c130f1e bluez: use GLib defines to check for byte order 2013-01-10 00:31:25 +00:00
Tim-Philipp Müller
70ba34c485 bluez: add new plugin to build system, but disable for now
Disable until it has been tested and works.

https://bugzilla.gnome.org/show_bug.cgi?id=690582
2013-01-09 18:10:30 +00:00
Tim-Philipp Müller
c994ae021d bluez: make bluez elements compile with 1.0
Builds, but very likely doesn't work yet at all. Some
things are still commented out.

https://bugzilla.gnome.org/show_bug.cgi?id=690582
2013-01-09 18:02:11 +00:00
Chan-yeol Park
49a69e394a bluez: avinfo: Replace definitions with a2dp-codecs.h's 2013-01-09 14:30:14 +00:00
Chan-yeol Park
e5a5d179da bluez: audio: Add check for vendor specific A2DP codec
This patch adds checks(vendor ID, vendor specific codec ID) to make sure of
vendor specific A2DP codec selection.
2013-01-09 14:30:14 +00:00
Syam Sidhardhan
711e5b4909 bluez: gstavdtpsink: Free the D-Bus error on reply failure
If D-Bus error is set we should free it.
2013-01-09 14:30:14 +00:00
Anderson Lizardo
f1c526da47 bluez: Fix trivial coding style issues on pointer declarations and casting
Avoid using C++ style pointer declarations like "char* ptr", as most
BlueZ code uses "char *ptr".
2013-01-09 14:30:14 +00:00
Luiz Augusto von Dentz
3a02461349 bluez: audio: Remove internal audio IPC
With unix socket and ALSA removed there is no longer any use for the
internal IPC.
2013-01-09 14:30:13 +00:00
Anderson Lizardo
f40d5135f0 bluez: Remove compatibility check for DBUS_TYPE_UNIX_FD
Since commit c89b589a586e97ad875fbdd1d41f03979157ebb0, D-Bus >= 1.4.0 is
required. This version already contains Unix FD passing support,
therefore code that checks for DBUS_TYPE_UNIX_FD definition is
unnecessary.
2013-01-09 14:30:13 +00:00
Anderson Lizardo
54b8979d67 bluez: avdtp: Fix incorrect gchar buffer allocation
The code was allocating an array of gchar pointers, where an array of
gchar is expected.
2013-01-09 14:30:13 +00:00
Chan-yeol Park
6c31678d8b bluez: audio: Add SBC NULL check for GST AVDTP signaling
Due to RF condition or headset malfunctioning, gst audio plug-in could
not get SBC (mandatory codec) information.
2013-01-09 14:30:13 +00:00
Syam Sidhardhan
7470380792 bluez: audio: Fix newline before EOF 2013-01-09 14:30:13 +00:00
Syam Sidhardhan
a91cc4257d bluez: gstavdtpsink: Fix D-Bus memory leak in audio 2013-01-09 14:30:13 +00:00
Anderson Lizardo
53031e0a9e bluez: AVDTP: Fix closing invalid FD on error
In gst_avdtp_sink_start(), if bt_audio_service_open() failed, there was
an attempt to close an invalid file descriptor (through
bt_audio_service_close()).
2013-01-09 14:30:13 +00:00
Anderson Lizardo
83b0583a7a bluez: Fix return value check for bt_audio_service_open()
Only negative values (namely -1) are errors for this function.
2013-01-09 14:30:13 +00:00
Anderson Lizardo
86c2797eef bluez: AVDTP: Fix errno handling convention
Variables which are assigned to the errno variable (usually called
"err") should be negative, and "-err" should be used where a positive
value is needed.
2013-01-09 14:30:13 +00:00
Marcel Holtmann
64c0532017 bluez: audio: Update license for shared header files
The header files with constants and structures for audio specific
interaction with Pulseaudio are suppose to be under LGPL license.

For some odd reason a2dp-codecs.h ended up being under GPL license
which is against the intention of this being shared and re-used by
non-GPL programs. Fix this now to avoid any future confusion.
2013-01-09 14:30:13 +00:00
Lucas De Marchi
445f76513a bluez: Fix common misspelled words
Accounting of misspelled words, as detected by codespell:

acording      2
ancilliary    1
appropiate    1
atribute      1
cant          1
comming       2
gracefull     1
lenght        1
mispelled     1
occured       1
occurences    1
ocurred       3
prefered      1
presense      1
reponse       1
seperate      1
succesful     1
successully   1
sucessfull    1
sucessfully   1
2013-01-09 14:30:12 +00:00