Commit graph

1451 commits

Author SHA1 Message Date
Xavier Claessens
6b01999087 Meson: Generate pc file for all plugins in ugly
https://bugzilla.gnome.org/show_bug.cgi?id=794568
2018-04-25 11:07:39 +01:00
Tim-Philipp Müller
83c38dc446 x264enc: fix build with newer x264 with support for multiple bit depths
libx264 used to be built for one specific bit depth, and if we
wanted to support multiple bit depths we would have to dynamically
load the right .so from different paths. That has changed now, and
libx264 can include support for multiple depths in the same lib,
so we don't need to do the dlopen() dance any more. We'll keep
the vtable stuff around until we can drop support for older x264.

gstx264enc.c:2927:36: error: ‘x264_bit_depth’ undeclared

https://bugzilla.gnome.org/show_bug.cgi?id=792111
2018-02-28 10:07:13 +00:00
Alicia Boya García
725de9b92e x264enc: Add format example for option-string
https://bugzilla.gnome.org/show_bug.cgi?id=793879
2018-02-27 13:51:19 -05:00
Tim-Philipp Müller
4007aaf3a7 meson: use -fno-strict-aliasing where supported
https://bugzilla.gnome.org/show_bug.cgi?id=769183
2018-01-30 20:34:54 +00:00
Edward Hervey
63f8d33a6f amrnbdec: Don't use g_return_*_if_fail() on data parsing
Those functions can be disabled. Instead just use the (existing)
function.

CID #1427121
2018-01-03 16:04:26 +01:00
Edward Hervey
6da70e278a amrwbdec: Don't use g_return_*_if_fail() on data parsing
Those functions can be disabled. Instead just use the (existing)
function.

CID #1427093
2018-01-03 16:02:08 +01:00
Justin Kim
8100d781b7 x264enc: add 'insert-vui' property for users to choose
VUI(Video Usability Information) parameters should be set
according to the specification. However, some of the existing
hardware decoders refuse to decode in certain combinations of
the resolution and VUI parameters. To support the legacy
decoders, this patch provides 'insert-vui' to skip the settings.

https://bugzilla.gnome.org/show_bug.cgi?id=791331
2017-12-08 15:40:47 -05:00
Sebastian Dröge
0f7e4c90d5 cdio: Fix build with cdio >= 1.0
LIBCDIO_VERSION_NUM was defined as e.g. 94 for 0.94 but is now defined
as 1 for 1.0. We had various checks for < 83, which of course succeeded
now although we are >= 0.83.

Fix this by checking for < 76 (0.76) too, as that is the minimum version
we currently support and everything < 76 is going to be >= 1.0.

https://bugzilla.gnome.org/show_bug.cgi?id=791301
2017-12-06 13:01:39 +02:00
Ponnam Srinivas
83d7d2f67a a52dec: Fix out buffer memory leak in error code path
https://bugzilla.gnome.org/show_bug.cgi?id=788119
2017-09-26 11:13:33 +03:00
Deepak Srivastava
9213d690a8 mpeg2dec: Fix buffer memory leak in error code path
https://bugzilla.gnome.org/show_bug.cgi?id=787817
2017-09-18 09:26:21 +01:00
Satya Prakash Gupta
c7594c4acb mpeg2dec: Unmap output video frame if copying to it fails
https://bugzilla.gnome.org/show_bug.cgi?id=787398
2017-09-07 12:56:11 +03:00
Tim-Philipp Müller
aa14b72a99 Remove twolame plugin, moved to -good
https://bugzilla.gnome.org/show_bug.cgi?id=774252
2017-08-26 09:35:20 +01:00
Tim-Philipp Müller
b40e1a76b8 Remove lame plugin, moved to -good
https://bugzilla.gnome.org/show_bug.cgi?id=774252
2017-08-26 08:51:01 +01:00
Tim-Philipp Müller
83ff57c849 Remove mpg123 plugin, moved to -good
https://bugzilla.gnome.org/show_bug.cgi?id=774252
2017-08-20 15:53:50 +01:00
Tim-Philipp Müller
87c58bd3c1 sidplay: hide symbols in meson for this c++ plugin too
Keep things local, as this is the only c++ plugin
in ugly currently.
2017-08-10 15:48:27 +01:00
Mark Nauwelaerts
fc826ac6dc x264enc: add FIXME note for future configuration cleanup 2017-08-09 19:31:56 +02:00
Satya Prakash Gupta
861cff5da1 dvdreadsrc: Fix string memory leak
https://bugzilla.gnome.org/show_bug.cgi?id=785388
2017-07-25 11:23:38 +03:00
Tim-Philipp Müller
0d73cb55b1 x264enc: fix indentation 2017-07-15 15:01:09 +01:00
Tim-Philipp Müller
58a23c99e9 x264enc: fix caps leak
Move creation of supported sink pads into class_init function
which is also the only place where they're used. Unref the
caps when no longer needed, the pad template will take its
own ref.

