Commit graph

3150 commits

Author SHA1 Message Date
Mark Nauwelaerts 2bf1a4428e audio: correctly fill in fallback channel positions in stereo case 2012-02-06 22:10:28 +01:00
Wim Taymans bfa00d0996 video: mark endianness correctly 2012-02-06 18:33:59 +01:00
Wim Taymans 774f80d49c tagdemux: push event in the right direction
Push the stored events in the right direction
2012-02-06 15:54:34 +01:00
Tim-Philipp Müller 8c9639d1e3 tag: fix up define that tells code where to find the license translations too
Tell code about new location of translation dict.
2012-02-06 13:49:12 +00:00
Wim Taymans 6c08f53416 audiofilter: configure info after calling vmethod
First call the vmethod and then configure the audioinfo in the baseclass. This
allows subclasses to know about the old format.
2012-02-06 13:23:26 +01:00
Wim Taymans 0c5755730b videofilter: take care of in_place transform
If the subclass doesn't implement a transform_frame function we need to force
the baseclass into in_place transform.
2012-02-06 13:23:25 +01:00
Sebastian Dröge e4501ce1be tag: Install license translations into $(pkgdatadir)/0.11
This prevents file conflicts with GStreamer 0.10.
2012-02-06 11:45:16 +01:00
Mark Nauwelaerts fa63d7181d video: add GST_VIDEO_INFO_COMP_BITS 2012-02-06 10:52:01 +01:00
Sebastian Dröge 103c59af24 video: Add GST_VIDEO_INFO_COMP_WIDTH 2012-02-06 09:53:22 +01:00
Wim Taymans fe3e9b90dd audioencoder: don't unref caps parameter
Fix refcounting on incomming caps to make sure we don't unref it too much.
2012-02-03 09:51:00 +01:00
Tim-Philipp Müller 24749aa2db discoverer: mark GError argument of "discovered" signal with STATIC_SCOPE
So the error is passed to the callback as is without a copy being made.
2012-02-01 19:34:22 +00:00
Sebastian Dröge 1cb4029d00 audioencoder: gst_pad_get_pad_template_caps() now returns a new reference, don't forget to unref 2012-02-01 16:33:30 +01:00
Sebastian Dröge 5aa6748151 audio{enc,dec}oder: Check if srcpad caps are a subset of the template caps 2012-02-01 16:32:53 +01:00
Sebastian Dröge 0370b0dc12 audioencoder: Add gst_audio_encoder_set_output_format() function for consistency 2012-02-01 16:27:47 +01:00
Sebastian Dröge dbd43c7dd3 audiodecoder: Rename set_outcaps() to set_output_format() and take a GstAudioInfo as parameter 2012-02-01 16:27:47 +01:00
George Kiagiadakis 1251fb3fc0 video: Use host endianness when generating caps for 16-bit rgb formats
This is necessary in order to match what the caps strings in
video.h contain for 16-bit rgb formats and also to match how
gst_video_format_parse_caps expects them.

https://bugzilla.gnome.org/show_bug.cgi?id=667681
2012-01-30 15:56:44 +00:00
Wim Taymans fa400c372b videopool: update for allocator api update 2012-01-30 13:10:40 +01:00
Olivier Crête e391118125 Use macros to register boxed types thread safely 2012-01-28 14:53:21 +00:00
Olivier Crête cb044668d3 rtcpbuffer: Set the map.size to the current size of the RTCP packet
maxsize is the maximum size
2012-01-27 19:01:55 +01:00
Olivier Crête b993b8457d rtpcbuffer: To write inside a RTCP buffer, you must be able to read
So always require read
2012-01-27 19:01:55 +01:00
Olivier Crête 6b559a50fb rtcpbuffer: Return errors if the map mode doesn't match the actions 2012-01-27 19:01:55 +01:00
Olivier Crête ab359d36d5 rtcpbuffer: Don't try to modify read-only buffers 2012-01-27 19:01:55 +01:00
Wim Taymans 30af2fe7d6 audiosrc: wait on the right cond variable
This broke with a merge commit
2012-01-27 18:27:26 +01:00
Wim Taymans e2c50fbf0c tagdemux: use default event handler for delayed events 2012-01-26 19:48:59 +01:00
Wim Taymans e7575bc525 rtp: improve structures
Remove flags that is in the mapinfo now
2012-01-25 12:30:53 +01:00
Wim Taymans fcdc385aa1 port to new map API 2012-01-25 12:30:53 +01:00
Olivier Crête 1a592199e9 rtpbasepayload: Port to group-less GstBufferList 2012-01-25 11:55:02 +01:00
Sebastian Dröge 68c0790817 Merge branch 'master' into 0.11
Conflicts:
	gst-libs/gst/interfaces/propertyprobe.c
	sys/xvimage/xvimagesink.c
2012-01-25 11:50:54 +01:00
David Schleef bd900a6c85 propertyprobe: fix documentation 2012-01-23 09:29:45 -08:00
Tim-Philipp Müller ef75dd6e90 discoverer: use G_TYPE_ERROR instead of GST_TYPE_G_ERROR 2012-01-22 01:47:14 +00:00
Mark Nauwelaerts 2d3b3395cc tag: exif: add missing break 2012-01-19 16:43:27 +01:00
Wim Taymans d9ef75b799 rtcp: handle size update correctly
Do explicit resize to set the size of a buffer instead of setting a value in
unmap.
2012-01-19 15:20:01 +01:00
Wim Taymans 5be917d5bd appsrc: handle NULL caps correctly 2012-01-19 15:18:58 +01:00
Wim Taymans 5872bcc33a Update for memory API changes 2012-01-19 12:15:18 +01:00
Wim Taymans 3d42f0f6ed port to new glib thread API 2012-01-19 11:36:17 +01:00
Tim-Philipp Müller 576bbb4fd8 Remove compatibility code cruft for old GLib versions 2012-01-18 17:22:21 +00:00
Mark Nauwelaerts 3e312e6e16 baseaudiosink: commit correct number of samples when not syncing 2012-01-17 21:46:58 +01:00
Sebastian Dröge aed2666b53 rtsp: Port to GIO 2012-01-17 16:38:45 +01:00
Sebastian Dröge cfa7083e94 sdp: Port to GIO for multicast address detection 2012-01-17 13:27:05 +01:00
Mark Nauwelaerts 974c678ec8 audiodecoder: register state change function 2012-01-17 11:53:51 +01:00
Matej Knopp 5c91ca3256 videopool: fix printf warning in debug message
https://bugzilla.gnome.org/show_bug.cgi?id=662607
2012-01-15 13:58:24 +00:00
Tim-Philipp Müller e96aaec6bb GST_TYPE_DATE -> G_TYPE_DATE 2012-01-12 23:35:44 +00:00
Tim-Philipp Müller 68785cc2e7 discoverer: fix up for GstTagList != GstStructure 2012-01-12 23:25:22 +00:00
Tim-Philipp Müller 0461ed2ada Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	gst-libs/gst/pbutils/gstdiscoverer-types.c
	gst-libs/gst/pbutils/gstdiscoverer.c
	tests/check/Makefile.am
2012-01-12 23:21:17 +00:00
Vincent Penquerc'h ab7e72ad70 discoverer: fix structure leak
I hit the 'misc' one, but let's also make sure the topology
one get freed as well, though I do not know if this can happen
twice.
2012-01-12 14:27:25 +00:00
Reynaldo H. Verdejo Pinochet 1a8ee4536c Add missing DEFAULT_INCLUDES on androgenizer call
Fix building of the libgstvideo module on Android by adding the
missing and needed $(DEFAULT_INCLUDES) to CFLAGS for the
androgenizer call on gst-libs/gst/video/Makefile.am

Before this change, building was failing due to gst-plugins-base/
and gst-plugins-base/gst-libs/gst/video being left out of the
include path.
2012-01-11 21:04:40 -03:00
Vincent Penquerc'h 426f991b52 discoverer: fix leaks caused by some base class dtors not being called 2012-01-11 12:52:17 +00:00
Vincent Penquerc'h 96e40584ce discoverer: fix caps and discoverer object ref leaks 2012-01-11 12:16:28 +00:00
Vincent Penquerc'h 9ab18d7a68 discoverer: add a few consts where appropriate 2012-01-11 11:55:59 +00:00
Vincent Penquerc'h 7ad6431837 discoverer: fix pad leak 2012-01-11 11:55:36 +00:00
Sebastian Dröge de19cfdd8a audio: More UNPOSITION flag sanity checks
..and turn the GST_WARNING() into a g_warning(). This is a programming
error and should be fixed.
2012-01-11 10:49:49 +01:00
Sebastian Dröge a03f70e3cd audio: Add validity check for the UNPOSITIONED audio flag
Also reset the flag when parsing caps.
2012-01-11 10:44:37 +01:00
Tim-Philipp Müller b155e094ed discoverer: use GST_TYPE_TAG_LIST for tag lists
They may not be structures in 0.11/1.0.
2012-01-10 18:29:22 +00:00
Tim-Philipp Müller 5f20af6ce5 discoverer: fix potential tag list leaks
Not that I have ever seen these in practice, but if they
can't happen we may just as well just assign the new tag
list. Merge properly to be on the safe side, and also
avoid a useless tag list copy in the normal case where
there is no tag list yet.
2012-01-10 18:29:21 +00:00
Tim-Philipp Müller b794f78d26 discoverer: fix potential caps leak
in last else chunk.
2012-01-10 18:29:21 +00:00
Sebastian Dröge dc8984d76c Merge branch 'master' into 0.11
Conflicts:
	gst-libs/gst/app/gstappsrc.c
	gst-libs/gst/audio/multichannel.h
	gst-libs/gst/video/videooverlay.c
	gst/playback/gstplaysink.c
	gst/playback/gststreamsynchronizer.c
	tests/check/Makefile.am
	win32/common/libgstvideo.def
2012-01-10 13:15:12 +01:00
Sebastian Dröge 05beab5382 audiometa: Improve GstAudioDownmixMeta to be actually usable
This now has a two-dimensional array of coefficients
as required and also stores the source and destination
channel positions.
2012-01-10 12:46:05 +01:00
Sebastian Dröge 67c8b0dfbd audio: Don't crash if NULL positions are passed to gst_audio_info_set_format() 2012-01-10 12:02:56 +01:00
Sebastian Dröge 5cb3d75dbf audiobasesink: Fix infinite recursion by chaining up to the correct parent class vfunc 2012-01-09 14:19:54 +01:00
Sebastian Dröge bb3eb93ee9 audio: Don't check for channel positions in valid order when converting to a channel mask 2012-01-09 08:24:23 +01:00
Tim-Philipp Müller 9f042ae224 rtspconnection: make hostname lookup more thread-safe
Don't write IP number string to return into a static
array which is shared amongst all threads (note: of
course a copy is returned).

