platform/upstream/gst-plugins-good.git
9 years agoqtdemux: Copy flags of the overall segment to output segments
Jan Schmidt [Thu, 11 Dec 2014 13:42:06 +0000 (00:42 +1100)]
qtdemux: Copy flags of the overall segment to output segments

Preserve the segment flags of the overall demux segment on the output
segments for each pad.

9 years agoqtmux: use 64bit chunk_offset
Matej Knopp [Tue, 9 Dec 2014 01:43:00 +0000 (02:43 +0100)]
qtmux: use 64bit chunk_offset

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

9 years agoqtdemux: Fix rounding errors in duration update
Edward Hervey [Wed, 10 Dec 2014 16:39:17 +0000 (17:39 +0100)]
qtdemux: Fix rounding errors in duration update

Make sure we store updated segment stop/duration with the same
granularity as the duration timescale.

And add more debug

9 years agoqtdemux: Update duration when we get more information
Edward Hervey [Wed, 10 Dec 2014 15:55:44 +0000 (16:55 +0100)]
qtdemux: Update duration when we get more information

When dealing with fragmented files, we will get more accurate duration
information via the mfra and moof atoms.

In order for playback to not stop at the initial duration (from the
moov atom), we need to check and update the various duration variables
when we find more information.

Fixes playback of fragmented files in pull mode

9 years agoqtdemux: Remove variable assignments never read
Edward Hervey [Wed, 10 Dec 2014 14:08:40 +0000 (15:08 +0100)]
qtdemux: Remove variable assignments never read

As detected by clang/scan-build

9 years agoqtdemux: Use GstClockTime for nanosecond-based time variables/fields
Edward Hervey [Wed, 10 Dec 2014 13:56:06 +0000 (14:56 +0100)]
qtdemux: Use GstClockTime for nanosecond-based time variables/fields

Avoids confusion with timescaled-based variables and bytes (offset)
variables.
And use GST_CLOCK_TIME_NONE where applicable

9 years agopushfilesrc: Add TIME SEGMENT capability
Edward Hervey [Wed, 3 Dec 2014 13:47:05 +0000 (14:47 +0100)]
pushfilesrc: Add TIME SEGMENT capability

Adds a new set of properties to make pushfilesrc output a TIME SEGMENT
(instead of the filesrc BYTE SEGMENT).

When time-segment is set to True the following will happen:
* Seeks are refused (data starts from the beginning of the file)
* The BYTE segment will be replaced by a TIME segment with the values
  specified in the various properties
* The first outgoing buffer will have a timestamp set on it (by default
  it has a value of GST_CLOCK_TIME_NONE)

9 years agoaacparse: Also only unref caps if they're not NULL
Sebastian Dröge [Wed, 10 Dec 2014 10:35:29 +0000 (11:35 +0100)]
aacparse: Also only unref caps if they're not NULL

9 years agoaacparse: gst_pad_get_allowed_caps() will return NULL if there is no peer
Sebastian Dröge [Wed, 10 Dec 2014 10:34:42 +0000 (11:34 +0100)]
aacparse: gst_pad_get_allowed_caps() will return NULL if there is no peer

9 years agovpXenc: CLOCK_TIME_NONE is not a valid min_latency value
Thibault Saunier [Tue, 9 Dec 2014 15:38:38 +0000 (16:38 +0100)]
vpXenc: CLOCK_TIME_NONE is not a valid min_latency value

We should just use 0 if we do not have the information

9 years agortpsession: Use an empty iterator in iterate_internal_link when no links
Thibault Saunier [Wed, 3 Dec 2014 16:26:56 +0000 (17:26 +0100)]
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.

9 years agov4l2bufferpool: set buffer interlace flags when field is V4L2_FIELD_INTERLACED
Aurélien Zanelli [Tue, 9 Dec 2014 13:01:50 +0000 (14:01 +0100)]
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

9 years agortph264pay: Fixes buffer leak when using SPS/PPS
Patrick Radizi [Mon, 8 Dec 2014 20:26:18 +0000 (21:26 +0100)]
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

