Stefan Kost [Thu, 26 Feb 2009 14:03:39 +0000 (16:03 +0200)]
giosink: reflow error handling to not leak uri
Stefan Kost [Thu, 26 Feb 2009 13:53:10 +0000 (15:53 +0200)]
ffmpegcolorspace: remove unused code/variables
Stefan Kost [Thu, 26 Feb 2009 10:10:47 +0000 (12:10 +0200)]
ximagesink: use GST_FLOW_NOT_NEGOTIATED for partial caps
Wim Taymans [Thu, 26 Feb 2009 15:44:53 +0000 (16:44 +0100)]
app: add callbacks to appsrc, cleanups
Add a uri handler to appsink.
don't emit signals when we have installed callbacks on appsink.
Add callbacks to appsrc to replace the signals.
Add property to disable callbacks in appsrc, default to TRUE for backwards
compatibility but disable when callbacks are installed.
API: GstAppSrc::emit-signals
API: GstAppSrc::gst_app_src_set_emit_signals()
API: GstAppSrc::gst_app_src_get_emit_signals()
API: GstAppSrc::gst_app_src_set_callbacks()
Wim Taymans [Thu, 26 Feb 2009 10:42:44 +0000 (11:42 +0100)]
Appsink: add padding for callbacks + docs
Add some padding to the callbacks structure just to be safe.
Remove the now invisible marshaller methods from the docs.
Fix a comment in the unit test.
Edward Hervey [Thu, 26 Feb 2009 08:52:59 +0000 (09:52 +0100)]
win32: Add new libgstapp symbol
Stefan Kost [Thu, 26 Feb 2009 08:07:21 +0000 (10:07 +0200)]
docs: clean section.txt file.
Add appsrc/sink symbols to private, as they are covered in the libs docs.
Stefan Kost [Thu, 26 Feb 2009 08:06:23 +0000 (10:06 +0200)]
docs: fix random text after since: tag. Also fix class name to make the docs actual appear.
Stefan Kost [Thu, 26 Feb 2009 07:56:16 +0000 (09:56 +0200)]
docs: playbin2 has no stream-info
Stefan Kost [Thu, 26 Feb 2009 07:53:03 +0000 (09:53 +0200)]
docs: fix newly added interlace constants and plug holes in video format docs
Stefan Kost [Thu, 26 Feb 2009 07:35:43 +0000 (09:35 +0200)]
docs: don't put random stuff in tags.
Tags like Since: or Returns: can only be followed by more tags. gtk-doc has no
tag to append text again to the documentation body.
Stefan Kost [Fri, 6 Feb 2009 09:10:15 +0000 (11:10 +0200)]
ximagsink: do not access uninitialized height variable.
Exit like in xvimagesink, if we have partial caps.
David Schleef [Thu, 26 Feb 2009 04:26:05 +0000 (20:26 -0800)]
Change how win32/common/config.h is updated
Generate win32/common/config.h-new directly from config.h.in,
using shell variables in configure and some hard-coded information.
Change top-level makefile so that 'make win32-update' copies the
generated file to win32/common/config.h, which we keep in source
control. It's kept in source control so that the git tree is
buildable from VS.
This change is similar to the one recently applied to GStreamer,
except that it adds a few -base specific defines.
Tim-Philipp Müller [Wed, 25 Feb 2009 19:40:43 +0000 (19:40 +0000)]
app: add win32 .def file and only export functions we want exported
Add a .def file for win32 builds (and make check-exports).
Fix LDFLAGS in Makefile.am, so the usual export regexps are used (fixes #573165).
Make sure private marshaller functions aren't exported by prefixing them with __gst;
also rename gst_app_marshal_OBJECT__VOID to _BUFFER__VOID, make it static and add
a comment why we're not using glib-genmarshal for this one.
Wim Taymans [Wed, 25 Feb 2009 16:08:24 +0000 (17:08 +0100)]
sprinkle: Add another example app
Add an example app that dynamically adds and removes audiotestsrc elements from
adder.
Peter Kjellerstedt [Wed, 25 Feb 2009 15:25:33 +0000 (16:25 +0100)]
Fixed a typo.
Peter Kjellerstedt [Wed, 25 Feb 2009 10:31:02 +0000 (11:31 +0100)]
rtsp, multifdsink: Unify the use of union gst_sockaddr.
Jan Schmidt [Wed, 25 Feb 2009 14:22:35 +0000 (14:22 +0000)]
build: Update shave init statement for changes in common. Bump common.
Wim Taymans [Wed, 25 Feb 2009 12:16:32 +0000 (13:16 +0100)]
xvimageink: protect buffer_alloc from shutdown
Use the pool_lock in the buffer_alloc function to detect shutdown. Avoids
crashes when the sink is shutdown.
Wim Taymans [Wed, 25 Feb 2009 11:43:53 +0000 (12:43 +0100)]
playbin: use flushing pads instead of fakesink
Use the flushing pads on playsink to terminate on shutdown instead of plugging
fakesinks. this should be a little cheaper.
Wim Taymans [Wed, 25 Feb 2009 11:42:20 +0000 (12:42 +0100)]
playsink: Add FLUSHING pad type
Make it possible to request a flushing pad from the playsink. We can eventually
use these flushing pads to quickly terminate the dataflow when we are shutting
down.
Jan Schmidt [Wed, 25 Feb 2009 11:31:52 +0000 (11:31 +0000)]
Automatic update of common submodule
From 9cf8c9b to a6ce5c6
Tim-Philipp Müller [Wed, 25 Feb 2009 09:52:38 +0000 (09:52 +0000)]
riff: add fourcc for mpeg2-in-avi (as produced by mencoder)
Fixes: #565777
Wim Taymans [Wed, 25 Feb 2009 11:07:43 +0000 (12:07 +0100)]
stress-playbin: print the current uri
Print the current uri so that we can more easily see what uri caused a crash or
error.
Wim Taymans [Wed, 25 Feb 2009 10:07:20 +0000 (11:07 +0100)]
Print the errors more clearly
Print some more verbose messages when dealing with errors.
Wim Taymans [Wed, 25 Feb 2009 09:08:29 +0000 (10:08 +0100)]
Release the group lock when setting states
Release the group lock while we perform the state changes on the uridecodebins
because that might trigger callbacks that we need to handle with the group lock
taken. Avoids a possible deadly embrace in some id3/flac files.
Fixes #567396.
Wim Taymans [Wed, 25 Feb 2009 09:05:38 +0000 (10:05 +0100)]
Combine finding and creating groups
Combine the search for the current group and optionally creating one into one
function so that we can avoid taking the lock multiple times.
Edward Hervey [Wed, 25 Feb 2009 07:22:00 +0000 (08:22 +0100)]
Playbin2: Don't leave unused parameters in debug statements.
Fixes build on macosx
Edward Hervey [Tue, 24 Feb 2009 09:33:05 +0000 (10:33 +0100)]
Riff: Add fourcc for mpeg1-in-avi (as produced by mencoder)
Wim Taymans [Tue, 24 Feb 2009 17:43:45 +0000 (18:43 +0100)]
Add some G_UNLIKELY because we can
Add a G_UNLIKELY when checking the shutdown variable.
Garret D'Amore [Tue, 24 Feb 2009 17:23:58 +0000 (17:23 +0000)]
mixer interface: Add flags to enhance mixer interfaces
This patch adds a few flags to the mixer and mixerctrl interface to
better support OSSv4 (and potentially other backends).
Patch By: Garret D'Amore <garrett.damore@sun.com>
Signed-Off-By: Jan Schmidt <jan.schmidt@sun.com>
API: GST_MIXER_FLAG_HAS_WHITELIST, GST_MIXER_FLAG_GROUPING,
API: GST_MIXER_TRACK_NO_RECORD, GST_MIXER_TRACK_NO_MUTE,
API: GST_MIXER_TRACK_WHITELIST
Jan Schmidt [Tue, 24 Feb 2009 17:03:08 +0000 (17:03 +0000)]
multifdsink: Fix strict aliasing error using a union
Jan Schmidt [Tue, 24 Feb 2009 16:49:40 +0000 (16:49 +0000)]
rtsp: Fix a strict aliasing warning
Fix strict aliasing warnings from casting a sockaddr_storage and
using it as a sockaddr_in6. Use a union instead.
Jan Schmidt [Tue, 24 Feb 2009 16:08:49 +0000 (16:08 +0000)]
Remove .gitignore files from the docs tmpl dirs, that are killed by make clean.
Sebastian Dröge [Tue, 24 Feb 2009 13:36:39 +0000 (14:36 +0100)]
vorbis: Rename vorbis*.h to gstvorbis*.h to prevent name conflicts
Sebastian Dröge [Tue, 24 Feb 2009 13:06:38 +0000 (14:06 +0100)]
ffmpegcolorspace: Add conversion from/to YVYU colorspace
Fixes bug #572872.
Jonas Danielsson [Tue, 24 Feb 2009 12:42:01 +0000 (13:42 +0100)]
ffmpegcolorspace: Add direct UYVY->GRAY8 conversion
The conversion from UYVY to RGB24 and then to GRAY8
is quite slow. Fixes bug #569655.
Mark Nauwelaerts [Thu, 19 Feb 2009 16:16:51 +0000 (17:16 +0100)]
playbin2: fix deadlock when shutting down. Fixes #572577.
Mark Nauwelaerts [Thu, 19 Feb 2009 16:15:18 +0000 (17:15 +0100)]
stress-playbin: make more flexible, e.g. also useful for playbin2
Wim Taymans [Tue, 24 Feb 2009 11:11:00 +0000 (12:11 +0100)]
Match WSAStartup and WSACleanup correctly
Don't randomly call WSAStartup and WSACleanup but instead call the startup when
we create a connection and cleanup when we free it again. Because the internal
datastructure is refcounted, this should not cause any refcounting leaks when
the connection is managed correctly.
Fixes #562794.
Mark Nauwelaerts [Wed, 18 Feb 2009 10:59:58 +0000 (11:59 +0100)]
playbin2/playsink: Set audiotee to PAUSED state in all cases. Fixes #565105.
David Flynn [Mon, 23 Feb 2009 18:57:42 +0000 (10:57 -0800)]
Add srcdir to includes for out-of-source builds
When you use gstreamer uninstalled and build outside
the source tree, the includes need to be specified for
both the source tree and the build tree.
Signed-off-by: David Schleef <ds@schleef.org>
Jan Schmidt [Sun, 22 Feb 2009 17:23:52 +0000 (17:23 +0000)]
Use shave for the build output
Edward Hervey [Mon, 23 Feb 2009 11:17:07 +0000 (12:17 +0100)]
win32: Add new symbol to libgstrtsp.def
Wim Taymans [Mon, 23 Feb 2009 09:57:08 +0000 (10:57 +0100)]
Add method for handling server requests
Add a receive_request so that extensions can react to server requests.
Sebastian Dröge [Sun, 22 Feb 2009 18:20:40 +0000 (19:20 +0100)]
Correctly cast to GstBuffer * before passing to gst_buffer_(copy|unref)
Sebastian Dröge [Sun, 22 Feb 2009 18:19:04 +0000 (19:19 +0100)]
theoraparse: Use the correct unref functions
Sebastian Dröge [Sun, 22 Feb 2009 18:18:41 +0000 (19:18 +0100)]
x(v)imagesink: Correctly cast to GstBuffer * before passing to gst_buffer_unref()
Sebastian Dröge [Sun, 22 Feb 2009 18:12:00 +0000 (19:12 +0100)]
tagdemux: Unref the actual buffer instead of the memory address of the buffer
Jan Schmidt [Sun, 22 Feb 2009 15:47:53 +0000 (15:47 +0000)]
Automatic update of common submodule
From 5d7c9cc to 9cf8c9b
Edward Hervey [Sun, 22 Feb 2009 13:49:29 +0000 (14:49 +0100)]
win32/common: Update .def files for recent API addition
Edward Hervey [Sun, 22 Feb 2009 12:43:35 +0000 (13:43 +0100)]
tests: Fix indentation
Edward Hervey [Sun, 22 Feb 2009 12:42:33 +0000 (13:42 +0100)]
libs/video: Fix gst_video_format_new_caps* functions.
Only add a 'interlaced=True' property to caps *IF* it is interlaced, else
don't add anything.
David Schleef [Sat, 21 Feb 2009 19:13:36 +0000 (11:13 -0800)]
Automatic update of common submodule
From 80c627d to 5d7c9cc
Wim Taymans [Fri, 20 Feb 2009 16:26:40 +0000 (17:26 +0100)]
Improve key/value parsing
Improve header field parsing by keeping a ref to the key/value instead of
copying it into a local variable.
Wim Taymans [Fri, 20 Feb 2009 11:35:53 +0000 (12:35 +0100)]
Add trailing \0 to message length
We always put a trailing 0 at the end of the message body. Reflect this fact in
the length of the message.
Wim Taymans [Fri, 20 Feb 2009 08:50:15 +0000 (09:50 +0100)]
Don't parse headers for data messages
Don't try to parse the headers on a data message because they don't have
headers.
Benjamin M. Schwartz [Thu, 19 Feb 2009 20:18:29 +0000 (12:18 -0800)]
theoraenc: Add property for speed level control
Add property "speed-level" to control the amount of motion searching
the encoder does. This is only available in libtheora >= 1.0 and
will silently fail with earlier libraries. Fixes: #572275.
Signed-off-by: David Schleef <ds@schleef.org>
Edward Hervey [Thu, 19 Feb 2009 16:40:45 +0000 (17:40 +0100)]
video: Fix 'Since' tags
Edward Hervey [Mon, 26 Jan 2009 09:30:53 +0000 (10:30 +0100)]
video: Add flags for interlaced video along with convenience methods for interlaced caps.
These three flags allow all know combinations of interlaced formats. They should
only be used when the caps contain 'interlaced=True'.
Fixes #163577 (yes, it's a 4 year old bug).
Wim Taymans [Thu, 19 Feb 2009 14:51:52 +0000 (15:51 +0100)]
Make RTSPConnection opaque and rename RTSPChannel
Make the RTSPConnection object opaque so that we can extend it in the future.
Rename GstRTSPChannel to GstRTSPWatch to avoid confusing with the RTSP channels.
Edward Hervey [Mon, 26 Jan 2009 09:31:14 +0000 (10:31 +0100)]
Add some more mappings for h264 in riff
Wim Taymans [Thu, 19 Feb 2009 09:49:56 +0000 (10:49 +0100)]
Add new RTSP symbols to def files
Add the new RTSP symbols to the windows def file.
Wim Taymans [Thu, 19 Feb 2009 09:44:31 +0000 (10:44 +0100)]
Add method to install callbacks on appsink
Based on pacth by Martin Samuelsson <martin dot samuelsson at axis dot com>
Fixes #571299.
Add gst_app_sink_set_callbacks() to install a set of callbacks. This is a more
performant alternative to connecting to the signals.
Add a unit test for appsink.
Clean up some of the appsink docs.
API: GstAppSink::gst_app_sink_set_callbacks()
Wim Taymans [Wed, 18 Feb 2009 17:46:35 +0000 (18:46 +0100)]
Add RTSP accept method
Add a method to accept a connection on a socket and create a GstRTSPConnection
for it.
API: gst_rtsp_connection_accept()
Wim Taymans [Wed, 18 Feb 2009 16:42:59 +0000 (17:42 +0100)]
Add RTSP channel object for async io
Add a GstRTSPChannel object that wraps a GSource around the RTSP connection so
that the connection can be monitored from a maincontext. This allows us to
operate in ASYNC mode, which is handy when building a server.
Rework the old code to use the async code under the hood.
API: gst_rtsp_channel_new()
API: gst_rtsp_channel_unref()
API: gst_rtsp_channel_attach()
API: gst_rtsp_channel_queue_message()
Sebastian Dröge [Sun, 15 Feb 2009 06:30:17 +0000 (07:30 +0100)]
audioresample: Add locking to protect the resampling context
When setting the quality/filter-length while PLAYING the
resampling context will be destroyed and created again in
some cases, which will cause crashes in the transform function
if it's called at that time.
Sebastian Dröge [Fri, 13 Feb 2009 09:10:25 +0000 (10:10 +0100)]
ffmpegcolorspace/videotestsrc: Use v308 instead of V308
Sebastian Dröge [Thu, 12 Feb 2009 18:02:59 +0000 (19:02 +0100)]
ffmpegcolorspace: Add support for packed 4:4:4 YUV (format=V308)
Only conversions from/to are implemented, which
gives (indirect) support for all possible conversions.
Partially fixes bug #571147.
Sebastian Dröge [Thu, 12 Feb 2009 17:17:53 +0000 (18:17 +0100)]
videotestsrc: Add support for packed 4:4:4 YUV (format=V308)
Partially fixes bug #571147.
Tim-Philipp Müller [Thu, 12 Feb 2009 09:18:20 +0000 (09:18 +0000)]
tagdemux: don't abort when downstream pulls a buffer of size 0
Pulling a 0-sized buffer is allowed, and we should handle this correctly instead of
aborting. Fixes #571009 (wma file with ID3v2 tag).
Tim-Philipp Müller [Wed, 11 Feb 2009 16:39:55 +0000 (16:39 +0000)]
riff: error out on nonsensical chunk sizes instead of aborting
When encountering a nonsensical chunk size such as (guint)-1, error out cleanly instead of
continuing and trying to g_memdup() 4GB of data that doesn't exist, which will either abort
in g_malloc() or crash.
Fixes #553295, crash with fuzzed AVI file.
Tim-Philipp Müller [Wed, 11 Feb 2009 16:39:06 +0000 (16:39 +0000)]
Make git ignore backup files.
Michael Smith [Wed, 11 Feb 2009 04:38:58 +0000 (20:38 -0800)]
Revert "Remove pad-removed handlers after setting the decodebins to NULL."
This reverts commit
b36d8f3e119f9edc5993c08025614ee32642972e.
This brought back some deadlocks. A small leak is better, for now. Need to
figure out a way to fix the leak properly.
Michael Smith [Wed, 11 Feb 2009 01:16:07 +0000 (17:16 -0800)]
playbin2: Fix segfault on notify after group change.
If our group has been switched, then we get a selector active-pad
notification, we don't need to notify.
Michael Smith [Wed, 11 Feb 2009 01:10:33 +0000 (17:10 -0800)]
playbin2: Look for volume/mute properties recursively in audio element.
Rather than only checking for volume property on the audio sink
directly, recursively look for it on sinks within it (if it's a bin).
Allows use of sink-as-volume-control where the application has supplied
an audio-sink bin that includes a real audio sink internally.
Christian Schaller [Tue, 10 Feb 2009 18:29:22 +0000 (18:29 +0000)]
Update spec file with latest additions and changes, most noteably the move of appsrc appsink into -base
Sebastian Dröge [Tue, 10 Feb 2009 16:39:45 +0000 (17:39 +0100)]
videotestsrc: Add support for Y444 (planar 4:4:4 YUV)
Partially fixes bug #571147.
Peter Kjellerstedt [Tue, 10 Feb 2009 16:37:06 +0000 (17:37 +0100)]
gstrtspmessage: Minor documentation correction.
Corrected documentation about what needs to be freed after calling
gst_rtsp_message_new(), gst_rtsp_message_new_request(),
gst_rtsp_message_new_response() and gst_rtsp_message_new_data().
Antoine Tremblay [Tue, 10 Feb 2009 10:00:12 +0000 (11:00 +0100)]
alsamixer: Fix race condition that made alsamixer not working properly
This is due to race conditions between functions that
modified the mixer like set_volume and
snd_mixer_handle_events since the handle_events
can now be called at any time.
Fixed by adding locking around any snd_mixer call
since even read functions can modify the mixer stucture, since
alsa likes to clear it's values before reading new ones.
The favorite race condition seemed to be that set_volume
called read_elem (in alsalib) that reset the volumes to
0 and then read them with read_x_volume. This read looped
on each channel and as the race condition occured the
channels value could be anything , most of the time
it was 0. Thus no value was read or only the value of
one channel was and the volume was reset to 0.
Fixes bug #478512.
Edward Hervey [Mon, 9 Feb 2009 11:02:21 +0000 (12:02 +0100)]
Bump revision to use for common submodule.
Stefan Kost [Thu, 5 Feb 2009 13:47:00 +0000 (15:47 +0200)]
xvimagesink: do not call _xwindow_clear on ready->paused.
Calling clear at that transition does things like stopping xvideo (which is not
running at that time) and also clearing anything what the application might have drawn.
This breaks handle-expose and autopaint-colorkey features.
Wim Taymans [Wed, 4 Feb 2009 16:03:52 +0000 (17:03 +0100)]
RTSPRange: Add method to serialize ranges
Add gst_rtsp_range_to_string() to serialize a GstRTSPRange to a string that can
be used by a server.
API: GstRTSPRange::gst_rtsp_range_to_string()
Wim Taymans [Wed, 4 Feb 2009 12:16:48 +0000 (13:16 +0100)]
GstRTSPUrl: Add some const to methods
Add const to the methods that do not modify the object.
Stefan Kost [Wed, 4 Feb 2009 11:53:30 +0000 (13:53 +0200)]
playbin2: implement GST_PLAY_FLAG_NATIVE_{AUDIO,VIDEO}
The flags where present but actually not been taken into account.
Stefan Kost [Wed, 4 Feb 2009 10:06:38 +0000 (12:06 +0200)]
audioresample: Add a proper deprecation comment and also drop G_PARAM_CONSTRUCT.
The comment will ensure that is is marked properly in the docs and the
GParamSpecflag was causing a duplicated initialisation of the same value.
Wim Taymans [Wed, 4 Feb 2009 10:18:31 +0000 (11:18 +0100)]
Add more g_return_if_fail() calls
Check that we have a valid file descriptor before entering certain functions in
order to avoid undesirable situations.
Add some more debugging in the connect method.
Stefan Kost [Wed, 4 Feb 2009 08:31:21 +0000 (10:31 +0200)]
audioresample: Only pull in liboil if its actualy used.
Liboil still has quite significant startup overhead especialy on embedded
platforms. In audioresample it was only used for the profiling timer.
Stefan Kost [Tue, 3 Feb 2009 13:26:08 +0000 (15:26 +0200)]
typefind: Make the flac check more tight to not mistace some aac files for flac. Fixes #570356.
Add comments about the flac format. Tighten the check to not allow values that
refer to headers.
Wim Taymans [Tue, 3 Feb 2009 09:52:15 +0000 (10:52 +0100)]
Add new methods
Add new methods to the windows def file.
Tim-Philipp Müller [Mon, 2 Feb 2009 17:25:21 +0000 (17:25 +0000)]
pbutils: remove duplicate detail strings when calling the external codec installer
It doesn't make sense to ask installers for the same codec or element twice, so filter out duplicate requests before calling the external helper script and make the unit test check this works right. Fixes #567636.
Stefan Kost [Mon, 2 Feb 2009 16:05:42 +0000 (18:05 +0200)]
Add a FIXME 0.11. Make the log message a bit more detailed and add comments.
Stefan Kost [Mon, 2 Feb 2009 13:43:03 +0000 (15:43 +0200)]
Allow to configure the resampler function for integer to skip the benchmarking. Fix releasing the intger resampler in benchmark.
Wim Taymans [Mon, 2 Feb 2009 12:30:42 +0000 (13:30 +0100)]
Fix buffer_alloc in ximagesink
Remove some useless debug info that reported wrong image sizes.
When upstream does not accept out suggested size, fall back to allocating an
image of the requested width/height instead of the currently configured size.
The problem is that an image is reused from the pool because the width/height
match but the caps on the new buffer are the requested caps with possibly
different height/width resulting in errors.
Wim Taymans [Mon, 2 Feb 2009 11:54:31 +0000 (12:54 +0100)]
Fix documentation for autoplug-select
fix the documentation strings for the autoplug-select signal.
Fixes #570142.
Wim Taymans [Mon, 2 Feb 2009 09:09:07 +0000 (10:09 +0100)]
Fix string leak in rtspmessage
when we remove a header field from a message we must free the value associated
with the key to avoid a memory leak.
Stefan Kost [Sat, 31 Jan 2009 16:45:47 +0000 (18:45 +0200)]
Its "Base Library" and not just "Library".
Stefan Kost [Sat, 31 Jan 2009 16:44:32 +0000 (18:44 +0200)]
Link to the class, as we can't link to the members yet.
Michael Smith [Sat, 31 Jan 2009 01:48:23 +0000 (17:48 -0800)]
Remove pad-removed handlers after setting the decodebins to NULL.
They do needed cleanup; without this we leak selector requestpads.
Michael Smith [Sat, 31 Jan 2009 01:47:07 +0000 (17:47 -0800)]
Unref selector request pad even if we no longer have a selector.
During destruction, we won't have a selector any more, but we still need
to unref the pad to avoid leaking it.