Commit graph

5779 commits

Author SHA1 Message Date
Sebastian Rasmussen 955693fc36 gststructure: Set lcopy string const exactly as glib's macro
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679534
2012-07-21 20:26:57 +05:30
Wim Taymans cce71223d7 pad: don't call pad block callbacks multiple times
Ensure that when multiple threads try to block a pad, only one of the threads
calls the callback. We do this by checking if the callback was already called.
The previous version unconditionally called the callback and then checked if it
was already called...
Also only call the unblock callback once from the first thread that unblocks.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679950
2012-07-16 15:25:46 +02:00
Tim-Philipp Müller 9813876825 toc: remove TOC API again from 0.10
This has undergone significant changes in implementation and
design in 0.11, and we're just not going to backport this to
0.10, so let's just remove it again and continue to fix this
up in master/1.0.
2012-07-12 23:43:16 +01:00
Wim Taymans 36c61df297 bin: always recurse into bins when doing state changes
Never skip the state change of a bin because it needs to update the base time of
its children when needed.
2012-06-25 12:20:54 -03:00
Vincent Penquerc'h 321af1ccb8 element: fix pad transfer annotation from none to full
since the pad will be unreffed.
2012-06-14 14:05:15 +01:00
Stefan Sauer 11c8ffb6fb childproxy: add a few more comments 2012-06-12 11:07:13 +02:00
Stefan Sauer b3132da8c8 childproxy: no need to do expensive casts here 2012-06-11 21:17:24 +02:00
Edward Hervey a1a1b144fb gstutils: Faster read macros
On platforms that can do unaligned read/write, we can read/write much faster
by just casting.

https://bugzilla.gnome.org/show_bug.cgi?id=599546
2012-06-08 14:15:51 +02:00
Sebastian Dröge d563379085 ghostpad: Don't change the ghostpad caps immediately when the peer caps change
This should only happen during data-flow.
2012-06-08 11:16:31 +02:00
Edward Hervey d96ce2a6a7 registry: We name the registry after the target cpu
And not the host cpu
2012-06-06 18:11:50 +02:00
Havard Graff a4b9b79c96 Make sure that unlinked pads do not cause a return false on latency events.
Context: Latency configuration should not be
messed up because of not-linked pads. In general,
one return FALSE on latency distribution causes
the "overall" pipeline latency configuration to
fail. This shows up as noise in logs (warning).
2012-06-06 13:22:19 +02:00
Sebastian Dröge 9760c012f6 Revert "pad: Check via gst_pad_accept_caps() if a sinkpad accepts caps"
This reverts commit 7558fd21ee.

Many elements, like ac3parse, depend on the broken behaviour and
stop working after this change.
2012-06-05 08:33:28 +02:00
Sebastian Dröge 7558fd21ee pad: Check via gst_pad_accept_caps() if a sinkpad accepts caps
instead of just checking if the pad template caps would allow the caps.

The actually supported caps can be far more restrictive than the
template caps and only checking for the template caps can cause
incompatible caps to be set on a pad.

Fixes bug #677335.
2012-06-04 09:31:07 +02:00
Sebastian Dröge 1c0764f764 ghostpad: Don't propagate setcaps() calls to the target pads
The core will do this during dataflow already and additionally
does compatibility checks then. Let it be handled by the core
as for every other pad too.

Fixes bug #677335.
2012-06-04 09:29:22 +02:00
Josep Torra e2ba0db760 debugutils: Fix static linking on OS X
The linking behaviour of external variables that are not initialized
in the compilation unit where they are defined is undefined. On OS X
this causes a linking failure when statically linking GStreamer.
2012-05-25 10:56:12 +02:00
Stefan Sauer cffb31238a info: include element name for event-src if it is a pad
Pad names alone are not unique/helpful as a information about the source of an
event. Therefore inlcude the element name if the event-src is a pad.
2012-05-24 09:59:18 +02:00
Edward Hervey 16d96f71da uri: Add some debug statements 2012-05-22 18:28:22 +02:00
Stefan Sauer 50f2e03977 docs: improve the seeking docs more.
Also mention it on _element_seek{,_simple} and be more precise why it happens.
2012-05-21 15:17:47 +02:00
Stefan Sauer fea09dfbfc docs: fix a typo and clarify event handling a bit more
Tell about async_done messages for some events and review the _event_new_seek
docs.
2012-05-21 14:35:03 +02:00
Wim Taymans 554b81ed24 bin: try harder to avoid state changes in wrong direction
When the bin does an upward state change, try to avoid doing a downward state
change on the child and vice versa.
Add some more unit tests for this fix.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=621833
2012-05-18 15:04:35 +02:00
Vincent Penquerc'h a975fadbaf event: add new seek snap flags
They can be used to select snapping behavior (to previous, next, or
nearest location, where relevant) when seeking.