https://bugzilla.gnome.org/show_bug.cgi?id=784982
2017-07-15 14:59:42 +01:00
Tim-Philipp Müller
841a073154 mpg123audiodec: fix caps leak
The pad template takes its own ref, so we should unref the caps.

https://bugzilla.gnome.org/show_bug.cgi?id=784982
2017-07-15 14:57:49 +01:00
Mark Nauwelaerts
7074d31cb6 x264enc: relax bframes upper limit count to maximum encoder supported 2017-06-24 17:52:09 +02:00
Tim-Philipp Müller
0267575e79 meson: don't error out if sidplay library is not found 2017-06-23 23:44:18 +01:00
Tim-Philipp Müller
27b77f93b5 meson: build sid plugin
https://bugzilla.gnome.org/show_bug.cgi?id=784135
2017-06-23 18:34:14 +01:00
Víctor Manuel Jáquez Leal
c15a00537f x264: fix memory leak
When the allowed caps are the same of template caps the allowed
caps are not unrefed, leaking memory.

https://bugzilla.gnome.org/show_bug.cgi?id=784060
2017-06-21 21:26:53 +02:00
Nicolas Dufresne
d02e7d8029 Remove plugin specific static build option
Static and dynamic plugins now have the same interface. The standard
--enable-static/--enable-shared toggle are sufficient.
2017-05-16 14:07:56 -04:00
Nicolas Dufresne
e026416a34 sid: Make plugin name match plugin file name 2017-05-09 09:45:27 -04:00
Nirbheek Chauhan
c6a0026137 x264: Use __declspec(dllimport) with MinGW too
x264.h says this isn't needed with MinGW, but it looks like it is.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=779249
2017-04-27 12:20:42 +03:00
Jan Schmidt
09f412dc3c mpeg2dec: Fix latency calculation
The latency calculation was missing a scaling by GST_SECOND,
so it would always report a tiny latency. Fix that.

Spotted by Guillaume Desmottes.
2017-03-01 23:04:00 +11:00
Edgard Lima
b4849c772e Update Edgard Lima's email
https://bugzilla.gnome.org/show_bug.cgi?id=779230
2017-02-27 00:42:15 +00:00
Nirbheek Chauhan
184351ae48 x264: Initialize function vtable in plugin_init()
These values are defined in the x264.h header and are not const on
Windows due to the way DLLs work. See:
https://msdn.microsoft.com/en-us/library/619w14ds.aspx
https://msdn.microsoft.com/en-us/library/zw3za17w.aspx

https://bugzilla.gnome.org/show_bug.cgi?id=777903
2017-02-01 12:38:01 +02:00
Thibault Saunier
8d045b4197 meson: Install presets files 2017-01-03 08:15:43 -03:00
Mathieu Duponchelle
31e9641c4a x264enc: Add a youtube preset.
Based on https://support.google.com/youtube/answer/1722171