https://bugzilla.gnome.org/show_bug.cgi?id=666711
2012-01-07 20:16:41 +00:00
Tim-Philipp Müller 1031fedaf0 discoverer: make is_subtitle_caps thread-safe 2012-01-07 19:39:42 +00:00
Edward Hervey 82da418201 audio: Fix size check
We fail (and return) if the size is *NOT* a multiple of samples.
2012-01-06 15:14:59 +01:00
Vincent Penquerc'h 5cf87eedc4 video: overlays may now have premultiplied alpha
https://bugzilla.gnome.org/show_bug.cgi?id=666177
2012-01-06 10:19:19 +00:00
Havard Graff 95be60de15 Fix various unlikely, but still potential memoryleaks in error code paths
https://bugzilla.gnome.org/show_bug.cgi?id=667311
2012-01-05 13:27:23 +00:00
Havard Graff b11d516c46 appsrc: implement get_caps vfunc
This allows downstream elements to query what caps are available.

https://bugzilla.gnome.org/show_bug.cgi?id=667312
2012-01-05 13:12:33 +00:00
Wim Taymans dd43d0697e audio: expose API to convert channel array to a mask 2012-01-05 13:59:32 +01:00
Wim Taymans 1317811af6 riff: don't use NULL arrays 2012-01-05 12:31:51 +01:00
Pascal Buhler 0febae7443 rtcpbuffer: prevent overflow of 16bit header length.
RTCP header can be  (2^16 + 1) * 4 bytes long, so when validating a bogus
packet it was possible to get a 16bit overflow resulting in a length of 0.
This would put the gst_rtcp_buffer_validate_data function in a endless loop.

https://bugzilla.gnome.org/show_bug.cgi?id=667313
2012-01-05 11:12:25 +00:00
Sebastian Dröge 9e072ea844 audio: Improve/fix handling of NONE layouts 2012-01-05 10:34:25 +01:00
Sebastian Dröge 8dcea5d498 audio: Add support again for more than 64 channels with NONE layouts 2012-01-05 10:34:25 +01:00
Sebastian Dröge 31c9f7d09a audio: Fix GST_AUDIO_CHANNEL_POSITION_MASK macro 2012-01-05 10:34:25 +01:00
Sebastian Dröge c52b50a517 riff: Return a channel reorder map for raw audio when creating the caps 2012-01-05 10:34:25 +01:00
Sebastian Dröge 7cd0659032 riff: Add the layout field to the raw audio caps 2012-01-05 10:34:24 +01:00
Sebastian Dröge 9d56bf7712 audioencoder: Proxy the channel mask field instead of the old channel-layout field 2012-01-05 10:34:24 +01:00
Sebastian Dröge 8fe5dc53e0 audiocdsrc: Add the layout field to the caps 2012-01-05 10:34:24 +01:00
Sebastian Dröge 810bfec656 audio: Add "layout" field to the raw audio caps
This can be used to differentiate between interleaved
and non-interleaved audio and whatever comes in the future.
2012-01-05 10:34:24 +01:00
Sebastian Dröge e2c6b8ec4d audio: Add function to reorder channel positions from any order to the GStreamer order 2012-01-05 10:34:24 +01:00
Sebastian Dröge bd40936409 audioringbuffer: Use new function to get a channel reordering map 2012-01-05 10:34:24 +01:00
Sebastian Dröge 9e930a1ade audio: Add documentation for the new functions 2012-01-05 10:34:24 +01:00
Sebastian Dröge c9c12372a5 audio: Add public functions to check channel positions validity and to get a reorder map 2012-01-05 10:34:24 +01:00
Sebastian Dröge ee80a97a2a riff: Port to the new multichannel caps 2012-01-05 10:34:24 +01:00
Sebastian Dröge 225238a913 audioringbuffer: Add support for reordering of channels 2012-01-05 10:34:16 +01:00
Sebastian Dröge c227f5e77e audio: Add new channel positions and simplify channel expression in the caps
The available channel positions are all channels from SMPTE 2036-2-2008
(in that order) and DTS Coherent Acoustics, which are basically all 28
channels that currently can appear.

The channels are now expressed in the caps as a channel-mask, which
describes which of the channels are present, and an optional
channel-reorder-map, which must only be used after negotiation for
fixated caps.

For negotiation only the channel-mask and the channel count is relevant
and all elements are expected to handle all reorder maps. Elements that
don't can use the new API to reorder an audio buffer from any order to
another order.

This simplifies negotiation a lot while still having as few reorderings
necassary as possible and still allow all kinds of channel layouts.
2012-01-05 10:27:21 +01:00
Philip Flarsheim 08af765ea2 docs: add win32 code snippets to GstXOverlay Gtk+ example 2012-01-05 01:54:29 +00:00
Wim Taymans 21ed12739e video: add macro to check interlaced
Add a convenience macro to check if the video is interlaced.
2012-01-03 10:41:51 +01:00
Wim Taymans 2f3cf3a7ee videofilter: use caps of the allocation query
Use the caps from the allocation query to propose a video bufferpool instead of
our own negotiated caps.
2012-01-02 16:13:51 +01:00
Wim Taymans e9eaf17eae audioencoder: turn assert into a real error
Post a real error instead of just asserting. Fixes a unit test.
2012-01-02 15:42:39 +01:00
Tim-Philipp Müller 26e612aeda playback, mixerutils: gst_registry_get_default() -> gst_registry_get() 2012-01-02 14:32:11 +00:00
Wim Taymans ed6fd4eb2f audio: add flag for unpositioned layout
Check if thr layout is explicitly unpositioned and set a flag in the
audio info structure.
2012-01-02 15:01:58 +01:00
Wim Taymans 21bf4f04f3 video: fix some video formats
Rename the offset field in GstVideoFormatInfo to poffset to avoid confusion with
the offset of the plane in the buffer. The poffset is the offset in the plane
where the first byte of the component data can be found.
Properly implement the COMP_OFFSET calculations.
Fix YV12 and YVU9, simply use the same offsets as the regular I420 and YUV9
variants, we use the plane info to reorder components already.
Improve the unit test.
2012-01-02 13:30:53 +01:00
Tim-Philipp Müller 76cc8b8f2a tag: add function to check whether a string is a valid language code
API: gst_tag_check_language_code()
2012-01-02 01:04:00 +00:00
Tim-Philipp Müller c3e6e23b85 audio, rtsp: remove private/protected gtk-doc markup for enums
This confuses glib-mkenums, and is not really useful anyway.

https://bugzilla.gnome.org/show_bug.cgi?id=666618
2012-01-02 00:19:57 +00:00
Tim-Philipp Müller 942fec2031 video: add some padding to GstVideoFilter 2011-12-30 19:27:16 +00:00
Tim-Philipp Müller d877ef13f5 docs: make gtk-doc happier 2011-12-30 19:24:09 +00:00
Tim-Philipp Müller 62e5a67376 audiocdsrc: remove some probing-related vfuncs
GstPropertyProbe was removed, so these aren't actually used
and we probably want something different for the new API.
2011-12-30 16:26:47 +00:00
Tim-Philipp Müller 6a85353a92 audiocdsrc: update for GstIndex removal 2011-12-30 16:18:39 +00:00
Tim-Philipp Müller 31890ef59b audiocdsrc: make private bits private 2011-12-30 16:12:30 +00:00
Edward Hervey f562a29284 Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	ext/theora/gsttheoraenc.c
	gst-libs/gst/tag/gstexiftag.c
	gst/adder/gstadder.c
	gst/adder/gstadder.h
	gst/playback/gstdecodebin2.c
	gst/playback/gstsubtitleoverlay.c
	tests/check/libs/tag.c
2011-12-30 13:21:35 +01:00
Edward Hervey 5f7e15fd6c pbutils/descriptions: Handle "video/x-raw" without specified format
Without having it raise an assertion, which is valid when asking for
the description of the format.
2011-12-28 16:34:56 +01:00
Wim Taymans 8d93f8edb3 videopool: add support for custom allocators 2011-12-28 15:35:52 +01:00
Tim-Philipp Müller 3dfdd6be9d audioringbuffer: rename GST_BUFTYPE_* to GST_AUDIO_RING_BUFFER_FORMAT_TYPE_*
Bit unwieldy, but more appropriate. Could also be moved into
audio.h as GstAudioFormatType.
2011-12-25 21:38:21 +00:00
Tim-Philipp Müller 80095caa40 audioringbuffer: remove unused GstAudioRingBufferSegState enum and field 2011-12-25 21:23:11 +00:00
Tim-Philipp Müller dfa23662e1 tag: fix writing of Exif tag payloads <= 4 bytes
When the payload for an Exif tag is less than or equal to 4 bytes,
the data is simply put into the offset field. Fix writing these
kinds of payloads on big endian systems (and possibly also on
little endian systems). The caller will have already formatted
the bytes in memory according to the writer's endianness, so just
write out the bytes as they are in this case. Fixes tags unit test
on big endian systems.
2011-12-23 22:24:44 +00:00
Mark Nauwelaerts e3c78ff661 audioencoder: add a few more debug statements 2011-12-22 16:58:37 +01:00
Mark Nauwelaerts 9bfa65b7d3 audiodecoder: tweak documentation 2011-12-22 16:58:34 +01:00
Thiago Santos 77353dad21 tag: xmp: Keep compatibility with our old generated xmp
We used to add a trailing \n to the end of generated xmp packets.
Windows viewer was unhappy with it and we fixed it in
96d2120c2b