The seeking implementation (eg, demuxer) may currently ignore some
or all of these flags.
2012-04-30 09:52:04 +01:00
Wim Taymans dd74e5cdc0 pad: fix typo in comment 2012-04-25 09:09:59 +02:00
Edward Hervey 184b6e555a ghostpad: Don't use g_signal_handler_disconnect_by_*
It introduces an unneeded overhead. Instead store the id of the
signal handlers and remove them properly
2012-04-24 16:12:15 +02:00
Sebastian Dröge 7848b66e3e message: Remove comma at end of enum list
This comma confuses some compilers.
2012-04-23 09:19:51 +02:00
Alexander Saprykin 30872d3a5f toc: fix memory leaks while copying content 2012-04-11 10:28:43 +02:00
Wim Taymans fd9c328260 gst: add toc entry ref/unref 2012-04-10 12:49:04 +02:00
Sebastian Dröge 1484a211f1 element: Fail if a pad for a non-request template is requested 2012-04-09 16:01:02 +02:00
Tim-Philipp Müller 94696f4bd9 gst: don't export private TOC functions 2012-04-07 16:04:14 +01:00
Wim Taymans f251e3073b atomicqueue: fix race
After a writer has written to its reserved write location, it can only make the
location available for reading if all of the writers with lower locations have
finished.
2012-04-07 15:30:12 +01:00
Wim Taymans 930c019721 atomicqueue: fix subtle race
Fix a race where the reader would see the updated the tail pointer before the
write could write the data into the queue. Fix this by having a separate reader
tail pointer that is only incremented after the writer wrote the data.
2012-04-07 15:24:53 +01:00
Alexander Saprykin 3f30c73443 Add new GstTocSetter interface 2012-04-02 21:50:55 +02:00
Alexander Saprykin 6e65daa4d1 Add new TOC query 2012-04-02 21:50:55 +02:00
Alexander Saprykin 03d0f569b3 Add new TOC message 2012-04-02 21:50:55 +02:00
Alexander Saprykin c3f97992c4 Add new TOC and TOC select events 2012-04-02 21:50:55 +02:00
Alexander Saprykin 1f7096b52a Add generic table of contents (TOC) support 2012-04-02 21:50:55 +02:00
Olivier Crête 37db4eefbf gstpad: Fix typo in docstring 2012-03-27 15:24:49 -04:00
Tim-Philipp Müller 4d2adb0249 pad, task: improve debug logging 2012-03-08 16:30:49 +00:00
Tim-Philipp Müller c683e39429 pads, collectpads2: get rid of superfluous brackets around static rec mutex calls
Makes it possible to define those calls to something for tracing.
2012-03-08 16:27:48 +00:00
Sebastian Dröge c8cde669b7 gst: Fix 'comparison of unsigned enum expression >= 0 is always true' compiler warning 2012-03-06 12:16:19 +01:00
Edward Hervey 823807c5f0 Suppress deprecation warnings in selected files, for g_value_array_* mostly 2012-02-27 13:43:59 +01:00
Tim-Philipp Müller 031514faeb 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.
2012-02-24 23:49:54 +00:00
Tim-Philipp Müller c25b8e153d 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().
2012-02-24 23:49:54 +00:00
Havard Graff 609e618e70 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
2012-02-04 15:52:21 +00:00
Vincent Penquerc'h ec7a7c318a 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
2012-02-03 11:23:28 +00:00
João Paulo Pizani Flor 3af9544f95 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
2012-01-30 17:22:59 +00:00
Vincent Penquerc'h 68a091303f gstplugin: add a few consts to read only data 2012-01-27 11:32:12 +00:00
Vincent Penquerc'h 98c99630ad gststructure: clarify _get docs about the returned reference
https://bugzilla.gnome.org/show_bug.cgi?id=667689
2012-01-11 12:23:25 +00:00
Tim-Philipp Müller 1aec7a3d72 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
2012-01-05 00:32:42 +00:00
Idar Tollefsen c8c961ac81 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
2012-01-05 00:08:19 +00:00
Idar Tollefsen f0e121c197 poll: include correct poll.h based on autoconf test
https://bugzilla.gnome.org/show_bug.cgi?id=667286
2012-01-04 23:47:46 +00:00