=== release 1.4.5 ===
2014-12-18 Sebastian Dröge <
[email protected]>
* configure.ac:
releasing 1.4.5
2014-12-18 12:06:04 +0100 Sebastian Dröge <
[email protected]>
* 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/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:
* po/zh_HK.po:
* po/zh_TW.po:
po: Update translations
2014-12-08 21:26:18 +0100 Patrick Radizi <
[email protected]>
* gst/rtp/gstrtph264pay.c:
rtph264pay: Fixes buffer leak when using SPS/PPS
Fixes a buffer leak that would occurr if the pipeline was shutdown
while a SPS/PPS header was being created.
https://bugzilla.gnome.org/show_bug.cgi?id=741271
2014-11-21 11:54:18 +0100 Thibault Saunier <
[email protected]>
* gst/deinterlace/gstdeinterlace.c:
Deinterlace: in query_caps return only supported formats if filter is interlaced
In some cases the currently set GstVideoInfo is not interlaced, but
upstream caps are interlaced and the info is passed in the filter,
we should take that info into account and make sure that we do not
consider that case as a "pass through" case.
https://bugzilla.gnome.org/show_bug.cgi?id=741407
2014-12-03 11:12:55 +0100 Thibault Saunier <
[email protected]>
* gst/rtpmanager/gstrtpjitterbuffer.c:
rtpjitterbuffer: Use an empty iterator in iterate_internal_link when no links
We used to setup an iterator with 1 GValue set with a NULL object
pointer which is not the normal way to do that. Instead we should make
sure that the first call to gst_iterator_next returns GST_ITERATOR_DONE.
2014-12-03 17:26:56 +0100 Thibault Saunier <
[email protected]>
* gst/rtpmanager/gstrtpsession.c:
rtpsession: Use an empty iterator in iterate_internal_link when no links
And not a NULL Iterator, so it is consistent with the way it usually
works and avoid user to need a different code paths to handle that.
2014-12-09 16:38:38 +0100 Thibault Saunier <
[email protected]>
* ext/vpx/gstvp8enc.c:
* ext/vpx/gstvp9enc.c:
vpXenc: CLOCK_TIME_NONE is not a valid min_latency value
We should just use 0 if we do not have the information
2014-12-10 11:35:29 +0100 Sebastian Dröge <
[email protected]>
* gst/audioparsers/gstaacparse.c:
aacparse: Also only unref caps if they're not NULL
2014-12-10 11:34:42 +0100 Sebastian Dröge <
[email protected]>
* gst/audioparsers/gstaacparse.c:
aacparse: gst_pad_get_allowed_caps() will return NULL if there is no peer
2014-12-16 13:25:01 +0100 Wim Taymans <
[email protected]>
* sys/osxvideo/osxvideosink.m:
osxvideosink: clear rectangle structures before use
2014-12-09 15:09:56 -0500 Nicolas Dufresne <
[email protected]>
* sys/v4l2/gstv4l2object.c:
v4l2object: Always set format
Right now we try to be clever by detecting if device format have
changed or not, and skip setting format in this case. This is valid
behaviour with V4L2, but it's also very error prone. The rational
for not setting these all the time is for speed, though I can't
measure any noticeable gain on any HW I own. Also, until recently,
we where doing get/set on the format for each format we where
probing, making it near to impossible that the format would match.
This also fixes bug where we where skipping frame-rate setting if
format didn't change.
https://bugzilla.gnome.org/show_bug.cgi?id=740636
2014-11-02 23:33:23 +0000 Tim-Philipp Müller <
[email protected]>
* sys/v4l2/gstv4l2object.c:
v4l2src: fix a couple of minor leaks
2014-09-29 11:49:45 +0200 Aurélien Zanelli <
[email protected]>
* sys/v4l2/gstv4l2object.c:
v4l2object: set colorspace for output devices
When the v4l2 device is an output device, the application shall set the
colorspace. So map GStreamer colorimetry info to V4L2 colorspace and set
on set_format. In case we have no colorimetry information, we try to
guess it according to pixel format and video size.
https://bugzilla.gnome.org/show_bug.cgi?id=737579
2014-12-11 10:16:06 +0100 Patrick Radizi <
[email protected]>
* gst/rtp/gstrtph264pay.c:
rtph264pay: fix potential crash when shutting down
A race condition in the state change function may cause buffers
to be unreffed while they are still used by the streaming thread
in gst_rtp_h264_pay_send_sps_pps() resulting in a crash. Chain
up to the parent class first in the state change function to
make sure streaming has stopped and only then free those buffers.
https://bugzilla.gnome.org/show_bug.cgi?id=741381
2014-11-29 18:35:42 -0500 Olivier Crête <
[email protected]>
* gst/rtpmanager/gstrtprtxreceive.c:
rtprtxreceive: Use offset when copying header
The header is not always at the start of the packet, so we need to compute
the offset first.
2014-11-28 13:12:46 +0000 Tim-Philipp Müller <
[email protected]>
* ext/taglib/gstapev2mux.cc:
apev2mux: write APE tags at end for wavpack files
http://www.wavpack.com/file_format.txt:
"Both the APEv2 tags and/or ID3v1 tags must come at the end of the
WavPack file, with the ID3v1 coming last if both are present."
WavPack files that contain APEv2 tags at the beginning of the files
are unplayable on players that use FFmpeg (like VLC) and most other
software (except Banshee). Players that use libwavpack directly can
play the files because it skips the tags, but does not recognize the
tag data at that location.
https://bugzilla.gnome.org/show_bug.cgi?id=711437
2014-12-09 14:01:50 +0100 Aurélien Zanelli <
[email protected]>
* sys/v4l2/gstv4l2bufferpool.c:
v4l2bufferpool: set buffer interlace flags when field is V4L2_FIELD_INTERLACED
If v4l2_buffer.field is V4L2_FIELD_INTERLACED, we set corresponding
GstVideoBuffer flags depending on the video standard.
According to V4L2 specification, M/NTSC transmits the bottom field
first, all other standards the top field first.
https://bugzilla.gnome.org/show_bug.cgi?id=737603
2014-10-30 17:41:19 +0000 Simon Farnsworth <
[email protected]>
* sys/v4l2/gstv4l2bufferpool.c:
* sys/v4l2/gstv4l2object.c:
* sys/v4l2/gstv4l2src.c:
v4l2: Clean up interlace support
Rather than try and guess interlace support as part of checking supported
sizes, look for interlace support specifically in its own function.
As a cleanup, use V4L2_FIELD_ANY when probing sizes, which should result in
the driver doing the right thing.
With my capture setup, this gets me the following sample caps:
For 1080i resolution:
video/x-raw, format=(string)YUY2, width=(int)1920, height=(int)1080, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)interleaved, framerate=(fraction){ 25/1, 30/1 }
For 720p resolution:
video/x-raw, format=(string)YUY2, width=(int)1280, height=(int)720, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 50/1, 60/1 }
For 576i/p resolution (both possible at the point of query):
video/x-raw, format=(string)YUY2, width=(int)720, height=(int)576, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string){ progressive, interleaved }, framerate=(fraction){ 25/1, 50/1 }
This, in turn, makes 576i work correctly; with the old code,
the caps would be interlace-mode=progressive for interlaced video.
https://bugzilla.gnome.org/show_bug.cgi?id=726194
2014-12-07 17:33:51 -0500 Nicolas Dufresne <
[email protected]>
* sys/v4l2/gstv4l2bufferpool.c:
v4l2: Workaround libv4l2 RW emulation bug
When libv4l2 emulates RW mode on top of MMAP devices, the queues are
only initialized on first read. The problem is that poll() will fail
if called before the queues are initialized and streaming. Workaround
this by doing a zero size read when pool is started in that IO mode.
https://bugzilla.gnome.org/show_bug.cgi?id=740633
2014-12-07 17:27:37 -0500 Nicolas Dufresne <
[email protected]>
* sys/v4l2/gstv4l2bufferpool.c:
v4l2: Fix RW io mode
In RW, allocator can be null, max_buffers can be zero, and we need not
to wait while the queue is empty since there is no queue.
https://bugzilla.gnome.org/show_bug.cgi?id=740633
2014-11-07 16:41:52 +0100 Aurélien Zanelli <
[email protected]>
* sys/v4l2/gstv4l2bufferpool.c:
v4l2bufferpool: unref pool when v4l2_allocator_new() fails
https://bugzilla.gnome.org/show_bug.cgi?id=739791
2014-11-07 17:06:49 +0100 Aurélien Zanelli <
[email protected]>
* sys/v4l2/gstv4l2allocator.h:
v4l2allocator: fix gst_v4l2_allocator_stop prototype
gst_v4l2_allocator_stop returns a GstV4l2Return, not a gboolean.
https://bugzilla.gnome.org/show_bug.cgi?id=739792
2014-11-26 10:33:09 +0300 Andrei Sarakeev <
[email protected]>
* gst/videocrop/gstaspectratiocrop.c:
* gst/videocrop/gstaspectratiocrop.h:
aspectratiocrop: Handle resolution changes properly
When an caps-event is received, we must immediately change the crop
to videocrop correctly changed caps-event dimension, otherwise the
videocrop will first use the previous value of the crop that when
resizing video to a smaller resolution may cause an error.
https://bugzilla.gnome.org/show_bug.cgi?id=740671
2014-11-30 17:52:47 -0500 Nicolas Dufresne <
[email protected]>
* sys/v4l2/v4l2_calls.h:
v4l2: Remove last include to linux/videodev2.h
We now use and update our internal copy so we no longer have to ifdef
the entire code for features and defines that where added over the
years.
https://bugzilla.gnome.org/show_bug.cgi?id=740905
2014-11-19 16:12:38 +0100 Jan Alexander Steffens (heftig) <
[email protected]>
* gst/flv/gstflvdemux.c:
flvdemux: Restrict resyncing to TS regressions
The behavior of resyncing video and audio indepen-
dently can cause A/V desyncs. Lets restrict resyncs
to jumps backward for now.
https://bugzilla.gnome.org/show_bug.cgi?id=736397
Conflicts:
gst/flv/gstflvdemux.c
2014-11-20 13:14:14 +0100 Wim Taymans <
[email protected]>
* gst/rtp/gstrtpgstdepay.c:
* gst/rtp/gstrtpgstpay.c:
rtpgstpay: put 0-byte at the end of events
Put a 0-byte at the end of the event string. Does not break ABI because
old depayloaders will skip the 0 byte (which is included in the length).
Expect a 0-byte at the end of the event string or a ; for old
payloaders.
See
https://bugzilla.gnome.org/show_bug.cgi?id=737591
2014-11-20 12:40:28 +0100 Wim Taymans <
[email protected]>
* gst/rtp/gstrtpgstdepay.c:
rtpgstdepay: avoid buffer overread.
Check that a caps event string is 0 terminated and the event string is
terminated with a ; to avoid buffer overreads.
Fixes
https://bugzilla.gnome.org/show_bug.cgi?id=737591
2014-11-16 12:34:17 -0500 Nicolas Dufresne <
[email protected]>
* sys/v4l2/gstv4l2bufferpool.c:
* sys/v4l2/gstv4l2bufferpool.h:
* sys/v4l2/gstv4l2src.c:
* sys/v4l2/gstv4l2transform.c:
* sys/v4l2/gstv4l2videodec.c:
v4l2: Handle corrupted buffer with empty payload
This allow skipping buffer flagged with ERROR that has no payload.
This is typical behaviour when a recovererable error occured during
capture in the driver, but that no valid data was ever written into that
buffer. This patch also translate V4L2_BUF_FLAG_ERROR into
GST_BUFFER_FLAG_CORRUPTED. Hence decoding error produce
by decoder due to missing frames will now be correctly marked. Finally,
this fixes a buffer leak when EOS is reached.
https://bugzilla.gnome.org/show_bug.cgi?id=740040
2014-11-20 10:45:07 +0000 Tim-Philipp Müller <
[email protected]>
* gst/isomp4/gstqtmuxmap.c:
qtmux: don't limit max video resolution to 4096x4096
MAX isn't entirely correct as upper limit either,
it should really be MAXUINT32, but it's unlikely
to be a problem in the near future.
https://bugzilla.gnome.org/show_bug.cgi?id=740407
2014-11-19 15:06:00 -0800 Aleix Conchillo Flaqué <
[email protected]>
* gst/rtsp/gstrtspsrc.c:
rtspsrc: fix leak for mikey base64 decoded key-mgmt
https://bugzilla.gnome.org/show_bug.cgi?id=740392
2014-11-17 23:16:03 +1100 Matthew Waters <
[email protected]>
* gst/videomixer/videomixer2.c:
* gst/videomixer/videomixer2.h:
videomixer: fix up QoS handling for live sources
Only attempt adaptive drop when we are not live
https://bugzilla.gnome.org/show_bug.cgi?id=739996
2014-11-09 11:04:33 +0100 Sebastian Dröge <
[email protected]>
* gst/matroska/matroska-mux.c:
matroska-mux: Use G_DEFINE_TYPE() to register the pad instead of manually registering it
2014-11-06 15:37:28 +0100 Göran Jönsson <
[email protected]>
* gst/matroska/matroska-mux.c:
matroskamux: make GstMatroskamuxPad get_type() function thread-safe
https://bugzilla.gnome.org/show_bug.cgi?id=739722
2014-11-01 22:39:41 +0100 Aurélien Zanelli <
[email protected]>
* ext/vpx/gstvp8enc.c:
* ext/vpx/gstvp9enc.c:
vpx: mark arnr-type properties as deprecated and set them to no-op
ARNR type control in libvpx has been deprecated so this commit mark the
vp8enc and vp9enc associated properties as deprecated and change their
behavior to just display a warning message.
https://bugzilla.gnome.org/show_bug.cgi?id=739476
2014-11-06 21:21:40 -0500 Nicolas Dufresne <
[email protected]>
* sys/v4l2/gstv4l2bufferpool.c:
v4l2bufferpool: Improve buffer validation
Improve buffer validation by making sure each memory are the right
one and that each memory is writable. This fixes tearing issues in
case downstream uses gst_buffer_make_writable() or other type
of GstBuffer copy where memory are only reffed.
https://bugzilla.gnome.org/show_bug.cgi?id=739754
2014-11-07 16:11:24 +0100 Aurélien Zanelli <
[email protected]>
* sys/v4l2/gstv4l2allocator.c:
v4l2allocator: fix error message if allocator is already active
https://bugzilla.gnome.org/show_bug.cgi?id=739789