Alexander Saprykin [Wed, 28 Mar 2012 19:15:41 +0000 (23:15 +0400)]
docs: add overview of GstToc usage
Alexander Saprykin [Wed, 14 Mar 2012 17:14:23 +0000 (21:14 +0400)]
docs: Add GstToc and GstTocSetter sections with related functions
Alexander Saprykin [Wed, 14 Mar 2012 17:13:22 +0000 (21:13 +0400)]
gstchecks: Add unit test for the GstTocSetter
Alexander Saprykin [Wed, 14 Mar 2012 17:12:22 +0000 (21:12 +0400)]
gstchecks: Add unit test for the GstToc
Alexander Saprykin [Wed, 14 Mar 2012 16:45:35 +0000 (20:45 +0400)]
Add new GstTocSetter interface
Alexander Saprykin [Wed, 14 Mar 2012 16:42:56 +0000 (20:42 +0400)]
Add new TOC query
Alexander Saprykin [Wed, 14 Mar 2012 16:41:48 +0000 (20:41 +0400)]
Add new TOC message
Alexander Saprykin [Wed, 14 Mar 2012 16:40:32 +0000 (20:40 +0400)]
Add new TOC and TOC select events
Alexander Saprykin [Wed, 14 Mar 2012 16:01:51 +0000 (20:01 +0400)]
Add generic table of contents (TOC) support
Edward Hervey [Mon, 2 Apr 2012 13:13:24 +0000 (15:13 +0200)]
baseparse: always attempt to push if not-linked
This avoids ending up with plenty of pending data (since we'll only
try to parse/push one frame from the incoming buffer).
Fixes increasing memory consumption when parsers aren't linked
Sebastian Dröge [Thu, 29 Mar 2012 12:45:41 +0000 (14:45 +0200)]
multiqueue: Wake up all not-linked streams when a stream switches from linked to not-linked
We reset all the waiting streams, let them push another buffer to
see if they're now active again. This allows faster switching
between streams and prevents deadlocks if downstream does any
waiting too.
Also improve locking a bit, srcresult must be protected by the
multiqueue lock too because it's used/set from random threads.
Sebastian Dröge [Thu, 29 Mar 2012 12:32:24 +0000 (14:32 +0200)]
multiqueue: Recompute high-time too when flushing, not only high-id
Sebastian Dröge [Thu, 29 Mar 2012 11:39:40 +0000 (13:39 +0200)]
inputselector: Only wait until the active pad's running time is reached if the active pad already saw data
Otherwise we might block forever because upstream (e.g. multiqueue) is waiting
for the previously active stream to return forever (which is waiting here
in inputselector) before pushing something on the newly selected stream.
Olivier Crête [Tue, 27 Mar 2012 19:24:49 +0000 (15:24 -0400)]
gstpad: Fix typo in docstring
Stefan Sauer [Thu, 22 Mar 2012 07:35:25 +0000 (08:35 +0100)]
gst-launch: don't shadow global variable
Tim-Philipp Müller [Mon, 12 Mar 2012 23:05:01 +0000 (23:05 +0000)]
configure: bump AS_LIBTOOL version
API was added to collectpads2
Tim-Philipp Müller [Mon, 12 Mar 2012 23:02:48 +0000 (23:02 +0000)]
configure: backport AS_LIBTOOL version from 0.10.36 release
Might fix issues with missing symbols for people who install GStreamer
from source and at some point jumped back and forth between git master
and the 0.10.36 release (or 0.10. branch).
Stefan Sauer [Mon, 12 Mar 2012 22:08:00 +0000 (23:08 +0100)]
docs: fix function name and typo
Christian Fredrik Kalager Schaller [Mon, 12 Mar 2012 09:03:42 +0000 (09:03 +0000)]
update license link to point to 2.1 license, instead of just generic lgpl file, which is always the latest and thus not correct for gstreamer
Tim-Philipp Müller [Thu, 8 Mar 2012 16:30:49 +0000 (16:30 +0000)]
pad, task: improve debug logging
Tim-Philipp Müller [Thu, 8 Mar 2012 16:26:44 +0000 (16:26 +0000)]
pads, collectpads2: get rid of superfluous brackets around static rec mutex calls
Makes it possible to define those calls to something for tracing.
Tim-Philipp Müller [Thu, 8 Mar 2012 16:25:20 +0000 (16:25 +0000)]
common: update common module
For make foo/bar.check-norepeat target.
Tim-Philipp Müller [Thu, 8 Mar 2012 15:23:56 +0000 (15:23 +0000)]
tests: add minimal basesrc ! sink seeking unit test
Should reproduce 'GStreamer-WARNING **: wrong STREAM_LOCK count 0'
warnings (with make pipelines/seek.torture or pipelines/seek.forever
anyway, since it appears to be racy).
https://bugzilla.gnome.org/show_bug.cgi?id=670846
Sebastian Dröge [Tue, 6 Mar 2012 11:28:02 +0000 (12:28 +0100)]
baseparse: Fix 'self-comparison always evaluates to true'
This was really a bug.
Sebastian Dröge [Tue, 6 Mar 2012 11:24:53 +0000 (12:24 +0100)]
tee: Fix 'use of logical '&&' with constant operand' compiler warning
This is actually a real bug.
Sebastian Dröge [Tue, 6 Mar 2012 11:23:15 +0000 (12:23 +0100)]
basetransform: Fix 'equality comparison with extraneous parentheses' compiler warning
Sebastian Dröge [Tue, 6 Mar 2012 11:16:19 +0000 (12:16 +0100)]
gst: Fix 'comparison of unsigned enum expression >= 0 is always true' compiler warning
Sebastian Dröge [Mon, 5 Mar 2012 13:41:12 +0000 (14:41 +0100)]
baseparse: Fix handling of multiple newsegment events
Previously only the last would be pushed, which would cause
invalid running times downstream. This also fixes the handling
of update newsegment events.
Sebastian Dröge [Mon, 5 Mar 2012 13:25:57 +0000 (14:25 +0100)]
baseparse: Also flush the close_segment
Pushing this after flushing will confuse downstream.
Sebastian Dröge [Mon, 5 Mar 2012 13:23:17 +0000 (14:23 +0100)]
baseparse: Remove obsolete code and move gap handling to the correct place
The segment start adjustment code in pull mode should never trigger
anymore because the bisection code earlier would have already made
sure that we're at the desired position.
Also move the gap handling some lines below after sending the currently
configured segments. Otherwise we might fill gaps in a segment that is
not configured downstream yet.
Sebastian Dröge [Mon, 5 Mar 2012 12:12:18 +0000 (13:12 +0100)]
baseparse: Clear some more state when receiving FLUSH_STOP
Like pending serialized events and the currently cached buffer.
Sebastian Dröge [Mon, 5 Mar 2012 12:00:38 +0000 (13:00 +0100)]
baseparse: Only queue serialized events for sending them later
Tim-Philipp Müller [Mon, 5 Mar 2012 00:34:36 +0000 (00:34 +0000)]
libgstcheck: export gst_consistency_checker_add_pad()
Fix build of the adder unit test in -base again.
Stefan Sauer [Fri, 2 Mar 2012 11:16:03 +0000 (12:16 +0100)]
consitencychecker: don't fail on multiple flush_start events
This seems to be okay after a irc discussion.
Stefan Sauer [Wed, 29 Feb 2012 20:57:00 +0000 (21:57 +0100)]
consitencychecker: add handling for sink-pads
Add a pad-probe for sink-pads. One can now add extra pads (belonging to the same
element) to a checker. This allows us to extend the checks.
Stefan Sauer [Wed, 29 Feb 2012 07:44:04 +0000 (08:44 +0100)]
consistencychecker: also check for duplicated flush_starts
Stefan Sauer [Tue, 28 Feb 2012 19:36:59 +0000 (20:36 +0100)]
collectpads2: add more logging
Edward Hervey [Mon, 27 Feb 2012 12:35:10 +0000 (13:35 +0100)]
Suppress deprecation warnings in selected files, for g_value_array_* mostly
Tim-Philipp Müller [Tue, 21 Feb 2012 20:43:48 +0000 (20:43 +0000)]
tests: make datetime test more reliably when comparing two almost identical nows
Account for rounding errors in some places, and that two nows are
not always entirely identical, so allow some leeway when comparing
microseconds and seconds. Ran into this too often, esp. when the
system is under load.
Stefan Sauer [Sun, 26 Feb 2012 22:11:23 +0000 (23:11 +0100)]
collectpads2: rescue the annotation from collectpads
Stefan Sauer [Sun, 26 Feb 2012 22:10:58 +0000 (23:10 +0100)]
docs: fix a typo in comment
Stefan Sauer [Sun, 26 Feb 2012 21:57:02 +0000 (22:57 +0100)]
collectpads2: move "MT save" tags to doc body
It is not useful to have "MT safe" tags randomly in body, returns or since paragraphs.
Tim-Philipp Müller [Sat, 25 Feb 2012 15:18:00 +0000 (15:18 +0000)]
fdsink: implement GstBaseSink::query instead of messing with the pad
Tim-Philipp Müller [Sat, 25 Feb 2012 15:08:55 +0000 (15:08 +0000)]
fdsink: implement SEEKING query
We may or may not support seeking. stdout to a
terminal doesn't support seeking, for example, but
... ! fdsink > file.foo just might.
Tim-Philipp Müller [Sat, 25 Feb 2012 15:07:43 +0000 (15:07 +0000)]
filesink: implement SEEKING query
We may or may not do seeking, depends on the
output file/device really, it doesn't have to
be a file after all.
Tim-Philipp Müller [Sat, 25 Feb 2012 15:07:05 +0000 (15:07 +0000)]
fakesink: answer SEEKING query
We don't do seeking, in case anyone wants to know.
Tim-Philipp Müller [Fri, 24 Feb 2012 23:39:30 +0000 (23:39 +0000)]
registry: fix lseek() return code handling
lseek() returns the offset if successful, and this is != 0 and
does not indicate an error. And if it does actually fail, don't
return FALSE (0) as an int, but -1. None of these things are
likely to have made a difference, ever. I don't think the offset
seek can ever actually happen, the current file position and the
current offset should always be increased in lock step, unless
there was an error in which case we'd just error out.
Tim-Philipp Müller [Fri, 24 Feb 2012 23:19:51 +0000 (23:19 +0000)]
registry: don't forget to clean up registry temp file in another error case
Also clean up temp file if we get an error during write() rather
than just when doing fsync() or close().
Tim-Philipp Müller [Thu, 23 Feb 2012 12:09:31 +0000 (12:09 +0000)]
Update NEWS and RELEASE as well
Tim-Philipp Müller [Thu, 23 Feb 2012 10:36:57 +0000 (10:36 +0000)]
Bump version after releases
Ryan Lortie [Thu, 2 Feb 2012 18:45:25 +0000 (13:45 -0500)]
build: avoid touching .po files during 'make'
A simple workaround to deal with GNU gettext automake integration
failing to deal with git.
https://bugzilla.gnome.org/show_bug.cgi?id=669207
Mark Nauwelaerts [Mon, 13 Feb 2012 17:09:51 +0000 (18:09 +0100)]
baseparse: fix reverse playback
... especially for all-keyframe (audio) cases.
Mark Nauwelaerts [Tue, 7 Feb 2012 10:28:41 +0000 (11:28 +0100)]
baseparse: bitrate mechanics should not deal with duration update
... since that is already handled by _update_duration, or should not be done
altogether if the duration is determined by non-estimated means.
Fixes #669502.
Havard Graff [Wed, 4 Jan 2012 16:10:15 +0000 (17:10 +0100)]
registry: fix compilation with --disable-registry
__registry_reuse_plugin_scanner is only defined when
GST_DISABLE_REGISTRY is not defined.
gstregistry.c: In function 'gst_registry_scan_plugin_file':
gstregistry.c:1131:8: error: '__registry_reuse_plugin_scanner' undeclared (first use in this function)
https://bugzilla.gnome.org/show_bug.cgi?id=667284
Vincent Penquerc'h [Thu, 2 Feb 2012 17:18:22 +0000 (17:18 +0000)]
bin: reset the EOS detection machinery after sending an EOS message
This will allow detecting further EOS, for instance after looping
a stream without changing states.
https://bugzilla.gnome.org/show_bug.cgi?id=668289
Ryan Lortie [Sun, 8 Jan 2012 04:00:12 +0000 (23:00 -0500)]
autogen.sh: allow calling from out-of-tree
https://bugzilla.gnome.org/show_bug.cgi?id=667664
João Paulo Pizani Flor [Mon, 30 Jan 2012 16:48:44 +0000 (14:48 -0200)]
Fixes the lack of an include directive in gst/gstpreset.h
It blocked the build of external libraries depending on gstreamer-core (namely, gstreamermm).
Complete bug report at https://bugzilla.gnome.org/show_bug.cgi?id=669036
Sebastian Dröge [Fri, 27 Jan 2012 14:02:52 +0000 (15:02 +0100)]
collectpads2: Move private fields from the public structs to private structs
Fixes bug #668764.
Vincent Penquerc'h [Fri, 27 Jan 2012 11:32:12 +0000 (11:32 +0000)]
gstplugin: add a few consts to read only data
Tim-Philipp Müller [Sat, 21 Jan 2012 12:56:50 +0000 (12:56 +0000)]
scripts: set GI_TYPELIB_PATH in gst-uninstalled
So pygi finds/uses the local g-i files.
Vincent Penquerc'h [Fri, 20 Jan 2012 18:06:04 +0000 (18:06 +0000)]
libcheck: make the definition of fail not fail with non GCC compilers
Colin Walters [Tue, 17 Jan 2012 21:23:33 +0000 (16:23 -0500)]
build: add --disable-fatal-warnings configure option
It's reasonable to build from git, but not want to turn all compiler
warnings into fatal errors. For example, GNOME's jhbuild helps people
get newer versions of software than came from their distribution, but
they may not necessarily want to hack on it.
Mark Nauwelaerts [Thu, 19 Jan 2012 11:57:48 +0000 (12:57 +0100)]
tests: clockstress: perform sanity check on thread number argument
Vincent Penquerc'h [Fri, 13 Jan 2012 10:43:12 +0000 (10:43 +0000)]
gst-inspect: plug factory leak on error
Antoine Tremblay [Thu, 12 Jan 2012 19:53:11 +0000 (19:53 +0000)]
baseparse: clear adapter in reset so baseparse is reusable
GstBaseParse was not clearing its adapter on reset causing
problems when a pipeline went for example from PLAYING to NULL
state and then back to PLAYING again. The data from the last
stream would be used in the parser.
https://bugzilla.gnome.org/show_bug.cgi?id=667444
Vincent Penquerc'h [Thu, 12 Jan 2012 15:50:53 +0000 (15:50 +0000)]
gstinspect: fix features and list leaks
Vincent Penquerc'h [Wed, 11 Jan 2012 12:19:20 +0000 (12:19 +0000)]
gststructure: clarify _get docs about the returned reference
https://bugzilla.gnome.org/show_bug.cgi?id=667689
Havard Graff [Tue, 29 Nov 2011 13:22:44 +0000 (14:22 +0100)]
basesink: don't compensate for render-delay twice
https://bugzilla.gnome.org/show_bug.cgi?id=667298
Idar Tollefsen [Sun, 1 Jan 2012 15:32:27 +0000 (16:32 +0100)]
build: don't output configure options via autogen if $NOCONFIGURE is set
https://bugzilla.gnome.org/show_bug.cgi?id=667296
Tim-Philipp Müller [Thu, 5 Jan 2012 00:30:30 +0000 (00:30 +0000)]
gst: include locale.h before any other i18n headers
This is also how we do it in -base.
https://bugzilla.gnome.org/show_bug.cgi?id=667290
Idar Tollefsen [Sun, 1 Jan 2012 15:46:04 +0000 (16:46 +0100)]
gstconfig.h: adds and uses SunPro visibility attribute for proper function exports
Define GST_EXPORT for SunPro.
https://bugzilla.gnome.org/show_bug.cgi?id=667289
Idar Tollefsen [Sun, 1 Jan 2012 15:47:14 +0000 (16:47 +0100)]
plugins: explicitly cast initialization values to the correct type
https://bugzilla.gnome.org/show_bug.cgi?id=667288
Idar Tollefsen [Sun, 1 Jan 2012 19:17:41 +0000 (20:17 +0100)]
poll: include correct poll.h based on autoconf test
https://bugzilla.gnome.org/show_bug.cgi?id=667286
Tim-Philipp Müller [Wed, 4 Jan 2012 23:46:19 +0000 (23:46 +0000)]
configure: check for sys/poll.h
https://bugzilla.gnome.org/show_bug.cgi?id=667286
Tim-Philipp Müller [Mon, 2 Jan 2012 00:17:17 +0000 (00:17 +0000)]
tags: add GST_TAG_LANGUAGE_NAME
API: GST_TAG_LANGUAGE_NAME
David Schleef [Sun, 1 Jan 2012 01:37:20 +0000 (17:37 -0800)]
convert Makefile spaces to tabs
Thiago Santos [Thu, 29 Dec 2011 19:56:46 +0000 (16:56 -0300)]
output-selector: Do not false warn about unlinked pad
When output-selector didn't receive a newsegment event it would
warn about pad being unlinked when switching pads. Making the logs
wrong and misleading.
Tim-Philipp Müller [Mon, 26 Dec 2011 11:26:05 +0000 (11:26 +0000)]
value: micro-optimisation: avoid some unnecessary g_value_unset()
We know there's nothing to do here and can save us the function
calls and GValueTable lookups.
Tim-Philipp Müller [Sun, 25 Dec 2011 12:39:49 +0000 (12:39 +0000)]
filesrc: return any remaining data on EOS before returning FLOW_UNEXPECTED
Tim-Philipp Müller [Sun, 25 Dec 2011 12:29:46 +0000 (12:29 +0000)]
filesrc: minor cosmetic changes
Rename woffset variable, maintain separate bytes_read in addition
to length variable.
Mark Nauwelaerts [Fri, 2 Dec 2011 13:10:32 +0000 (14:10 +0100)]
pipeline: only have a top-level pipeline do pipeline management
Fixes #665390.
Tim-Philipp Müller [Mon, 19 Dec 2011 20:57:44 +0000 (20:57 +0000)]
win32: add new collectpads2 function to .def file
Mark Nauwelaerts [Fri, 16 Dec 2011 16:59:22 +0000 (17:59 +0100)]
collectpads2: add convenience clipping function
... which also converts to running time; useful for typical muxer.
Mark Nauwelaerts [Mon, 19 Dec 2011 16:38:18 +0000 (17:38 +0100)]
basetransform: do not delay sparse stream newsegment updates
Mark Nauwelaerts [Mon, 19 Dec 2011 11:33:18 +0000 (12:33 +0100)]
basetransform: suggestion compatible with upstream is not much of a suggestion
... in that upstream is already complying with that suggestion.
Fixes #666174.
Mark Nauwelaerts [Thu, 15 Dec 2011 13:31:05 +0000 (14:31 +0100)]
collectpads2: delay collecting buffer if a pad newly set waiting
... as commented; make code correspond to it (again).
Stefan Sauer [Thu, 15 Dec 2011 15:06:30 +0000 (16:06 +0100)]
controller: user the parent_class vars from G_DEFINE_TYPE
Vincent Penquerc'h [Mon, 12 Dec 2011 13:05:36 +0000 (13:05 +0000)]
filesrc: do not mistake short reads for EOS
While local filesystems will usually not cause short reads,
this may happen on seekable files on some remote filesystems.
Instead, loop till we get the requested amount of data, or
an actual EOS (ie, 0 bytes).
https://bugzilla.gnome.org/show_bug.cgi?id=665921
Matej Knopp [Mon, 14 Nov 2011 01:26:31 +0000 (02:26 +0100)]
baseparse: Clear queued frames with other queues
Sebastian Dröge [Mon, 12 Dec 2011 10:54:56 +0000 (11:54 +0100)]
glib-compat: Add license boilerplate for LGPL
Tim-Philipp Müller [Sat, 10 Dec 2011 01:16:05 +0000 (01:16 +0000)]
po: update translations
Stefan Sauer [Wed, 7 Dec 2011 15:01:07 +0000 (16:01 +0100)]
preset: allow applications to specify an extra preset dir
An extra application preset dir help to organize presets created for special
purposes. Fixes #660760
API: gst_preset_set_app_dir(), gst_preset_get_app_dir()
Sebastian Dröge [Thu, 8 Dec 2011 17:00:00 +0000 (18:00 +0100)]
basetransform: Fix code path to come up with possible caps if incompatible caps are provided to buffer_alloc()
Previous code could almost never work and this should be slightly
better.
Sebastian Dröge [Thu, 8 Dec 2011 16:21:30 +0000 (17:21 +0100)]
basetransform: Fall back to upstream provided caps if suggested caps are not supported by the sinkpad
Sebastian Dröge [Thu, 8 Dec 2011 16:07:05 +0000 (17:07 +0100)]
basetransform: Fall back to upstream provided caps if fixation of suggested caps failed
Sebastian Dröge [Thu, 8 Dec 2011 16:02:28 +0000 (17:02 +0100)]
basetransform: Refactor gst_base_transform_buffer_alloc() code
Don't check if upstream provided caps are compatible with upstream
and don't try to fixate these caps. They must be fixated in any case.
Vincent Penquerc'h [Wed, 7 Dec 2011 17:57:49 +0000 (17:57 +0000)]
baseparse: do not use a byte value instead of a time value when bisecting
This fixes FLAC seeking on some FLAC files.
Sebastian Dröge [Wed, 7 Dec 2011 10:04:42 +0000 (11:04 +0100)]
selector: Push newsegment events before any buffers are pushed in the unit test
Sebastian Dröge [Wed, 7 Dec 2011 10:01:49 +0000 (11:01 +0100)]
inputselector: Don't send a NEWSEGMENT event if a buffer arrived before the segment was configured
Sebastian Dröge [Wed, 7 Dec 2011 10:01:31 +0000 (11:01 +0100)]
outputselector: Don't send last segment/buffer when no segment was configured yet