https://bugzilla.gnome.org/show_bug.cgi?id=751560
2017-01-03 08:15:43 -03:00
Tim-Philipp Müller
2f767fb24a mad: remove plugin
We have better replacements such as the mpg123 plugin.
The main reason to keep around mad was for 'freeform'
mp3 support, but mpg123 can handle those too nowadays.
Also, mad is GPL and has been unmaintained for years.

https://bugzilla.gnome.org/show_bug.cgi?id=776140
2016-12-28 10:56:42 +00:00
Vivia Nikolaidou
c40b40b36f x264enc: Add information for mixed mode
https://bugzilla.gnome.org/show_bug.cgi?id=775411
2016-11-30 18:54:20 +02:00
Vivia Nikolaidou
dae49907e2 x264enc: Correctly pass interlacing/TFF information
Give the interlacing information correctly to the encoder. Also parse
TFF/BFF information from the caps and pass it too.

https://bugzilla.gnome.org/show_bug.cgi?id=775411
2016-11-30 18:54:20 +02:00
Vivia Nikolaidou
f7d82312bb x264enc: Auto-detect interlace mode from caps
If the caps are interlaced, interlacing is always enabled on the
encoder. If the interlace-mode field is missing or if it's progressive,
the encoder uses the "interlaced" property.

https://bugzilla.gnome.org/show_bug.cgi?id=775228
2016-11-28 15:22:44 +02:00
Mark Nauwelaerts
aab716ac40 dvdreadsrc: dvd-spu-clut-change is a sticky custom event 2016-11-20 20:55:17 +01:00
Sebastian Dröge
7bf576b238 x264enc: Add configure parameter to specify additional x264 libraries with e.g. different depth configuration
x264 has to be compiled specifically for a target bit depth.
Distributions currently ship various libraries in their packages, with
different bit depths.

This change now allows to provide them all at configure time and have
the x264enc element dynamically switch between them based on the bit
depth of the input format.

https://bugzilla.gnome.org/show_bug.cgi?id=763297
2016-11-14 18:26:04 +02:00
Sebastian Dröge
590aa41bf5 x264enc: Set colorimetry and chroma-site information
https://bugzilla.gnome.org/show_bug.cgi?id=772159
2016-09-29 12:39:56 +03:00
Sebastian Dröge
d183565334 siddec: Fix compilation with debugging disabled
gstsiddec.o
gstsiddec.cc: In function ‘void play_loop(GstPad*)’:
gstsiddec.cc:446:18: error: unused variable ‘reason’ [-Werror=unused-variable]
     const gchar *reason = gst_flow_get_name (ret);
                  ^
2016-09-01 10:57:46 +03:00
Thibault Saunier
3e27368ce3 Use the new API to post flow ERROR messages on the bus
https://bugzilla.gnome.org/show_bug.cgi?id=770158
2016-08-26 19:23:28 -03:00
Nirbheek Chauhan
c8260a1545 Add support for Meson as alternative/parallel build system
https://github.com/mesonbuild/meson

With contributions from:

Tim-Philipp Müller <tim@centricular.com>
Jussi Pakkanen <jpakkane@gmail.com> (original port)

Highlights of the features provided are:
* Faster builds on Linux (~40-50% faster)
* The ability to build with MSVC on Windows
* Generate Visual Studio project files
* Generate XCode project files
* Much faster builds on Windows (on-par with Linux)
* Seriously fast configure and building on embedded

... and many more. For more details see:

http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.html
http://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html

Building with Meson should work on both Linux and Windows, but may
need a few more tweaks on other operating systems.
2016-08-20 11:29:37 +01:00
Nirbheek Chauhan
5ae5b2d3c7 plugins: Use <stdint.h> instead of _stdint.h
_stdint.h is generated by Autotools and we don't really need it. All
supported platforms now ship with stdint.h. The only stickler was MSVC,
and since Visual Studio 2015 it also ships stdint.h now.
2016-08-19 13:03:29 +01:00
Tim-Philipp Müller
bb5a13e848 mpeg2dec: remove file no longer used or needed 2016-08-19 13:01:39 +01:00
Josep Torra
9b6b6d1fd5 sidplay: fix compiler warnings when building with -O3
Avoid compiler warnings "‘foo’ may be used uninitialized in this
function" when building with -O3 by checking the return bool value
of format conversion function.