The problem is that this caused xmp generated before this fix
to not be recognized and parsed anymore. This patch makes it
recognize xmp with the trailing \n and without, fixing the
regression. Also adds tests for it.
2011-12-22 08:12:28 -03:00
Wim Taymans a5f3d21723 videofilter: improve video filter
Flesh out the video filter base class. Make it parse the input and output caps
and turn them into GstVideoInfo. Map buffers as video frames and pass them to
the transform functions.
This allows us to also implement the propose and decide_allocation vmethods.
Implement the transform size method as well.
Update subclasses with the new improvements.
2011-12-21 23:46:53 +01:00
Wim Taymans f50573fd66 videopool: add videopool implementation
Add a GstVideoPool object that can be used to allocate video frames with support
for metadata and alignment.
Add method to reset alignment info.
2011-12-21 18:13:17 +01:00
Wim Taymans ddc05e0ed1 propertyprobe: remove propertyprobe
Remove the propertyprobe interface
Improve docs
2011-12-21 11:58:53 +01:00
Vincent Penquerc'h ceeff69bc1 gstvideo: fix a RGB ordering mixup in colorspace conversion code 2011-12-20 19:55:53 +00:00
Sebastian Dröge 2760dd2068 audiobasesrc: Use guint8 instead of guchar 2011-12-20 14:36:28 +01:00
Sebastian Dröge 338622fe7e audioringbuffer: Use guint8 instead of guchar 2011-12-20 14:36:28 +01:00
Mark Nauwelaerts c41f3cbef0 audiodecoder: set a non-zero default maximum tolerated errors
Whereas the previous default 0 was backwards compatible in that it lead
to erroring out immediately upon any error, elements that are really
ported and using the base class error macro can be assumed to intend to
improve behaviour rather than maintaining the old one.  So, make it easy
on those and any future one and tolerate some errors by default, as intended.

Fixes #666579.
2011-12-20 12:50:18 +01:00
Wim Taymans 7505b7a55c add audio metadata
Add some audio metadata to describe a downmix matrix.
Add metadata to media type document.
2011-12-20 12:02:25 +01:00
Wim Taymans 6241ff63f8 video: update interlace caps and docs
Remove interlaced boolean from caps and replace with an interlace-mode enum.
document this new property in the video caps document. With the enum we can
put fields into separate video meta.
Add enum for this interlace-mode in the VideoInfo.
Update the buffer flags.
2011-12-19 18:03:45 +01:00
Wim Taymans 81d351b5f0 tagdemux: add FIXME
Add a FIXME because the EOS before-type case now has to be solved differently
because the srcpad is always available.
2011-12-19 11:03:55 +01:00
Thiago Santos d798cc1b8d tag: exif: do not include \0 in size passed to g_convert
When using g_convert, we should only pass the length
of the string content (without the \0) as g_convert will
only parse the real contents when changing formats. Including
the \0 causes it to add another \0, increasing the string
size when not needed.

For example, when writting a North geo location ref entry, that should
be a string with a single N letter, it would write:
"N\0\0", causing the string to have size 3, instead of 2 as expected.

In our case, we can pass -1 and let g_convert calculate the strlen as
we don't use the length anywhere else.

This fixes jifmux's tests on gst-plugins-bad.
2011-12-15 12:08:51 -03:00
Christian Fredrik Kalager Schaller 0d552ae53d Fix 666168, add missing allow-None to encodebin APIs 2011-12-14 17:34:55 +00:00
Tim-Philipp Müller d5ae24fe91 encoding-profile: add some missing allow-none g-i annotations
Fix gst_encoding_container_profile_new() annotations.

https://bugzilla.gnome.org/show_bug.cgi?id=666096
2011-12-14 12:28:26 +00:00
Stefan Sauer d0a5cb8c01 riff-media: port GST_BUFFER_DATA to 0.11 in conditional code branch 2011-12-14 11:31:31 +01:00
Vincent Penquerc'h 12be1e6fc5 baseaudiosink: fix late buffer leak 2011-12-13 12:55:45 +00:00
Sebastian Dröge 739de5fbf9 glib-compat: Add license boilerplate for LGPL 2011-12-13 00:03:28 +00:00
Wim Taymans 59d5ad42b0 rtsp: use rtpbin 2011-12-09 19:22:21 +01:00
Wim Taymans 6be9a67148 rtp: add INIT macros 2011-12-09 19:22:21 +01:00
Tim-Philipp Müller 54c5cd8c3f rtpbuffer: add GST_RTP_BUFFER_INIT to initialize RTP buffers on the stack
Fixes build of -good.
2011-12-09 15:03:41 +00:00
Tim-Philipp Müller fb6d09055a Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	ext/alsa/gstalsadeviceprobe.c
	ext/alsa/gstalsamixer.c
	ext/pango/gsttextoverlay.c
	ext/pango/gsttextoverlay.h
	gst-libs/gst/audio/gstaudiobasesink.c
	gst-libs/gst/audio/gstaudioringbuffer.c
	gst-libs/gst/audio/gstaudiosrc.c
	gst-libs/gst/video/Makefile.am
	gst-libs/gst/video/video.c
	gst/encoding/gststreamcombiner.c
	gst/encoding/gststreamsplitter.c
	gst/playback/gstplaybasebin.c
	gst/playback/gststreamsynchronizer.c
	gst/playback/gstsubtitleoverlay.c
	gst/playback/gsturidecodebin.c
	sys/xvimage/xvimagesink.c
	tests/examples/Makefile.am
	win32/common/libgstvideo.def

Video overlay composition disabled for now, needs
porting to buffer meta.
2011-12-08 01:19:03 +00:00
Tim-Philipp Müller 91bbfbd819 video: make composition_blend() return a boolean
Not that anyone will ever check that, and it's not clear what
they're supposed to do if it fails, but at least it's there.
2011-12-07 18:45:28 +00:00
Tim-Philipp Müller 6757afc0bc docs: add new API to docs 2011-12-07 18:38:06 +00:00
Tim-Philipp Müller 5037b39883 video: add seqnum getters for overlay compositions and rectangles
API: gst_video_overlay_composition_get_seqnum()
API: gst_video_overlay_rectangle_get_seqnum()
2011-12-07 17:57:08 +00:00
Thibault Saunier 39c5015ed0 video: support any type of video in _parse_caps
Slight change in semantics for convenience. Shouldn't cause any
problems since this function is usually only used on pre-filtered
caps and not random caps, and it's hard to imagine a situation
where someone would want to rely on the previous behaviour.
2011-12-07 15:51:14 +00:00
Tim-Philipp Müller 61d0ab1faa video: fix leak in gst_video_format_new_template_caps()
g_value_reset() is not the same as g_value_unset()
2011-12-06 14:55:54 +00:00
Wim Taymans f096b8a8d8 ringbuffer: remove old _full version 2011-12-06 15:06:12 +01:00
Wim Taymans 9e97260c9f fix for basesrc changes 2011-12-06 13:59:11 +01:00
Edward Hervey ea0ed511f8 rtp: Initialize GstRTPBuffer before usage 2011-12-05 18:42:24 +01:00
Edward Hervey 94230af7a3 rtp: Don't forget to initialize GstRTPBuffer 2011-12-05 18:30:37 +01:00
Tim-Philipp Müller 7d20a7bdb9 video: don't use deprecated GStaticMutex with newer glib versions 2011-12-05 15:48:07 +00:00
Tim-Philipp Müller 6630236af4 video: add video overlay composition API for subtitles
Basic API to attach overlay rectangles to buffers,
or blend them directly onto raw video buffers.

To be used primarily for things like subtitles or
logo overlays, not meant to replace videomixer.

Allows us to associate subtitle overlays with
non-raw video surface buffers, so that subtitles
are not lost and can instead be rendered later
when those surfaces are displayed or converted,
whilst re-using all the existing overlay plugins
and not having to teach them about our special
video surfaces. Could also have been made part
of the surface buffer abstraction of course, but
a secondary goal was to consolidate the blending
code for raw video into libgstvideo, and this
kind of API allows us to do both in a way that's
minimally invasive to existing elements, and at
the same time is fairly intuitive.

More features and extensions like the ability to
pass the source data or text/markup directly will
be added later.

https://bugzilla.gnome.org/show_bug.cgi?id=665080

API: gst_video_buffer_get_overlay_composition()
API: gst_video_buffer_set_overlay_composition()

API: gst_video_overlay_composition_new()
API: gst_video_overlay_composition_add_rectangle()
API: gst_video_overlay_composition_n_rectangles()
API: gst_video_overlay_composition_get_rectangle()
API: gst_video_overlay_composition_make_writable()
API: gst_video_overlay_composition_copy()
API: gst_video_overlay_composition_ref()
API: gst_video_overlay_composition_unref()

API: gst_video_overlay_composition_blend()

API: gst_video_overlay_rectangle_new_argb()
API: gst_video_overlay_rectangle_get_pixels_argb()
API: gst_video_overlay_rectangle_get_pixels_unscaled_argb()
API: gst_video_overlay_rectangle_get_render_rectangle()
API: gst_video_overlay_rectangle_set_render_rectangle()
API: gst_video_overlay_rectangle_copy()
API: gst_video_overlay_rectangle_ref()
API: gst_video_overlay_rectangle_unref()
2011-12-05 15:37:02 +00:00
Tim-Philipp Müller a7a3f969b3 video: hide private video-blend.[ch] from gobject-introspection
And remove unused fields from helper structure.
2011-12-05 15:37:02 +00:00
Tim-Philipp Müller b0ff1d22e9 video: add fallbacks for compilation without orc 2011-12-05 15:36:56 +00:00
Thibault Saunier 80054a3b1e video: add some internal helper functions for image blending
This could be improved if we decide we don't need it to
be this generic/flexible.
2011-12-05 15:03:47 +00:00
Sebastian Dröge b0f4085f22 xoverlay: Fix mistakes in the sample code
Fixes bug #665430.
2011-12-05 09:39:08 +01:00
Matej Knopp f89d7ee7eb Appsink fixes 2011-12-05 09:34:50 +01:00
Tim-Philipp Müller 5440ae3c18 Suppress deprecation warnings in selected files, for g_static_rec_mutex_* mostly
GStaticRecMutex is part of our API/ABI, not much we can do here
in 0.10 for most of these.
2011-12-04 20:50:25 +00:00
Tim-Philipp Müller 0d98aa25b8 Work around deprecated thread API in glib master
Add private replacements for deprecated functions such as
g_mutex_new(), g_mutex_free(), g_cond_new() etc., mostly
to avoid the deprecation warnings. We'll change these
over to the new API once we depend on glib >= 2.32.

