Commit graph

11288 commits

Author SHA1 Message Date
Edward Hervey 09d83e589a gstcaps: new API : gst_caps_intersect_full
Just like gst_caps_intersect, but adds a new parameter 'mode'
that allows selecting the intersection algorithm to use.

Currently we have GST_CAPS_INTERSECT_MODE_ZIG_ZAG (default) and
GST_CAPS_INTERSECT_MODE_FIRST.

API: gst_caps_intersect_full
API: GstCapsIntersectMode
API: GST_CAPS_INTERSECT_MODE_ZIG_ZAG
API: GST_CAPS_INTERSECT_MODE_FIRST

https://bugzilla.gnome.org/show_bug.cgi?id=617045
2011-03-24 11:14:18 -03:00
Tim-Philipp Müller f9558b163f tests: add libscpp unit test to make sure g++ likes our library headers 2011-03-23 20:53:00 +00:00
Tim-Philipp Müller 5300a5e73b bytereader, bytewriter: fix up inline functions to make g++ happy
gstbytereader.h: In function ‘guint8* gst_byte_reader_dup_data_unchecked(GstByteReader*, guint)’:
gstbytereader.h:249:75: error: invalid conversion from ‘void*’ to ‘guint8*’
gstbytewriter.h: In function ‘gboolean _gst_byte_writer_ensure_free_space_inline(GstByteWriter*, guint)’:
gstbytewriter.h:196:75: error: invalid conversion from ‘void*’ to ‘guint8*’

https://bugzilla.gnome.org/show_bug.cgi?id=645595
2011-03-23 20:52:44 +00:00
Thiago Santos 2f0dab0f44 gstelement: Fix typo in the docs
GST_ELEMENT_INFO will post a INFO message, not a WARNING
2011-03-22 16:27:35 -03:00
Thiago Santos 4b322b215a tagsetter: Removing unused debug category
tagsetter's debug category had a typo and was unused. Removing it.
2011-03-22 16:27:35 -03:00
Luis de Bethencourt 1be2076922 autogen: wingo signed comment 2011-03-22 13:26:12 +01:00
Sebastian Dröge 489b94444e multiqueue: Don't leak objects when flushing after dequeueing and before pushing the object 2011-03-22 11:04:20 +01:00
Sebastian Dröge 65fbc9398a multiqueue: Really remove unused variable 2011-03-21 17:54:10 +01:00
Sebastian Dröge 383cac91b1 multiqueue: Increment unique item counter with atomic operations
Before it was only protected by the stream lock but every pad
has its own stream lock, making the protection rather useless.
2011-03-21 17:52:59 +01:00
Sebastian Dröge 9e36a51bac multiqueue: Unblock all waiting pads when shutting down 2011-03-21 17:17:22 +01:00
Sebastian Dröge 5b48fd5b24 multiqueue: Remove unused variable 2011-03-21 16:34:19 +01:00
Sebastian Dröge 14eb517849 multiqueue: Exit loop function if the pad is flushing
Fixes possible deadlocks when flushing an unlinked pad that waits
for other pads to advance.
2011-03-21 16:29:40 +01:00
Jason D. Clinton a789096c04 build: fix build with -Werror with GCC 4.6.0
This touches three areas of code, removes unused variables and discards
return values from two functions with (void).

https://bugzilla.gnome.org/show_bug.cgi?id=645267
2011-03-21 09:29:19 +01:00
Sebastian Dröge 27c0a2b9b1 event: Add since marker to GST_EVENT_SINK_MESSAGE 2011-03-19 10:39:28 +01:00
Sebastian Dröge 69e81448c1 inputselector: Stop waiting for a pad switch when the pad is flushing 2011-03-19 08:57:06 +01:00
Sebastian Dröge d41fe48ce3 inputselector: Move locking and signalling macros from the header to the source file 2011-03-19 08:57:06 +01:00
Tim-Philipp Müller 02d27de048 task: fix GST_TASK_BROADCAST
Surprisingly enough, you can't "breadcast" on a GCond.

Spotted by Rune Sætre.

