Stefan Kost [Thu, 9 Sep 2010 18:42:46 +0000 (21:42 +0300)]
aasink: fix context initialisation and freeing to not leak
Stefan Kost [Thu, 9 Sep 2010 18:40:51 +0000 (21:40 +0300)]
tests: allow running state tests for all elements
Now one can use GST_NO_STATE_IGNORE_ELEMENTS=1 make generic/states.check
to try elements that would normaly be skipped.
Wim Taymans [Thu, 9 Sep 2010 16:47:56 +0000 (18:47 +0200)]
tests: fix rtpjpegpay test
Make the data we send to the jpeg payloader be a valid jpeg file because the
payloader now expects this.
Wim Taymans [Thu, 9 Sep 2010 16:47:11 +0000 (18:47 +0200)]
rtpjpegpay: improve debugging
Mark Nauwelaerts [Thu, 9 Sep 2010 14:31:56 +0000 (16:31 +0200)]
rtpmparobustdepay: use valid bitrate for dummy frame
Thiago Santos [Wed, 8 Sep 2010 20:07:53 +0000 (17:07 -0300)]
id3v2mux: Adds mapping for album artist
Maps GST_TAG_ALBUM_ARTIST to TPE2 in id3v2mux
Sebastian Dröge [Wed, 8 Sep 2010 16:35:08 +0000 (18:35 +0200)]
configure: Require orc 0.4.8
The deinterlace plugin apparently fails to compile with older versions.
Mark Nauwelaerts [Wed, 8 Sep 2010 15:50:11 +0000 (17:50 +0200)]
matroskademux: QoS handling logic only applies to forward playback
Fixes #628894.
Stefan Kost [Wed, 8 Sep 2010 14:43:47 +0000 (17:43 +0300)]
pulsesink: remove unused code
Stefan Kost [Wed, 8 Sep 2010 11:36:48 +0000 (14:36 +0300)]
pulsesink: fixup last commit
We need to prevent the eventual leak better.
Stefan Kost [Wed, 8 Sep 2010 11:16:58 +0000 (14:16 +0300)]
pulsesink: code cleanups
Use g_slist_prepend as we don't care about the order. Check for list == NULL
instead of iterating the list to see if it is empty. Move ctx allocation down
to prevent leak in case of failure.
Sebastian Dröge [Wed, 8 Sep 2010 05:13:42 +0000 (07:13 +0200)]
rtpjpegpay: Fix uninitialized variable compiler warning
Fixes bug #629018.
Wim Taymans [Tue, 7 Sep 2010 17:02:01 +0000 (19:02 +0200)]
pulsesink: simplify clock provide code
Don't leak the pulsesink element by having the clock keep a ref to the sink.
Create the clock only once in the constructor and use the baseaudiosink clock
cleanup code.
Stefan Kost [Tue, 7 Sep 2010 14:49:05 +0000 (17:49 +0300)]
pulsesink: move the context table init to _get_type phase
This seems to fix the invalid reads on context shutdown better, altough
I can't really explain.
Wim Taymans [Tue, 7 Sep 2010 15:06:02 +0000 (17:06 +0200)]
qtdemux: use older g_array_free
g_array_unref() is only since 2.22
Wim Taymans [Tue, 7 Sep 2010 14:49:16 +0000 (16:49 +0200)]
jpegdec: avoid invalid adapter flush on QoS
First store the available data in the adapter in the rem_img_len instance field
before trying to flush the adapter with that value on QoS.
Wim Taymans [Tue, 7 Sep 2010 14:40:08 +0000 (16:40 +0200)]
rtpjpegpay: do some more sanitity checks
Protect some more against invalid input.
American Dynamics [Tue, 7 Sep 2010 13:20:12 +0000 (15:20 +0200)]
jpegpay: handle corrupted jpeg better
Protect against corrupted jpeg input.
Wim Taymans [Tue, 7 Sep 2010 11:55:04 +0000 (13:55 +0200)]
rvawdepay: cleanup unused fields
Wim Taymans [Tue, 7 Sep 2010 11:51:37 +0000 (13:51 +0200)]
vrawdepay: handle invalid payload better
Make sure we don't read more data than available in the input buffer.
Clip the input data into the output buffer.
Stefan Kost [Mon, 16 Aug 2010 12:35:51 +0000 (15:35 +0300)]
pulse: allow setting stream properties
Add a "properties" property to the elements to allow setting extra stream
properties.
Fixes #537544
Tim-Philipp Müller [Tue, 7 Sep 2010 11:08:10 +0000 (12:08 +0100)]
docs: remove introspection info for gdkpixbuf3 plugin and update version for others
The versions got accidentally reverted to a pre-release version, fix that.
Tim-Philipp Müller [Tue, 7 Sep 2010 10:42:10 +0000 (11:42 +0100)]
Automatic update of common submodule
From c2e10bf to aa0d1d0
Tim-Philipp Müller [Tue, 7 Sep 2010 08:20:03 +0000 (09:20 +0100)]
cmmldec: fix flow return handling
Fix buggy GST_FLOW_IS_FATAL substitution, and 'make check':
- if (!GST_FLOW_IS_FATAL (dec->flow_return) && !dec->sent_root) {
+ if (dec->flow_return != GST_FLOW_OK && !dec->sent_root) {
Stefan Kost [Mon, 6 Sep 2010 21:27:07 +0000 (00:27 +0300)]
pulsesink: don't free the context multiple times
Apparently the close function of the ring-buffer can be called multiple times.
Stefan Kost [Thu, 12 Aug 2010 09:33:06 +0000 (12:33 +0300)]
rtpmp4adepay: grab the sampling arte and put into caps
This is needed to be able to mux the received audio into mp4 (in the case of
aac). Fixes #625825.
Tim-Philipp Müller [Mon, 6 Sep 2010 13:40:02 +0000 (14:40 +0100)]
rtp: mark constant tables as const
Mark Nauwelaerts [Wed, 18 Aug 2010 12:40:48 +0000 (14:40 +0200)]
rtpamrpay: properly support perfect-rtptime
Mark Nauwelaerts [Wed, 18 Aug 2010 09:42:33 +0000 (11:42 +0200)]
rtpamrpay: proper duration for multiple frame payload
Mark Nauwelaerts [Wed, 18 Aug 2010 09:42:07 +0000 (11:42 +0200)]
rtpamr(de)pay: support AMR-WB SID frame
Mark Nauwelaerts [Wed, 18 Aug 2010 09:39:06 +0000 (11:39 +0200)]
rtpg729pay: properly support perfect-rtptime
Mark Nauwelaerts [Mon, 16 Aug 2010 14:08:04 +0000 (16:08 +0200)]
qtdemux: improve framerate determining
Collect a limited number of starting sample durations and use the median of
those to determine caps framerate.
Mark Nauwelaerts [Tue, 17 Aug 2010 10:08:10 +0000 (12:08 +0200)]
matroskademux: attempt more resync upon (cluster) parse error
That is, if parse error occurs in state requiring to move to next cluster,
and doing so to the expected next position of cluster fails, then scan for a
next cluster from present position and resume from there.
Fixes #620790.
Mark Nauwelaerts [Mon, 16 Aug 2010 14:05:41 +0000 (16:05 +0200)]
matroskademux: not so fatal error handling
If some bits out of place in block(group) parsing, forego and move to next.
Also skip large blocks in pull mode, but need to give up in push mode.
Fixes #626463.
Improves #620790.
Mark Nauwelaerts [Mon, 26 Jul 2010 13:51:49 +0000 (15:51 +0200)]
matroskademux: additional parse recovery
In particular, upon parse failure in one cluster, we may forego remaining
content and try resuming from next cluster onwards.
Fixes #620790.
American Dynamics [Mon, 6 Sep 2010 10:22:11 +0000 (12:22 +0200)]
rtspsrc: Add property to configure udpsrc buffer size
Add a new udp-buffer-size property to configure the buffer-size on the udpsrc
elements.
Fixes #628058
Wim Taymans [Fri, 27 Aug 2010 15:58:47 +0000 (17:58 +0200)]
rtpbin: add ntp-sync property
Add an ntp-sync property that will sync the received streams to the server
NTP time. This requires synchronized NTP times between the sender and receivers,
like with ntpd.
Based on patch from Thijs Vermeir.
Fixes #627796
Wim Taymans [Fri, 27 Aug 2010 10:14:25 +0000 (12:14 +0200)]
jitterbuffer: rename a variable to avoid confusion
Wim Taymans [Fri, 27 Aug 2010 09:07:34 +0000 (11:07 +0200)]
rtpbin: rename some variables for less confusion
Wim Taymans [Fri, 27 Aug 2010 08:41:01 +0000 (10:41 +0200)]
rtpjitterbuffer: move comment where it belongs
Wim Taymans [Thu, 26 Aug 2010 14:00:38 +0000 (16:00 +0200)]
session: minor cleanups
Make clock snapshots more accurate by only sampling the same clock once.
Thijs Vermeir [Thu, 26 Aug 2010 08:58:26 +0000 (10:58 +0200)]
rtpbin: add use-pipeline-clock property
With this property RTCP SR NTP times can be based
on the system clock (maybe synced with ntpd) or the
current pipeline clock.
https://bugzilla.gnome.org/show_bug.cgi?id=627796
Wim Taymans [Wed, 25 Aug 2010 07:58:20 +0000 (09:58 +0200)]
rtspext: stop configuration on first failure
Stop the configuration of a stream as soon as some of the extensions return
FALSE.
Fixes #581294
Wim Taymans [Fri, 20 Aug 2010 13:35:27 +0000 (15:35 +0200)]
multifdsink: use refcount to count host/port duplicates
Instead of adding multiple client structures for the same host/port pair, use a
refcount.
Add a send-duplicates feature that allows you to disable sending multiple copies
of the same packet to the same host when it was added multiple times. The
send-duplicates property is by default set to TRUE for backwards compatibility
although it is very likely that this is not desired behaviour.
Wim Taymans [Thu, 19 Aug 2010 15:06:26 +0000 (17:06 +0200)]
rtspsrc: implement custom event handler
Extend the _push_event() function so that it can also send events to the udp
sources when asked.
Implement a custum send_event function that correctly dispatches the downstream
events in TCP mode. This fixes sending EOS to rtspsrc and have it push the EOS
downstream.
Wim Taymans [Thu, 19 Aug 2010 09:37:04 +0000 (11:37 +0200)]
pulsesrc: use _get_caps_reffed() when we can
Use _get_caps_reffed()
Add some more debug when opening the server connection.
Wim Taymans [Mon, 16 Aug 2010 09:29:07 +0000 (11:29 +0200)]
jpegdepay: handle DISCONT and reset state
Put a DISCONT event on the next output buffer when the input buffer had a
DISCONT.
Make sure we clear our adapter and reset our state before going to PAUSED.
Free the qtables.
Fixes #626869
Wim Taymans [Mon, 16 Aug 2010 09:27:53 +0000 (11:27 +0200)]
g729pay: extend from right parent
Stefan Kost [Mon, 6 Sep 2010 06:57:10 +0000 (09:57 +0300)]
pulsesink: add since docs for new property.
Stefan Kost [Mon, 30 Aug 2010 13:45:48 +0000 (16:45 +0300)]
qtdemux: use GST_BOILERPLATE macro
Stefan Kost [Mon, 16 Aug 2010 14:23:58 +0000 (17:23 +0300)]
videmixer: add a example showing how to use the child properties
Show how to position and set the alpho of the videos on gst-launch.
Stefan Kost [Mon, 16 Aug 2010 12:19:38 +0000 (15:19 +0300)]
pulsesrc: move the property-setter to the getter.
Stefan Kost [Wed, 11 Aug 2010 12:48:18 +0000 (15:48 +0300)]
spectrum only aggregate magnitude/phase if user asks for it
Stefan Kost [Wed, 11 Aug 2010 12:45:56 +0000 (15:45 +0300)]
spectrum: improve performance with local vars
Use 'input' instead of 'spectrum->input' which was intende already (variable
exists, but not used everywhere). Also use a local version of
'spectrum->input_pos'.
Stefan Kost [Wed, 11 Aug 2010 12:44:03 +0000 (15:44 +0300)]
spectrum: code cleanup
More comments and logging. Extract one complex condition to a variable. Reorder
some code for readability.
Stefan Kost [Wed, 11 Aug 2010 12:40:09 +0000 (15:40 +0300)]
spectrum: improve property setter
consistently only update if the property actualy changed the value. Do it
without reading the gvalue twice. No need to reset the spectrum analyzer for
threshold changes.
Stefan Kost [Wed, 11 Aug 2010 12:38:24 +0000 (15:38 +0300)]
spectrum: add helper to only flush ringbuffer data without resetting the fft
Reduces some duplicated code as well.
Stefan Kost [Wed, 11 Aug 2010 09:45:53 +0000 (12:45 +0300)]
spectrum: more comments
David Schleef [Mon, 6 Sep 2010 05:22:42 +0000 (22:22 -0700)]
deinterlace: Document methods with bad quality
David Schleef [Mon, 6 Sep 2010 05:19:56 +0000 (22:19 -0700)]
deinterlace: initialize all deinterlace class members
This fixes UYVY deinterlacing.
David Schleef [Mon, 6 Sep 2010 01:58:13 +0000 (18:58 -0700)]
Automatic update of common submodule
From d3d9acf to c2e10bf
David Schleef [Mon, 6 Sep 2010 01:45:21 +0000 (18:45 -0700)]
videomixer: orc_init() doesn't need to be called
There's no need to call orc_init() unless you're using the Orc
API directly. All code created by orcc is guaranteed to work
without calling orc_init().
David Schleef [Mon, 6 Sep 2010 01:40:48 +0000 (18:40 -0700)]
deinterlace: Fix greedyl Orc implementation
To agree with the previous C/asm code.
Thiago Santos [Mon, 6 Sep 2010 01:31:34 +0000 (22:31 -0300)]
videomixer2: Fail when caps are incompatible
Do not forget to return false when caps are incompatible.
Thiago Santos [Sun, 5 Sep 2010 23:56:52 +0000 (20:56 -0300)]
videomixer: Only init orc if it is available
Put some ifdef around orc_init to prevent build errors
Sebastian Dröge [Sun, 5 Sep 2010 10:17:08 +0000 (12:17 +0200)]
Automatic update of common submodule
From ec60217 to d3d9acf
David Schleef [Sat, 4 Sep 2010 19:46:31 +0000 (12:46 -0700)]
deinterlace: Update disted Orc files
David Schleef [Mon, 29 Jun 2009 18:43:07 +0000 (11:43 -0700)]
v4l2src: add decimate property
David Schleef [Fri, 4 Jun 2010 19:09:23 +0000 (12:09 -0700)]
dvdemux: Parse SMPTE time codes
David Schleef [Mon, 23 Aug 2010 09:50:36 +0000 (02:50 -0700)]
deinterlace: remove assembly code in favor of orc
David Schleef [Tue, 8 Jun 2010 21:54:49 +0000 (14:54 -0700)]
deinterlace: implement greedy in Orc
David Schleef [Sat, 4 Sep 2010 18:43:21 +0000 (11:43 -0700)]
update disted Orc files
Thibault Saunier [Thu, 2 Sep 2010 12:34:50 +0000 (14:34 +0200)]
alphacolor: Fix classification
This is no effect but a converter. Fixes bug #628608.
Sebastian Dröge [Thu, 2 Sep 2010 09:19:06 +0000 (11:19 +0200)]
videomixer2: Add documentation and add to the docs
Sebastian Dröge [Mon, 26 Jul 2010 14:07:15 +0000 (16:07 +0200)]
videomixer2: Add videomixer2 element
This is based on collectpads2 and is synchronizing
all streams based on the running time.
New features compared to old videomixer:
* Synchronizing frames on the running time
* Improved and simplified negotiation
* Full QoS support
* Variable framerate support
Fixes bug #626048, #624905.
Pavel Kostyuchenko [Wed, 1 Sep 2010 09:11:34 +0000 (11:11 +0200)]
matroskademux: Relax parsing of date tags
Before we required a complete date in matroskademux but in
id3demux for example only the year or year and month was possible too.
Fixes bug #628454.
Sjoerd Simons [Mon, 30 Aug 2010 18:03:52 +0000 (19:03 +0100)]
v4l2src: Use GstBaseSrc::block-size as fallback size
Sjoerd Simons [Mon, 30 Aug 2010 17:36:54 +0000 (18:36 +0100)]
v4l2src: Fix using mpegts via the mmap interface
MPEG doesn't have a static size per frame, so don't pretend it has one
and fail when capturing because it doesn't match. Instead mark the size
as unknown and let the read frame grabbing method use a reasonable fallback
value (assuming that's only for actual streaming formats)
Fixes bug #628349.
Sebastian Dröge [Fri, 27 Aug 2010 16:15:03 +0000 (18:15 +0200)]
wavpackparse: Don't use GST_FLOW_IS_FATAL()
Sebastian Dröge [Fri, 27 Aug 2010 16:13:21 +0000 (18:13 +0200)]
pngdec: Don't use GST_FLOW_IS_FATAL()
And don't post an error message if downstream returns UNEXPECTED.
Sebastian Dröge [Fri, 27 Aug 2010 16:09:11 +0000 (18:09 +0200)]
dvdemux: Don't use GST_FLOW_IS_FATAL()
Sebastian Dröge [Fri, 27 Aug 2010 16:05:50 +0000 (18:05 +0200)]
jpegdec: Don't use GST_FLOW_IS_FATAL()
And don't post an error message if buffer allocation failed because
of UNEXPECTED, which only means that downstream wants us to EOS now.
Sebastian Dröge [Fri, 27 Aug 2010 16:02:57 +0000 (18:02 +0200)]
flacenc/dec: Don't use GST_FLOW_IS_FATAL()
And properly handle UNEXPECTED and WRONG_STATE.
Sebastian Dröge [Fri, 27 Aug 2010 15:52:18 +0000 (17:52 +0200)]
cmmldec/enc: Don't use GST_FLOW_IS_FATAL()
And as a result, don't ignore WRONG_STATE and NOT_LINKED.
Both mean that it's a good idea to pass them upstream instead
of pretending that everything is good.
Sebastian Dröge [Fri, 27 Aug 2010 15:47:22 +0000 (17:47 +0200)]
wavparse: Don't use GST_FLOW_IS_FATAL()
Sebastian Dröge [Fri, 27 Aug 2010 15:45:53 +0000 (17:45 +0200)]
rtspsrc: Don't use GST_FLOW_IS_FATAL() and GST_FLOW_IS_SUCCESS()
Sebastian Dröge [Fri, 27 Aug 2010 15:39:32 +0000 (17:39 +0200)]
qtdemux: Don't use GST_FLOW_IS_FATAL()
Sebastian Dröge [Fri, 27 Aug 2010 15:37:33 +0000 (17:37 +0200)]
matroskademux: Don't use GST_FLOW_IS_FATAL()
Sebastian Dröge [Fri, 27 Aug 2010 15:35:47 +0000 (17:35 +0200)]
rndbuffersize: Don't use GST_FLOW_IS_FATAL()
Sebastian Dröge [Fri, 27 Aug 2010 15:35:38 +0000 (17:35 +0200)]
flvdemux: Don't use GST_FLOW_IS_FATAL()
Sebastian Dröge [Fri, 27 Aug 2010 15:32:09 +0000 (17:32 +0200)]
avidemux: Don't use GST_FLOW_IS_FATAL()
And document why wrong-state doesn't need an error message.
Sebastian Dröge [Thu, 26 Aug 2010 11:44:49 +0000 (13:44 +0200)]
pulsesink: Fail gracefully if no threaded PA mainloop can be created
Fixes bug #628020.
Sebastian Dröge [Tue, 24 Aug 2010 13:11:20 +0000 (15:11 +0200)]
videomixer: Update disted ORC files
Sebastian Dröge [Mon, 23 Aug 2010 13:44:50 +0000 (15:44 +0200)]
videomixer: Optimize ARGB blending and implement BGRA blending with orc
This now means, that we have absolutely no handwritten assembly anymore
in videomixer and it's also faster now when using SSE.
David Schleef [Sun, 22 Aug 2010 08:58:05 +0000 (01:58 -0700)]
videomixer: Add orc implementation for blending
videomixer: Add orc implementation for blending
David Schleef [Sun, 22 Aug 2010 08:54:16 +0000 (01:54 -0700)]
videomixer: Fix example pipelines
videomixer: Fix example pipelines
Sebastian Dröge [Fri, 20 Aug 2010 09:41:55 +0000 (11:41 +0200)]
imagefreeze: Add test for checking if imagefreeze correctly returns UNEXPECTED after the first buffer
Sebastian Dröge [Fri, 20 Aug 2010 09:38:09 +0000 (11:38 +0200)]
imagefreeze: Add test for bufferalloc passthrough
Sebastian Dröge [Fri, 20 Aug 2010 08:35:15 +0000 (10:35 +0200)]
imagefreeze: Fix race conditions in the unit test
If setting the pipeline to PLAYING before issuing the seek, buffers
are already arriving at the sink before the seek is handled and
will have the wrong timestamps and everything.
Fixes bug #625547.
Sebastian Dröge [Fri, 20 Aug 2010 08:34:17 +0000 (10:34 +0200)]
imagefreeze: Fix another subtle race condition related to starting the srcpad task
Due to a seek the srcpad task could be started in rare circumstances although
it shouldn't be started anymore because no upstream buffer is available.