Commit graph

1912 commits

Author SHA1 Message Date
Benjamin Otte 0ff4086507 Improve caps setters API
This patch adds gst_caps_set_value() and allows gst_caps_set_simple() to
work on non-simple caps. See the API documentation for the functions
about what they do.

The intention of these changes is to ease working with caps in caps
transform functions. An example for this would be ffmpegcolorspace,
where the caps transform function could be changed to look roughly like
this (pseudocode ahead):
  result = gst_caps_copy (template_caps);
  value = gst_structure_get_value (gst_caps_get_structure (caps, 0),
    "widh");
  gst_caps_set_value (result, value);
  /* same for height, framerate and par */
  return caps;
which is much cleaner and easier to understand than the current code.

https://bugzilla.gnome.org/show_bug.cgi?id=597690
2009-10-15 19:10:50 +02:00
Jan Schmidt aeb3f1f1ff plugin docs: Add GST_PLUGIN_SCANNER env var to the inspect environment 2009-10-08 11:17:14 +01:00
Stefan Kost fcc5d783df pad: add variants of gst_pad_get_caps() that don't copy caps. Fixes #590941
In most places in core and baseclasses we just need the caps to do caps-
intersections. In that case ref'ed caps are enough (no need to copy).
This patch also switches the code to use the new functions.
API: gst_pad_get_caps_refed(), gst_pad_peer_get_caps_refed()
2009-10-07 22:41:30 +03:00
Sebastian Dröge def3f57c4f bytewriter: Add to the docs 2009-10-07 18:40:37 +02:00
Stefan Kost 18a903e93d docs: add new queue api to the docs to fix the build 2009-10-07 11:07:24 +03:00
Stefan Kost cfb4aa4627 build: sprintf, sscanf need stdio.h 2009-10-07 10:59:54 +03:00
Sebastian Dröge fe83b6fa66 gst-uninstalled: Extend environment variables to allow using an uninstalled gstreamer-sharp 2009-10-07 09:59:32 +02:00
Jan Schmidt 72953ec2bb docs: Update the release script
Remove old cruft from the release script, and change some CVS
references to equivalent git commands
2009-10-06 19:51:45 +01:00
Jan Schmidt 8bf3d8cec2 registry: Support installed/uninstalled plugin-scanner helper
Add a simple version check when starting the plugin-scanner so we can
verify we're talking to one that talks the same language.
First try a plugin-scanner in the installed path, then try one via the
GST_PLUGIN_SCANNER env var if that doesn't work.
Update the uninstalled script.
Install the plugin-scanner to the libexec dir
2009-10-06 19:51:44 +01:00
Jan Schmidt 51675e0c2a registry: Add registry helper phase 1
Phase 1 of adding the registry scan helper
2009-10-06 19:51:42 +01:00
Jan Schmidt fe5106cee0 Release 0.10.25 2009-10-05 12:57:03 +01:00
Stefan Kost 575e50fbbc design: add ideas for buffer management
Right now we're operating suboptimal when talking to kernel interfaces. Write
doesn some ideas.
2009-09-09 09:43:39 +03:00
Tim-Philipp Müller 4c103b00b5 bytereader: add unchecked and inline versions of the float getters/peekers
API: gst_byte_reader_get_float*_unchecked()
2009-09-06 18:51:18 +01:00
Tim-Philipp Müller 080b2e4fd5 bytereader: add inlined _unchecked() variants for some functions
API: gst_byte_reader_skip_unchecked()
API: gst_byte_reader_peek_*_unchecked()
API: gst_byte_reader_get_*_unchecked()
API: gst_byte_reader_{peek,get,dup}_data_unchecked()
2009-09-06 18:51:13 +01:00
Jan Schmidt 5f8f21cfe5 docs: Add a note about regenerating the changelog in the release script 2009-09-01 12:08:17 +01:00
Sebastian Dröge b2cab40745 iterator: API: Add gst_iterator_new_single()
This allows "iteration" over a single object of some type,
which happens often for the GstPadIterIntLinksFunction for example.
2009-08-26 16:39:19 +02:00
Tim-Philipp Müller 78ef5ff4c7 docs: add link to cgit tarball download of gst-template in PWG
So people who can't use git for some reason still can get hold
of the code. See #591069.
2009-08-21 10:02:17 +01:00
Sebastian Dröge 9f0e832c6c docs: Don't talk about the deprecated libgnome and GNOME-VFS
Instead talk about GIO and change the option parsing example to
not initialize libgnome but only GTK.

