Stefan Kost [Thu, 5 Mar 2009 10:27:16 +0000 (12:27 +0200)]
adder: add variants for unsigned to fix warnings for unneeded check
For unsigned int out+in can't be < 0.
Stefan Kost [Thu, 5 Mar 2009 08:58:12 +0000 (10:58 +0200)]
subparse: use the right variable in debug log, encoding is not yet initialized
Stefan Kost [Thu, 5 Mar 2009 08:51:25 +0000 (10:51 +0200)]
v4l: add a fixme for broken code, that someone who has a v4l tuner device should fix
Stefan Kost [Thu, 5 Mar 2009 08:39:33 +0000 (10:39 +0200)]
audioresample: add missing break in event handling, remove dead code
Wim Taymans [Wed, 4 Mar 2009 15:24:01 +0000 (16:24 +0100)]
rtsp: do some more cleanup in _close
Do som more cleanup in gst_rtsp_connection_close() so that it's back into the
unconnected state as it was allocated.
Wim Taymans [Wed, 4 Mar 2009 15:11:20 +0000 (16:11 +0100)]
rtsp: fix the memory management of the url
Constify the url parameter in _create.
Make a copy of the url stored in the connection.
Free the url when the connection is freed.
Wim Taymans [Wed, 4 Mar 2009 11:21:29 +0000 (12:21 +0100)]
RTSP: Add support for server tunneling
Save the tunnelid in the connection. Add a method to retrieve the tunnelid so
that a server can store and match the id against other tunnel requests.
Fix the URI in the tunnel requests so that they contain the absolute uri and the
query string if any instead of just the hostname.
Transparently base64 decode the input stream when tunneling.
Add method to set the connection ip address so that it can be included in the
tunnel response.
Add method to connect the two tunnel requests.
Add two callbacks for the async mode to notify a tunnel start and tunnel
complete event.
Add method to reset the watch after the connection has been tunneled.
Various little refactoring to make more stuff reusable.
API: RTSP::gst_rtsp_connection_set_ip()
API: RTSP::gst_rtsp_connection_get_tunnelid()
API: RTSP::gst_rtsp_connection_do_tunnel()
API: RTSP::gst_rtsp_watch_reset()
Wim Taymans [Wed, 4 Mar 2009 11:18:00 +0000 (12:18 +0100)]
rtsp: add new defines for tunneling
Add two more result codes for tunneling support.
Wim Taymans [Wed, 4 Mar 2009 11:12:06 +0000 (12:12 +0100)]
rtsp: remove , from last enum member
Remove , from last enum member to improve compatibility with other compilers.
LRN [Sat, 28 Feb 2009 23:23:20 +0000 (15:23 -0800)]
subparse: Convert regex code to GRegex code
Fixes: #572993. Patch author prefers to use an alias, contact
ds if you actually need a real name.
Signed-off-by: David Schleef <ds@schleef.org>
Wim Taymans [Mon, 2 Mar 2009 15:13:33 +0000 (16:13 +0100)]
rtsp: remove debugging g_message
--
Wim Taymans [Mon, 2 Mar 2009 15:03:49 +0000 (16:03 +0100)]
RTSP: add support for Quicktime tunneled RTSP
Add support for tunneling RTSP over HTTP.
Fix documentation some more.
See also #573173.
API: RTSP:gst_rtsp_connection_is_tunneled()
API: RTSP:gst_rtsp_connection_set_tunneled()
Wim Taymans [Mon, 2 Mar 2009 14:48:56 +0000 (15:48 +0100)]
RTSP: parse rtsph uris as RTSP tunneled over HTTP
Add transport define for RTSP tunneled over HTTP.
Parse rtsph:// uris as tunneled HTTP over TCP.
API: GstRTSPLowerTrans::GST_RTSP_LOWER_TRANS_HTTP
See also #573173.
Edward Hervey [Mon, 2 Mar 2009 11:48:18 +0000 (12:48 +0100)]
win32: Add gst_rtsp_connection_get_url definition
No, I'm not wim's buildslave, seriously.
Wim Taymans [Mon, 2 Mar 2009 09:58:49 +0000 (10:58 +0100)]
rtsp: add _get_url method and separate sockets
Add gst_rtsp_connection_get_url() method.
Reserve space for 2 sockets, one for reading and one for writing. Use socket
pointers to select the read and write sockets. This should allow us to implement
tunneling over HTTP soon.
API: RTSP::gst_rtsp_connection_get_url()
Tim-Philipp Müller [Sun, 1 Mar 2009 18:31:17 +0000 (18:31 +0000)]
app: force automatic rebuild of gstapp-marshal.[ch] after previous change
The previous change to appsrc/appsink requires people to 'make clean'
to get the marshallers rebuilt (causing a build failure otherwise).
Change some lines in the .list file around to force a rebuild of
these files automatically.
David Schleef [Sat, 28 Feb 2009 19:07:04 +0000 (11:07 -0800)]
Bump glib requirement to 2.14
LRN [Sat, 28 Feb 2009 18:37:53 +0000 (19:37 +0100)]
gio: Use correct format modifier for size_t
Fixes bug #573528.
LRN [Sat, 28 Feb 2009 18:35:33 +0000 (19:35 +0100)]
rtspconnection: Use correct types for some functions on Win32
Fixes bug #573529.
Edward Hervey [Sat, 28 Feb 2009 12:11:59 +0000 (13:11 +0100)]
rtspconnection: Fix warning about using unitialized value.
Edward Hervey [Sat, 28 Feb 2009 11:41:28 +0000 (12:41 +0100)]
riff: Add more codec mappings.
This comes mostly from a review of ffmpeg/libavformat/riff.c
Stefan Kost [Fri, 27 Feb 2009 09:14:25 +0000 (11:14 +0200)]
alsa: release pcminfo after the strdup
Stefan Kost [Thu, 26 Feb 2009 15:38:47 +0000 (17:38 +0200)]
rtsprange: don't leak the range in case of parsing error.
Free the gstRTSPTimeRange if we don't return it. Also simplify
gst_rtsp_range_free() as it is valid to pass NULL to g_free().
Stefan Kost [Thu, 26 Feb 2009 14:47:39 +0000 (16:47 +0200)]
alsa: cleanup name lookup.
We can break, once we have a name to make sure, we won't read it ever twice.
Stefan Kost [Thu, 26 Feb 2009 14:09:03 +0000 (16:09 +0200)]
subparse: don't leak line, if flushing
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.