Sebastian Dröge [Wed, 8 Jul 2009 13:10:26 +0000 (15:10 +0200)]
registry: Use g_build_filename() instead of g_strjoin() with /
This makes sure that the generated filenames use the platform
specific directory separator instead of /.
Fixes bug #587973.
Tim-Philipp Müller [Tue, 7 Jul 2009 19:13:48 +0000 (20:13 +0100)]
docs: add 'Since' tag for new GST_DEBUG_CATEGORY_GET macro
Stefan Kost [Mon, 6 Jul 2009 23:23:41 +0000 (00:23 +0100)]
collectpads: make it the best of wims and edwards patch.
Check the right flushing flag, but still add it to the pad-list.
Stefan Kost [Tue, 30 Jun 2009 08:26:34 +0000 (11:26 +0300)]
info: allow getting other log categories. Fixes #587417
Add a new macro GST_DEBUG_CATEGORY_GET to get a log category by name. This
allows plugins to use e.g. core categories like PERFORMANCE or CLOCK.
API: GST_DEBUG_CATEGORY_GET
Stefan Kost [Mon, 6 Jul 2009 18:51:57 +0000 (19:51 +0100)]
basetransform: make comment a FIXME comment
Stefan Kost [Mon, 6 Jul 2009 18:50:52 +0000 (19:50 +0100)]
logging: log object type in message
Stefan Kost [Mon, 6 Jul 2009 18:48:58 +0000 (19:48 +0100)]
logging: use perf category for dropped buffers
Edward Hervey [Mon, 29 Jun 2009 09:26:57 +0000 (11:26 +0200)]
collectpads: Don't forward FLUSH_STOP if some input streams are still flushing.
This guarantees that only one FLUSH_STOP event (the last one) will be sent
downstream when a flushing seek is being done through collectpads.
Edward Hervey [Wed, 24 Jun 2009 09:11:35 +0000 (11:11 +0200)]
collectpads: Update the cookie when setting ourselves as flushing.
This forces the pad status to be re-evaluated on the next _check_pads().
Tim-Philipp Müller [Tue, 9 Jun 2009 13:54:27 +0000 (14:54 +0100)]
docs: fix gtk-doc /*< private >*/ marker
Tim-Philipp Müller [Tue, 9 Jun 2009 13:48:56 +0000 (14:48 +0100)]
typefindelement: log probability in debug message
Wim Taymans [Tue, 30 Jun 2009 16:22:25 +0000 (18:22 +0200)]
message: fix parsing of the step done message
Parse the duration field too.
Edward Hervey [Mon, 29 Jun 2009 09:24:25 +0000 (11:24 +0200)]
binaryregistry: Use local values in while/for loops, use branch prediction macros
Edward Hervey [Mon, 29 Jun 2009 09:23:31 +0000 (11:23 +0200)]
Spread branch prediction macros.
These are based on profiling several playback scenarios using playbin2.
Edward Hervey [Mon, 29 Jun 2009 09:20:12 +0000 (11:20 +0200)]
Use local variables in for/while loops.
This makes the generated code faster since:
* It won't have to read an undirect value (which will most likely be
outside of the L1/L2 cache)
* We know that value never changes (the compiler has no clue that it doesn't).
Edward Hervey [Tue, 9 Jun 2009 17:08:26 +0000 (19:08 +0200)]
libs/controller: Set default gst debugging category.
Wim Taymans [Mon, 29 Jun 2009 09:57:13 +0000 (11:57 +0200)]
tests: fix example
Wim Taymans [Mon, 29 Jun 2009 09:56:10 +0000 (11:56 +0200)]
bufferlist: use faster gst_buffer_list_get()
Use the faster gst_buffer_list_get() to get the first buffer of a list.
Wim Taymans [Mon, 29 Jun 2009 09:55:14 +0000 (11:55 +0200)]
bufferlist: fix example
The _do function now takes user_data in all cases.
Ognyan Tonchev [Mon, 29 Jun 2009 09:46:00 +0000 (11:46 +0200)]
basesink: take timestamp later
Make sure we don't accidentally cast a bufferlist of a buffer and try to take
the timestamp of it.
Refixes #585960
Jonas Holmberg [Mon, 29 Jun 2009 09:07:00 +0000 (11:07 +0200)]
docs: fix some typos
Stefan Kost [Mon, 29 Jun 2009 08:24:04 +0000 (11:24 +0300)]
logging: add a performace log category
This category can be used to log slow code path and help auditing the
performance. Add FIXME-0.11 to some questionable categories.
Stefan Kost [Sat, 27 Jun 2009 13:34:36 +0000 (16:34 +0300)]
structure: fix int->gint to be in sync with the *.h and usage
Jan Schmidt [Fri, 26 Jun 2009 12:33:50 +0000 (13:33 +0100)]
autogen.sh: Use printf instead of 'echo -n'. Check for automake-1.1[01]
Check for more automake command variants. Use printf instead of 'echo -n'
for portability
Jan Schmidt [Fri, 26 Jun 2009 12:41:11 +0000 (13:41 +0100)]
Automatic update of common submodule
From f810030 to 5845b63
Stefan Kost [Fri, 26 Jun 2009 09:50:53 +0000 (12:50 +0300)]
request-pad: tell about ref counts in release_request_pad docs.
It is not too obvious that getting and releasing request pads is not entierly
symetrical regarding to the pad refcount. Add a note about that to the docs.
This might deserve a FIXME-0.11 too.
Tim-Philipp Müller [Thu, 25 Jun 2009 10:25:46 +0000 (11:25 +0100)]
basesink: don't do things with side effects within a g_assert()
Make the bufferlist stuff work properly when things are compiled
with -DG_DISABLE_ASSERT.
Wim Taymans [Wed, 24 Jun 2009 16:31:08 +0000 (18:31 +0200)]
caps: avoid doing logic in g_assert
Make sure we still do the right thing when glib is compiled without
assertions.
Jan Schmidt [Mon, 22 Jun 2009 04:00:54 +0000 (05:00 +0100)]
multiqueue: Fire the overrun signal on EOS
Fixes startup of some short MPEG files with decodebin2/playbin2
where all the data fits in the multiqueue and EOS arrives before
the group is exposed.
Jan Schmidt [Wed, 24 Jun 2009 14:13:37 +0000 (15:13 +0100)]
Automatic update of common submodule
From f3bb51b to f810030
Edward Hervey [Sat, 28 Mar 2009 12:59:08 +0000 (13:59 +0100)]
GstStructure: Use direct values for repetitive conditionals (for/while).
Edward Hervey [Wed, 24 Jun 2009 08:45:52 +0000 (10:45 +0200)]
miniobjects: Don't chain up to empty finalize method.
If ever we do anything in mini_object_finalize, we should make sure the 4
core miniobject finalize methods chain back up again.
Edward Hervey [Fri, 27 Mar 2009 19:17:15 +0000 (20:17 +0100)]
gstcaps: Use direct values for repetitive conditionals (for/while).
Tim-Philipp Müller [Wed, 24 Jun 2009 08:28:01 +0000 (09:28 +0100)]
make check: add check for enum type class unrefs in gst_deinit() too
Just because we can really.
Wim Taymans [Tue, 23 Jun 2009 11:44:50 +0000 (13:44 +0200)]
trace: use proper locking in GstTrace
Protect the allocated list of objects with a lock so that trace actually works
reliably.
Shortcut the alloc trace sooner when disabled.
Wim Taymans [Tue, 23 Jun 2009 11:34:35 +0000 (13:34 +0200)]
object: also add pointers to debug
Add the object pointers in the debug info for _replace.
Chad Hanna [Tue, 23 Jun 2009 10:56:59 +0000 (12:56 +0200)]
capsfilter: Add GAP flag support
capsfilter doesn't actually touch the data so we don't want the GAP flag to
be unset by basetransform.
Fixes bug #586566.
Wim Taymans [Tue, 23 Jun 2009 08:05:03 +0000 (10:05 +0200)]
defs: add new byte reader methods
Tim-Philipp Müller [Fri, 22 May 2009 13:47:33 +0000 (14:47 +0100)]
bytereader: add a bunch of utility functions for strings and a data dup function
API: gst_byte_reader_dup_data
API: gst_byte_reader_dup_string
API: gst_byte_reader_dup_string_utf8
API: gst_byte_reader_dup_string_utf16
API: gst_byte_reader_dup_string_utf32
API: gst_byte_reader_skip_string
API: gst_byte_reader_skip_string_utf8
API: gst_byte_reader_skip_string_utf16
API: gst_byte_reader_skip_string_utf32
API: gst_byte_reader_peek_string
API: gst_byte_reader_peek_string_utf8
API: gst_byte_reader_get_string
API: gst_byte_reader_get_string_utf8
And some basic unit tests. Fixes #586568.
Stefan Kost [Mon, 22 Jun 2009 15:17:28 +0000 (18:17 +0300)]
taglist: fix typo in tag description
Tim-Philipp Müller [Sat, 20 Jun 2009 23:26:33 +0000 (00:26 +0100)]
tests: fix crash and leak in bufferlists unit test
Don't access already-freed iterator, makes check-valgrind work and fixes
crash on PPC; unref buffer we're going to steal to make valgrind happy.
Jan Schmidt [Sat, 20 Jun 2009 23:09:53 +0000 (00:09 +0100)]
init: Fix indent, and ref the gst_buffer_list_item_get_type() class
Fix the check tests by reffing the GstBufferList class. Run gst-indent
to make git happy about some existing stuff
Tim-Philipp Müller [Fri, 19 Jun 2009 20:03:46 +0000 (21:03 +0100)]
gst-inspect: fix broken flags to flag string serialisation
e.g. cdparnoiasrc would show fragment|full for a flags value of 2.
Wim Taymans [Fri, 19 Jun 2009 17:35:04 +0000 (19:35 +0200)]
tee: add buffer-list support
Wim Taymans [Fri, 19 Jun 2009 17:24:56 +0000 (19:24 +0200)]
bufferlist: remove old enum from docs
Tim-Philipp Müller [Fri, 19 Jun 2009 13:45:42 +0000 (14:45 +0100)]
gstinfo: define __gst_debug_min to LOG_LEVEL_NONE if debugging is disabled
Just in case someone who clearly can't be deterred by any number of leading
underscores uses this very private but still somewhat documented symbol
directly in their code (*cough* qtdemux *cough*).
Wim Taymans [Fri, 19 Jun 2009 13:29:14 +0000 (15:29 +0200)]
bufferlist: Various cleanups
Add new method to iterate a bufferlist without having to allocate an iterator.
Add convenience method for getting an item from the list based on the group and
index.
Remove redundant _do_data callback and method.
Update unit-tests and add some more for the new methods.
Tim-Philipp Müller [Fri, 19 Jun 2009 13:10:30 +0000 (14:10 +0100)]
docs: make gtk-doc happy
Tim-Philipp Müller [Fri, 19 Jun 2009 12:51:59 +0000 (13:51 +0100)]
po: update .po files after string changes
Tim-Philipp Müller [Fri, 19 Jun 2009 12:48:48 +0000 (13:48 +0100)]
fdsink: clean up some more error and debug messages
Tim-Philipp Müller [Fri, 19 Jun 2009 12:42:45 +0000 (13:42 +0100)]
taskpool: fix unused variable warning in case debugging is disabled
Tim-Philipp Müller [Fri, 19 Jun 2009 12:40:13 +0000 (13:40 +0100)]
gstinfo: fix export of GST_CAT_BUFFER_LIST when --gst-disable-debug is used
Move all the categories to export to one single place, so we don't
accidentally update or add vars in one place but not the other.
Wim Taymans [Thu, 18 Jun 2009 14:50:42 +0000 (16:50 +0200)]
collectpads: use the right flushing flag.
We need to use the pad private flag because the other pad flag is protected with
the pad lock instead.
Edward Hervey [Thu, 18 Jun 2009 14:41:46 +0000 (16:41 +0200)]
collectpads: Properly handle flushing pads.
If a pad is flushing, it should not be considered as either eos or
containing data.
Tim-Philipp Müller [Thu, 18 Jun 2009 10:27:21 +0000 (11:27 +0100)]
fdsink: fix error message
Users should never see the term 'file descriptor', much less a file
descriptor number, in an error message. Put that into the debug
string instead and use the default error message.
Wim Taymans [Thu, 18 Jun 2009 09:49:33 +0000 (11:49 +0200)]
fdsink: add the new field in the header
Benjamin Gaignard [Thu, 18 Jun 2009 08:55:39 +0000 (10:55 +0200)]
fdsink: make fdsink seekable
Implement the same logic as filesink to implement seeking.
Fixes #578908
Josep Torra [Wed, 17 Jun 2009 14:45:17 +0000 (16:45 +0200)]
gstelement: moved the clock unref to the right place
Josep Torra [Wed, 17 Jun 2009 14:17:27 +0000 (16:17 +0200)]
gstelement: unref the clock when the element changes to null state
Руслан Ижбулатов [Tue, 16 Jun 2009 20:29:40 +0000 (00:29 +0400)]
Replaced deprecated win32-compatibility function with undeprecated one.
Fixes #560442.
Josep Torra [Tue, 16 Jun 2009 16:32:12 +0000 (18:32 +0200)]
gstbin: swap the lines of my previous commit
Fixes a bug introduced in my previous commit that released the
clock provider and after used it to create the clock lost message.
Josep Torra [Tue, 16 Jun 2009 15:51:12 +0000 (17:51 +0200)]
gstbin: remove clock references when clock lost happens
Remove reference to clock and clock provider stored in the bin
when the clockprovider element is removed from the bin.
Wim Taymans [Tue, 16 Jun 2009 11:34:38 +0000 (13:34 +0200)]
basesink: add Since tag for new method
Branko Subasic [Tue, 16 Jun 2009 11:32:37 +0000 (13:32 +0200)]
basesink: add support for buffer list
Fixes #585960
Branko Subasic [Tue, 16 Jun 2009 09:34:54 +0000 (11:34 +0200)]
ghostpad: Add support for GstBufferLists
Fixes #585834
Christopher Halse Rogers [Tue, 16 Jun 2009 09:21:42 +0000 (11:21 +0200)]
iterator: Explicitly mention refcounting in docs
Fixes #585938
Tim-Philipp Müller [Tue, 16 Jun 2009 07:43:53 +0000 (08:43 +0100)]
gstxml: fix (de)serialisation of properties of type GstStructure
souphttpsrc has a property of type GstStructure, which causes an
assertion when serialising it to xml. Fixes #585137.
Tim-Philipp Müller [Mon, 15 Jun 2009 19:11:05 +0000 (20:11 +0100)]
queue: fix compiler warning
The compiler suggests to add some () to indicate if the && or the || takes
priority, so reflow code a bit so we don't have to add yet another layer
of (). Hopefully this was the intended meaning of the code.
Arnout Vandecappelle [Thu, 11 Jun 2009 13:00:52 +0000 (15:00 +0200)]
don't lock when min-threshold and max-size conflict.
When min-threshold is set on a queue, it is possible that one of
the minima remains unsatisfied while one of the maxima is already
reached. Therefore, always consider the queue non-empty if it is full.
Fixes #585433.
Wim Taymans [Mon, 15 Jun 2009 16:44:45 +0000 (18:44 +0200)]
bin: make sure we set the next state correctly
When the continue function is scheduled, make sure we set the next state instead
of the pending state.
Add some more debug info.
fixes #585569
Wim Taymans [Mon, 15 Jun 2009 16:44:14 +0000 (18:44 +0200)]
collectpads: fix .h indentation
Wim Taymans [Mon, 15 Jun 2009 16:43:52 +0000 (18:43 +0200)]
basesrc: add some more debug
Wim Taymans [Mon, 15 Jun 2009 16:42:59 +0000 (18:42 +0200)]
debug: add some more debug to element and pads
Руслан Ижбулатов [Sun, 14 Jun 2009 12:56:32 +0000 (16:56 +0400)]
segment: fix include order to get config.h before _mingw.h
config.h must always be included before any other includes, either
directly or indirectly via gst_private.h. Fixes #585733.
Tim-Philipp Müller [Sun, 14 Jun 2009 15:17:50 +0000 (16:17 +0100)]
taglist: add functions to create a new taglist with tags in one go
Add functions to create a new tag list and set tags in one go, which
is nice for use in combination with functions that take ownership of
the taglist, such as gst_event_new_tag() or gst_element_found_tags().
API: add gst_tag_list_new_full()
API: add gst_tag_list_new_full_valist()
Thomas Vander Stichele [Sat, 13 Jun 2009 12:55:43 +0000 (14:55 +0200)]
git-version.sh: make executable
Thomas Vander Stichele [Sat, 13 Jun 2009 12:53:24 +0000 (14:53 +0200)]
Update scripts/cvs-update.sh to git-update.sh; add git-version.sh
add script to get git versions
first update all, then build
add gnonlin too
specify where to pull from
also update submodule
rename and change cvs-update script to git-update
Tim-Philipp Müller [Fri, 12 Jun 2009 17:36:15 +0000 (18:36 +0100)]
bytereader: add gst_byte_reader_masked_scan_uint32()
Add a pattern scan function similar to the one recently added to
GstAdapter, and a unit test (based on the adapter one).
Fixes #585592.
API: add gst_byte_reader_masked_scan_uint32()
René Stadler [Fri, 17 Apr 2009 14:59:38 +0000 (17:59 +0300)]
Fix remaining --disable-gst-debug ABI breakage.
Fixes #579177.
Stefan Kost [Fri, 12 Jun 2009 14:51:22 +0000 (17:51 +0300)]
filesrc/sink: turn the bus messages into g_warning
Its a programming error.
Wim Taymans [Fri, 12 Jun 2009 13:48:35 +0000 (15:48 +0200)]
message: fix docs
Wim Taymans [Fri, 12 Jun 2009 11:18:21 +0000 (13:18 +0200)]
stepping: more stepping improvements
Update design doc with step-start docs.
Add eos field to step done message
when stepping in reverse, update the segment time field.
Flush out the current step when we are flushing.
Wim Taymans [Wed, 10 Jun 2009 13:51:40 +0000 (15:51 +0200)]
basesink: post step-start
when we clip, also stop the stepping.
Don't do QoS when stepping
Post step-start when queueing and activating the step.
Wim Taymans [Wed, 10 Jun 2009 13:48:35 +0000 (15:48 +0200)]
message: add step-start message
Tim-Philipp Müller [Thu, 11 Jun 2009 13:18:03 +0000 (14:18 +0100)]
gstvalue: more efficient value table lookup for fundamental types
Small micro-optimisation: look up value table for fundamental types
via an array dedicated to fundamental types instead of going through
a hash table lookup. Since there can be only 255 fundamental types,
the table size/efficiency trade-off should be acceptable, esp. since
the most commonly-used types are all fundamental types. The size of
the table could probably be minimised further if needed by allocating
the table dynamically and only expanding it on demand.
Tim-Philipp Müller [Thu, 11 Jun 2009 12:16:15 +0000 (13:16 +0100)]
gstvalue: don't put GTypes into int variables
GTypes are not ints and as such are not guaranteed to fit into an int
(with the exception of fundamental types), so we really shouldn't put
them into int variables. Even if a rather unlikely obscure corner case,
this has actually been a problem at some point in the past, see commit
99f16655f4cfbc8e06b5972417ba11279083a64e.
Stefan Kost [Thu, 11 Jun 2009 14:03:04 +0000 (17:03 +0300)]
filesrc/sink: improve warning message a bit (wrong state)
Unify and turn those into element warnings.
Jan Schmidt [Thu, 11 Jun 2009 13:00:09 +0000 (14:00 +0100)]
elementfactory: Fix a compiler warning
Use (gpointer) instead of (gpointer *) to fix a strict-aliasing build warning.
Jan Schmidt [Thu, 11 Jun 2009 12:16:29 +0000 (13:16 +0100)]
docs: Bump common, fix the upload logic inclusion
Update the common submodule, and fix the docs upload rules to include
the right makefile snippet from common.
Jan Schmidt [Tue, 9 Jun 2009 10:13:04 +0000 (11:13 +0100)]
multiqueue: Use the slice allocator for MultiQueueItems
Tim-Philipp Müller [Wed, 10 Jun 2009 19:29:41 +0000 (20:29 +0100)]
Make sure config.h is only included once
Fixes build problem on win32 (#585075).
Stefan Kost [Wed, 10 Jun 2009 15:05:47 +0000 (18:05 +0300)]
plugin: add since: tags for the api docs.
The previous related commit added new API.
API: add gst_plugin_get_cache_data, gst_plugin_set_cache_data
Stefan Kost [Wed, 10 Jun 2009 09:02:23 +0000 (12:02 +0300)]
plugin: fix leaks introduced by fix for #584389
Tim-Philipp Müller [Mon, 8 Jun 2009 22:43:16 +0000 (23:43 +0100)]
structure: add gst_structure_*_get*() vararg functions
Add a bunch of vararg getter convenience functions to complement
the vararg setter functions, and a basic unit test. Fixes #534208.
API: gst_structure_get()
API: gst_structure_id_get()
API: gst_structure_get_valist()
API: gst_structure_id_get_valist()
Tim-Philipp Müller [Mon, 8 Jun 2009 23:16:05 +0000 (00:16 +0100)]
docs: a few small API doc fixes and additions
Tim-Philipp Müller [Mon, 8 Jun 2009 18:33:55 +0000 (19:33 +0100)]
logging: when logging taglists, shorten long buffer dumps
Don't dump hundreds of kB of hexdata into debug logs when converting
taglists containing huge images into a string. Instead, shorten the
buffer data so that the string is still readable and debug logs
stay managable. Can be turned off with GST_DEBUG_OPTIONS=full-tags.
See #584988.
Wim Taymans [Tue, 9 Jun 2009 11:07:34 +0000 (13:07 +0200)]
multiqueue: check byte range even when we have timestamps
As found by thaytan on IRC.
Also check the byte limit, even if we have timestamps because there might just
not be a time limit.
Wim Taymans [Tue, 9 Jun 2009 10:06:35 +0000 (12:06 +0200)]
basesink: update segment start/stop for clipping
When we start stepping, store the start/stop values of the segment before we
install new start/stop values for clipping in non-flushing steps.
for non-flushing steps, update the element start time. For flushing steps, it
does not change because running_time does not advance
Make sure we always perform the stop_stepping operations even when we drop
frames.
Wim Taymans [Tue, 9 Jun 2009 08:25:34 +0000 (10:25 +0200)]
basesink: do proper clipping in stepping
Update the stop position of the segment so that we clip correctly.
After clipping in non-flushing mode, rerender the remainder of the buffer.
Wim Taymans [Tue, 9 Jun 2009 08:23:23 +0000 (10:23 +0200)]
segment: make conversion more precise
Make sure the conversion from and the conversion to give the same results.