Commit graph

138 commits

Author SHA1 Message Date
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
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
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
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
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
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
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
Sebastian Dröge
ef182de45f gst: Add better support for static plugins 2013-04-15 15:56:02 +02:00
Tim-Philipp Müller
9c690b2018 Fix FSF address
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-03 20:40:37 +00:00
Tim-Philipp Müller
c7fd90c842 gst_tag_list_free -> gst_tag_list_unref 2012-08-04 16:13:36 +01:00
Julien Isorce
6f0f28af45 a52dec: really prefer the original number (and position) of channels
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=676495
2012-05-24 15:52:42 +02:00
Руслан Ижбулатов
b199334a6b a52dec: adapt to work also with new liba52
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674091
2012-05-17 13:15:05 +02:00
Mark Nauwelaerts
4d97760993 a52dec: trigger renegotiation upon changed stream channels
Fixes #675451
2012-05-17 13:08:55 +02:00
Alban Browaeys
43afed8752 a52dec: fix first_access bigger than 2
gst_buffer_extract returns the number of bytes extracted, here 2 max.
Set size to the buffer size as was done in 0.10 to avoid first_access
error when it bypass 2.

https://bugzilla.gnome.org/show_bug.cgi?id=673434
2012-04-15 14:46:35 +01:00
Tim-Philipp Müller
08d20e4da8 Use new gst_element_class_set_static_metadata() 2012-04-10 00:47:44 +01:00
Sebastian Dröge
29a893b494 gst: Update for GST_PLUGIN_DEFINE() API changes 2012-04-05 17:40:12 +02:00
Sebastian Dröge
9e5a55a70f gst: Update versioning 2012-04-04 14:38:53 +02:00
Sebastian Dröge
90b1e8ac71 ext: Update for audio decoder API changes 2012-03-30 11:54:17 +02:00
Tim-Philipp Müller
ef64b43ac8 Merge remote-tracking branch 'origin/master' into 0.11
So 0.11 folks also get amr include fixes.

Conflicts:
	ext/a52dec/gsta52dec.c
	ext/mad/gstmad.c
2012-03-20 12:08:23 +00:00
Mark Nauwelaerts
110a993cc9 a52dec: use base class tag handling helper
... so as to ensure these to be handled and sent at proper time.
2012-03-06 16:20:10 +01:00
Sebastian Dröge
acde15adc3 a52dec: Use new audio encoder/decoder base class API for srcpad caps 2012-02-01 16:27:49 +01:00
Sebastian Dröge
74de5954af Merge branch 'master' into 0.11
Conflicts:
	ext/a52dec/gsta52dec.c
2012-01-25 13:03:33 +01:00
Wim Taymans
56a07a14b5 port to new memory API 2012-01-25 11:57:07 +01:00
Vincent Penquerc'h
1651493ae0 a52dec: fix read buffer overflow upon syncing
The wrong size was being decremented, leading to a runaway
read loop.
2012-01-19 15:27:22 +00:00
Mark Nauwelaerts
2e7b2d8bdf a52dec: plug buffer leak 2012-01-12 13:26:31 +01:00
Mark Nauwelaerts
8cd2408f09 a52dec: plug buffer leak 2012-01-12 13:20:26 +01:00
Sebastian Dröge
69acbc53e9 a52dec: Fix some merge mistakes 2012-01-10 15:25:12 +01:00
Sebastian Dröge
31063f0098 Merge branch 'master' into 0.11
Conflicts:
	ext/a52dec/gsta52dec.c
	ext/a52dec/gsta52dec.h
	ext/lame/gstlame.c
	ext/lame/gstlame.h
	ext/lame/gstlamemp3enc.c
	ext/mad/gstmad.c
	ext/mad/gstmad.h
	gst/mpegaudioparse/gstmpegaudioparse.c
	gst/mpegstream/gstdvddemux.c
	gst/realmedia/rdtdepay.c
	po/es.po
	po/lv.po
	po/sr.po