Replace g_thread_create() with g_thread_try_new().
2011-12-04 17:16:30 +00:00
Tim-Philipp Müller 6098442bd0 xmpwriter: update for thread API deprecations in glib master 2011-12-04 15:23:21 +00:00
Wim Taymans 1225aa9a78 update for basesink event handler changes 2011-12-02 22:24:43 +01:00
Tim-Philipp Müller 177525f89f Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	gst-libs/gst/netbuffer/gstnetbuffer.c
	gst/ffmpegcolorspace/avcodec.h
	gst/ffmpegcolorspace/gstffmpegcodecmap.c
	gst/ffmpegcolorspace/imgconvert.c
	gst/ffmpegcolorspace/imgconvert_template.h
	gst/ffmpegcolorspace/mem.c
	gst/playback/README
	gst/playback/gstplaybasebin.c
	gst/playback/gstplaybasebin.h
	gst/playback/gstplaybin.c
	sys/v4l/v4lmjpegsrc_calls.c
	sys/v4l/videodev_mjpeg.h
	tests/check/elements/gnomevfssink.c
2011-12-02 11:10:17 +00:00
Piotr Fusik 14644457b0 various: typo fixes
Fix typos in code and docs. Fixes. #658984
2011-12-02 12:03:27 +01:00
Tim-Philipp Müller ec0d3566bf Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	ext/alsa/gstalsasrc.c
	ext/alsa/gstalsasrc.h
	gst/adder/gstadder.c
	gst/playback/gstplaybin2.c
	gst/playback/gstplaysinkconvertbin.c
	win32/common/libgstvideo.def
2011-12-02 00:07:39 +00:00
Wim Taymans 3deaa582d9 tags: make the tag functions return GstSample
gst_tag_image_data_to_image_buffer() ->
   gst_tag_image_data_to_image_sample() And make it return a GstSample.
Store the image-type into the extra sample info.
Remove a deprecated tag
2011-12-01 18:51:51 +01:00
Wim Taymans 59113af604 Use the new GstSample for snapshots
Make appsink return a GstSample. Remove the pull_buffer_list method because it
is not very useful anymore.
Pass GstSample to the conversion function.
Update playbin2 and examples
2011-12-01 16:53:11 +01:00
Wim Taymans 66d7151787 update marshal list 2011-12-01 15:54:49 +01:00
Wim Taymans 92ac25bdb3 videometa: add copy functions
Without copy functions, the metadata is lost when we make a buffer copy such as
when we make a buffer writable.
2011-12-01 15:45:28 +01:00
Wim Taymans e064f9dbf6 appsrc: fix negotiation
Remove old useless caps code.
Make a negotiate function and use the configured caps as the caps on the appsrc
pad. If nothing was configured, fall back to the parent implementation.
2011-12-01 15:38:10 +01:00
Edward Hervey e44db979f9 audio: Add audio-marshal.list to dist-ed files 2011-11-30 11:33:41 +01:00
Wim Taymans 47cbb230e9 audio: move audio interfaces
Move the audio related interfaces to the audio library.
2011-11-30 07:57:02 +01:00
Wim Taymans 4fb0f98bb9 encoding-profile: small cleanup in docs 2011-11-30 07:23:07 +01:00
Edward Hervey 5bc6ffcd8b video: Don't forget to install moved header files 2011-11-29 19:49:50 +01:00
Wim Taymans 871b306fce video: move some interfaces
Move some interfaces to the video library
2011-11-29 19:10:01 +01:00
Alessandro Decina 848711706b libgstvideo: minor fixes to key unit events
Make out args to gst_video_event_parse_{downstream|upstream}_force_key_unit
optional, update libgstvideo.def and fix docs a bit.

API: gst_video_event_new_upstream_force_key_unit
API: gst_video_event_new_downstream_force_key_unit
API: gst_video_event_is_force_key_unit
API: gst_video_event_parse_upstream_force_key_unit
API: gst_video_event_parse_downstream_force_key_unit

https://bugzilla.gnome.org/show_bug.cgi?id=607742
2011-11-29 09:15:59 +01:00
Andoni Morales Alastruey df44e771f1 libgstvideo: Add force key unit events 2011-11-29 08:58:28 +01:00
Tim-Philipp Müller 0d87fd7146 Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	gst-libs/gst/fft/gstffts16.h
2011-11-28 21:25:11 +00:00
Tim-Philipp Müller 0c056a04fe Merge commit '4a58223e4c824fedc024af435337a769e8ce593e' into 0.11 2011-11-28 21:20:10 +00:00
Philippe Normand 0a841f6712 fft: Bracket public headers
This is especially needed if the gstfftw library is used from C++
code.

Fixes #665074
2011-11-28 20:28:19 +01:00
Wim Taymans 5b868bd424 Update for indexable change 2011-11-28 18:24:03 +01:00
Wim Taymans 468d1dde89 audio: update for clock provider API change 2011-11-28 17:51:41 +01:00
Vincent Penquerc'h ea78b060a7 Revert "libgstvideo: add a new API to handle QoS events and dropping logic"
This reverts commit eb03323fb6.

*grumble* I managed to merge something I did not mean to.
2011-11-28 13:26:53 +00:00
Vincent Penquerc'h 96374054ac various: fix pad template leaks
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:09:02 +00:00
Vincent Penquerc'h eb03323fb6 libgstvideo: add a new API to handle QoS events and dropping logic
https://bugzilla.gnome.org/show_bug.cgi?id=658241
2011-11-28 12:34:43 +00:00
Mark Nauwelaerts 4a58223e4c audioencoder: elaborate some documentation 2011-11-28 11:37:33 +01:00
Mark Nauwelaerts 9f57d91137 audiodecoder: add some documentation 2011-11-28 11:37:27 +01:00
Mark Nauwelaerts 856a5dd581 audiodecoder: really discard NULL decoded frame altogether
... including any timestamp, rather than having that one influence base_ts.
2011-11-28 11:37:23 +01:00
Tim-Philipp Müller 32b14c6ed3 Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	ext/vorbis/gstvorbisenc.c
	gst/playback/gstdecodebin2.c
	gst/playback/gstplaysinkconvertbin.c
	gst/videorate/gstvideorate.c
2011-11-26 12:12:59 +00:00
Tim-Philipp Müller a0639dad38 audio: remove unstable API guards from the audio decoder and encoder base classes 2011-11-25 13:11:54 +00:00
Edward Hervey d94535832b gst-libs: Add --warn-all to introspection scanner
And let's get fixing those docs :)
2011-11-25 10:31:38 +01:00
Vincent Penquerc'h 44ec58b41b libgstriff: add a couple tags that need skipping
Found in a sample in the wild, appears to be ID3 tag.

https://bugzilla.gnome.org/show_bug.cgi?id=660249
2011-11-24 17:04:19 +00:00
Matej Knopp 817f39608c Fix printf format compiler warnings for OSX / 64bit
https://bugzilla.gnome.org/show_bug.cgi?id=662607
2011-11-22 01:00:59 +00:00
Wim Taymans 8fc2a21775 update for activation changes 2011-11-21 13:35:34 +01:00
Wim Taymans d0bd5f04c0 update for new scheduling query 2011-11-18 17:58:58 +01:00
Wim Taymans 1ad4d20607 add parent to activate functions 2011-11-18 13:56:04 +01:00
Wim Taymans 285702a1a6 fix for scheduling mode rename 2011-11-18 12:37:10 +01:00
Wim Taymans 7afdff3575 Merge branch 'master' into 0.11
Conflicts:
	gst-libs/gst/audio/gstaudiodecoder.c
2011-11-17 17:07:41 +01:00
Wim Taymans 3a53451501 tag: update for new typefind 2011-11-17 16:15:46 +01:00
Wim Taymans e302833e65 add parent to pad functions 2011-11-17 12:48:25 +01:00
Mark Nauwelaerts 69c2c46472 audioencoder: invalidate format info when setup negotiation failed
... which ensures nothing subsequently tries to slip past _chain
and into a possibly improperly setup subclass.
2011-11-16 19:03:47 +01:00
Vincent Penquerc'h f17f918b75 audiodecoder: accept dropped buffers before we know the format
This allows flacdec to not emit audio for headers, while allowing
the base audio decoder to keep its timestamps in sync.
2011-11-16 16:54:03 +00:00
Wim Taymans 2202511e77 add parent to query function 2011-11-16 17:25:17 +01:00
Wim Taymans 28157e6f21 _query_peer_*() -> _peer_query_*() 2011-11-15 18:04:17 +01:00
Wim Taymans 026ec68f75 _peer_get_caps() -> _peer_query_caps() 2011-11-15 18:04:17 +01:00
Wim Taymans 7402d3a3d2 update for _get_caps() -> _query_caps() 2011-11-15 18:04:17 +01:00
Wim Taymans ab9ffa93f5 change getcaps to query
Add sink and src event functions in rtpbasepayload
Add query vmethod to rtpbasepayload.
2011-11-15 18:04:16 +01:00
Vincent Penquerc'h 3e095382a1 audiodecoder: accept dropped buffers before we know the format
This allows flacdec to not emit audio for headers, while allowing
the base audio decoder to keep its timestamps in sync.
2011-11-15 13:29:31 +00:00
Robert Swain a23dff1fbb audio: Remove some unused variables 2011-11-14 12:49:50 +01:00
Olivier Crête 82827df405 rtcpbuffer: Add feedback message types from RFC 5104
These are Codec Control messages (CCM)

https://bugzilla.gnome.org/show_bug.cgi?id=658419
2011-11-14 12:24:16 +01:00
Mark Nauwelaerts 38615abdd8 audiodecoder: improve reverse playback
... by doing some more (reverse) timestamp interpolating and
refactoring downstream pushing.

Fixes #661983.
2011-11-14 12:00:06 +01:00
Tim-Philipp Müller 046dc1097c tag: convert GstTagDemux's sometimes source pad to an always source pad
Originally decodebin couldn't deal with that in 0.10, but now simply
setting the caps when we know them should be enough. Pad activation
mode switching might need some more testing/tweaking with the new
arrangement.
2011-11-14 10:07:06 +00:00
Wim Taymans fc04bcecbe fix docs 2011-11-14 10:46:56 +01:00
Tim-Philipp Müller c76e5804b3 Update for GstURIHandler get_protocols() changes 2011-11-13 23:44:23 +00:00
Tim-Philipp Müller 455f337e3d gio, appsrc, appsink, cdaudiosrc: update for GstURIHandler API changes 2011-11-13 18:22:06 +00:00
Tim-Philipp Müller 4b0dce5148 Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	gst-libs/gst/audio/Makefile.am
	gst-libs/gst/audio/audio.h
	tests/examples/seek/jsseek.c
	tests/examples/seek/seek.c
	tests/icles/test-colorkey.c
