Wim Taymans [Fri, 10 Jul 2009 19:04:33 +0000 (20:04 +0100)]
playbin2: add support for progressive download
Add a new playbin2 flag (initially disabled) to enable progressive download
buffering in uridecodebin.
Wim Taymans [Fri, 10 Jul 2009 18:59:30 +0000 (19:59 +0100)]
uridecodebin: add download property
Add a download property that will attempt to configure queue2 into progressive
download buffering.
Make sure we only enable download buffering for quicktime and flv formats.
Wim Taymans [Fri, 10 Jul 2009 18:49:46 +0000 (19:49 +0100)]
queue2: add temp-template property
Add a new temp-template property so that queue2 can securely allocate a
temporary filename. Deprecate the temp-location property for setting the
location but still use it to notify the allocated temp file.
Stefan Kost [Fri, 10 Jul 2009 19:06:28 +0000 (20:06 +0100)]
adder: add a caps-property to avoid to need to plug a capsfilter afterwards
Adder can only handle one common format accross the pads. Thus one needed to add
a capsfilter afterwards and manage the caps. Now one can simply set the caps on
the property.
Stefan Kost [Fri, 10 Jul 2009 17:59:05 +0000 (18:59 +0100)]
adder: skip live-seek text if we have no audiosrc, add new test
The seek-test needs a real audiosrc. Also add a test that checks that adder is
reusable. Finaly handle warnings as warnings to fix a assertion.
Sebastian Dröge [Fri, 10 Jul 2009 17:16:35 +0000 (19:16 +0200)]
gio: Also post a "not-mounted" message from giosink
Sebastian Dröge [Fri, 10 Jul 2009 15:15:48 +0000 (17:15 +0200)]
gio: Remove workaround for playbin2 bug in the sample application
The playbin2 bug was #588078.
Sebastian Dröge [Fri, 10 Jul 2009 15:08:40 +0000 (17:08 +0200)]
playbin2: Make it possible for READY->PAUSED to succeed after it failed the first time
If READY->PAUSED failed in the source element we would've swapped
the current and next group already. To allow READY->PAUSED to succeed
after the first failure we have to swap the current and next group
back again. This also ensure that we're again in the same state
as before the failed state change and not at the next group.
This was especially a problem for playbin2 pipelines that use the
new mounting support in giosrc as the source would fail for READY->PAUSED
the first time, the application mounts the location and then tries
to go READY->PAUSED again (and this time it would succeed).
Fixes bug #588078.
Sebastian Dröge [Fri, 10 Jul 2009 09:42:51 +0000 (11:42 +0200)]
gio: Add example application that shows how to handle the "not-mounted" message
Sebastian Dröge [Fri, 10 Jul 2009 09:24:57 +0000 (11:24 +0200)]
gio: Remove the experimental status from the GIO plugin
Fixes bug #510417.
Sebastian Dröge [Fri, 10 Jul 2009 09:24:05 +0000 (11:24 +0200)]
gio: Add documentation for the new "not-mounted" and "file-exists" messages
Sebastian Dröge [Thu, 9 Jul 2009 11:45:13 +0000 (13:45 +0200)]
gio: Make sure that we have the correct stream position when starting
Sebastian Dröge [Wed, 8 Jul 2009 15:24:19 +0000 (17:24 +0200)]
gio: Make sure to flush the output stream if it shouldn't be closed
Otherwise there might still be unwritten data after the element
has stopped.
Sebastian Dröge [Wed, 8 Jul 2009 15:19:29 +0000 (17:19 +0200)]
gio: Don't close the GIO streams for the giostream{src,sink} elements
This makes it possible to do something useful with the streams
after the element has stopped. Fixes bug #587896.
Sebastian Dröge [Wed, 8 Jul 2009 15:19:05 +0000 (17:19 +0200)]
gio: Try to reuse the pipeline with the same stream objects
Sebastian Dröge [Wed, 8 Jul 2009 15:02:54 +0000 (17:02 +0200)]
gio: Improve the error message if a stream is already closed before usage
Sebastian Dröge [Wed, 8 Jul 2009 14:55:41 +0000 (16:55 +0200)]
gio: Post a custom file-exists message on the bus if the file already exists
An application can handle this message, remove the file in question
and restart the pipeline again without showing an error.
This fixes bug #529300.
Sebastian Dröge [Wed, 8 Jul 2009 14:54:56 +0000 (16:54 +0200)]
gio: Use OPEN_READ instead of NOT_FOUND if a location is not mounted
Sebastian Dröge [Wed, 8 Jul 2009 14:50:56 +0000 (16:50 +0200)]
gio: Use OPEN_WRITE instead of OPEN_READ as error category in giosink
Sebastian Dröge [Wed, 8 Jul 2009 13:52:35 +0000 (15:52 +0200)]
gio: Post a custom "not-mounted" message on the bus
This allows applications to mount the GFile if possible and restart
the pipeline instead of simply giving an error.
Philip Jägenstedt [Wed, 8 Jul 2009 13:08:32 +0000 (15:08 +0200)]
audioconvert: Fix compilation when debugging is disabled
Fixes bug #587980.
Sebastian Dröge [Tue, 7 Jul 2009 18:23:23 +0000 (20:23 +0200)]
gio: Add vfunc for requesting the stream for the sinks too
Sebastian Dröge [Tue, 7 Jul 2009 18:21:36 +0000 (20:21 +0200)]
gio: Some more random cleanup
Sebastian Dröge [Tue, 7 Jul 2009 18:20:58 +0000 (20:20 +0200)]
gio: Update my mail address and copyright
Sebastian Dröge [Tue, 7 Jul 2009 18:18:00 +0000 (20:18 +0200)]
gio: General clean up and simplification
The GInputStreams are now requested by a vfunc from
the subclasses instead of relying that the subclass
sets it until it's needed.
This might also fix bug #587896.
Stefan Kost [Mon, 6 Jul 2009 21:31:12 +0000 (22:31 +0100)]
adder: keep sending newsegments after seeking
Adder sends with timestamps from 0 upwards. After seeking we need to send
new-segments to get correct positions-queries.
Stefan Kost [Mon, 6 Jul 2009 19:44:00 +0000 (20:44 +0100)]
adder: make test more robust
Add audioconverts to the live-seeking test to make it negotiate.
Stefan Kost [Tue, 30 Jun 2009 14:19:50 +0000 (17:19 +0300)]
xvimagesink: use core performance log category
Edward Hervey [Sun, 5 Jul 2009 19:29:40 +0000 (21:29 +0200)]
adder: Call set_flushing(TRUE) for flushing seeks *when* the streaming is stopped.
This ensures that collectpads' cookie is properly updated so that when the streaming
threads will restart and be checking for the flushing status of all pads there will
be no inconsistent state.
Hans-Peter Nilsson [Sun, 5 Jul 2009 16:01:38 +0000 (18:01 +0200)]
pango: Call tzset() before localtime_r()
POSIX and your local friendly ctime(3) manual entry says that localtime_r isn't
required to set the state variables that define the current timezone. Indeed,
glibc (at least 2.9) doesn't do this for subsequent calls. The effect is that
if the system timezone is changed for a running program between two calls to
gst_clock_overlay_render_time, it won't be noticed. For glibc, changing the
timezone equals /etc/localtime being modified.
Fixes bug #587676.
David Schleef [Thu, 2 Jul 2009 00:33:14 +0000 (17:33 -0700)]
build: remove spurious schroedinger reference
David Schleef [Wed, 1 Jul 2009 17:25:43 +0000 (10:25 -0700)]
basevideo: send basevideo back to remedial school
Move basevideo classes and schroedinger plugin to -bad.
Wim Taymans [Wed, 1 Jul 2009 10:54:21 +0000 (12:54 +0200)]
netaddress: add constant for max len
Wim Taymans [Wed, 1 Jul 2009 10:48:38 +0000 (12:48 +0200)]
netbuffer: add gst_netaddress_to_string
Add function to serialize a net address to a string.
API: GstNetAddress::gst_netaddress_to_string()
Wim Taymans [Tue, 30 Jun 2009 16:44:44 +0000 (18:44 +0200)]
uridecodebin: make fd:// uri use buffering too
fd:// usually operate in push mode only and are thus suitable for buffering.
Stefan Kost [Tue, 30 Jun 2009 11:46:38 +0000 (14:46 +0300)]
volume: include "1.0=100%" in property description
Stefan Kost [Tue, 30 Jun 2009 11:45:51 +0000 (14:45 +0300)]
playsink: remove unused property defs
Stefan Kost [Mon, 29 Jun 2009 14:11:50 +0000 (17:11 +0300)]
multichannel: rewrite the new doc comment a bit
Its part of the audio lib.
Jan Schmidt [Mon, 29 Jun 2009 13:34:02 +0000 (14:34 +0100)]
playsink: Avoid a segfault when the video sink fails to start
Don't attempt to display the subpictures and segfault when the
video sink failed to start (and hence the videochain is NULL).
Wim Taymans [Mon, 29 Jun 2009 13:14:07 +0000 (15:14 +0200)]
ringbuffer: add vmethod to clear the ringbuffer
Add a vmethod so that subclasses can be notified when they should clear the data
in the ringbuffer.
Jan Schmidt [Mon, 29 Jun 2009 13:00:14 +0000 (14:00 +0100)]
riff-media: Fix the fourcc caps property for VC-1/WMVA
The caps property for carrying fourccs is 'format', not 'fourcc'
Wim Taymans [Mon, 29 Jun 2009 10:20:52 +0000 (12:20 +0200)]
rtsp: include in.h for FreeBSD compat
Fixes #586920
Wim Taymans [Mon, 29 Jun 2009 10:20:20 +0000 (12:20 +0200)]
defs: add defs for new appsink buffer-list method
Wim Taymans [Mon, 29 Jun 2009 10:14:43 +0000 (12:14 +0200)]
appsink: add docs and signals
Add docs for the new callback.
Add signals for the new buffer-list support.
Branko Subasic [Mon, 29 Jun 2009 08:24:36 +0000 (10:24 +0200)]
Added unit tests for buffer list support in appsink.
Branko Subasic [Wed, 17 Jun 2009 09:12:08 +0000 (11:12 +0200)]
Added buffer list support.
Branko Subasic [Wed, 17 Jun 2009 07:23:11 +0000 (09:23 +0200)]
Added buffer list support.
Peter Kjellerstedt [Mon, 29 Jun 2009 07:36:27 +0000 (09:36 +0200)]
sdp: Include winsock2.h after defining WINVER.
Similar to bug #587080.
Peter Kjellerstedt [Mon, 29 Jun 2009 07:31:40 +0000 (09:31 +0200)]
rtsp: Moved a comment.
Stefan Kost [Sat, 27 Jun 2009 20:23:02 +0000 (23:23 +0300)]
docs: add basic section docs for multichannel and relocate the ones for audio
Add section docs for multichannel, so that it has a short desc in the toc too.
Move the section docs in adio up, so that the follow the copyright like
elsewhere.
Stefan Kost [Fri, 26 Jun 2009 18:11:45 +0000 (21:11 +0300)]
v4l: open/close device in ready.
Simillar change like in v4l2src. This allows probing feature in paused, where
streaming is noit yet started.
René Stadler [Wed, 10 Jun 2009 14:05:22 +0000 (17:05 +0300)]
playbin2: fix initial volume handling also when reusing the element
This is a follow-up to commit 452988, making it work correctly when the audio
chain is reused.
Руслан Ижбулатов [Fri, 26 Jun 2009 17:48:58 +0000 (21:48 +0400)]
Define WINVER before including any win headers
Fixes bug #587080.
René Stadler [Fri, 26 Jun 2009 21:50:54 +0000 (00:50 +0300)]
riff: prevent crash if rounded up tag size exceeds data size
When rounding up `tsize' exceeds the remaining buffer size, `size' underflows
and an invalid read past the buffer data follows.
Sebastian Dröge [Fri, 26 Jun 2009 13:17:21 +0000 (15:17 +0200)]
basevideocodec: By default don't allow caps changes on the srcpad
This fixed playback of Dirac files with schrodec when upstream wants
a different width/height, basevideocodec accepts this and then
pushes buffers with new caps but content of the old caps.
In the best case this will just result in wrong unit size and a
failure in basestransform elements.
Jan Schmidt [Fri, 26 Jun 2009 13:11:21 +0000 (14:11 +0100)]
autogen.sh: Use printf instead of 'echo -n'. Check for automake-1.1[01]
Check for more automake command variants. Use printf instead of 'echo -n'
for portability
Jan Schmidt [Fri, 26 Jun 2009 12:41:38 +0000 (13:41 +0100)]
Automatic update of common submodule
From f810030 to 5845b63
Stefan Kost [Fri, 26 Jun 2009 10:14:02 +0000 (13:14 +0300)]
screenshot: don't leak message
Tim-Philipp Müller [Thu, 25 Jun 2009 11:04:59 +0000 (12:04 +0100)]
typefinding: lower the h264 typefinder's probability
A NEARLY_CERTAIN is absolutely not warranted given the kind
of things it checks for. Even a LIKELY is probably not entirely
appropriate.
Jan Schmidt [Wed, 24 Jun 2009 14:13:56 +0000 (15:13 +0100)]
Automatic update of common submodule
From f3bb51b to f810030
Tim-Philipp Müller [Wed, 24 Jun 2009 08:48:41 +0000 (09:48 +0100)]
pbutils: add description for multipart
So we get slightly nicer error messages when multipartdemux is missing.
Wim Taymans [Tue, 23 Jun 2009 16:07:31 +0000 (18:07 +0200)]
adder: only unflush when we flushed before
Ass suggested by Stefan Kost:
Keep track of when the sinkpad was set to flushing and unflush the pad when an
upstream flushing seek failed.
Tim-Philipp Müller [Tue, 23 Jun 2009 14:10:37 +0000 (15:10 +0100)]
uridecodebin: fix leak when the source fails to change state
Wim Taymans [Tue, 23 Jun 2009 10:40:56 +0000 (12:40 +0200)]
ssaparse: avoid leaking all buffers
Stefan Kost [Mon, 22 Jun 2009 19:18:03 +0000 (22:18 +0300)]
adder: test seek handling in adder
This tests seeking on an adder that has a normal and a live source connected.
Wheter the current behavior is the desired one needs to be discussed still
(see #586033)
Stefan Kost [Mon, 22 Jun 2009 13:17:10 +0000 (16:17 +0300)]
x(v)imagesink: pass the xwindow along to not look at the yet unset var.
When we call this from xwindow_new, x(v)imagesink->xwindow is not yet set.
Stefan Kost [Mon, 22 Jun 2009 08:40:33 +0000 (11:40 +0300)]
x(v)imagesink: catch tags and show title in own window
Refactor the code that sets the window title. Catch tag-events and use title
metadata for the window title.
Sebastian Dröge [Sun, 21 Jun 2009 17:42:15 +0000 (19:42 +0200)]
audiotestsrc: Name gaussian noise "gaussian-noise" instead of just "gaussian"
Also make all the function arrays constant.
Kipp Cannon [Sun, 21 Jun 2009 10:27:37 +0000 (12:27 +0200)]
audiotestsrc: Add support for generating gaussian white noise
This patch adds support for stationary white Gaussian noise.
The Box-Muller algorithm is used to generate pairs of independent
normally-distributed random numbers.
Fixes bug #586519.
Jan Schmidt [Sat, 20 Jun 2009 22:46:28 +0000 (23:46 +0100)]
ffmpegcolorspace: Fix NV12 and NV21 transformations
Fix some stride problems, fix the nv12 to nv21 direct transformation,
and implement a direct conversion to yuv444 to save CPU.
Jan Schmidt [Sat, 20 Jun 2009 21:36:21 +0000 (22:36 +0100)]
videotestsrc: Fix NV12 painting for odd strides/heights
Tim-Philipp Müller [Fri, 19 Jun 2009 21:16:43 +0000 (22:16 +0100)]
cdparanoia: run-time license is LGPL now that we require cdparanoia 0.10.2
cdparanoia has an LGPL v2.1 license since 0.10.1 and we now require 0.10.2.
Finally fixes #531035.
Tim-Philipp Müller [Fri, 19 Jun 2009 20:25:54 +0000 (21:25 +0100)]
cdparanoia: try to guess a good cache size if it's set to -1
Try to guess from the paranoia-mode setting whether playback or
ripping is wanted, and use a smaller cache size if we're likely
to be doing playback, to avoid a long startup delay. Since this
was the value used in older cdparanoia versions, it should be
fine in any case. See #586331.
Jonathan Matthew [Fri, 19 Jun 2009 01:27:40 +0000 (11:27 +1000)]
cdparanoia: expose cache size setting
This setting was added in cdparanoia 10.2. The default value is good
for audio extraction, but lower values (previous versions of cdparanoia
used 150) are better for realtime playback.
Fixes #586331.
Christian Schaller [Fri, 19 Jun 2009 16:43:03 +0000 (17:43 +0100)]
Make build of schro plugin conditional
Wim Taymans [Fri, 19 Jun 2009 13:52:34 +0000 (15:52 +0200)]
basertppayload: add support for bufferlists
Based on patch from Ognyan Tonchev.
See #585559
Wim Taymans [Fri, 19 Jun 2009 13:33:04 +0000 (15:33 +0200)]
rtpbuffer: use new convenience functions
New core convenience functions makes the list getters and setters trivial.
Maybe even too trivial...
Wim Taymans [Thu, 18 Jun 2009 17:07:22 +0000 (19:07 +0200)]
defs: add new symbol to win32 defs file
Based on patches by Ognyan Tonchev.
See #585559
Wim Taymans [Thu, 18 Jun 2009 17:04:52 +0000 (19:04 +0200)]
rtp: cleanups, add _list_get_seq() too
Clean up the docs a little.
Add missing _list_get_seq method.
Add new symbols to the docs
Wim Taymans [Thu, 18 Jun 2009 16:47:49 +0000 (18:47 +0200)]
rtp: cleanups
Add Since tags to docs
Move some code around
Add win32 symbols
Wim Taymans [Thu, 18 Jun 2009 15:46:01 +0000 (17:46 +0200)]
rtp: add bufferlist support
Wim Taymans [Thu, 18 Jun 2009 16:03:40 +0000 (18:03 +0200)]
rtp: pass data to macros instead of GstBuffer
Jan Schmidt [Thu, 18 Jun 2009 16:42:10 +0000 (17:42 +0100)]
win32: Add gst_rtsp_watch_queue_data() to the exports
Fix the tests by exporting the new symbol from the win32 dlls
Stefan Kost [Thu, 18 Jun 2009 15:13:22 +0000 (18:13 +0300)]
xvimagesink: appname might be NULL
Don't set title if appname is unknown.
Stefan Kost [Thu, 18 Jun 2009 14:58:06 +0000 (17:58 +0300)]
xvimagesink: set window title from application name
Peter Kjellerstedt [Tue, 9 Jun 2009 17:14:00 +0000 (19:14 +0200)]
rtsp: Made the parsing of the RTSP URL scheme more generic.
Peter Kjellerstedt [Mon, 15 Jun 2009 11:58:26 +0000 (13:58 +0200)]
rtsp: Added gst_rtsp_watch_queue_data().
gst_rtsp_watch_queue_data() is similar to gst_rtsp_watch_queue_message()
but allows for queuing any data block for writing (much like
gst_rtsp_connection_write() vs. gst_rtsp_connection_send().)
API: gst_rtsp_watch_queue_data()
Peter Kjellerstedt [Tue, 9 Jun 2009 14:37:09 +0000 (16:37 +0200)]
rtsp: Only extract the session ID from RTSP responses.
Peter Kjellerstedt [Tue, 9 Jun 2009 17:06:57 +0000 (19:06 +0200)]
rtsp: Added support for parsing IPv6 addresses in RTSP URLs.
Peter Kjellerstedt [Tue, 9 Jun 2009 12:31:18 +0000 (14:31 +0200)]
rtsp: Use getaddrinfo() to support both IPv4 and IPv6.
Peter Kjellerstedt [Wed, 17 Jun 2009 13:37:53 +0000 (15:37 +0200)]
rtsp: Improved base64 decoding in fill_bytes().
The base64 decoding in fill_bytes() expected the size of the read data to
be evenly divisible by four (which is true for the base64 encoded data
itself). This did not, however, take whitespace (especially line breaks)
into account and would fail the decoding if any whitespace was present.
Wim Taymans [Wed, 17 Jun 2009 12:00:23 +0000 (14:00 +0200)]
audiosrc: fix get_offset
When we need to jump to the most recently captured sample, jump to where the
next sample will be written instead of to some old data.
Fixes #581460
Wim Taymans [Wed, 17 Jun 2009 11:18:18 +0000 (13:18 +0200)]
audiosink: free the ringbuffer when going to NULL
Unparent and free the ringbuffer when going to NULL, like we do with the
audiosrc element. We can do this now because we correctly manage the time
jumping back to 0.
Wim Taymans [Wed, 17 Jun 2009 11:17:30 +0000 (13:17 +0200)]
audio: correctly handle short read/writes
René Stadler [Tue, 5 May 2009 12:37:54 +0000 (15:37 +0300)]
baseaudiosrc: add some extra logging for buffer timestamps
Wim Taymans [Wed, 17 Jun 2009 09:22:51 +0000 (11:22 +0200)]
adder: more seeking fixes.
When a seek failed upstream, make sure the adder sinkpad is set unflushing again
so that streaming can continue.
We only have a pending segment when we flushed.
Set the flush_stop_pending flag inside the appropriate locks and before we
attempt to perform the upstream seek.
Add some more comments.
Use the right lock to protect the flags in flush_stop.
See #585708
Sebastian Dröge [Wed, 17 Jun 2009 05:24:53 +0000 (07:24 +0200)]
decodebin2: Free iterator after removing all groups
Sebastian Dröge [Tue, 16 Jun 2009 17:38:17 +0000 (19:38 +0200)]
videofilter: Add a default get_unit_size function
This returns the correct values for all formats that are handled by
GstVideoFormat and makes all the custom get_unit_size functions in
many elements unnecessary.
Wim Taymans [Tue, 16 Jun 2009 16:57:20 +0000 (18:57 +0200)]
rtsp: add Timestamp header field
fixes #585994
Wim Taymans [Tue, 16 Jun 2009 16:15:06 +0000 (18:15 +0200)]
playbin2: set smarter target state on uridecodebin
Set the target state of the newly added uridecodebins to somthing else that
PAUSED so that we keep their state in sync with the playsink state.
Fixes #585268