https://bugzilla.gnome.org/show_bug.cgi?id=645022
2011-03-17 23:42:48 +00:00
Sebastian Dröge c8ecd6e9eb inputselector: Hold the selector lock while reading properties of the active pad 2011-03-17 14:21:17 +01:00
Sebastian Dröge 5e60a80268 inputselector: Make sure that EOS is always sent downstream for the active pad
It can happen that the currently active pad got the EOS event
before it was activated and the previously active pad got the
EOS event after it was deactivated. In that case we have to
send the EOS event from an inactive pad downstream.
2011-03-17 14:10:49 +01:00
Sebastian Dröge f19bb850ac inputselector: Return GST_FLOW_OK until the selected pad pushed something downstream
This makes sure that during switches at no point in time all pads
have returned not-linked, which can happen when playing an audio-only
file with playbin2 and switching between the streams for example.

Fixes bug #644935.
2011-03-17 12:06:39 +01:00
Sebastian Dröge b8d83f4e01 pad: Document that pad blocks only make sense for sink pads in pull mode and src pads in push mode
See bug #644907.
2011-03-16 12:01:21 +01:00
Sebastian Dröge 256e7238b4 ghostpad: The internally linked pad of the proxypad is the ghostpad
Previously we were returning the peerpad, which is the target
of the ghostpad.
2011-03-16 11:53:53 +01:00
Jonas Holmberg c4c06a2b88 bufferlist: Use a GQueue instead of a GList
Adding a buffer to the end of a GstBufferList is supposed to be a fast
operation, but it was not since the iterator does not advance its
nextpointer when adding buffers and GList does not have a tail pointer.
Using a GQueue to store the buffers makes it easier to add buffers to
the end of the list and this operation will now be much more efficient.

Adding an entire GList of buffers using
gst_buffer_list_iterator_add_list() will however have to iterate over
the list being added to be able to update the tail pointer in the
GQueue.
2011-03-11 14:31:14 +01:00
Tim-Philipp Müller 90b4dc4869 utils: fix ABI break when compiling gstreamer with -DGST_DISABLE_DEPRECATED
GST_DISABLE_DEPRECATED should only affect visibility of declarations in headers,
not actually remove symbols. See GitDeveloperGuidelines and DeprecatingAPI
pages in wiki.

https://bugzilla.gnome.org/show_bug.cgi?id=402141
2011-03-10 17:50:51 +00:00
Edward Hervey 430e83ca2a win32: Update .def file for API addition 2011-03-10 16:46:04 +01:00
Stefan Kost 1d637d2a61 pwg: fix element name "videodrop" to "videorate" 2011-03-09 16:16:07 +02:00
Stefan Kost 7f49a9189a test: add tests for new element_factory api. 2011-03-09 15:28:06 +02:00
Thijs Vermeir dbc21e0174 gstutils: replace gst_element_factory_can_{sink,src}_caps
Add new functions to clarify how the caps are compared to the template caps of
the element factory. Improve the docs to point out the difference.

Deprecate: gst_element_factory_can_{src|sink}_caps
API: add gst_element_factory_can_{src|sink}_{any|all}_capps

https://bugzilla.gnome.org/show_bug.cgi?id=402141
2011-03-09 15:28:05 +02:00
Stefan Kost e66ae6681a tests: add a unit test for gst_caps_new_simple
Add a test for the crash in bug #642271.
2011-03-08 23:01:15 +02:00
Stefan Kost 7c98ae2b98 tests: add test to create a factory 2011-03-08 12:29:28 +02:00
Stefan Kost b6e2c69134 tests: start a new test suite for element factories
Move one test from gstelement suite.
2011-03-08 12:29:28 +02:00
Stefan Kost 8aa3f380a5 padtemplate: add missing ; in example (and trim whitespace) 2011-03-08 12:12:20 +02:00
Stefan Kost d963503b26 structure: gst_structure_empty_new() does better error checking
No need to check for media_type!=NULL as the function we call that actual create
the structure does a full check anyway.
2011-03-08 10:07:17 +02:00
Stefan Kost 4d9e645551 caps,structure: trim trailing whitespace 2011-03-08 10:07:03 +02:00
Jonathan Matthew 2bbfa3304c caps: don't create broken caps for invalid media types
Check if structure has been created before appending it to the caps. Free the
caps in the case of an error to not conceal it be returning empty caps.