9 years agoagingtv: fix memcpy when no color aging requested.
Mathieu Duponchelle [Tue, 9 Dec 2014 03:43:29 +0000 (04:43 +0100)]
agingtv: fix memcpy when no color aging requested.

video_size is the size in pixels, actual size of the memcpy
has to be stride * height.

9 years agov4l2: Workaround libv4l2 RW emulation bug
Nicolas Dufresne [Sun, 7 Dec 2014 22:33:51 +0000 (17:33 -0500)]
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

9 years agov4l2: Fix RW io mode
Nicolas Dufresne [Sun, 7 Dec 2014 22:27:37 +0000 (17:27 -0500)]
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

9 years agov4l2bufferpool: Cleanup uneeded check and cases
Nicolas Dufresne [Wed, 3 Dec 2014 21:40:49 +0000 (16:40 -0500)]
v4l2bufferpool: Cleanup uneeded check and cases

There is nothing in between the break and the "done:" anymore, plus
USERPTR and DMABUF_IMPORT case is exactly the same.

9 years agov4l2pool: Fix CREATE_BUFS support for capture
Nicolas Dufresne [Wed, 3 Dec 2014 22:07:49 +0000 (17:07 -0500)]
v4l2pool: Fix CREATE_BUFS support for capture

This patch fixes CREATE_BUFS support for capture devices. Initially we
would only try and allocate more buffers when the copy threshold
is reached. When the threshold was not set (needed) it would never
happen. Another problem is that on capture side, acquire returns
filled buffer, hence need to pool. We need to set a special flag to
force allocation to happen.

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

9 years agov4l2allocator: Fix CREATE_BUF probing
Nicolas Dufresne [Wed, 3 Dec 2014 21:27:59 +0000 (16:27 -0500)]
v4l2allocator: Fix CREATE_BUF probing

Current for every memory type we where probing MMAP CREATE_BUFS ioct.

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

9 years agomatroskademux: set framerate 0/1 when duration is not known
Nicola Murino [Tue, 18 Nov 2014 15:52:40 +0000 (16:52 +0100)]
matroskademux: set framerate 0/1 when duration is not known

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

9 years agoqtdemux: More fixes for reverse playback
Jan Schmidt [Thu, 4 Dec 2014 06:25:55 +0000 (17:25 +1100)]
qtdemux: More fixes for reverse playback

When seeking or finding the previous keyframe, do
comparisons against targets and segments using composition time
to correctly decide which sample times match.

9 years agortpjitterbuffer: Use an empty iterator in iterate_internal_link when no links
Thibault Saunier [Wed, 3 Dec 2014 10:12:55 +0000 (11:12 +0100)]
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.

9 years agoqtdemux: Handle seeks past EOS as a seek to the end
Jan Schmidt [Wed, 3 Dec 2014 02:20:57 +0000 (13:20 +1100)]
qtdemux: Handle seeks past EOS as a seek to the end

Fix reverse playback of every frame by making seeks past/to EOS
find the last segment and start there.

9 years agortpmpadepay: Relax caps to allow any clock-rate
Olivier Crête [Tue, 2 Dec 2014 20:33:25 +0000 (15:33 -0500)]
rtpmpadepay: Relax caps to allow any clock-rate

Some Wowza setups seem to send an invalid non-90000 clock-rate.

9 years agoqtdemux: don't use GST_CLOCK_TIME_NONE in non GstClockTime variables
Thiago Santos [Tue, 2 Dec 2014 00:04:02 +0000 (21:04 -0300)]
qtdemux: don't use GST_CLOCK_TIME_NONE in non GstClockTime variables

Use -1 instead as those are gint64/guint64 variables and not GstClockTime

9 years agov4l2allocator: fix gst_v4l2_allocator_stop prototype
Aurélien Zanelli [Fri, 7 Nov 2014 16:06:49 +0000 (17:06 +0100)]
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

9 years agov4l2bufferpool: unref pool when v4l2_allocator_new() fails
Aurélien Zanelli [Fri, 7 Nov 2014 15:41:52 +0000 (16:41 +0100)]
v4l2bufferpool: unref pool when v4l2_allocator_new() fails

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