https://bugzilla.gnome.org/show_bug.cgi?id=769116
2016-07-24 10:15:48 +02:00
Tim-Philipp Müller
8426bd88c2 amrnbec, mad: fix two more parse function declarations 2016-04-16 09:15:43 +01:00
Tim-Philipp Müller
3734d90ce6 a52dec, amrwbec: fix parse function declaration mismatch
Fixes MSVC compiler warning:

amrwbdec.c(99): warning C4133: '=': incompatible types
- from 'gboolean (__cdecl *)(GstAudioDecoder *,GstAdapter *,gint *,gint *)' to
  'GstFlowReturn (__cdecl *)(GstAudioDecoder *,GstAdapter *,gint *,gint *)'
gsta52dec.c(156): warning C4133: '=': incompatible types
- from 'gboolean (__cdecl *)(GstAudioDecoder *,GstAdapter *,gint *,gint *)' to
  'GstFlowReturn (__cdecl *)(GstAudioDecoder *,GstAdapter *,gint *,gint *)'
2016-04-15 20:46:37 +01:00
Tim-Philipp Müller
36d972e01a mpg123: fix build with msvc
Fix syntax errors when compiling against cerbero-provided libmpg123
headers. We do the same as the libmpg123 internal visual studio
build here.

mpg123.h(1378): error C2143: syntax error: missing ')' before '('
mpg123.h(1378): error C2081: 'ssize_t': name in formal parameter list illegal
mpg123.h(1378): error C2143: syntax error: missing ')' before '*'
mpg123.h(1378): error C2091: function returns function
mpg123.h(1378): error C2143: syntax error: missing '{' before '*'
mpg123.h(1378): error C2059: syntax error: ')'
mpg123.h(1379): error C2143: syntax error: missing ')' before '*'
mpg123.h(1379): error C2365: 'off_t': redefinition; previous definition was 'typedef'
...
2016-04-15 19:55:03 +01:00
Tim-Philipp Müller
fd5a868c11 mpeg2dec: bump libmpeg2 requirement to 0.5.1 and fix msvc build
libmpeg2 0.5.1 was released in mid-2008, let's bump the requirement
and get rid of version-dependent code paths. There's still
avdec_mpeg2video for those who are stuck on ancient distros which
we don't target any more.

Also fixes build with MSVC, which doesn't like #if #else #endif
inside macro arguments (like the GST_DEBUG_OBJECT in line 941).
2016-04-15 18:43:27 +01:00
Vineeth TM
eacdaa56b3 ugly: use new gst_element_class_add_static_pad_template()
https://bugzilla.gnome.org/show_bug.cgi?id=763082
2016-03-24 14:38:13 +02:00
Jens Georg
7e1c64e846 dvdread: Fix seek starting at 0 for title != 1
Otherwise the playback would start at title 0

https://bugzilla.gnome.org/show_bug.cgi?id=762787
2016-02-28 23:34:00 +11:00
Tim-Philipp Müller
b0434ddf4e mpeg2dec: don't use exported but undeclared core debug category symbols
It's not right and won't work on Windows with MSVC.
2016-02-20 11:55:37 +00:00
Sebastian Dröge
a40244bf25 sidplay: Fix compiler warning about C++11 compatibility
gstsiddec.cc:78:17: error: invalid suffix on literal; C++11 requires a space between literal and string macro [-Werror=literal-suffix]
 #define FORMATS "{ "GST_AUDIO_NE(S16)","GST_AUDIO_NE(U16)", S8, U8 }"
                 ^
gstsiddec.cc:78:38: error: invalid suffix on literal; C++11 requires a space between literal and string macro [-Werror=literal-suffix]
 #define FORMATS "{ "GST_AUDIO_NE(S16)","GST_AUDIO_NE(U16)", S8, U8 }"
                                      ^