2011-11-13 13:36:29 +00:00
Tim-Philipp Müller cd21e69913 audio: add GST_AUDIO_INFO_IS_VALID macro and use in audio decoder base class
API: GST_AUDIO_INFO_IS_VALID
2011-11-13 13:18:16 +00:00
Tim-Philipp Müller 394b1f8c3c audio: fix order in LIBADD
Local libs must come first.
2011-11-12 12:13:05 +00:00
Tim-Philipp Müller 756c9e2948 audio: fix order in LIBADD
Local libs must come first.
2011-11-12 11:58:59 +00:00
Tim-Philipp Müller dfc13ec632 cdda: rename GstCddaBaseSrc to GstAudioCdSrc and move to libgstaudio
Another mini-lib down, to make space for new mini libs.

Remove bogus copyright line while at it.
2011-11-12 11:58:58 +00:00
René Stadler 8023733da8 video: init chroma-size and colorimetry members even if missing from caps
This makes a TRUE return from gst_video_info_from_caps fully consistent with
gst_video_info_init.
2011-11-11 19:57:25 +01:00
Wim Taymans bdf3845498 rtsp: cleanup headers
Add padding, fix indentation, remove deprecated stuff
2011-11-11 19:35:33 +01:00
Wim Taymans 107d5a3d05 rtp: fix headers
indent, add padding, remove old abidata
2011-11-11 19:21:09 +01:00
Wim Taymans 370dca92d5 remove padding from interfaces 2011-11-11 19:16:54 +01:00
Wim Taymans 43eafea6f6 fix docs 2011-11-11 19:16:12 +01:00
Wim Taymans fa897def26 mixertrack: fix docs 2011-11-11 19:14:26 +01:00
Wim Taymans c42e257751 audio: fix docs 2011-11-11 19:13:52 +01:00
Wim Taymans bfd417644d pbutils: clean up headers
Add padding
indent
2011-11-11 19:01:56 +01:00
Wim Taymans 7fb914d5b6 interfaces: clean up
Remove deprecated bits
Fix FIXMES
Indent
Add padding
2011-11-11 18:49:09 +01:00
Wim Taymans 40be2eec9f fft: fix headers
More fft structure into .c file
indent headers
2011-11-11 18:23:22 +01:00
Wim Taymans b645287775 audio: fix headers
Add const to some methods.
Add padding.
Add GType for GstAudioInfo and GstAudioFormatInfo.
Add new/copy/free for GstAudioInfo.
2011-11-11 17:53:03 +01:00
Wim Taymans b12aabc9da app: fix headers 2011-11-11 17:52:36 +01:00
Wim Taymans 06a6ab3e32 video: add support for max-framerate
Add support for max-framerate in the video helpers and update the video
caps document.
2011-11-11 13:14:21 +01:00
Wim Taymans b14e3b9adc remove bogus file 2011-11-11 12:35:50 +01:00
Wim Taymans 5f1312b5d8 rename files to match object names 2011-11-11 12:32:23 +01:00
Wim Taymans ccf511a5d4 rename BaseRTP -> RTPBase 2011-11-11 12:24:08 +01:00
Wim Taymans a3416bc11f rename baseaudio* -> audiobase* 2011-11-11 12:00:52 +01:00
Wim Taymans ee7072fe7e rename GstBaseAudio* ->GstAudioBase* 2011-11-11 11:52:47 +01:00
Wim Taymans 3d0ac3ded2 rename files to match contained objects 2011-11-11 11:33:15 +01:00
Wim Taymans 6511f36fdb audio: GstRingBuffer -> GstAudioRingBuffer 2011-11-11 11:21:41 +01:00
Wim Taymans b81af23992 audio: rename internal audio ringbuffer 2011-11-11 10:54:39 +01:00
Wim Taymans ad8f694ec6 remove bogus files
They got somehow commited in 7012e88090
2011-11-11 10:39:52 +01:00
Wim Taymans e338792ab0 update for adapter api changes 2011-11-10 18:32:39 +01:00
Wim Taymans fe766cf9f4 videosink: reset padding 2011-11-10 17:52:36 +01:00
Wim Taymans ace51b689f rtsp: remove deprecated base64 library 2011-11-10 17:39:10 +01:00
Wim Taymans f8ef57ca48 Merge branch 'master' into 0.11 2011-11-10 17:26:12 +01:00
Wim Taymans 24347217a5 rtp: fix de/payloaders
gst_basertppayload -> gst_base_rtp_payload
Add pts/dts support in the depayloader
Remove old timestamp code
Add a default getcaps function so subclasses can chain up to it instead of
relying on the return value of the getcaps function.
2011-11-10 17:18:00 +01:00
Vincent Penquerc'h 0d47c615ad baseaudiosink: make unsigned properties unsigned, not signed 2011-11-10 15:55:31 +00:00
Wim Taymans 57eaf388e0 audio: fix base class vmethods 2011-11-10 16:24:12 +01:00
Wim Taymans ea9bc40bf9 audiosrc: avoid deadlock 2011-11-10 16:05:19 +01:00
Wim Taymans 1f8fe283f6 audioclock: remove _full version 2011-11-10 13:51:23 +01:00
Wim Taymans f80d73468e appsink: fix header 2011-11-10 13:51:23 +01:00
Edward Hervey 3fa654b41c pbutils: Fix introspection annotations
Fixes #663689
2011-11-10 12:47:51 +01:00
Wim Taymans d77c8cafee Merge branch 'master' into 0.11
Conflicts:
	common
	ext/pango/gsttextoverlay.c
	gst-libs/gst/video/video.c
2011-11-09 12:11:59 +01:00
Wim Taymans 372b9329b9 remove query types 2011-11-09 11:47:54 +01:00
Wim Taymans 308f6301a8 update for pad probe api changes 2011-11-08 11:08:21 +01:00
Stefan Sauer e9629e37b7 video: log important details and fix format strings
If we complain about wrong parameters passed, also log the actual value.
2011-11-08 09:32:00 +01:00
Tim-Philipp Müller d7fc45f42e docs: fix up some Since: markers 2011-11-07 23:05:44 +00:00
Wim Taymans 616e9b706e fix for new pad probe types
Restore the previous behaviour by only blocking downstream items and not
upstream events.
2011-11-07 17:10:48 +01:00
Wim Taymans 7ac25e9b26 Merge branch 'master' into 0.11
Conflicts:
	common
	configure.ac
	gst-libs/gst/audio/gstbaseaudiosink.c
	gst/playback/gstdecodebin2.c
	gst/playback/gstplaysinkaudioconvert.c
	gst/playback/gstplaysinkaudioconvert.h
	gst/playback/gstplaysinkvideoconvert.c
	gst/playback/gstplaysinkvideoconvert.h
2011-11-07 12:23:15 +01:00
Felipe Contreras 3df415d4c7 baseaudiosink: make discont-wait configurable
Now we can configure how much time to wait before deciding that a
discont has happened.

Also, adds getter and setter to allow derived implementations to set
this value upon construction.

Suggestions and several improvements by Havard Graff.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
2011-11-07 11:58:46 +01:00
Felipe Contreras 0a111bf26e baseaudiosink: delay the resyncing of timestamp vs ringbuffertime
A common problem for audio-playback is that the timestamps might not
be completely linear. This is specially common when doing streaming over
a network, where you can have jittery and/or bursty packettransmission,
which again will often be reflected on the buffertimestamps.

Now, the current implementation have a threshold that says how far the
buffertimestamp is allowed o drift from the ideal aligned time in the
ringbuffer. This was an instant reaction, and ment that if one buffer
arrived with a timestamp that would breach the drift-tolerance, a resync
would take place, and the result would be an audible gap for the
listener.

The annoying thing would be that in the case of a "timestamp-outlier",
you would first resync one way, say +100ms, and then, if the next
timestamp was "back on track", you would end up resyncing the other way
(-100ms) So in fact, when you had only one buffer with slightly off
timestamping, you would end up with *two* audible gaps. This is the
problem this patch addresses.

The way to "fix" this problem with the previous implementation, would
have been to increase the "drift-tolerance" to a value that was greater
than the largest timestamp-outlier one would normally expect.  The big
problem with this approach, however, is that it will allow normal
operations with a huge offset timestamp vs running-time, which is
detrimental to lip-sync. If the drift-tolerance is set to 200ms, it
basically means that lip-sync can easily end up being off by that much.

This patch will basically start a timer when the first breach of
drift-tolerance is detected. If any following timestamp for the next n
nanoseconds gets "back on track" within the threshold, it has basically
eliminated the effect of an outlier, and the timer is stopped.  If,
however, all timestamps within this time-limit are breaching the
threshold, we are probably facing a more permanent offset in the
timestamps, and a resync is allowed to happen.

So basically this patch offers something as rare as both higher
accuracy, it terms of allowing smaller drift-tolerances, as well as much
smoother, less glitchy playback!

Commit message and improvments by Havard Graff.