9 years agov4l2: Remove last include to linux/videodev2.h
Nicolas Dufresne [Sun, 30 Nov 2014 22:52:47 +0000 (17:52 -0500)]
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

9 years agoqtdemux: implement seeking in fragmented mp4 files in pull mode based on the mfra...
Tim-Philipp Müller [Sun, 24 Aug 2014 12:38:08 +0000 (13:38 +0100)]
qtdemux: implement seeking in fragmented mp4 files in pull mode based on the mfra table

9 years agoqtdemux: use track fragment decoding time (tfdt) in parse_trun() for interpolation
Tim-Philipp Müller [Sat, 29 Nov 2014 15:25:51 +0000 (15:25 +0000)]
qtdemux: use track fragment decoding time (tfdt) in parse_trun() for interpolation

As fallback if we don't have any existing samples
as reference point yet.

Based on patch by David Corvoysier <david.corvoysier@orange.com>

9 years agoqtdemux: parse mfra random access box for fragmented mp4 files
Tim-Philipp Müller [Sat, 29 Nov 2014 14:37:25 +0000 (14:37 +0000)]
qtdemux: parse mfra random access box for fragmented mp4 files

If it's present, and we operate in pull mode.

9 years agoqtdemux: stop parsing headers for fragmented mp4s at the first moof
Tim-Philipp Müller [Fri, 15 Aug 2014 12:58:26 +0000 (14:58 +0200)]
qtdemux: stop parsing headers for fragmented mp4s at the first moof

Currently during header parsing, we scan through the entire file
and skip every moof+mdat chunk for fragmented mp4s, which makes
start-up incredibly slow. Instead, just stop at the first moof
chunk when have a moov, and start exposing the streams, so we
can go and start handling the moofs for real.

9 years agotests: add interactive gdkpixbufoverlay test
Tim-Philipp Müller [Sat, 29 Nov 2014 13:59:35 +0000 (13:59 +0000)]
tests: add interactive gdkpixbufoverlay test

Just need to fix the coordinate system now so
that negative offsets are actually negative
and not flipped to position things from the
opposite border.

9 years agogdkpixbufoverlay: add "pixbuf" property
Tim-Philipp Müller [Sat, 29 Nov 2014 13:53:03 +0000 (13:53 +0000)]
gdkpixbufoverlay: add "pixbuf" property

So we can set a GdkPixbuf directly instead of
reading it from an image file on the file system.

9 years agogdkpixbuf: remove pixbufscale code that was never ported
Tim-Philipp Müller [Sat, 29 Nov 2014 13:23:50 +0000 (13:23 +0000)]
gdkpixbuf: remove pixbufscale code that was never ported

Don't think we'll need this again.

9 years agortprtxreceive: Use offset when copying header
Olivier Crête [Sat, 29 Nov 2014 23:35:42 +0000 (18:35 -0500)]
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.

9 years agoapev2mux: write APE tags at end for wavpack files
Tim-Philipp Müller [Fri, 28 Nov 2014 13:12:46 +0000 (13:12 +0000)]
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

9 years agotests: add interactive test for gapless playback using SEGMENT seeks
Tim-Philipp Müller [Fri, 28 Nov 2014 10:41:55 +0000 (10:41 +0000)]
tests: add interactive test for gapless playback using SEGMENT seeks

Not working too well yet, there are glitches even with WAV or FLAC.

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

9 years agoaspectratiocrop: Handle resolution changes properly
Andrei Sarakeev [Wed, 26 Nov 2014 07:33:09 +0000 (10:33 +0300)]
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

9 years agoAutomatic update of common submodule
Edward Hervey [Thu, 27 Nov 2014 16:10:53 +0000 (17:10 +0100)]
Automatic update of common submodule

From 7bb2bce to ef1ffdc

9 years agotest: use gst_util_uint64_scale_round() for timestamp to sample calculation
Tim-Philipp Müller [Thu, 27 Nov 2014 11:20:36 +0000 (11:20 +0000)]
test: use gst_util_uint64_scale_round() for timestamp to sample calculation

