Commit graph

1997 commits

Author SHA1 Message Date
Tim-Philipp Müller
c6554049de registry: deprecate useless gst_registry_xml_{read|write}_cache()
The only reason these two functions are still around is that at some
point in the past they were in a public header, so we can't really
remove them now even though they should have been private all along
(and aren't really particularly useful). Since these are just empty
stubs now that do nothing but return FALSE and will be removed in
0.11 anyway, we may just as well deprecate them formally.
2010-01-06 19:19:40 +00:00
Wim Taymans
4718b7ef09 collectpads: add ability to install clipping functions
Add a method to install a clipping function that is called when a buffer is
received. Users of collectpads can then perform clipping on the incomming
buffers.

Also retab the header file a little.

See #590265
2009-12-24 15:25:14 +01:00
Wim Taymans
bdaadd4352 docs: add some more buffer2 ideas 2009-12-24 15:13:49 +01:00
Thiago Santos
a3078cf0cd gsttaglist: Adds new tags
Adds the following new tags:
GST_TAG_SHOW_NAME
GST_TAG_SHOW_SORTNAME
GST_TAG_SHOW_EPISODE_NUMBER
GST_TAG_SHOW_SEASON_NUMBER
GST_TAG_LYRICS
GST_TAG_COMPOSER_SORTNAME
GST_TAG_GROUPING

Fixes #599759
2009-12-21 11:58:12 -03:00
Руслан Ижбулатов
dd77e42e91 check: update autotools and docs stuff for new check version 2009-12-19 14:03:42 +00:00
Stefan Kost
f65a81ae6d docs: review and fix spelling 2009-12-14 15:11:14 +02:00
Peter van Hardenberg
bfef4a70bf pwg: make the enum example (based on videotestsrc) actually match videotestsrc 2009-12-04 12:17:07 -08:00
Stefan Kost
8715e3ec36 drafts: planning 2009-12-03 16:06:41 +02:00
Edward Hervey
8f40effea6 gstinfo: API: Add GST_DEBUG_REGISTER_FUNCPTR method.
This is a variant of GST_DEBUG_FUNCPTR which does not return anything.
2009-12-01 17:56:19 +01:00
Wim Taymans
9ea9f9a816 docs: fix another typo 2009-11-28 17:02:17 +01:00
Wim Taymans
c5291d5c21 docs: fix typo 2009-11-28 15:40:30 +01:00
Stefan Kost
efcad155e0 docs: add missing section to libs-docs 2009-11-27 16:39:01 +02:00
Stefan Kost
309187c2ce docs: enable docs for GstObjectClass to fix links 2009-11-27 14:18:38 +02:00
Stefan Kost
1b5391fb47 docs: add docs for GstPluginFlags
This also makes links to them work.
2009-11-27 14:18:38 +02:00
Tim-Philipp Müller
5a1c788d9a docs: improve GstMixer and GstTuner docs
Mention that elements implementing GstMixer and GstTuner need to be
in the right state before they can be used. Also mention GLib
functions for converting filenames to and from URIs.

Fixes #602877.
2009-11-25 15:53:04 +00:00
Wim Taymans
d20b373998 docs: fix grammar 2009-11-23 11:33:48 +01:00
Jan Schmidt
332eb4ea4d basesrc: Add gst_base_src_new_seamless_segment()
Merge new function from resindvd into the primary GstBaseSrc for
starting a new seamless segment.

API: gst_base_src_new_seamless_segment()
2009-11-21 18:23:51 +01:00
Sebastian Dröge
fee1ad3a0a event: API: Add sink-message event
gst_event_new_sink_message()
gst_event_parse_sink_message()

This event is used for sending a GstMessage downstream and synchronized
with the stream, to be posted by the sink once it reaches the sink.

Fixes bug #602275.
2009-11-18 13:12:27 +01:00
Tim-Philipp Müller
3c7c9692ac plugin-scanner: rename plugin-scanner helper binary to gst-plugin-scanner
and install into a different directory $(libexecdir/gstreamer-0.10) so that
everything is versioned properly.

NOTE: run 'make clean' after updating; if you are running an uninstalled setup,
you will need to update your gst-uninstalled script (unless it's symlinked
to gstreamer core master) and exit/enter your uninstalled environment to get
the updated environment. If you are running an installed setup, you should
run 'make uninstall' before merging this change or remove the old
plugin-scanner binary manually.

Fixes #601698.
2009-11-18 09:28:08 +00:00
Tim-Philipp Müller
03d13c2012 gst-uninstalled: add paths for gst-qa-system 2009-11-17 10:02:36 +00:00
Tim-Philipp Müller
a5280fdb6b docs: set GST_PLUGIN_SCANNER when calling gtkdoc-scangobj
Otherwise the docs build won't work properly
2009-11-17 09:09:22 +00:00
Wim Taymans
8c4742866b TODO: remove stepping from TODO
Remove the frame stepping API from the TODO list.
2009-11-16 18:25:45 +01:00
Sebastian Dröge
0ed24bc50e utils: API: Add multiplication and addition functions for fractions
gst_util_fraction_add()
gst_util_fraction_multiply()

These work on plain integers instead of GValues to
keep the overhead as low as possible.
2009-11-16 09:56:32 +01:00
Sebastian Dröge
e4257e8d5f gstutils: API: Add fraction helper functions
gst_util_greatest_common_divisor()
gst_util_double_to_fraction()
gst_util_fraction_to_double()

Using these instead of going over GValue has much lower overhead.

Also add float<->fraction transform functions for GValue.
2009-11-16 09:56:32 +01:00
Sebastian Dröge
039ef83523 registry: API: Add gst_{default,}_registry_get_feature_list_cookie()
This returns the internal feature list cookie, which changes every
time a feature is added or removed. This can be used by elements
to check if they should update their cached feature lists.
2009-11-10 18:17:26 +01:00
Stefan Kost
ab5abab603 planning: add thoughts about foreign registry cache updates 2009-11-09 16:33:05 +02:00
Wim Taymans
2ffbb1a374 docs: don't forget to unref the pad 2009-11-09 12:42:35 +01:00
Stefan Kost
f63ecd04a8 pad: rename new api from _refed to _reffed.
Due to popular demand rename the new api as we still can.
API: gst_pad_get_caps_reffed(), gst_pad_peer_get_caps_reffed()
2009-11-05 12:54:32 +02:00
Sebastian Dröge
f9e3b72ff6 structure: API: Add gst_structure_id_has_field{,_typed} 2009-11-02 09:24:10 +01:00
Sebastian Dröge
9ff8c9a7bb queue2: Add to the docs 2009-10-29 11:41:33 +01:00
Stefan Kost
118509af69 docs: include annotation glossary to have working links. 2009-10-28 10:15:12 +02:00
Wim Taymans
ac1e923617 design: add some ideas for SKIP mode trickmodes 2009-10-27 15:47:39 +01:00
Tim-Philipp Müller
4a9e983f4a docs: add Since tag to docs for new API
And tell gtk-doc that GstRegistryPrivate is private.
2009-10-24 10:31:08 +01:00
Edward Hervey
ebee258806 gstpluginfeature: API : new gst_plugin_feature_list_copy() method
This allows copying AND incrementing the refcount at the same time,
avoiding a double iteratio of the GList
2009-10-24 10:39:30 +02:00
Wim Taymans
c10690aea2 TODO: add item to TODO list
We currently do a little too much work when we push the first buffer around
resulting in excessive caps checking. We can probably make this a little less
expensive.
2009-10-22 16:42:13 -04:00
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
Wim Taymans
386c516e51 add new API for framestepping
Add new STEP event and methods for creating/parsing the event
Update design docs.
Add new STEP_DONE message and method to create/parse.

API: GstEvent::gst_event_new_step()
API: GstEvent::gst_event_parse_step()
API: GstMessage::gst_message_new_step_done()
API: GstMessage::gst_message_parse_step_done()
2009-06-01 13:36:49 +02:00
Tim-Philipp Müller
c8acbbfde0 structure: add gst_structure_id_new() convenience function
Add convenience wrapper for gst_structure_id_empty_new() plus
gst_structure_id_set() and use it in a few places.

API: gst_structure_id_new()
2009-05-29 19:28:10 +01:00
Wim Taymans
170b9d6253 docs: remove a TODO item that is fixed now 2009-05-29 12:48:28 +02:00
Wim Taymans
83b2c63a30 element: add start_time field an methods
Add a start_time field and some methods. The start_time will contain the
running_time of when the element last went to paused. This time can be user to
report the position in PAUSED but also to do more correct clipping and
stepping later.
2009-05-29 11:55:38 +02:00
Wim Taymans
8f7c59936e pad: add pad private structure
Add pad private structure and move the new chainlistfunc into the private
struct. This avoids ABI breakage and allows us to expand in the future.
2009-05-28 16:36:32 +02:00
Sebastian Dröge
4e8f547f98 API: Add gst_message_{new,parse}_tag_full() to get/set the source pad
Fixes bug #582588.
2009-05-27 14:32:51 +02:00
Tim-Philipp Müller
7a265c1451 manuals.mak: attempt to make 'make distcheck' work with -jN
Attempt to fix the 'cannot create regular file build/image.entitites:
file exists' error I got.
2009-05-26 10:38:56 +01:00
Wim Taymans
6fd78ac41c docs: add Image to draft klass documentation 2009-05-25 14:53:08 +02:00
Wim Taymans
13c4a06e03 docs: add new symbol to docs 2009-05-20 00:44:11 +02:00
Wim Taymans
bb8f296d45 clock: use seqlocks to parallellize readers 2009-05-15 16:14:52 +02:00
Edward Hervey
4f951e2614 Makefile.am: update for added/moved/removed files that weren't dist-ed. 2009-05-15 11:00:53 +02:00
Jan Schmidt
b99d1f382a docs: Release script modifications 2009-05-14 22:56:43 +01:00
Wim Taymans
e535c171d6 docs: rename and delete some design docs 2009-05-14 12:31:57 +02:00
Wim Taymans
ae08561ae6 element: add gst_element_lost_state_full()
Add a gst_element_lost_state_full() with an extra argument to control
distribution of a new base_time. We will need this for flushing step
operations.

API: GstElement::gst_element_lost_state_full()
2009-05-14 11:36:28 +02:00
Wim Taymans
0f83510620 docs: update trickmode document 2009-05-13 23:38:08 +02:00