Fixes bug #640859.
2011-11-07 11:33:32 +01:00
Felipe Contreras 3f1395afae baseaudiosink: rename some variables 2011-11-07 11:18:34 +01:00
Felipe Contreras fbde258be6 baseaudiosink: use gst_util_uint64_scale_int when appropriate
It's probably safer this way.
2011-11-07 11:11:08 +01:00
Felipe Contreras 369cf3f14a baseaudiosink: split drift-tolerance into alignment-threshold
So that drift-tolerance is used for clock slaving resync, and
alignment-threshold is for timestamp drift.
2011-11-07 11:10:05 +01:00
Felipe Contreras 58b9818853 baseaudiosink: trivial comment fixes
Some found by Havard Graff.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
2011-11-07 10:57:56 +01:00
Wim Taymans 2f8292b495 ringbuffer: store bpf in the right variable 2011-11-04 13:21:24 +01:00
Edward Hervey 771cbbb17c rtpbuffer: Fix compilation issues with gcc 4.6.1 2011-11-04 10:36:15 +01:00
Reynaldo H. Verdejo Pinochet 7559fb29a4 Add missing default include paths to androgenizer call
Fixes building tag/ with Android's NDK
2011-11-03 21:35:38 -03:00
Wim Taymans f4bee46072 net: remove net library, it's now in core 2011-11-03 16:48:51 +01:00
Wim Taymans a5fa136c0b update for tag API removal 2011-11-02 12:11:16 +01:00
Edward Hervey dfc9d1658d video: Add convenience macros for accessing GstVideoInfo flags 2011-11-02 11:24:33 +01:00
Wim Taymans 4e6563d91c netbuffer: _netaddress_ -> _net_address_ 2011-11-02 09:04:28 +01:00
Wim Taymans e2015eeb5f netaddress: updata api 2011-11-02 09:04:27 +01:00
Wim Taymans e067e67923 rename meta* -> *meta 2011-11-02 09:04:27 +01:00
Wim Taymans 5bdfd6d899 structure: fix for api update 2011-11-02 09:04:27 +01:00
Wim Taymans df4999aeb1 bufferlist: update for new API 2011-11-02 09:04:27 +01:00
Tim-Philipp Müller b52c5819fb Update for pad API changes
GstProbeType, GstProbeReturn and GstActivateMode -> GstPad*
2011-11-01 00:34:28 +00:00
Tim-Philipp Müller 220ccdf275 audioencoder: save audio info parsed in setcaps in encoder context
Otherwise we'll just error out when the first buffer gets pushed.
This is a porting artefact, in 0.10 the infos were allocated on the
heap, now we're doing everything with stack-allocated structs.
2011-10-31 14:22:39 +00:00
Tim-Philipp Müller 5ee51e47a1 ext, gst, gst-libs, tests: update for tag list API changes 2011-10-31 14:22:39 +00:00
René Stadler 7eb0985282 audio: remove old C file generated from template
Not sure how this one got pulled into a merge. In 0.10, it was moved away to
gst-template a long time ago. gstaudiofilterexample.c got generated from
gstaudiofiltertemplate.c.
2011-10-31 15:19:54 +01:00
Wim Taymans 95281cc306 Merge branch 'master' into 0.11 2011-10-28 16:24:44 +02:00
Wim Taymans 7247eb5f2c fix compile for SEEK_TYPE_CUR removal 2011-10-28 16:11:36 +02:00
Mersad Jelacic d430eb65c5 audiosink: avoid deadlocking audioringbuffer thread
... when it goes into wait for ringbuffer starting just after such
having been signalled.

Fixes #661738.
2011-10-28 14:07:40 +02:00
Wim Taymans b70275fa10 audiofilter: use BPF for unit_size 2011-10-28 11:37:31 +02:00
René Stadler 9beff28579 audiofilter: fix get_unit_size 2011-10-28 11:24:00 +02:00
René Stadler 5d2154ff4b audiofilter: init audio info sooner 2011-10-28 11:24:00 +02:00
René Stadler 372cf41a6d audio, video: init audio/video format info to UNKNOWN format
This is to prevent e.g. GST_AUDIO_INFO_FORMAT() from crashing on a NULL pointer
dereference when used with an unset info.
2011-10-28 11:24:00 +02:00
Wim Taymans 01854cca80 basertppay: rename caps fields
Make the caps fields for timestamp and seqnum match the element
properties.

See #628773
2011-10-27 18:54:50 +02:00
Wim Taymans 9555229e79 basedepay: remove old fields 2011-10-27 18:50:32 +02:00
Wim Taymans 06311362e9 fix compilation 2011-10-27 17:26:58 +02:00
Wim Taymans 016d036137 Merge branch 'master' into 0.11
Conflicts:
	configure.ac
	gst-libs/gst/audio/gstbaseaudiosink.c
	gst/audioconvert/channelmixtest.c
	gst/playback/gstplaybasebin.c
	gst/playback/gstsubtitleoverlay.c
	tests/examples/Makefile.am
	tests/examples/audio/Makefile.am
2011-10-27 15:44:58 +02:00
Wim Taymans b21bb37657 overlay: fix compilation 2011-10-27 15:29:36 +02:00
Stefan Sauer 53d7d2e966 interfaces: clean up the use of iface and class/klass 2011-10-21 14:46:48 +02:00
Mark Nauwelaerts 981070eb44 audiodecoder: having gather queue contents implies some draining is in order
... which ensures e.g. processing and sending last fragment of reverse playback
downstream at EOS.
2011-10-19 16:51:09 +02:00
Tim-Philipp Müller 4e59e63ff7 baseaudiosink: fix unused variable compiler warning if debugging in core is disabled
https://bugzilla.gnome.org/show_bug.cgi?id=660150
2011-10-19 00:32:13 +01:00
Edward Hervey 12a8fff8ac audio: Add some default channel positions 2011-10-17 12:00:55 +02:00
Edward Hervey b4858253dc audio: Properly handle signedness in gst_audio_format_build_integer() 2011-10-17 12:00:16 +02:00
Edward Hervey 45c4a19472 audio: Indent and doc fixes 2011-10-17 11:45:39 +02:00
Edward Hervey 8268a7a20e discoverer: Only call gst_video_info_from_caps on raw video 2011-10-11 17:42:35 +02:00
Wim Taymans f1088ed647 update for UNEXPECTED -> EOS flowreturn 2011-10-10 11:39:52 +02:00
Thiago Santos 123671bc05 libs: video: Add protection against null strings
Check and assert if input for gst_video_format_from_string is null.
Return GST_VIDEO_FORMAT_UNKNOWN as a fallback
2011-10-09 17:05:15 -03:00
Tim-Philipp Müller ab949eebbd audiodecoder: update to 0.11 API after merge 2011-10-09 16:15:54 +01:00
Tim-Philipp Müller 303dbaf84b Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	tests/check/pipelines/vorbisdec.c
	tests/check/pipelines/vorbisenc.c
2011-10-09 16:08:36 +01:00
Alessandro Decina bc6f00becb audioencoder: fix compile warning 2011-10-09 16:48:18 +02:00
Mark Nauwelaerts 871b1584c9 audioencoder: only resync to upstream upon discont in perfect ts mode
... as documented, where discont is marked here if tolerance has been
exceeded.
2011-10-08 20:20:10 +02:00
Mark Nauwelaerts a7ce550d04 audiodecoder: fix timestamp tolerance handling 2011-10-08 20:20:06 +02:00
Mark Nauwelaerts d8312994aa audiodecoder: handle empty input by discarding 2011-10-08 20:20:03 +02:00
Wim Taymans 73b894107a Merge branch 'master' into 0.11
Conflicts:
	ext/vorbis/gstvorbisdec.c
	ext/vorbis/gstvorbisenc.c
	ext/vorbis/gstvorbisenc.h
	gst/audiotestsrc/gstaudiotestsrc.c
2011-10-08 10:19:06 +02:00
Mark Nauwelaerts 37c629fcc6 audioencoder: make upstream queries MT-safe 2011-10-07 14:52:50 +02:00
Mark Nauwelaerts 77069f01b1 audiodecoder: make upstream queries and events MT-safe 2011-10-07 14:52:48 +02:00
Edward Hervey b8219faa90 audio: Make sure 'channels' and 'channel-positions' are coherent
If channel-positions are present, check they match the reported
'channels' value.
2011-10-05 11:57:54 +02:00
Edward Hervey 70d967da7c audio: Fix overread in channel positions
The array we're writing to is limited to 64 ... but the amount of
input positions might be lower than 64. Therefore use MIN and not
MAX to know how many values to read from the array.
2011-10-05 11:51:07 +02:00
Wim Taymans a00927ad03 Merge branch 'master' into 0.11 2011-10-04 17:58:49 +02:00
Vincent Penquerc'h 93900d47ed encoding-profile: add a function to create a profile from a discoverer info
Only A/V streams are added at the moment, there does not seem to be
a similar way to add other streams (eg, subtitles).

https://bugzilla.gnome.org/show_bug.cgi?id=642878
2011-10-03 11:51:23 +02:00
Wim Taymans 8778cff7f0 video: add h264 transfer functions 2011-10-03 10:02:43 +02:00
Tim-Philipp Müller 6ec5fc8d95 audio: don't use GST_PTR_FORMAT for segments
Avoids crashes with debugging output enabled.
2011-09-30 10:56:02 +01:00
Wim Taymans 67f1a097bf video: add another color matrix for mpeg2 2011-09-30 11:04:19 +02:00
Wim Taymans 9592796d8a video: fix docs 2011-09-30 11:04:19 +02:00
Wim Taymans 1395378575 audiodecoder: fix refcounting error 2011-09-28 16:08:14 +02:00
Wim Taymans ca6ebee870 ringbuffer: store info so we can debug it 2011-09-28 16:07:53 +02:00
Wim Taymans f97a9bdc68 Merge branch 'master' into 0.11 2011-09-28 15:46:40 +02:00
Mark Nauwelaerts 8633eb391d audiodecoder: really push pending events 2011-09-28 15:42:46 +02:00
Wim Taymans 19626cf27a audiodecoder: add method to set output caps
Add a method to configure the output caps. Subclasses can't use
gst_pad_set_caps() anymore because then we won't see the caps.
Unbreak the padtemplate registration, the GTypeClass that is configured in the
object during _init is not the right one, we need to use the klass passed as the
argument to the init function..
2011-09-28 15:35:56 +02:00
Tim-Philipp Müller e4e2e3c7b0 audioencoder: remove more tags from upstream tag events such as bitrate tags
We want to remove all codec specific tags.
2011-09-28 14:32:20 +01:00
Wim Taymans 19346c2c3b Merge branch 'master' into 0.11
Conflicts:
	gst-libs/gst/audio/gstaudioencoder.c
	gst/playback/gstplaybin2.c
	gst/videotestsrc/videotestsrc.c
2011-09-28 11:35:46 +02:00
Mark Nauwelaerts 01d27ee084 audioencoder: only got_data if we really got some
... which avoids going loopy with casual subclass.
2011-09-27 16:58:44 +02:00
Mark Nauwelaerts 24d71cf7a6 audioencoder: really push pending events 2011-09-27 16:58:41 +02:00
Mark Nauwelaerts 803b65613b audioencoder: send tag event after pending events
... which probably includes a pending newsegment event.
2011-09-27 16:21:55 +02:00
Mark Nauwelaerts 89f6720545 audioencoder: protect pending_events with proper lock 2011-09-27 16:21:45 +02:00
Mark Nauwelaerts 9a9541ff35 audioencoder: clean up some documentation 2011-09-27 16:21:41 +02:00
Wim Taymans 4bf9022e0c docs: improve docs 2011-09-27 11:19:24 +02:00
Wim Taymans c290b8044a audioenc: fix compilation 2011-09-26 21:11:14 +02:00
Wim Taymans f71511edd2 Merge branch 'master' into 0.11
Conflicts:
	gst-libs/gst/audio/gstaudiodecoder.c
	gst-libs/gst/audio/gstaudioencoder.c
	gst/encoding/gstencodebin.c