9 years agotests: add interactive test for accurate seeking
Tim-Philipp Müller [Thu, 27 Nov 2014 11:16:35 +0000 (11:16 +0000)]
tests: add interactive test for accurate seeking

For some audio formats.

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

9 years agoisomp4: Check presence of mfhd in moof
Edward Hervey [Wed, 26 Nov 2014 15:04:26 +0000 (16:04 +0100)]
isomp4: Check presence of mfhd in moof

The 'mfhd' atom is mandatory in 'moof'. We can later on check whether
the fragment number properly increases

9 years agoisomp4: Fix mfro and tfra atom dumping
Edward Hervey [Wed, 26 Nov 2014 14:59:36 +0000 (15:59 +0100)]
isomp4: Fix mfro and tfra atom dumping

mfro was skipping the version/flags
tfra had wrong byte_reader return value checks

9 years agoisomp4: Add mfhd atom dumping
Edward Hervey [Wed, 26 Nov 2014 14:58:26 +0000 (15:58 +0100)]
isomp4: Add mfhd atom dumping

9 years agoqtdemux: Handle empty segments when seeking in reverse play.
Jan Schmidt [Wed, 26 Nov 2014 13:15:02 +0000 (00:15 +1100)]
qtdemux: Handle empty segments when seeking in reverse play.

Empty segments in an edit list have a media_start time of -1,
as they don't actually play any media. Allow for that when
aligning to the reference stream in reverse play.

9 years agoRevert "v4l2allocator: Remove unused variable"
Nicolas Dufresne [Mon, 24 Nov 2014 15:36:54 +0000 (10:36 -0500)]
Revert "v4l2allocator: Remove unused variable"

This reverts commit ad4480d53408a4d97ab531174ef37f258f3253c0.

9 years agoRevert "v4l2: move vb_queue probing from allocator to v4l2object"
Nicolas Dufresne [Mon, 24 Nov 2014 15:36:30 +0000 (10:36 -0500)]
Revert "v4l2: move vb_queue probing from allocator to v4l2object"

This reverts commit ec6b8b84af719d828ddd91c724e715c0b4a556bc.

9 years agoRevert "v4l2object: allow to automatic selection of dmabuf"
Nicolas Dufresne [Mon, 24 Nov 2014 15:33:29 +0000 (10:33 -0500)]
Revert "v4l2object: allow to automatic selection of dmabuf"

This reverts commit e6c2ad5571e5dedb212287efe238eb450032cd4f.

9 years agoREQUIREMENTS: update a little
Tim-Philipp Müller [Sun, 23 Nov 2014 16:34:15 +0000 (16:34 +0000)]
REQUIREMENTS: update a little

People actually look at that it seems.

9 years agoicydemux: does not need to link against zlib
Tim-Philipp Müller [Sun, 23 Nov 2014 16:22:12 +0000 (16:22 +0000)]
icydemux: does not need to link against zlib

9 years agospeex: remove support for ancient speex versions
Tim-Philipp Müller [Sat, 22 Nov 2014 21:28:35 +0000 (21:28 +0000)]
speex: remove support for ancient speex versions

9 years agosouphttpsrc: log connection events at info level
Branislav Katreniak [Fri, 21 Nov 2014 10:21:18 +0000 (11:21 +0100)]
souphttpsrc: log connection events at info level

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

9 years agortpjitterbuffer: ensure rtx_retry_period >= 0
Miguel París Díaz [Mon, 20 Oct 2014 11:00:37 +0000 (13:00 +0200)]
rtpjitterbuffer: ensure rtx_retry_period >= 0

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

9 years agov4l2allocator: Remove unused variable
Nicolas Dufresne [Fri, 21 Nov 2014 16:44:24 +0000 (11:44 -0500)]
v4l2allocator: Remove unused variable

this was introduced by commit ec6b8b

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

9 years agov4l2: Handle corrupted buffer with empty payload
Nicolas Dufresne [Sun, 16 Nov 2014 17:34:17 +0000 (12:34 -0500)]
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