2012-01-10 15:17:11 +01:00
Sebastian Dröge
882aaf0de2 a52dec: Update for the new raw audio caps 2012-01-05 10:37:04 +01:00
Julien Isorce
24fca6cde5 a52dec: check that a52_init returns a valid a52 state 2011-12-20 12:45:52 +01:00
Mark Nauwelaerts
d55d4054bd a52dec: port to audiodecoder 2011-12-14 17:37:50 +01:00
Sebastian Dröge
220b88fcc1 a52dec: Don't claim to support upstream renegotiation
and use fixed caps on the srcpad. To correctly support
upstream renegotiation a52dec would need to check if the
caps of the downstream allocated buffer are the requested
caps or if the size is different.

Fixes bug #665989.
2011-12-13 14:54:18 +01:00
Julien Isorce
cdf8d0f6b2 a52dec: Check that the a52_state is correctly initialized 2011-12-13 14:52:26 +01:00
Vincent Penquerc'h
213ce049ad various: fix pad template ref leaks
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:10:01 +00:00
Wim Taymans
2679b9432a add parent to pad functions 2011-11-17 15:25:58 +01:00
Wim Taymans
e59ba7ca05 tags: update for tag API removal 2011-11-02 12:09:45 +01:00
Tim-Philipp Müller
1905e95cea ext, gst: update for taglist API changes 2011-10-30 11:51:58 +00:00
Wim Taymans
5737f8cc82 port a52dec to 0.11 2011-09-26 19:03:13 +02:00
Stefan Kost
3bb4b5069e various (ext): add a missing G_PARAM_STATIC_STRINGS flags 2010-10-19 10:06:33 +03:00
Sebastian Dröge
e0cd55c805 a52dec: Call orc_init() before trying to get target flags 2010-06-14 15:33:14 +02:00
Sebastian Dröge
21d90d5539 a52dec: Remove debug printf... 2010-06-14 14:34:56 +02:00
Sebastian Dröge
359260bd5b a52dec: Use orc for CPU feature detection and don't check for liboil 2010-06-14 14:34:25 +02:00
Benjamin Otte
9850bd814f gst_element_class_set_details => gst_element_class_set_details_simple 2010-03-18 15:53:14 +01:00
Jan Schmidt
0cdfa3dcd2 a52dec: Fix debug statement: Pass pos variable instead of time() function 2009-11-04 15:52:09 +00:00
Jan Schmidt
3e81d5f2c8 a52dec: Fix reference leak on all input buffers in 'dvd mode'
https://bugzilla.gnome.org/show_bug.cgi?id=598272
2009-10-13 14:28:48 +01:00
Jan Schmidt
020cf2c0f9 a52dec: Add some debugging for new segment events 2009-10-12 11:26:30 +01:00
Sebastian Dröge
f5f10797ff a52dec: Only add the MM_ACCEL_DJBFFT flag if it's defined
It's not defined for older liba52 versions.
2009-08-23 13:35:46 +02:00
Mart Raudsepp
ebfe6c0746 a52dec: Allow liba52 to use djbfft based IMDCT transform
liba52 in a52dec-0.7.4 does not have any MMX, MMXEXT or 3DNOW based
IMDCT transform acceleration. It does however have a software based
acceleration using the djbfft library (D.J. Bernstein's library for
fourier transforms - Extremely fast library for floating-point
convolution). So allow liba52 to use it through the MM_ACCEL_DJBFFT
flag.
The liba52 copy in MPlayer sources does have SSE, 3dnowext, 3dnow
and AltiVec implementations, but those are checked for first, and
djbfft is chosen only if none of those is available - good in the
case of some distributions including a port of the MPlayer changes
in their system a52dec library.

The down and upmix code in liba52 doesn't seem to be disturbed by
this additional MM_ACCEL flag and will still use MMX, SSE or 3DNOW
versions if passed from oil_cpu_get_flags (SSE currently is not).

Fixes bug #592787.
2009-08-23 13:34:32 +02:00
Jan Schmidt
dc7f71fb53 a52dec: Reconcile code with dtsdec
Perform some cleanups based on the dtsdec code such as using the boilerplate
macro and static pad template functions.

Add some documentation. Don't register a change in flags until we synch on
another frame successfully.
2009-05-20 11:25:01 +01:00