2011-09-26 19:22:05 +02:00
Sebastian Dröge e4c895dfaf audioencoder: Improve set_frame_sample_{min,max} documentation 2011-09-26 16:35:55 +02:00
Sebastian Dröge b767be2f68 audiodecoder: Fix thread safety issues if both pads have different streaming threads 2011-09-26 16:22:00 +02:00
Sebastian Dröge d0bf465248 audiodecoder: Delay sending of serialized events to finish_frame() 2011-09-26 16:19:42 +02:00
Sebastian Dröge f3f416004f Revert "audioencoder: Use GST_BOILERPLATE instead of custom GObject boilerplate code"
This reverts commit 11e375486e.

GST_BOILERPLATE() can't define an abstract type and
G_DEFINE_ABSTRACT_TYPE() does not pass the class struct to
the instance_init function and there's no way to get the
class struct of the current type in instance_init().
2011-09-26 16:02:51 +02:00
Sebastian Dröge 4fa9749106 audioencoder: Add support for requesting a minimum and maximum number of samples per frame
This extends the special case of a fixed number of samples per frame
that was supported before already.
2011-09-26 15:59:22 +02:00
Sebastian Dröge 16c3d6b3d5 audioencoder: Fix thread safety issues if both pads have different streaming threads 2011-09-26 15:45:40 +02:00
Sebastian Dröge 61ffd7cb42 audioencoder: Delay sending of serialized events to finish_frame()
This makes sure that the caps are already set before any serialized
events are sent downstream.
2011-09-26 15:42:14 +02:00
Sebastian Dröge 11e375486e audioencoder: Use GST_BOILERPLATE instead of custom GObject boilerplate code 2011-09-26 15:34:54 +02:00
Mark Nauwelaerts abafb030ac audioencoder: add some tag handling convenience help 2011-09-26 15:15:03 +02:00
Mark Nauwelaerts a99b313c26 audioencoder: provide CODEC/AUDIO_CODEC handling 2011-09-26 15:10:08 +02:00
Mark Nauwelaerts aae0312e10 audioencoder: filter AUDIO_CODEC/CODEC tags from passing tag events 2011-09-26 15:10:06 +02:00
Tim-Philipp Müller 754b22d7ee libs: remove unused floatcast header-only library
There's no code whatsoever that uses these macros. If anyone
ever feels the need to resurrect them, we should add them to
gstutils.h in core or libgstaudio or so.
2011-09-23 21:18:47 +01:00
Edward Hervey 17bfba09f1 Merge branch 'master' into 0.11
Conflicts:
	ext/ogg/gstoggdemux.c
	ext/pango/gsttextoverlay.c
	gst-libs/gst/audio/gstaudioencoder.c
	gst-libs/gst/audio/gstbaseaudiosrc.c
	gst/playback/gstsubtitleoverlay.c
	gst/videorate/gstvideorate.c
2011-09-23 18:27:11 +02:00
Edward Hervey 3f45eb1cfc gst-libs: Temporarily remove dependency of gstaudio on gstpbutils
Also re-order the SUBDIRS in the higher-level Makefile so it cleanly
installs.

https://bugzilla.gnome.org/show_bug.cgi?id=657675
2011-09-23 16:17:45 +02:00
Mark Nauwelaerts 001b4a0072 audioencoder: proxy some more optional downstream caps fields to upstream 2011-09-22 15:47:06 +02:00
Mark Nauwelaerts 2a362a95f7 audioencoder: changed is verily the opposite of equal 2011-09-22 15:47:06 +02:00
Mark Nauwelaerts b420dd54ea audioencoder: prevent crashing when comparing to a freshly inited GstAudioInfo 2011-09-22 15:46:56 +02:00
Mark Nauwelaerts 7fa7de9221 audio: some more accessor macros for GstAudioInfo 2011-09-22 15:45:05 +02:00
Mark Nauwelaerts b44978befe audiodecoder: fix documentation typo 2011-09-22 15:45:01 +02:00
Age Bosma 043ee22e25 discoverer: Don't use gtk-doc /* < ... > */ style comments for signals
The /*< ... >*/ style is only used for public|protected|private,
signal comments use /* signals */. This prevents the some code
parsers/binding generators to be confused by the comment.
2011-09-19 14:36:00 +02:00
Mark Nauwelaerts e574f58e71 rtspdefs: add RTCP-Interval header 2011-09-19 11:32:23 +02:00
Tim-Philipp Müller 454c554b11 docs: minor addition to GST_TAG_ID3V2_HEADER_SIZE docs 2011-09-12 19:55:40 +01:00
Tim-Philipp Müller 55182ed841 baseaudiosrc: don't try to fixate "width" field for alaw/mulaw
Fixes warning when trying to fixate e.g. pulsesrc ! audio/x-alaw ! fakesink.
2011-09-10 18:30:55 +01:00
Tim-Philipp Müller 0f38f86182 colorbalance: add some guards to interface methods
https://bugzilla.gnome.org/show_bug.cgi?id=658584
2011-09-09 13:09:43 +01:00
Tim-Philipp Müller 4529c6dc32 Merge remote-tracking branch 'origin/master' into 0.11
Merge in doc updates for audio enums from 0.10, and get rid
of the #if #else in the enum list, since that confuses gtk-doc.

Conflicts:
	gst-libs/gst/audio/audio.c
	gst-libs/gst/audio/audio.h
2011-09-06 16:42:42 +01:00
Wim Taymans dc28bd1b63 audio: rename IS_LE/BE to _IS_LITTLE_ENDIAN/BIG_ENDIAN 2011-09-06 16:27:27 +01:00
Wim Taymans f04b8fd8af audio/video add descriptions
Add a description to the audio and video format info in case we want to use this
later.
2011-09-06 16:46:48 +02:00
Tim-Philipp Müller 36a75bdb71 audio: update internal silent sample defines as well to match 0.11 2011-09-06 15:46:45 +01:00
Wim Taymans c0d31dd555 rename IS_LE/BE to _IS_LITTLE_ENDIAN/BIG_ENDIAN 2011-09-06 16:46:02 +02:00
Tim-Philipp Müller 91d1112360 audio: update audio format enums to match changes in 0.11
And add new audio format info stuff to docs.
2011-09-06 15:36:51 +01:00
Wim Taymans 7012e88090 Merge branch 'master' into 0.11
Conflicts:
	gst-libs/gst/audio/audio.h
	gst-libs/gst/audio/gstaudiodecoder.c
	gst-libs/gst/audio/gstaudiodecoder.h
	gst-libs/gst/audio/gstaudioencoder.c
	gst-libs/gst/audio/gstbaseaudioencoder.h
	gst/playback/Makefile.am
	gst/playback/gstplaybin.c
	gst/playback/gstplaysink.c
	gst/playback/gstplaysinkvideoconvert.c
	gst/playback/gstsubtitleoverlay.c
	gst/videorate/gstvideorate.c
	gst/videoscale/gstvideoscale.c
	win32/common/libgstaudio.def
2011-09-06 15:24:32 +02:00
Wim Taymans 33196cdd2c audio: change audio format syntax a little
Remove the _ in front of the endianness prefix.
Remove the _3 postfix for the 24 bits formats.
Add a _32 postfix after the formats that occupy extra space beyond their
natural size.
The result is that the GST_AUDIO_NE() macro can simply append the endianness
after all formats and that we only specify a different sample width when it is
different from the natural size of the sample. This makes things more consistent
and follows the pulseaudio conventions instead of the alsa ones.
2011-09-06 12:06:39 +02:00
Tim-Philipp Müller 9a8a989a22 docs: more docs clean-ups 2011-09-06 10:07:33 +01:00
Tim-Philipp Müller 5e61db25b5 audio: fix GST_AUDIO_FORMAT_INFO_IS_*() macros to return a boolean 2011-09-05 23:28:20 +01:00
Tim-Philipp Müller ba05716485 docs: some docs love 2011-09-05 23:28:20 +01:00
Tim-Philipp Müller 7563e0c9cf docs: add GstAudioDecoder and GstAudioEncoder to documentation 2011-09-05 23:28:20 +01:00
Tim-Philipp Müller 86e6343759 audio: rename GstBaseAudioDecoder/Encoder to GstAudioDecoder/Encoder
API: gst_gst_audio_decoder_finish_frame()
API: gst_gst_audio_decoder_get_audio_info()
API: gst_gst_audio_decoder_get_byte_time()
API: gst_gst_audio_decoder_get_delay()
API: gst_gst_audio_decoder_get_latency()
API: gst_gst_audio_decoder_get_max_errors()
API: gst_gst_audio_decoder_get_min_latenc()y
API: gst_gst_audio_decoder_get_parse_state()
API: gst_gst_audio_decoder_get_plc()
API: gst_gst_audio_decoder_get_plc_aware()
API: gst_gst_audio_decoder_get_tolerance()
API: gst_gst_audio_decoder_get_type()
API: gst_gst_audio_decoder_set_byte_time()
API: gst_gst_audio_decoder_set_latency()
API: gst_gst_audio_decoder_set_max_errors()
API: gst_gst_audio_decoder_set_min_latency()
API: gst_gst_audio_decoder_set_plc()
API: gst_gst_audio_decoder_set_plc_aware()
API: gst_gst_audio_decoder_set_tolerance()

API: gst_gst_audio_encoder_finish_frame()
API: gst_gst_audio_encoder_get_audio_info()
API: gst_gst_audio_encoder_get_frame_max()
API: gst_gst_audio_encoder_get_frame_samples()
API: gst_gst_audio_encoder_get_hard_resync()
API: gst_gst_audio_encoder_get_latency()
API: gst_gst_audio_encoder_get_lookahead()
API: gst_gst_audio_encoder_get_mark_granule()
API: gst_gst_audio_encoder_get_perfect_timestamp()
API: gst_gst_audio_encoder_get_tolerance()
API: gst_gst_audio_encoder_get_type()
API: gst_gst_audio_encoder_proxy_getcaps()
API: gst_gst_audio_encoder_set_frame_max()
API: gst_gst_audio_encoder_set_frame_samples()
API: gst_gst_audio_encoder_set_hard_resync()
API: gst_gst_audio_encoder_set_latency()
API: gst_gst_audio_encoder_set_lookahead()
API: gst_gst_audio_encoder_set_mark_granule()
API: gst_gst_audio_encoder_set_perfect_timestamp()
API: gst_gst_audio_encoder_set_tolerance()