9 years agov4l2object: allow to automatic selection of dmabuf
Benjamin Gaignard [Fri, 21 Nov 2014 15:36:15 +0000 (16:36 +0100)]
v4l2object: allow to automatic selection of dmabuf

If the v4l2 queue support dmabuf select this buffer pool mode
and update the query with allocator.
This patch only concern exporting dmabuf and not importing dmabuf
fd from downstream element.

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

9 years agov4l2: move vb_queue probing from allocator to v4l2object
Benjamin Gaignard [Fri, 21 Nov 2014 15:13:05 +0000 (16:13 +0100)]
v4l2: move vb_queue probing from allocator to v4l2object

The goal is to make those information available in v4l2_object
to be able later to select the best allocation method for the pool

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

9 years agortpbin: Fix up new_jitterbuffer signal prototype
Arun Raghavan [Thu, 20 Nov 2014 17:12:59 +0000 (22:42 +0530)]
rtpbin: Fix up new_jitterbuffer signal prototype

9 years agortpbin: Document how to control per-SSRC retransmission
Arun Raghavan [Thu, 20 Nov 2014 14:49:25 +0000 (20:19 +0530)]
rtpbin: Document how to control per-SSRC retransmission

9 years agodoc: Trivial spelling and consistency update
Arun Raghavan [Thu, 20 Nov 2014 14:48:45 +0000 (20:18 +0530)]
doc: Trivial spelling and consistency update

9 years agortpgstpay: put 0-byte at the end of events
Wim Taymans [Thu, 20 Nov 2014 12:14:14 +0000 (13:14 +0100)]
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

9 years agortpgstdepay: avoid buffer overread.
Wim Taymans [Thu, 20 Nov 2014 11:40:28 +0000 (12:40 +0100)]
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

9 years agoqtmux: don't limit max video resolution to 4096x4096
Tim-Philipp Müller [Thu, 20 Nov 2014 10:45:07 +0000 (10:45 +0000)]
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

9 years agortspsrc: fix leak for mikey base64 decoded key-mgmt
Aleix Conchillo Flaqué [Wed, 19 Nov 2014 23:06:00 +0000 (15:06 -0800)]
rtspsrc: fix leak for mikey base64 decoded key-mgmt

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

9 years agovideobalance: fix unhandled format in passthrough
Wim Taymans [Thu, 20 Nov 2014 08:01:38 +0000 (09:01 +0100)]
videobalance: fix unhandled format in passthrough

In passthrough we can handle all formats.

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

9 years agoflvdemux: Restrict resyncing to TS regressions
Jan Alexander Steffens (heftig) [Wed, 19 Nov 2014 15:12:38 +0000 (16:12 +0100)]
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

9 years agovideomixer: fix up QoS handling for live sources
Matthew Waters [Mon, 17 Nov 2014 12:16:03 +0000 (23:16 +1100)]
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

9 years agoexamples: port python rtp PCMA client/server tests to 1.0
Henning Heinold [Mon, 10 Nov 2014 21:34:39 +0000 (22:34 +0100)]
examples: port python rtp PCMA client/server tests to 1.0

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

9 years agoflacdec: set the channel positions using the appropriate API
Vincent Penquerc'h [Wed, 4 Jun 2014 11:11:10 +0000 (12:11 +0100)]
flacdec: set the channel positions using the appropriate API

This avoids _set_format setting the unpositioned flag when passed
NULL as channel positions, as it would not be cleared when setting
actual channel positions later.

9 years agovpx: mark arnr-type properties as deprecated and set them to no-op
Aurélien Zanelli [Sat, 1 Nov 2014 21:39:41 +0000 (22:39 +0100)]
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

9 years agortpmanager: Trivial typo fix
Arun Raghavan [Mon, 10 Nov 2014 07:46:01 +0000 (13:16 +0530)]
rtpmanager: Trivial typo fix

9 years agomatroska-mux: Use G_DEFINE_TYPE() to register the pad instead of manually registering it
Sebastian Dröge [Sun, 9 Nov 2014 10:04:33 +0000 (11:04 +0100)]
matroska-mux: Use G_DEFINE_TYPE() to register the pad instead of manually registering it

