Edward Hervey [Mon, 3 Aug 2009 19:21:39 +0000 (21:21 +0200)]
rtpqdm2depay,rtpsv3vdepay: Add debugging category.
Edward Hervey [Mon, 3 Aug 2009 19:22:48 +0000 (21:22 +0200)]
rtpqdm2depay: Handle gaps in incoming packets.
Whenever we see a gap, we flush the temporary packets (but not the adapter). If we
had some data temporarily stored it will be outputted (the sound will sound a bit
garbled... but that's how it sounds on MacOSX :)
Edward Hervey [Mon, 3 Aug 2009 17:01:07 +0000 (19:01 +0200)]
rtpqdmdepay: Fix CRC calculation and remove commented code.
Edward Hervey [Sun, 2 Aug 2009 11:42:12 +0000 (13:42 +0200)]
rtp: New QDM2 rtp depayloader.
Reverse-engineered by comparing:
* A rtp hinted file provided by DarwinStreamingServer
* The output procued by DSS for that same file
Also used various streaming sources available on the internet to fine-tune
the code.
The header/codec_data extraction methods are from FFMpeg (LGPL).
Edward Hervey [Mon, 3 Aug 2009 19:24:44 +0000 (21:24 +0200)]
rtpsv3vdepay: Properly fill codec_data and cleanup code a bite more.
Edward Hervey [Mon, 3 Aug 2009 17:02:17 +0000 (19:02 +0200)]
rtpsv3vdepay: Only output buffers once we're configured.
Edward Hervey [Mon, 3 Aug 2009 17:02:00 +0000 (19:02 +0200)]
rtpsv3vdepay: Add more encoding-name variants
Sebastian Dröge [Mon, 3 Aug 2009 18:08:33 +0000 (20:08 +0200)]
flvmux: Fix unit test to correctly handle request pads
Request pads are removed by the element instance in PAUSED->READY
so we need to re-request pads for every run and link them again.
Last fix for bug #590447.
Sebastian Dröge [Mon, 3 Aug 2009 18:08:00 +0000 (20:08 +0200)]
flvmux: Fix writing of the index for < 128 buffers
Partially fixes bug #590447.
Sebastian Dröge [Mon, 3 Aug 2009 18:07:00 +0000 (20:07 +0200)]
flvmux: Fix resetting of the element
Reset the have_video/have_audio flags and make sure to
properly release the request pads.
Partially fixes bug #590447.
Wim Taymans [Mon, 3 Aug 2009 16:13:46 +0000 (18:13 +0200)]
rtspsrc: don't add non-utf8 chars to structures
Luc Deschenaux [Mon, 3 Aug 2009 16:02:31 +0000 (18:02 +0200)]
jpegdepay: use attributes for extra properties
Use some of the SDP attributes when they are present to specify the output
dimension and framerate. This allows us to receive jpeg frames larger than
2040 width/height.
Fixes #564437
Wim Taymans [Mon, 3 Aug 2009 16:01:27 +0000 (18:01 +0200)]
RTP docs: update with attributes in caps
Luc Deschenaux [Mon, 3 Aug 2009 15:21:44 +0000 (17:21 +0200)]
rtspsrc: put all SDP attributes on caps
Put the SDP attributes on the caps too so that they can be used by
depayloaders.
See #564437
Jonathan Tellier [Mon, 3 Aug 2009 11:32:12 +0000 (13:32 +0200)]
pulsesrc: initialize the probe with the server
When creating a new probe, pass the server instead of the device string.
fixes #590401
Tim-Philipp Müller [Sun, 2 Aug 2009 10:44:03 +0000 (11:44 +0100)]
multiudpsink: don't do things with side-effects inside g_return_val_if_fail()
Someone might compile this code with -DG_DISABLE_ASSERT some day.
Tim-Philipp Müller [Sat, 1 Aug 2009 20:39:30 +0000 (21:39 +0100)]
pulsesink: don't do logic within g_assert() statements
Otherwise that code will just be expanded to nothing when compiled
-DG_DISABLE_ASSERT (PS: why is mainloop_start() called in the init
function and not when changing state to READY?)
Tim-Philipp Müller [Sat, 1 Aug 2009 16:07:42 +0000 (17:07 +0100)]
flacdec: send newsegment event when operating push-based and unframed
For some reason flac doesn't call our metadata callback when we operate
in push mode with unframed input, but that's where we set up the
newsegment event (since that's where we'd get the duration from the
stream info header), so we didn't send a newsegment event at all in this
case. Hack around this by storing a generic newsegment event for now
which will be used if we don't replace it with a better one that
includes the duration.
Tim-Philipp Müller [Sat, 1 Aug 2009 15:48:36 +0000 (16:48 +0100)]
flacdec: small cleanups
Remove some callback indirections which are no longer needed because
there's only one decoder object type now. Also remove unused variable.
Tim-Philipp Müller [Sat, 1 Aug 2009 14:22:49 +0000 (15:22 +0100)]
flacdec: use gst_adapter_copy() to avoid unnecessary buffer merges
gst_adapter_peek() will merge buffers as needed, which we can avoid
here since we're doing a memcpy anyway and then flush the copied
data from the adapter right away.
Tim-Philipp Müller [Fri, 31 Jul 2009 23:00:41 +0000 (00:00 +0100)]
flacdec: repair some broken indenting
Tim-Philipp Müller [Sat, 1 Aug 2009 11:19:41 +0000 (12:19 +0100)]
checks: add basic unit test for flvmux, but disable it for now
Basic unit test for flvmux. Fails miserably, hence disabled for now.
Tim-Philipp Müller [Fri, 31 Jul 2009 22:28:12 +0000 (23:28 +0100)]
check: add basic unit test for flvdemux
In particular, test re-use of flvdemux in both pull and push mode
(see #583030).
Tim-Philipp Müller [Fri, 31 Jul 2009 19:25:17 +0000 (20:25 +0100)]
flvmux: fix invalid write caused by using sizeof("string") as length
sizeof("foo") includes the string's NUL-terminator in the size returned,
but we're writing strings here with an explicit size at the beginning
and no NUL-terminator. In most cases using sizeof("foo") as length in
memcpy is not harmful, but it is where the string goes right at the
end of our buffer to write, since we don't allocate space for that
NUL terminator.
Edward Hervey [Mon, 27 Jul 2009 16:44:45 +0000 (18:44 +0200)]
soup: Use "GET" instead of SOUP_METHOD_GET. Fixes build with libsoup-2.7.*
This is due to a quality API change in libsoup 2.7. SOUP_METHOD_* are now
integers and not strings... they could have changed the names.
Stefan Kost [Thu, 30 Jul 2009 14:57:53 +0000 (17:57 +0300)]
jpeg: use longer macro names to not clash with some stupid windows defines
libjpeg headers pull some windows system inlcudes (on windows) that contain a
define for DEFAULT_QUALITY.
Sebastian Dröge [Wed, 29 Jul 2009 12:31:48 +0000 (14:31 +0200)]
avidemux: Fix last commit and improve readability
Руслан Ижбулатов [Fri, 24 Jul 2009 15:04:31 +0000 (19:04 +0400)]
Fixed the fix for TIME->DEFAULT conversion.
Fixes bug #578052 again.
Edward Hervey [Wed, 29 Jul 2009 11:38:03 +0000 (13:38 +0200)]
rtpsv3depay: Fix width/height calculation, bring up to marginal rank.
Based on documentation found on http://wiki.multimedia.cx/
Wim Taymans [Wed, 29 Jul 2009 10:13:20 +0000 (12:13 +0200)]
pulse: conditionally compile newer stuff
configured_sink/source_usec in the timing_info is only since 0.9.11 so
conditionally compile this information.
fixes #590038
Wim Taymans [Tue, 28 Jul 2009 16:29:07 +0000 (18:29 +0200)]
pulsesrc: cleanups
Keep track of the paused state of the source and leave the read function when
paused.
don't wait for a latency update when the delay is not yet known but simply
return 0 instead of blocking.
Keep track of the corked state of the stream.
Fix the state changes.
Wim Taymans [Tue, 28 Jul 2009 14:11:18 +0000 (16:11 +0200)]
pulsesrc: set maxlength always to -1
Wim Taymans [Tue, 28 Jul 2009 13:53:57 +0000 (15:53 +0200)]
pulsesrc; cleanups, report real latency
Add some more debug info
Avoid some type casts
Report the real latency to the application.
Mark Nauwelaerts [Tue, 28 Jul 2009 14:11:36 +0000 (16:11 +0200)]
jpegdec: when scanning for 0xff marker ends, ensure desired result
Otherwise, any non 0xff byte at end of data would be mistaken for
a tag byte, and in case of a frame_len 0 tag subsequently lead to an
infinite loop.
Thiago Santos [Tue, 28 Jul 2009 03:30:43 +0000 (00:30 -0300)]
avimux: adds support to wma
Thiago Santos [Tue, 28 Jul 2009 03:07:15 +0000 (00:07 -0300)]
avimux: adds support to wmv
Thiago Santos [Tue, 28 Jul 2009 00:34:22 +0000 (21:34 -0300)]
qtdemux: Downgrade warning message to debug
Wim Taymans [Mon, 27 Jul 2009 09:51:39 +0000 (11:51 +0200)]
pulsesink: avoid using ivalid stream indexes
when we get an invalid stream index from pulse because we were just starting,
avoid using it for getting and setting the volume.
Fixes #589365
Sebastian Dröge [Fri, 24 Jul 2009 17:38:07 +0000 (19:38 +0200)]
effectv: Don't allow caps changes for some effectv filters
These filters use information from previous frames to
generate the current frame and a caps change will make
the effect start from the beginning again.
Sebastian Dröge [Fri, 24 Jul 2009 17:37:09 +0000 (19:37 +0200)]
warptv: Make the sine table global instead of having it in every instance
Stefan Kost [Fri, 24 Jul 2009 07:47:44 +0000 (10:47 +0300)]
jpeg: make encoder work with libjpeg v7
We have to specify do_fancy_downsampling = FALSE in the encoder with did not exist before.
Stefan Kost [Thu, 23 Jul 2009 21:42:33 +0000 (00:42 +0300)]
Automatic update of common submodule
From fedaaee to 94f95e3
Sebastian Dröge [Thu, 23 Jul 2009 10:06:27 +0000 (12:06 +0200)]
flacdec: Implement SEEKING query
Fixes bug #589423.
Colin Guthrie [Wed, 22 Jul 2009 10:16:06 +0000 (11:16 +0100)]
pulsesink: Fix a couple error messages that mentioned incorrect function names.
Fixes #589459.
Sebastian Dröge [Thu, 23 Jul 2009 09:50:16 +0000 (11:50 +0200)]
flvdemux: Implement SEEKING query
Also add some more query types to the answer of the query type function.
Fixes bug #589424.
Tim-Philipp Müller [Tue, 21 Jul 2009 18:46:55 +0000 (19:46 +0100)]
flacdec: fix intermittent FLAC__STREAM_DECODER_ABORTED errors when seeking
When seeking in a local flac file (ie. operating pull-based), the decoder
would often just error out after the loop function sees a DECODER_ABORTED
status. This, however, is the read callback's way of telling our loop
function that pull_range failed and streaming should stop, in this case
because of the flush-start event that the seek handler pushed upstream
from the seeking thread. Handle this slightly better by storing the last
flow return from pull_range, so the loop function can evaluate it properly
when it encounters a DECODER_ABORTED and take the right action.
Fixes #578612.
Stefan Kost [Tue, 21 Jul 2009 07:07:00 +0000 (10:07 +0300)]
interleave: fix indenting and upgrade two debugs to warnings.
Fix newlines in variable decls. Change two debugs to become warnings as they
indicate that things will not work.
Stefan Kost [Tue, 21 Jul 2009 07:04:36 +0000 (10:04 +0300)]
jpeg: code cleanups for encoder
Remove some disabled code in encoder. Try #if 0'ed code and add comments about
why it is disabled. Move idct-method enum to jpeg.c and use in both encoder and
decoder. Add idct-method property to encoder.
Sebastian Dröge [Tue, 21 Jul 2009 05:50:46 +0000 (07:50 +0200)]
matroskademux: Answer SEEKING queries in the original format
Josep Torra [Mon, 20 Jul 2009 23:12:44 +0000 (01:12 +0200)]
udputils: initialize struct content with 0.
Fixes some random crashes.
Wim Taymans [Mon, 20 Jul 2009 17:09:19 +0000 (19:09 +0200)]
pulsesink: set some values to their defaults
Set the minreq and maxlength buffer attributes to -1 to let puleseaudio select a
sensible value.
Wim Taymans [Mon, 20 Jul 2009 17:04:09 +0000 (19:04 +0200)]
pulsesink: don't wait for posted message
We can't wait for the ENTER/LEAVE messages to be be posted because the base
class sometimes calls the start method with the object lock, which would block
the message posting.
Instead, just assume that the message will be posted soon and continue. We'll
have to fix this in the base class.
Wim Taymans [Mon, 20 Jul 2009 16:11:33 +0000 (18:11 +0200)]
pulsesink: use relative seeks
Use relative seeks because I was told that absolute seeks don't work.
Sebastian Dröge [Mon, 20 Jul 2009 14:52:19 +0000 (16:52 +0200)]
matroskademux: Implement SEEKING query
Sebastian Dröge [Mon, 20 Jul 2009 06:07:13 +0000 (08:07 +0200)]
cairorender: Add support for ARGB/BGRA input
Note that videotestsrc outputs 100% transparent video
which will result in white output from cairorender.
Elaine Xiong [Fri, 17 Jul 2009 12:22:57 +0000 (13:22 +0100)]
v4l2: Fix v4l2src on OpenSolaris
The v4l2 driver for USB webcams on OpenSolaris does not support select()
calls. Detect when select() fails, and skip polling the device afterward,
which restores the pre 0.10.14 behaviour on OpenSolaris.
Signed-off-by: Jan Schmidt <thaytan@noraisin.net>
Jan Schmidt [Fri, 17 Jul 2009 10:22:06 +0000 (11:22 +0100)]
gitignore: Ignore some new binaries
Sebastian Dröge [Fri, 17 Jul 2009 11:49:21 +0000 (13:49 +0200)]
cairorender: Add to the documentation
Sebastian Dröge [Fri, 17 Jul 2009 11:42:49 +0000 (13:42 +0200)]
cairorender: Return not-negotiated if we have no caps
Sebastian Dröge [Fri, 17 Jul 2009 11:41:19 +0000 (13:41 +0200)]
cairorender: Fix caps and colorspace handling
Sebastian Dröge [Fri, 17 Jul 2009 11:30:02 +0000 (13:30 +0200)]
cairorender: Use correct mimetypes for PDF and SVG
Sebastian Dröge [Fri, 17 Jul 2009 11:24:28 +0000 (13:24 +0200)]
cairorender: Remove pull mode, it only adds complexity but not advantages
Sebastian Dröge [Thu, 16 Jul 2009 19:55:31 +0000 (21:55 +0200)]
cairorender: Fix caps negotiation and cairo surface creation
Sebastian Dröge [Thu, 16 Jul 2009 19:42:21 +0000 (21:42 +0200)]
cairorender: Correctly set srccaps
Sebastian Dröge [Thu, 16 Jul 2009 19:31:43 +0000 (21:31 +0200)]
cairorender: Move instance/class struct definitions to the header
Sebastian Dröge [Thu, 16 Jul 2009 19:30:00 +0000 (21:30 +0200)]
cairorender: Add Lutz' copyright to the file header
Lutz Mueller [Thu, 16 Jul 2009 19:27:45 +0000 (21:27 +0200)]
cairo: Add cairo-based PDF/PS/SVG encoder element
Fixes bug #331420.
Sebastian Dröge [Thu, 16 Jul 2009 18:44:40 +0000 (20:44 +0200)]
flacenc: Optionally write a PADDING block
The size of the PADDING block is specified by a new
"padding" property.
Fixes bug #588483.
Sebastian Dröge [Thu, 16 Jul 2009 17:35:44 +0000 (19:35 +0200)]
souphttpsrc: Only assume seekability if the server provides Content-Length
Previously seekability way always assumed until the first seek actually
failed. Now we assume that all servers are not seekable unless they provide
a Content-Length header. If a seek fails after that we continue to
assume no seekability. Fixes bug #585576.
Arnout Vandecappelle [Thu, 16 Jul 2009 13:14:43 +0000 (15:14 +0200)]
souphttpsrc: don't try to authenticate if no username/password is set.
Sebastian Dröge [Thu, 16 Jul 2009 15:10:21 +0000 (17:10 +0200)]
effectv: Chain up finalize to the parent class in warptv
Fixes a memory leak.
Sebastian Dröge [Thu, 16 Jul 2009 10:55:49 +0000 (12:55 +0200)]
effectv: Add unit test for all effectv elements
Sebastian Dröge [Thu, 16 Jul 2009 10:17:32 +0000 (12:17 +0200)]
effectv: Add new effectv elements to the docs
Sebastian Dröge [Wed, 15 Jul 2009 12:37:19 +0000 (14:37 +0200)]
effectv: Add rippletv element
This produces a water ripple effect on the video input,
based on motion or a rain drop algorithm.
Kindly relicensed to LGPL2+ by Kentaro Fukuchi <fukuchi@megaui.net>.
Fixes bug #588695.
Sebastian Dröge [Sun, 12 Jul 2009 13:42:35 +0000 (15:42 +0200)]
effectv: Add streaktv effect filter element
This combines the StreakTV and BaltanTV filters from the
effectv project.
Kindly relicensed to LGPL2+ by Kentaro Fukuchi <fukuchi@megaui.net>.
Fixes bug #588368.
Sebastian Dröge [Sun, 12 Jul 2009 10:31:15 +0000 (12:31 +0200)]
effectv: Fix processing on big endian architectures
Sebastian Dröge [Sun, 12 Jul 2009 09:52:04 +0000 (11:52 +0200)]
effectv: Add radioactv effect filter
This filter adds a radiation-like motion blur effect
to the video stream.
Kindly relicensed to LGPL2+ by Kentaro Fukuchi <fukuchi@megaui.net>.
Fixes bug #588359.
Sebastian Dröge [Sun, 12 Jul 2009 09:26:57 +0000 (11:26 +0200)]
effectv: Make the optv threshold property an uint
Sebastian Dröge [Sun, 12 Jul 2009 08:39:02 +0000 (10:39 +0200)]
effect: Add optv effect filter from the effectv project
This filter binarizes input frames and combines them with various
optical pattern.
Kindly relicensed to LGPL2+ by Kentaro Fukuchi <fukuchi@megaui.net>.
Fixes bug #588349.
Olivier Crête [Fri, 3 Jul 2009 09:11:26 +0000 (05:11 -0400)]
pulsesink: Emit stream-status leave message
Fixes #587695
Olivier Crête [Fri, 3 Jul 2009 09:06:45 +0000 (05:06 -0400)]
pulsesink: Emit stream-status enter message
Emit stream-status messages for the pulse thread.
Don't use our own GCond for signaling but simply use the pulse mainloop
mechanisms for synchronisation.
See #587695
Wim Taymans [Tue, 14 Jul 2009 16:15:59 +0000 (18:15 +0200)]
pulsesink: debug the latency update values
Wim Taymans [Tue, 14 Jul 2009 14:12:55 +0000 (16:12 +0200)]
pulsesink: add 24bit sample formats
Add check for pulseaudio 0.9.15 and enable 24bits samples in that case.
Olivier Crête [Mon, 13 Jul 2009 16:23:37 +0000 (12:23 -0400)]
Automatic update of common submodule
From 5845b63 to fedaaee
Marc Leeman [Mon, 13 Jul 2009 15:53:25 +0000 (17:53 +0200)]
mpvpay: Rework the timestamping
Rework the timestamping in the mpv payloader so that the timestamps are more
accurate.
Fixes #587680
Filippo Argiolas [Fri, 3 Jul 2009 06:47:12 +0000 (08:47 +0200)]
v4l2src: add a simple test case for device probing
Filippo Argiolas [Fri, 3 Jul 2009 06:38:43 +0000 (08:38 +0200)]
v4l2src: optional support for device probing with gudev
Enumerate v4l2 devices using gudev if available.
Fixes bug #583640.
Sebastian Dröge [Fri, 10 Jul 2009 17:54:25 +0000 (19:54 +0200)]
videomixer: Random cleanup
Sebastian Dröge [Fri, 10 Jul 2009 17:54:13 +0000 (19:54 +0200)]
videomixer: Send queries to the master pad by default instead of all pads
Sebastian Dröge [Fri, 10 Jul 2009 17:34:41 +0000 (19:34 +0200)]
videomixer: Add RGB, BGR, xRGB, RGBx, xBGR, BGRx support
Sebastian Dröge [Fri, 10 Jul 2009 15:43:07 +0000 (17:43 +0200)]
videomixer: Clean up debugging a bit
Sebastian Dröge [Fri, 10 Jul 2009 15:25:48 +0000 (17:25 +0200)]
videomixer: Remove some redundant checks and error out immediately if not negotiated
Also stop leaking the output buffer in some error cases.
Sebastian Dröge [Fri, 10 Jul 2009 15:23:03 +0000 (17:23 +0200)]
videomixer: Remove the calculate_frame_size() function and use libgstvideo instead
Edward Hervey [Tue, 30 Jun 2009 13:13:44 +0000 (15:13 +0200)]
videomixer: Remove unused link/unlink pad methods
Edward Hervey [Tue, 30 Jun 2009 10:43:04 +0000 (12:43 +0200)]
videomixer: I420 mode: Add fast path for 0.0 and 1.0 alpha
If the source alpha is 0.0, we take nothing.
If the source alpha is 1.0, we overwrite everything.
Edward Hervey [Tue, 30 Jun 2009 10:40:02 +0000 (12:40 +0200)]
videomixer: I420 blending : Fix main algorithm.
When blending a source layer with an alpha of 'a' on top of another
destination layer we take the sum of:
* 'a' percent of the source layer
* (100 - 'a') percent of the destination layer (the remainder)
Edward Hervey [Tue, 30 Jun 2009 10:39:19 +0000 (12:39 +0200)]
videomixer: Make debugging category global to all the code.
Edward Hervey [Mon, 29 Jun 2009 17:23:41 +0000 (19:23 +0200)]
videomixer: improve readability of debugging statements.
Mark Nauwelaerts [Wed, 8 Jul 2009 11:38:53 +0000 (13:38 +0200)]
rtspsrc: do not leak timeout message
Sebastian Dröge [Thu, 9 Jul 2009 05:14:23 +0000 (07:14 +0200)]
avi: Don't forward NEWSEGMENT events from upstream
New ones are generated later and simply forwarding them can
result in NEWSEGMENT events of different format going downstream.
Fixes bug #587983.