https://bugzilla.gnome.org/show_bug.cgi?id=642690
2011-09-05 23:28:13 +01:00
Wim Taymans 2f2aa4ac32 video: improve docs a little 2011-08-31 13:32:21 +02:00
Wim Taymans de4aeab544 video: add some more macros 2011-08-30 14:04:54 +02:00
Wim Taymans e694528155 base: port to 0.11 2011-08-29 13:28:08 +02:00
Wim Taymans 057aecc34e audio: fix after merge 2011-08-29 11:42:35 +02:00
Wim Taymans dc2b00adb8 pbutils: port to new API 2011-08-29 11:38:01 +02:00
Wim Taymans e1287b97ab Merge branch 'master' into 0.11
Conflicts:
	ext/ogg/gstoggmux.c
	gst-libs/gst/audio/audio.c
	gst-libs/gst/audio/audio.h
	gst-libs/gst/audio/multichannel.h
	gst-libs/gst/pbutils/Makefile.am
	gst-libs/gst/pbutils/gstdiscoverer.c
	gst/playback/gstplaysinkaudioconvert.c
	gst/playback/gstplaysinkvideoconvert.c
	win32/common/libgstaudio.def
2011-08-29 11:37:36 +02:00
Tim-Philipp Müller 67a12c9c72 pbutils: don't depend on libgstvideo just to parse some caps
Let's extract those ints and fractions ourselves and not depend
on libgstvideo.
2011-08-27 14:57:41 +01:00
Tim-Philipp Müller 517153e85a audio: add GstBaseAudioDecoder and GstBaseAudioEncoder to build
However, libgstaudio now depends on libgstvideo (via pbutils).

https://bugzilla.gnome.org/show_bug.cgi?id=642690

API: gst_audio_info_clear()
API: gst_audio_info_convert()
API: gst_audio_info_copy()
API: gst_audio_info_free()
API: gst_audio_info_from_caps()
API: gst_audio_info_init()
API: gst_audio_info_to_caps()
API: gst_base_audio_decoder_finish_frame()
API: gst_base_audio_decoder_get_audio_info()
API: gst_base_audio_decoder_get_byte_time()
API: gst_base_audio_decoder_get_delay()
API: gst_base_audio_decoder_get_latency()
API: gst_base_audio_decoder_get_max_errors()
API: gst_base_audio_decoder_get_min_latency()
API: gst_base_audio_decoder_get_parse_state()
API: gst_base_audio_decoder_get_plc()
API: gst_base_audio_decoder_get_plc_aware()
API: gst_base_audio_decoder_get_tolerance()
API: gst_base_audio_decoder_get_type()
API: gst_base_audio_decoder_set_byte_time()
API: gst_base_audio_decoder_set_latency()
API: gst_base_audio_decoder_set_max_errors()
API: gst_base_audio_decoder_set_min_latency()
API: gst_base_audio_decoder_set_plc()
API: gst_base_audio_decoder_set_plc_aware()
API: gst_base_audio_decoder_set_tolerance()
API: gst_base_audio_encoder_finish_frame()
API: gst_base_audio_encoder_get_audio_info()
API: gst_base_audio_encoder_get_frame_max()
API: gst_base_audio_encoder_get_frame_samples()
API: gst_base_audio_encoder_get_hard_resync()
API: gst_base_audio_encoder_get_latency()
API: gst_base_audio_encoder_get_lookahead()
API: gst_base_audio_encoder_get_mark_granule()
API: gst_base_audio_encoder_get_perfect_timestamp()
API: gst_base_audio_encoder_get_tolerance()
API: gst_base_audio_encoder_get_type()
API: gst_base_audio_encoder_proxy_getcaps()
API: gst_base_audio_encoder_set_frame_max()
API: gst_base_audio_encoder_set_frame_samples()
API: gst_base_audio_encoder_set_hard_resync()
API: gst_base_audio_encoder_set_latency()
API: gst_base_audio_encoder_set_lookahead()
API: gst_base_audio_encoder_set_mark_granule()
API: gst_base_audio_encoder_set_perfect_timestamp()
API: gst_base_audio_encoder_set_tolerance()
2011-08-27 14:47:50 +01:00
Tim-Philipp Müller 58f515f06a docs: add since markers to baseaudio{decoder,encoder} documentation 2011-08-27 14:47:50 +01:00
Tim-Philipp Müller 90e3d25891 baseaudiodecoder, baseaudioencoder: fix some compiler warnings
Leaving the GST_USE_UNSTABLE_API guards in until some of the
ported decoders have been updated and it's clear that I didn't
mess up anywhere porting things to the new audio API.
2011-08-27 14:47:49 +01:00
Tim-Philipp Müller 52ecb383d7 baseaudioutils: remove, merged into or superseded by audio.c 2011-08-27 14:47:49 +01:00
Tim-Philipp Müller 7f0c7e5f82 baseaudioencoder: port to new GstAudioInfo API 2011-08-27 14:47:49 +01:00
Tim-Philipp Müller c89b49bfaf baseaudiodecoder: port to GstAudioInfo API 2011-08-27 14:47:49 +01:00
Tim-Philipp Müller 946ddb6462 audio: add gst_audio_info_{init,clear} and gst_audio_info_{copy,free} 2011-08-27 14:47:49 +01:00
Tim-Philipp Müller 63a3d360dc audio: add GstAudioFormat, GstAudioFormatInfo and GstAudioInfo
Same as in 0.11, but with caps parsing/serialising for 0.10 style
caps. Add setting default channel positions.
2011-08-27 14:47:01 +01:00
Mark Nauwelaerts bf4a28f420 baseaudioencoder: remove leftover experimental code 2011-08-27 14:47:00 +01:00
Mark Nauwelaerts 35b172004c audioutils: modify _parse, add GType support functions 2011-08-27 14:47:00 +01:00
Mark Nauwelaerts a4d5e33224 baseaudiodecoder: move properties to private storage and add
_get/_set
2011-08-27 14:47:00 +01:00
Mark Nauwelaerts 7939d37936 baseaudiodecoder: rename property 2011-08-27 14:47:00 +01:00
Mark Nauwelaerts d71e427c49 baseaudiodecoder: replace context helper structure by various
_get/_set
2011-08-27 14:47:00 +01:00
Mark Nauwelaerts a39a66dd4b baseaudioencoder: move properties to private storage and add
_get/_set
2011-08-27 14:47:00 +01:00
Mark Nauwelaerts 41a0d6f8f0 baseaudioencoder: rename some properties 2011-08-27 14:47:00 +01:00
Mark Nauwelaerts 6302c9d31d baseaudioencoder: replace context helper structure by various
_get/_set
2011-08-27 14:47:00 +01:00
Mark Nauwelaerts d1ab04f029 baseaudio: rename GstAudioState to GstAudioFormatInfo 2011-08-27 14:47:00 +01:00
Mark Nauwelaerts ecf57f2b73 baseaudioencoder: TEMP; avoid some imperfect ts jitter ?
... even when not in perfect mode ?
2011-08-27 14:47:00 +01:00
Mark Nauwelaerts 5a40343102 baseaudioencoder: debug format fixes 2011-08-27 14:47:00 +01:00
Mark Nauwelaerts cedbedbbca baseaudiodecoder: debug format fix 2011-08-27 14:47:00 +01:00
Mark Nauwelaerts 8b6109cdbe baseaudiodecoder: fixup documentation 2011-08-27 14:47:00 +01:00
Mark Nauwelaerts 5003868dc7 baseaudiodecoder: fix FLUSH_STOP actions 2011-08-27 14:46:59 +01:00
Mark Nauwelaerts 660aa2e2c0 baseaudiodecoder: preserve upstream seek event seqnum 2011-08-27 14:46:59 +01:00
Mark Nauwelaerts d1f5c34fe7 baseaudioencoder: use buffer running time for granule calculation 2011-08-27 14:46:59 +01:00
Mark Nauwelaerts 6c04035eec baseaudiodecoder: minor fix in ts resync 2011-08-27 14:46:59 +01:00
Mark Nauwelaerts d46006b198 baseaudiodecoder: improve glitch resilience
Provide a replacement for GST_ELEMENT_ERROR to avoid aborting at the first
atom out of place, while on the other hand not failing indefinitely.
2011-08-27 14:46:59 +01:00
Mark Nauwelaerts 79b41f59f6 baseaudiodecoder: add limited legacy seeking support 2011-08-27 14:46:59 +01:00
Mark Nauwelaerts 0c33df6540 baseaudiodecoder: cater for audio-codec tag 2011-08-27 14:46:59 +01:00
Mark Nauwelaerts 1dbbe7c89d baseaudiodecoder: initial version 2011-08-27 14:46:59 +01:00
Mark Nauwelaerts 87409f2587 baseaudioencoder: misc fixes 2011-08-27 14:46:59 +01:00
Mark Nauwelaerts 8c61685554 baseaudio: add audioutils for caps and query handling helper utils 2011-08-27 14:46:59 +01:00
Mark Nauwelaerts cb04eaaa8f baseaudioencoder: mark unstable API 2011-08-27 14:46:59 +01:00
Mark Nauwelaerts b47c08ba17 baseaudioencoder: fix clearing context 2011-08-27 14:46:59 +01:00
Mark Nauwelaerts e3cae1619c baseaudioencoder: simplify latency variable handling 2011-08-27 14:46:59 +01:00
Mark Nauwelaerts 9ce2edc918 baseaudioencoder: minor fixes and code simplifications
Also modify and elaborate a bit on pre_push (though currently unused to no harm).
2011-08-27 14:46:59 +01:00
Mark Nauwelaerts d0e9fbf3db baseaudioencoder: additional documentation on granule semantics and
configuration
2011-08-27 14:46:59 +01:00
Mark Nauwelaerts 9f7849eac9 baseaudioencoder: elaborate property names 2011-08-27 14:46:58 +01:00