9 years agomatroskamux: make GstMatroskamuxPad get_type() function thread-safe
Göran Jönsson [Thu, 6 Nov 2014 14:37:28 +0000 (15:37 +0100)]
matroskamux: make GstMatroskamuxPad get_type() function thread-safe

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

9 years agov4l2allocator: fix error message if allocator is already active
Aurélien Zanelli [Fri, 7 Nov 2014 15:11:24 +0000 (16:11 +0100)]
v4l2allocator: fix error message if allocator is already active

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

9 years agov4l2bufferpool: Improve buffer validation
Nicolas Dufresne [Fri, 7 Nov 2014 02:21:40 +0000 (21:21 -0500)]
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

9 years agortsp: fix build in gst-uninstalled setup
Josep Torra [Thu, 6 Nov 2014 20:38:43 +0000 (21:38 +0100)]
rtsp: fix build in gst-uninstalled setup

9 years agoimagefreeze: Handle seqnums
Thibault Saunier [Wed, 29 Oct 2014 17:44:43 +0000 (18:44 +0100)]
imagefreeze: Handle seqnums

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

9 years agopngdec: change parse logic
Vineeth T M [Tue, 4 Nov 2014 02:48:41 +0000 (08:18 +0530)]
pngdec: change parse logic

Right now in parse logic the signature is checked every time the parse function
is called, and the whole data is the scanned each and every time, even though the
data is scanned in the previous instance. Changing the logic such that, we skip
the bytes which are already scanned in the previous instances of parse. This
helps in avoiding multiple scan of already scanned data/signature.

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

9 years agovideomixer2: reverse order of params for converter
Wim Taymans [Mon, 3 Nov 2014 14:26:06 +0000 (15:26 +0100)]
videomixer2: reverse order of params for converter

9 years agov4l2bufferpool: fix typo in flags
Aurélien Zanelli [Mon, 3 Nov 2014 10:44:28 +0000 (11:44 +0100)]
v4l2bufferpool: fix typo in flags

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

9 years agov4l2src: fix a couple of minor leaks
Tim-Philipp Müller [Sun, 2 Nov 2014 23:33:23 +0000 (23:33 +0000)]
v4l2src: fix a couple of minor leaks

9 years agogoom2k1: post QoS messages when dropping frames due to QoS
Tim-Philipp Müller [Sun, 2 Nov 2014 19:42:03 +0000 (19:42 +0000)]
goom2k1: post QoS messages when dropping frames due to QoS

9 years agogoom: post QoS messages when dropping frames due to QoS
Tim-Philipp Müller [Sun, 2 Nov 2014 19:29:52 +0000 (19:29 +0000)]
goom: post QoS messages when dropping frames due to QoS

9 years agomatroskamux: tweak writing app tag string a little
Tim-Philipp Müller [Sun, 2 Nov 2014 19:02:35 +0000 (19:02 +0000)]
matroskamux: tweak writing app tag string a little

9 years agoSprinkle some G_PARAM_DEPRECATED and #ifndef GST_REMOVE_DEPRECATED
Tim-Philipp Müller [Sun, 2 Nov 2014 16:51:23 +0000 (16:51 +0000)]
Sprinkle some G_PARAM_DEPRECATED and #ifndef GST_REMOVE_DEPRECATED

9 years agotests: don't use deprecated property in level unit test
Tim-Philipp Müller [Sun, 2 Nov 2014 16:58:07 +0000 (16:58 +0000)]
tests: don't use deprecated property in level unit test

9 years agortpjitterbuffer: implement get/set for new rtx-min-retry-timeout property
Tim-Philipp Müller [Sun, 2 Nov 2014 13:06:33 +0000 (13:06 +0000)]
rtpjitterbuffer: implement get/set for new rtx-min-retry-timeout property

Properties are so much more useful if you can actually set
and get their values.

9 years agov4l2: Clean up interlace support
Simon Farnsworth [Thu, 30 Oct 2014 17:41:19 +0000 (17:41 +0000)]
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