Fixes bug #592233.
2009-08-19 16:24:39 +02:00
Sebastian Dröge bf8af3f734 docs: Update the design docs for bin state changes according to last commit 2009-08-18 11:38:38 +02:00
Sebastian Dröge 76338950f9 gstutils: Add new scaling functions to the docs 2009-08-13 16:32:28 +02:00
Edward Hervey adb16ca162 docs: add Edward's git plugin moving howto to moving-plugins document 2009-08-11 02:54:55 +01:00
Tim-Philipp Müller ecbea36d39 check: use private copy of check for libgstcheck
See #577275. Seems to work fine, but doesn't distcheck yet.
2009-08-06 17:27:12 +01:00
Stefan Kost 568202cb47 caps: add gst_caps_can_intersect()
Often we don't need the result of the intersection. Add a variant that only
tries to intersect. It can break out earlier and does less GValue copying.
API: gst_caps_can_intersect()
2009-08-06 15:30:33 +03:00
Tim-Philipp Müller 19847e1956 gst-uninstalled: rename uninstalled registry file to registry.dat
We're not using the xml registry any longer after all.
2009-08-06 09:21:43 +01:00
Tim-Philipp Müller 0f0d3cb146 gst-uninstalled: refine search paths for uninstalled plugin modules
Use more refined search paths for our plugin modules. Not only does
this make things much faster in an uninstalled setup, it also makes
sure we're not accidentally using out-of-date plugins built ages
ago as part of a (failed) 'make distcheck' when we forget to clean
up the distcheck build directory.
2009-08-06 09:21:33 +01:00
Tim-Philipp Müller 02790ee700 docs: dist GStreamer-1.0 buffer design draft 2009-08-06 09:21:19 +01:00
Sebastian Dröge ea9e3392c1 taglist: Add new ALBUM_ARTIST tag to the docs 2009-08-06 06:50:41 +02:00
Jan Schmidt 6bba2b6eeb Release 0.10.24 2009-08-05 00:53:17 +01:00
Tim-Philipp Müller 623c19983a check: make new GstStreamConsistency structure private
There's no need to have GstStreamConsistency in a public header for
the time being, so make it private. While we're at it, add a gtk-doc
blurb for it though. Re-fixes #588744.
2009-07-28 15:26:42 +01:00
Edward Hervey dcdc73d182 gstcheck: Add a stream consistency checking helper routine. Fixes #588744 2009-07-20 10:46:19 +02:00
Edward Hervey f39cfbebbf docs/design: Update Makefile.am for changed framestep document name. 2009-07-13 09:33:45 +02:00
Wim Taymans dd670cb5b5 docs: add draft for arbitrary buffer metadata idea 2009-07-10 18:46:39 +01:00
Wim Taymans 8ecbf002b8 docs: more framestep docs out of draft 2009-07-10 18:35:21 +01:00
Wim Taymans c5c136251b docs: update framestep document
Remove experimental status from the framestep draft.
2009-07-10 18:33:58 +01:00
Stefan Kost 2cb16ad7aa 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
2009-07-06 19:54:30 +01:00
Tim-Philipp Müller 6b64d41937 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.
2009-06-23 02:17:48 +01:00
Wim Taymans 6438f6f9b9 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.
2009-06-19 15:31:53 +02:00
Tim-Philipp Müller dccea0406b 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()
2009-06-14 16:17:50 +01:00
Tim-Philipp Müller 674447fafe 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()
2009-06-13 10:53:49 +01:00
Wim Taymans 25067558dc 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.
2009-06-12 13:20:36 +02:00
Wim Taymans e969b3a399 message: add step-start message 2009-06-12 13:16:29 +02:00
Jan Schmidt 29170a4cfa 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.
2009-06-11 13:16:29 +01:00
Tim-Philipp Müller cdd47a37e9 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()
2009-06-10 09:39:12 +01:00
Wim Taymans 89c42f8506 stepping: do flushing steps correctly
Note in the docs that a flushing step in PLAYING brings the pipeline to the lost
state and skips the data before prerolling again.

Implement the flushing step correctly by invalidating the current step
operation, which would activate the new step operation.
2009-06-08 17:41:56 +02:00
Stefan Kost ed88db818b registry: allow plugins to cache extra data in registry. Fixes #570233
Add a GstStructure to GstPlugin. Plugins can retieve it in plugin_init and
access the cached info or build the cache and store it there.
2009-06-07 23:48:59 +03:00
Wim Taymans 0e74bfe248 segment: add gst_segment_set_running_time
Added new method for closing the segment to a specific running time.

API: GstSegment::gst_segment_set_running_time()
2009-06-04 12:53:20 +02:00
Tim-Philipp Müller 604097bc3a API: add GST_MESSAGE_SRC_NAME macro
Add GST_MESSAGE_SRC_NAME macro that always returns a non-NULL string.
Useful for debugging and logging purposes.
2009-06-04 00:40:51 +01:00
Wim Taymans 92984a116b segment: add method for converting to position
Add gst_segment_to_position() that converts a running_time to a position in the
segment. A faulty variant of this function is currently used in inputselector
but we'll need it for frame stepping too.

API: GstSegment::gst_segment_to_position()
2009-06-03 19:06:30 +02:00
Tim-Philipp Müller df851d54ef docs: fix up reference to gst-launch-0.8
Also mention decodebin2, uridecodebin, and playbin2
2009-06-03 09:49:59 +01:00
Wim Taymans 0c205b96b4 framestep: implement backwards framestep
Update framestep document, we want to pass the flush flag in the step-done
message.

Add flush flag to the gstmessage.

Update examples to use the new step-done message api.

Implement framestep with playback rates < 0.0 too.
2009-06-01 13:37:28 +02:00