Fixes #642271
2011-03-08 10:06:12 +02:00
Stefan Kost eb05020f58 examples: update hello world example
Our helloworld example thatw e reference from the manual has been a bit
complicated to serve a first contact with gstreamer. Since we have and
promote playbin2 as a playback api use it here.

Based on work from Mathias Hasselmann <mathias.hasselmann@gmx.de>

Fixes #424143
2011-03-08 09:41:31 +02:00
Arun Raghavan 0e6aa69366 faq: Minor update to ssh key generation commands
fd.o requires RSA keys, and in general, users would probably want to
make a per-server key file rather than overwrite id_rsa, id_rsa.pub.
2011-03-02 14:01:05 +05:30
Mark Nauwelaerts ce52df3d72 configure.ac: export plugin description more platform independent
Fixes #642504.
2011-02-28 18:43:41 +01:00
Mark Nauwelaerts d0f04f87eb Automatic update of common submodule
From 1de7f6a to 6aec6b9
2011-02-28 18:32:07 +01:00
Tim-Philipp Müller c71241d9dd docs: typo fixes
convinience -> convenience
2011-02-28 15:01:54 +00:00
Tim-Philipp Müller b923b7f901 tools: print "pad-added", "pad-removed" and "no-more-pads" signals for elements with sometimes pads
It's often not obvious to people that elements like e.g. uridecodebin
(or demuxers) automatically support the standard signals of the
GstElement class, so let's print the useful pad-related ones for
elements with sometimes pads.
2011-02-28 14:59:33 +00:00
Stefan Kost c7881a21b5 docs: small updates as suggested on a blog
Link from convinience api to the underlying api.
2011-02-28 16:33:22 +02:00
Tim-Philipp Müller d3e7981527 uri: make win32 buildbot happy
gsturi.c:854:16: error: unused variable 'abs_clean'
gsturi.c:788:1: error: 'gst_file_utils_canonicalise_path' defined but not used
2011-02-24 17:12:00 +00:00
Tim-Philipp Müller 1f59906ec1 filesrc, filesink: fix URI creation regression for non-absolute locations
Passing e.g. location=foo would lead to warnings because g_filename_to_uri()
wants an absolute file path and returns NULL otherwise. Use brand-new
gst_filename_to_uri() instead, which will try harder to create a proper
URI for us.

Also add unit test.
2011-02-24 15:36:53 +00:00
Tim-Philipp Müller 27027a2dd2 uri: add gst_filename_to_uri() that takes relative filenames
Add function that (unlike the GLib equivalent) also accepts paths that
aren't absolute and will clean up relative markers such as ./ and ../
before forming a URI.

Fixes warnings with e.g. filesrc location=foo ! typefind caused by the
recent switch to g_filename_to_uri(), but also actually creates valid
URIs for the first time.

Windows code paths could need some more work, e.g. we don't clean up
the relative markers there for now (because path could have \ and /
as separators).

API: gst_filename_to_uri()
2011-02-24 15:36:52 +00:00
Stefan Kost b3f0d98964 tests: refix the tests (missing #endif) 2011-02-24 16:20:01 +02:00
Stefan Kost b30e516d3e Makefile.am: add new abi headers to nodist_HEADERS 2011-02-24 16:11:17 +02:00
Stefan Kost 88cda98939 gst-launch: add index support
When option "-i" is given, set an index object on the pipeline and compute
statistics for all index writers. Print a sumary when shutting down the
pipeline.
2011-02-24 15:36:47 +02:00
Stefan Kost 3cb1180ff4 tests: add abi check data for ARM (libs) 2011-02-24 15:12:57 +02:00
Stefan Kost 98a50e3b82 tests: add abi check data for ARM 2011-02-24 15:03:03 +02:00