Commit b388c95b authored by Sebastian Dröge's avatar Sebastian Dröge 🍵

Release 1.5.1

parent 3a3e18a5
=== release 1.5.1 ===
2015-06-07 Sebastian Dröge <>
releasing 1.5.1
2015-06-07 09:36:00 +0200 Sebastian Dröge <>
* po/eo.po:
* po/fr.po:
po: Update translations
2015-06-02 16:31:10 +0200 Edward Hervey <>
* tests/check/elements/amrnbenc.c:
* tests/check/elements/mpeg2dec.c:
* tests/check/elements/x264enc.c:
* tests/check/elements/xingmux.c:
* tests/check/pipelines/lame.c:
check: Use GST_CHECK_MAIN () macro everywhere
Makes source code smaller, and ensures we go through common initialization
path (like the one that sets up XML unit test output ...)
2015-05-26 17:58:18 +0100 Tim-Philipp Müller <>
* ext/x264/gstx264enc.c:
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-12 22:05:02 +1000 Jan Schmidt <>
* ext/dvdread/dvdreadsrc.c:
dvdread: Also reset the first_seek var in start()
Make the initial chapter seek work across reuse.
2015-05-12 21:52:24 +1000 Jan Schmidt <>
* ext/dvdread/dvdreadsrc.c:
* ext/dvdread/dvdreadsrc.h:
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-10 11:34:33 +0100 Tim-Philipp Müller <>
* ext/a52dec/gsta52dec.c:
* ext/amrnb/amrnbdec.c:
* ext/amrnb/amrnbenc.c:
* ext/amrwbdec/amrwbdec.c:
* ext/cdio/gstcdiocddasrc.c:
* ext/lame/gstlamemp3enc.c:
* ext/mad/gstmad.c:
* ext/sidplay/
* ext/twolame/gsttwolamemp2enc.c:
* ext/x264/gstx264enc.c:
* gst/realmedia/rademux.c:
* gst/xingmux/gstxingmux.c:
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
2015-04-27 10:57:12 +0100 Luis de Bethencourt <>
* gst/dvdlpcmdec/gstdvdlpcmdec.c:
* gst/realmedia/rdtdepay.c:
Rename property enums from ARG_ to PROP_
Property enum items should be nameed PROP_ for consistency and readability.
2015-04-26 17:56:22 +0100 Tim-Philipp Müller <>
* ext/mad/
* ext/x264/
* gst/asfdemux/
* gst/dvdlpcmdec/
* gst/dvdsub/
* gst/realmedia/
* gst/xingmux/
Remove obsolete Android build cruft
This is not needed any longer.
2015-04-24 17:05:20 +0100 Luis de Bethencourt <>
* gst/realmedia/pnmsrc.c:
realmedia: remove unused enum item PROP_LAST
2015-04-23 16:23:01 +0100 Tim-Philipp Müller <>
* tests/check/
Make sure the test environment is set up.
2015-04-23 16:22:39 +0100 Tim-Philipp Müller <>
configure: bump automake requirement to 1.14 and autoconf to 2.69
This is only required for builds from git, people can still
build tarballs if they only have older autotools.
2015-04-23 16:22:30 +0100 Tim-Philipp Müller <>
* .gitignore:
Update .gitignore
2015-04-22 10:37:54 +0200 Sebastian Dröge <>
* LICENSE_readme:
Remove LICENSE_readme
It's completely outdated and just confusing, better if people are
forced to look at the actual code in question than trusting this file.
2015-04-22 10:37:43 +0200 Sebastian Dröge <>
Remove INSTALL file
autotools automatically generate this, and when using different versions
for there will always be changes to a file tracked by git.
2015-04-20 14:35:30 +0900 Cliff Han <>
* gst/asfdemux/gstasfdemux.c:
asfdemux: fix a seek failure due to out-of-range in push mode
A seek in push mode failed for big offsets which are beyond
the range of guint32.
2015-04-08 16:52:06 +0200 Edward Hervey <>
* common:
* tests/check/
Needed by the new automake test runner
2015-04-03 18:58:03 +0100 Tim-Philipp Müller <>
* common:
Automatic update of common submodule
From bc76a8b to c8fb372
2015-04-02 17:24:05 +0100 Vincent Penquerc'h <>
* ext/a52dec/gsta52dec.c:
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.
2015-03-27 14:41:51 +0100 Guillaume Desmottes <>
* ext/mpeg2dec/gstmpeg2dec.c:
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.
2015-03-28 16:58:26 +0100 Mark Nauwelaerts <>
* gst/realmedia/rmdemux.c:
rmdemux: resurrect some flow return handling
2015-03-28 16:57:06 +0100 Mark Nauwelaerts <>
* gst/asfdemux/gstasfdemux.c:
asfdemux: resurrect some flow return handling
2015-03-24 12:50:43 +0000 Luis de Bethencourt <>
* ext/mpeg2dec/gstmpeg2dec.c:
mpeg2dec: fix memory leak
CID #1291630
2015-03-24 10:29:48 +0000 Luis de Bethencourt <>
* ext/mpeg2dec/gstmpeg2dec.c:
mpeg2dec: initialize buffer
Buffer needs to be null before passing it to gst_buffer_pool_acquire_buffer()
CID #1291634
2015-03-13 17:00:03 +0000 Nicolas Dufresne <>
* ext/mpeg2dec/gstmpeg2dec.c:
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.
2015-03-10 16:45:01 +0000 Nicolas Dufresne <>
* ext/mpeg2dec/gstmpeg2dec.c:
* ext/mpeg2dec/gstmpeg2dec.h:
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.
2015-03-10 09:33:15 +0000 Tim-Philipp Müller <>
* gst/dvdsub/gstdvdsubdec.c:
dvbsub: fix indentation
2015-03-10 09:32:51 +0000 Tim-Philipp Müller <>
* ext/dvdread/dvdreadsrc.c:
* gst/dvdsub/gstdvdsubdec.c:
Fix double semicolons
2015-03-09 19:11:51 +0000 Nicolas Dufresne <>
* ext/mpeg2dec/gstmpeg2dec.c:
Revert "mpeg2dec: Fix handling of stride"
This reverts commit f3e8dcb9de4d546e7d80ccc1754ed13dd4e7ac81.
2015-03-09 19:11:44 +0000 Nicolas Dufresne <>
* ext/mpeg2dec/gstmpeg2dec.c:
Revert "mpeg2dec: Use propose unref method for buffer"
This reverts commit 63b43d3bee832aec353d02575da543f3c73f6893.
2015-03-09 18:43:43 +0000 Nicolas Dufresne <>
* ext/mpeg2dec/gstmpeg2dec.c:
mpeg2dec: Use propose unref method for buffer
2015-01-21 18:29:22 +0000 Simon Farnsworth <>
* ext/mpeg2dec/gstmpeg2dec.c:
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 <>
2015-02-11 13:56:48 +0100 Sebastian Dröge <>
* ext/x264/gstx264enc.c:
* gst/asfdemux/gstasfdemux.c:
Improve and fix LATENCY query handling
This now follows the design docs everywhere, especially the maximum latency
2015-02-06 19:04:32 +0100 Sebastian Dröge <>
* ext/x264/gstx264enc.c:
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-02 14:13:10 +0000 Vincent Penquerc'h <>
* ext/x264/gstx264enc.c:
x264enc: set annexb=1 in byte stream mode when downstream has ANY caps
This matches what is done when downstream caps are not ANY, and fixes
prerolling in byte stream mode when typefind is downstream.
2015-01-21 09:56:41 +0100 Sebastian Dröge <>
* ext/lame/gstlamemp3enc.c:
* ext/twolame/gsttwolamemp2enc.c:
Constify some static arrays everywhere
2015-01-18 16:53:41 +0000 Tim-Philipp Müller <>
configure: remove non-ported plugins stuff
It's not needed any longer, all plugins in -ugly
have been ported.
2015-01-18 11:07:43 -0500 Nicolas Dufresne <>
* ext/x264/gstx264enc.c:
x264enc: Don't set an allocation maximum
There is no reason x264enc should enforce a maximum allocation size.
The maximum is normally set by buffer pool which cannot grow, but we
don't offer a buffer pool. This would lead to stall when used with
element that don't implement allocation query.
Related to:
2015-01-12 16:10:45 +0100 Stefan Sauer <>
* common:
Automatic update of common submodule
From f2c6b95 to bc76a8b
2014-12-22 11:46:27 +0100 Sebastian Dröge <>
MAINTAINERS: Update my mail address
2014-12-18 10:54:30 +0100 Sebastian Dröge <>
* common:
Automatic update of common submodule
From ef1ffdc to f2c6b95
2014-11-27 17:11:30 +0100 Edward Hervey <>
* common:
Automatic update of common submodule
From 7bb2bce to ef1ffdc
2014-06-06 13:59:57 +0100 Vincent Penquerc'h <>
* gst/dvdlpcmdec/gstdvdlpcmdec.c:
dvdlpcmdec: set channel positions using the appropriate API
2014-11-05 23:34:56 +0000 Tim-Philipp Müller <>
* gst/asfdemux/gstasfdemux.c:
asfdemux: fix comment
2014-11-05 13:45:29 +0100 Edward Hervey <>
* gst/asfdemux/gstasfdemux.c:
asfdemux: Send duration query upstream first
An upstream element (like mms or some dlna source) might be able to
answer the query. Try that first, else fallback to standard logic
2014-11-02 17:31:05 +0000 Tim-Philipp Müller <>
* gst/asfdemux/asfpacket.c:
asf: fix up file mode
2014-10-27 17:58:14 +0100 Sebastian Dröge <>
* common:
Automatic update of common submodule
From 84d06cd to 7bb2bce
2014-10-21 19:46:03 +0100 Tim-Philipp Müller <>
tests: parallelise 'make check-valgrind'
2014-10-21 13:02:03 +0100 Tim-Philipp Müller <>
* common:
Automatic update of common submodule
From a8c8939 to 84d06cd
2014-10-21 12:58:58 +0200 Stefan Sauer <>
* common:
Automatic update of common submodule
From 36388a1 to a8c8939
2014-08-22 10:46:35 +0200 Guillaume Desmottes <>
* gst/asfdemux/gstasfdemux.c:
asfdemux: first try to delegate TIME seek events upstream
We should give a chance to upstream to handle TIME seek events before trying
to handle it in asfdemux.
Fix a bug where fast backward seeks where discarded right away because they
were not supported by asfdemux.
2014-09-04 16:57:02 +0200 Guillaume Desmottes <>
* gst/asfdemux/asfheaders.c:
* gst/asfdemux/asfheaders.h:
* gst/asfdemux/gstasfdemux.c:
We can safely ignore those but best to claim to understand this object type so
we don't raise a warning.
2014-08-21 12:09:23 -0300 Thiago Santos <>
* gst/asfdemux/gstasfdemux.c:
* gst/asfdemux/gstasfdemux.h:
asfdemux: if video is h264, check the codec_data for bytestream data
For bytestream we don't want to expose it as codec_data but rather as
streamheader as it is not out-of-band data but data that should be
prepended to the beginning of the stream before the other buffers.
2014-08-10 19:13:10 +0100 Tim-Philipp Müller <>
* docs/plugins/inspect/plugin-a52dec.xml:
* docs/plugins/inspect/plugin-amrnb.xml:
* docs/plugins/inspect/plugin-amrwbdec.xml:
* docs/plugins/inspect/plugin-asf.xml:
* docs/plugins/inspect/plugin-cdio.xml:
* docs/plugins/inspect/plugin-dvdlpcmdec.xml:
* docs/plugins/inspect/plugin-dvdread.xml:
* docs/plugins/inspect/plugin-dvdsub.xml:
* docs/plugins/inspect/plugin-lame.xml:
* docs/plugins/inspect/plugin-mad.xml:
* docs/plugins/inspect/plugin-mpeg2dec.xml:
* docs/plugins/inspect/plugin-realmedia.xml:
* docs/plugins/inspect/plugin-siddec.xml:
* docs/plugins/inspect/plugin-twolame.xml:
* docs/plugins/inspect/plugin-x264.xml:
* docs/plugins/inspect/plugin-xingmux.xml:
docs: update for git master
2014-08-06 12:07:09 -0300 Thiago Santos <>
* gst/asfdemux/gstasfdemux.c:
asfdemux: simplify log statement
Use the GST_PTR_FORMAT to print the buffer
2014-08-05 19:47:26 +0100 Tim-Philipp Müller <>
* ext/x264/gstx264enc.c:
x264: fix colour inversion with YV12 format
It's the same as I420 but with the U/V planes swapped.
2014-08-01 10:37:44 +0200 Edward Hervey <>
* common:
Makefile: Add usage of build-checks step
Allows building checks without running them
2014-07-08 16:45:45 -0400 Nicolas Dufresne <>
* ext/x264/gstx264enc.c:
x264enc: Request buffers in allocation query
2014-06-06 20:23:15 -0400 Nicolas Dufresne <>
* ext/x264/gstx264enc.c:
* ext/x264/gstx264enc.h:
x264enc: Shift both PTS and DTS to ensure positive timestamp
Currently we only shift DTS to compensate that we don't support negative
timestamp. This cause a problem that PTS is no longer >= DTS and may
make muxers live much harder. Instead, shift both PTS/DTS forward. Also
remove all the hack to handle this which seems the result of thinking libx264
is bugged.
2014-07-19 18:04:46 +0200 Sebastian Dröge <>
Back to development
=== release 1.4.0 ===
2014-07-19 Sebastian Dröge <>
2014-07-19 17:44:06 +0200 Sebastian Dröge <>
* ChangeLog:
releasing 1.4.0
* docs/plugins/inspect/plugin-a52dec.xml:
* docs/plugins/inspect/plugin-amrnb.xml:
* docs/plugins/inspect/plugin-amrwbdec.xml:
* docs/plugins/inspect/plugin-asf.xml:
* docs/plugins/inspect/plugin-cdio.xml:
* docs/plugins/inspect/plugin-dvdlpcmdec.xml:
* docs/plugins/inspect/plugin-dvdread.xml:
* docs/plugins/inspect/plugin-dvdsub.xml:
* docs/plugins/inspect/plugin-lame.xml:
* docs/plugins/inspect/plugin-mad.xml:
* docs/plugins/inspect/plugin-mpeg2dec.xml:
* docs/plugins/inspect/plugin-realmedia.xml:
* docs/plugins/inspect/plugin-siddec.xml:
* docs/plugins/inspect/plugin-twolame.xml:
* docs/plugins/inspect/plugin-x264.xml:
* docs/plugins/inspect/plugin-xingmux.xml:
* gst-plugins-ugly.doap:
* win32/common/config.h:
Release 1.4.0
2014-07-19 16:50:04 +0200 Sebastian Dröge <>
* po/af.po:
* po/az.po:
* po/bg.po:
* po/ca.po:
* po/cs.po:
* po/da.po:
* po/de.po:
* po/el.po:
* po/en_GB.po:
* po/eo.po:
* po/es.po:
* po/eu.po:
* po/fi.po:
* po/fr.po:
* po/gl.po:
* po/hr.po:
* po/hu.po:
* po/id.po:
* po/it.po:
* po/ja.po:
* po/lt.po:
* po/lv.po:
* po/ms.po:
* po/mt.po:
* po/nb.po:
* po/nl.po:
* po/or.po:
* po/pl.po:
* po/pt_BR.po:
* po/ro.po:
* po/ru.po:
* po/sk.po:
* po/sl.po:
* po/sq.po:
* po/sr.po:
* po/sv.po:
* po/tr.po:
* po/uk.po:
* po/vi.po:
* po/zh_CN.po:
Update .po files
2014-07-19 12:48:11 +0200 Sebastian Dröge <>
This is GStreamer Ugly Plugins 1.4.0
Changes since 1.2:
New API:
• GstMessageType has GST_MESSAGE_EXTENDED added. All types before
that can be used together as a flags type as before, but from
that message onwards the types are just counted incrementally.
This was necessary to be able to add more message types.
In 2.0 GstMessageType will just become an enum and not a flags
type anymore.
• GstDeviceMonitor for device probing, e.g. to list all available
audio or video capture devices. This is the replacement for
GstPropertyProbe from 0.10.
• Events accumulate the running-time offset now when travelling
through pads, as set by the gst_pad_set_offset() function. This
allows to compensate for this in the QOS event for example.
• GstBuffer has a new flag "tag-memory" that is set automatically
when memory is added or removed to a buffer. This allows buffer
pools to detect if they can recycle a buffer or need to reset
it first.
• GstToc has new API to mark GstTocEntries as loops.
• A not-authorized resource error has been defined to notify
applications that accessing the resource has failed because
of missing authorization and to distinguish this case from others.
This change is actually already in 1.2.4.
• GstPad has a new flag "accept-intersect", that will let the default
ACCEPT_CAPS query handler do an intersection instead of subset check.
This is interesting for parser elements that can handle incomplete
• GstCollectPads has support for flushing and a default handler for
SEEK events now.
• New GstFlowAggregator helper object that simplifies handling of
flow returns in elements with multiple source pads. Additionally
GstPad now always stores the last flow return and provides an
API to retrieve it.
• GstSegment has new API to offset the running time by a specific
value and this is used in GstPad to allow positive and negative
offsets in gst_pad_set_offset() in all situations.
• Support for h265/HEVC and VP8 has been added to the codec utils and codec
parsers library, and was integrated into various elements.
• API for adjusting the TLS validation of RTSP connection has been added.
• The RTSP and SDP library has MIKEY (RFC 3830) support now, and
there is API to distinguish between the different RTSP profiles.
• API to access RTP time information and statistics.
• Support for auxiliary streams was added to rtpbin.
• Support for tiled, raw video formats has been added.
• GstVideoDecoder and GstAudioDecoder have API to help aggregating tag
events and merge custom tags into them consistently.
• GstBufferPool has support for flushing now.
• playbin/playsink has support for application provided audio and video
• GstDiscoverer has new and simplified API to get details about missing
plugins and information to pass to the plugin installer.
• The GL library was merged from gst-plugins-gl to gst-plugins-bad,
providing a generic infrastructure for handling GL inside GStreamer
pipelines and a plugin with some elements using these, especially
a video sink. Supported platforms currently are Android, Cocoa (OS X),
DispManX (Raspberry Pi), EAGL (iOS), WGL (Windows) and generic X11,
Wayland and EGL platforms.
This replaces eglglessink and also is supposed to replace osxvideosink.
• New GstAggregator base class in gst-plugins-bad. This is supposed to
replace GstCollectPads in the future and fix long-known shortcomings
in its API. Together with the base class some elements are provided
already, like a videomixer (compositor).
Major changes:
• New plugins and elements:
∘ v4l2videodec element for accessing hardware codecs on
platforms that make them accessible via V4L2, e.g.
Samsung Exynos. This comes together with major refactoring
of the existing V4L2 elements and the corresponding
The v4l2videodec element replaces the mfcdec element.
∘ New downloadbuffer element that replaces the download
buffering feature of queue2. Compared to queue2's code
it is much simpler and only for this single use case.
A noteworthy new feature is that it's downloading gaps
in the already downloaded stream parts when nothing else
is to be downloaded.
This is now used by playbin when download buffering is
∘ rtpstreampay and rtpstreamdepay elements for transmitting
RTP packets over a stream API (e.g. TCP) according to
RFC 4571.
∘ rtprtx elements for standard compliant implementation of
retransmissions, integrated into the rtpmanager plugin.
∘ audiomixer element that mixes multiple audio streams together
into a single one while keeping synchronization. This is
planned to become the replacement of the adder element.
∘ OpenNI2 plugin for 3D cameras like the Kinect camera.
∘ OpenEXR plugin for decoding high-dynamic-range EXR images.
∘ curlsshsink and curlsftpsink to write files via SSH/SFTP.
∘ videosignal, ivfparse and sndfile plugins ported from 0.10.
∘ avfvideosrc, vtdec and other elements were ported from 0.10 and
are available on OS X and iOS now.
• Other changes:
∘ gst-libav now uses libav 10.2, and gained support for H265/HEVC.
∘ Support for hardware codecs and special memory types has been
improved with bugfixes and feature additions in various plugins
and base classes.
∘ Various bugfixes and improvements to buffering in queue2 and
multiqueue elements.
∘ dvbsrc supports more delivery mechanisms and other features
now, including DVB S2 and T2 support.
∘ The MPEGTS library has support for many more descriptors.
∘ Major improvements to tsdemux and tsparse, especially time and
seeking related.
∘ souphttpsrc now has support for keep-alive connections,
compression, configurable number of retries and configuration
for SSL certificate validation.
∘ hlsdemux has undergone major refactoring and works more
reliable now and supports more HLS features like trick modes.
Also fragments are pushed downstream while they're downloaded
now instead of waiting for each fragment to finish.
∘ dashdemux and mssdemux are now also pushing fragments downstream
while they're downloaded instead of waiting for each fragment to
∘ videoflip can automatically flip based on the orientation tag.
∘ openjpeg supports the OpenJPEG2 API.