2016-02-18 00:25:56 +02:00
Tim-Philipp Müller
43bd45ba99 mpg123: move from -bad to -ugly
Hook up to build system, add to docs
2016-02-16 10:59:25 +00:00
Tim-Philipp Müller
e3bb9b2928 Merge branch 'plugin-move-mpg123'
Move mpg123 plugin from -bad to -ugly.

https://bugzilla.gnome.org/show_bug.cgi?id=719849
2016-02-16 10:41:07 +00:00
Vineeth TM
93b15dd649 plugins-bad: Fix example pipelines
rename gst-launch --> gst-launch-1.0
replace old elements with new elements(ffmpegcolorspace -> videoconvert, ffenc_** -> avenc_**)
fix caps in examples

https://bugzilla.gnome.org/show_bug.cgi?id=759432
2016-02-16 10:40:40 +00:00
Tim-Philipp Müller
81ede77eb7 mpg123: still reset pending audio info on hard flush
Follow-up to previous commit.

https://bugzilla.gnome.org/show_bug.cgi?id=752431
2016-02-16 10:40:40 +00:00
Jason Litzinger
5d86e1070d mpg123: fix handling of sample rate change during playback
If the sample rate of the media changes, the resulting flush will
clear the has_next_audioinfo flag, and the caps won't be sent
downstream.

https://bugzilla.gnome.org/show_bug.cgi?id=752431
2016-02-16 10:40:40 +00:00
Thiago Santos
2309da4e9c audiodecoders: use default pad accept-caps handling
Avoids useless check of downstream caps when handling an
accept-caps query

Elements: dtsdec, faad, gsmdec, mpg123audiodec, opusdec,
          sbcdec, adpcmdec, sirendec
2016-02-16 10:40:40 +00:00
Tim-Philipp Müller
d6082ad2fc Remove obsolete Android build cruft
This is not needed any longer.
2016-02-16 10:40:40 +00:00
Tim-Philipp Müller
02e20d5056 mpg123: fix compiler warning and simplify checks in set_caps
https://bugzilla.gnome.org/show_bug.cgi?id=740195
2016-02-16 10:40:40 +00:00
Carlos Rafael Giani
4b7a954cae mpg123: rework set_format code so mpg123audiodec works with decodebin/playbin
The old code was using gst_caps_normalize() and was generally overly
complex. Simplify by picking sample rate and number of channels from
upstream and the sample format from the allowed caps. If the format caps
is a list of strins, just pick the first one. And if the srcpad isn't
linked yet, use the default format (S16).

https://bugzilla.gnome.org/show_bug.cgi?id=740195
2016-02-16 10:40:40 +00:00
Tim-Philipp Müller
eb89bf4030 Fix up one-element lists in template caps 2016-02-16 10:40:39 +00:00
Carlos Rafael Giani
fc142ba28a mpg123: improved error report and checks
Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
2016-02-16 10:40:39 +00:00
Sebastian Dröge
056c7bc7c9 mpg123audiodec: Require caps to be set before any data processing 2016-02-16 10:40:39 +00:00
Edward Hervey
fe7f0a6ac7 mpg123: Remove dead assignment
harder ? :)
2016-02-16 10:40:39 +00:00
Sebastian Dröge
deffbd375e gst: Add better support for static plugins 2016-02-16 10:40:39 +00:00
David Schleef
c4399160f6 mpg123: Add conditional on API version for new enum 2016-02-16 10:40:39 +00:00
Tim-Philipp Müller
11904d63be amrnb, amrwb: unconditionally depend on opencore-amr*b >= 0.1.3
We don't really need to cater for older versions any more.
2016-01-25 20:00:26 +00:00
Edward Hervey
e9a04cd153 mpeg2dec: Demote rank to SECONDARY
https://bugzilla.gnome.org/show_bug.cgi?id=574461
2016-01-21 17:38:34 +01:00
Arjen Veenhuizen
f037e7e59e x264enc: increase bitrate limit from 100Mbps to 2Gbps
Don't artificially limit the bitrate, x264enc allows much
higher bitrates, and for intra-only 4k AVC they are needed.
x264 clips to 2Gbps internally, so use that as limit for now.