9 years agovpx: remove compatibility defines
Aurélien Zanelli [Sat, 1 Nov 2014 11:18:02 +0000 (12:18 +0100)]
vpx: remove compatibility defines

We are guaranteed to have VPX_IMG_FMT_I420, VPX_PLANE_Y,
VPX_PLANE_U and VPX_PLANE_V as we require libvpx > 1.1.0.

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

9 years agowavpack: remove support for ancient API version
Tim-Philipp Müller [Sat, 1 Nov 2014 15:33:23 +0000 (15:33 +0000)]
wavpack: remove support for ancient API version

9 years agortpvp8: Use VP8 encoding name
Nicolas Dufresne [Sat, 1 Nov 2014 14:14:31 +0000 (10:14 -0400)]
rtpvp8: Use VP8 encoding name

Both Firefox and Chrome uses VP8 as the encoding in their SDP.
Adding this now defacto standard name removes the need for special
case in SDP parsing code.

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

9 years agortpmp2tpay: fix up template caps so we can output the default pt 33
Tim-Philipp Müller [Sat, 1 Nov 2014 11:59:26 +0000 (11:59 +0000)]
rtpmp2tpay: fix up template caps so we can output the default pt 33

Add fixed payload type for mp2t to template caps as well, so
our output caps match the advertised default pt. Fixes a
regression from 1.2.

There's still something wrong with caps negotiation though,
rtpmp2tpay payload=96 ! fakesink will not output caps with
payload=96.

9 years agortspsrc: mikey related memory leaks
Aleix Conchillo Flaqué [Thu, 30 Oct 2014 22:37:36 +0000 (15:37 -0700)]
rtspsrc: mikey related memory leaks

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

9 years agospeexenc: update output segment stop time to match clipped samples
Vincent Penquerc'h [Tue, 10 Jun 2014 09:04:07 +0000 (10:04 +0100)]
speexenc: update output segment stop time to match clipped samples

This will let oggmux generate a granpos on the last page that properly
represents the clipped samples at the end of the stream.

9 years agoflacenc: update output segment stop time to match clipped samples
Vincent Penquerc'h [Tue, 10 Jun 2014 09:59:13 +0000 (10:59 +0100)]
flacenc: update output segment stop time to match clipped samples

This will let oggmux generate a granpos on the last page that properly
represents the clipped samples at the end of the stream.

9 years agov4l2bufferpool: cleanly handle streamon failure for output device
Aurélien Zanelli [Tue, 7 Oct 2014 13:29:33 +0000 (15:29 +0200)]
v4l2bufferpool: cleanly handle streamon failure for output device

On streamon failure, the queued buffer is not released from the
bufferpool class point of view because it is queued to the driver and
the flush logic is not performed since we are not in streaming state.
It causes the v4l2 bufferpool to always return that stop method failed
and to leak v4l2 objects and buffers.

This commit solve this by performing the flush logic in error case, ie
flushing the allocator and restoring queued buffer state to non-queued.

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

9 years agov4l2bufferpool: implement dispose method
Aurélien Zanelli [Wed, 8 Oct 2014 08:31:21 +0000 (10:31 +0200)]
v4l2bufferpool: implement dispose method

Unref objects in dispose method rather than in finalize in order to
prevent circular reference.

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

9 years agov4l2bufferpool: check that allocator is non null when stopping pool
Aurélien Zanelli [Wed, 8 Oct 2014 08:35:14 +0000 (10:35 +0200)]
v4l2bufferpool: check that allocator is non null when stopping pool

Otherwise, we could dereference NULL allocator when the stop method is
called by the GstBufferPool's finalize method.

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

9 years agov4l2sink: Implement unlock/unlock_stop
Nicolas Dufresne [Thu, 9 Oct 2014 16:15:05 +0000 (12:15 -0400)]
v4l2sink: Implement unlock/unlock_stop

This will prevent deadlocks, but will also properly flush the pool and allocator
when going to READY state. It should also fix issues reported on mailing list
when seeking is performed.

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