https://bugzilla.gnome.org/show_bug.cgi?id=758620
2015-11-26 15:49:47 +00:00
Reynaldo H. Verdejo Pinochet
7d7bab4640 x264enc: drop unnecessary NULL check before g_free 2015-11-18 23:20:59 -08:00
Reynaldo H. Verdejo Pinochet
7a7715e18c dvdread: remove broken link
Removing instead of updating as previously pointed-to page
(now http://dvd.sourceforge.net/dvdinfo/) is already linked
from dvd.sourceforge.net's homepage as: "Collection of
information on file formats/data structures relating to DVD
navigation/SPUs."
2015-09-29 14:16:07 -07:00
Jan Schmidt
05aa763561 x264: Add bitrate info to the tags output.
Makes it possible for muxers to know the target bitrate as soon
as encoding starts, which flvmux now uses.
2015-09-05 23:34:45 +10:00
Thiago Santos
7fef2de2d8 x264enc: actually return TRUE from accept-caps handler
The query was handled
2015-08-18 02:23:55 -03:00
Thiago Santos
ba5e19706d x264enc: implement accept-caps handling
Implement accept-caps handling without doing caps queries downstream
2015-08-16 14:27:44 -03:00
Thiago Santos
e1b6ef3209 audioencoders: use template subset check for accept-caps
It is faster than doing a query that propagates downstream and
should be enough

Elements: amrnbenc, lamemp3enc, twolamemp2enc
2015-08-15 22:15:26 -03:00
Thiago Santos
c1211659cc mpeg2dec: use default pad accept-caps handling
Avoids useless check of downstream caps when handling an
accept-caps query
2015-08-15 11:54:11 -03:00
Thiago Santos
79bfd0f42c audiodecoders: use default pad accept-caps handling
Avoids useless check of downstream caps when handling an
accept-caps query

Elements: a52dec, amrnbdec, amrwbdec, mad
2015-08-15 11:54:11 -03:00
Tim-Philipp Müller
9f41cf0745 Update mailing list address from sourceforge to freedesktop 2015-07-16 17:19:58 +01:00
Matej Knopp
43d6ca85a0 x264enc: Use gst_video_encoder_set_min_pts
This method replace the manual adjustment of PTS and DTS to avoid
negative DTS issues. Using this method will also update the segment so
we don't loos sync.

https://bugzilla.gnome.org/show_bug.cgi?id=740575
2015-06-11 10:29:25 -04:00
Jan Schmidt
c6958c158f x264enc: Add support for stereoscopic video
Provide new frame-packing property to directly set
x264enc frame packing, or pass through upstream settings

The explicit layout from the frame-packing property is
preferred over any info from the caps.
2015-06-11 11:01:38 +10:00
Tim-Philipp Müller
c3c306b486 x264enc: don't artificially limit max allowed value of "threads" property
In auto mode it will happily chose much higher values anyway,
and a limit of 4 seems a bit low these days.
2015-05-26 17:58:18 +01:00
Jan Schmidt
5dfd112521 dvdread: Also reset the first_seek var in start()
Make the initial chapter seek work across reuse.

https://bugzilla.gnome.org/show_bug.cgi?id=453322
2015-05-12 22:06:15 +10:00
Jan Schmidt
bc7e8282d3 dvdread: Work around basesrc initial seek
Ignore the initial seek basesrc sends, as it
breaks starting from another chapter by
immediately seeking back to the start of the title
2015-05-12 21:52:24 +10:00
Tim-Philipp Müller
f034f77b73 docs: update example pipelines in element docs
Mostly gst-launch -> gst-launch-1.0, but also
use autoaudiosink/autovideosink in more places
and update pipelines a little or flesh out
descriptions.
2015-05-10 11:34:33 +01:00
Tim-Philipp Müller
19fd6f240d Remove obsolete Android build cruft
This is not needed any longer.
2015-04-26 17:56:31 +01:00
Vincent Penquerc'h
f529481b3d a52dec: fix race in liba52dec lookup table initialization
a52_init initializes the IMDCT global state as well as creating
a new state. When two A52 decoders are created (eg, when two AC3
tracks are contained in a video), calls to a52_init may happen
at the same time, and the IMDCT initialization is not reentrant.

https://bugzilla.gnome.org/show_bug.cgi?id=746781
2015-04-03 09:57:38 +01:00
Guillaume Desmottes
ca5fd56862 mpeg2dec: fix buffer leak in crop_buffer()
gst_buffer_pool_acquire_buffer() gives us a new owned buffer while
gst_buffer_replace() reffed it as well so we were one reference extra.

https://bugzilla.gnome.org/show_bug.cgi?id=746887
2015-03-30 16:19:00 -04:00
Luis de Bethencourt
31bf54a076 mpeg2dec: fix memory leak
CID #1291630
2015-03-24 12:51:36 +00:00
Luis de Bethencourt
d077a3a300 mpeg2dec: initialize buffer
Buffer needs to be null before passing it to gst_buffer_pool_acquire_buffer()

CID #1291634
2015-03-24 10:29:52 +00:00
Nicolas Dufresne
35c937f2a4 mpeg2dec: Add stride support
This allow using external pools that have different strides from the
default. These strides need to respect certain rules, which we check
and if these are not met, we fallback to generic pool.

https://bugzilla.gnome.org/show_bug.cgi?id=735379
2015-03-13 17:00:03 +00:00
Nicolas Dufresne
7e8050728a mpeg2dec: Re-implement pool handling
This is a rewrite of the pool negotiation and configuration. Direct
to output decoding is now achieved by configuring the pool using
video-alignment. This removes copies when dealing with any elements that
supports VideoAlignment, and enable usage of generic video buffer pool,
XVImagePool and GLPool. It drops the crop meta implementation for now.

https://bugzilla.gnome.org/show_bug.cgi?id=735379
2015-03-13 09:56:00 +00:00
Tim-Philipp Müller
0a467495c2 Fix double semicolons 2015-03-10 09:32:51 +00:00
Nicolas Dufresne
77126f73c5 Revert "mpeg2dec: Fix handling of stride"
This reverts commit f3e8dcb9de.
2015-03-09 19:11:51 +00:00
Nicolas Dufresne
d86e34a41e Revert "mpeg2dec: Use propose unref method for buffer"
This reverts commit 63b43d3bee.
2015-03-09 19:11:44 +00:00
Nicolas Dufresne
63b43d3bee mpeg2dec: Use propose unref method for buffer 2015-03-09 18:43:43 +00:00
Simon Farnsworth
f3e8dcb9de mpeg2dec: Fix handling of stride
A pipeline like:

gst-launch-1.0 filesrc location=file.ts ! tsdemux ! mpegvideoparse ! mpeg2dec  ! vaapisink

would look bad when file.ts contains 704x576 video, because vaapisink would
give you buffers of stride 768, but libmpeg2 was not told about this and
used a stride of 704.

Tell libmpeg2 about the stride from  downstream; in the process, teach it to
reject buffer pools that don't meet libmpeg2's chroma stride requirements

Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk>
2015-02-15 15:11:41 -06:00
Sebastian Dröge
7dc03df3de Improve and fix LATENCY query handling
This now follows the design docs everywhere, especially the maximum latency
handling.

https://bugzilla.gnome.org/show_bug.cgi?id=744106
2015-02-11 13:56:48 +01:00
Sebastian Dröge
5dd1a28906 x264enc: Don't set max latency to the same value as the encoder latency
The meaning of the max latency is *not* the maximum latency this element will
introduce. It is the maximum latency this element can endure without
overflowing any buffers, which is infinite for x264enc.

Fixes latency configuration in zero latency mode, where max latency was
becoming 0... which usually won't work well if something else introduces
latency as then max < min in the end, and latency configuration just fails.
2015-02-06 19:04:32 +01:00