Wim Taymans [Wed, 3 Aug 2011 20:57:48 +0000 (22:57 +0200)]
fix compilation
hal elements were removed, remove them from docs too
change example for pad-block API (actually remove the pad block, an application
should not be bothered with working around bugs in elements)
Wim Taymans [Wed, 3 Aug 2011 16:37:27 +0000 (18:37 +0200)]
port to new API
Wim Taymans [Wed, 3 Aug 2011 16:25:30 +0000 (18:25 +0200)]
Merge branch 'master' into 0.11
Conflicts:
ext/pulse/pulsesink.c
ext/pulse/pulsesrc.c
gst/audioparsers/gstac3parse.c
gst/rtp/gstrtph264depay.c
gst/rtp/gstrtph264pay.c
gst/rtpmanager/gstrtpssrcdemux.c
Jan Schmidt [Wed, 3 Aug 2011 12:50:05 +0000 (22:50 +1000)]
matroska: Register new debug category
Register the matroskareadcommon debug category when the
plugin is loaded to avoid assertion output when debug is turned on.
Edward Hervey [Wed, 3 Aug 2011 11:38:01 +0000 (13:38 +0200)]
test/ickles: Port gdkpixbufsink test
Edward Hervey [Wed, 3 Aug 2011 11:33:59 +0000 (13:33 +0200)]
Revert "tests/check/Makefile.am: Disable autodetect test temporarily, so that the build bots update -bad and the ranks of unr..."
This reverts commit
475aed8af6d2a57c1d21490c824e754a6b2367a9.
It won't consider elements from anywhere else anymore
Edward Hervey [Wed, 3 Aug 2011 11:10:46 +0000 (13:10 +0200)]
check: Update parser mini-lib to 0.11 API
Edward Hervey [Wed, 3 Aug 2011 11:09:07 +0000 (13:09 +0200)]
po: update for modified source file location
Edward Hervey [Wed, 3 Aug 2011 11:08:43 +0000 (13:08 +0200)]
configure.ac: cairo_gobject isn't ported either
Sebastian Dröge [Wed, 3 Aug 2011 08:59:56 +0000 (10:59 +0200)]
hal: Remove hal plugin
hal is not developed anymore and nobody is using the plugin nowadays.
Philippe Normand [Fri, 29 Jul 2011 11:03:55 +0000 (13:03 +0200)]
qtdemux: soften assertion check on stream size
https://bugzilla.gnome.org/show_bug.cgi?id=655570
Robert Krakora [Wed, 3 Aug 2011 08:09:42 +0000 (10:09 +0200)]
rtpjpegpay: Add support for H.264 payload in MJPEG container
See http://www.quickcamteam.net/uvc-h264/USB_Video_Payload_H.264_0.87.pdf
Fixes bug #655530.
Tristan Matthews [Wed, 3 Aug 2011 02:05:08 +0000 (22:05 -0400)]
jackaudiosink: Don't call g_alloca() in process_cb
g_alloca() is not RT-safe, so instead we should allocate the
memory needed in advance. Fixes #655866
Sebastian Dröge [Wed, 3 Aug 2011 06:58:00 +0000 (08:58 +0200)]
configure: Add hal to the list of non-ported plugins
Sebastian Dröge [Wed, 3 Aug 2011 06:53:24 +0000 (08:53 +0200)]
configure: Add monoscope to the list of non-ported plugins
Sebastian Dröge [Wed, 3 Aug 2011 06:51:19 +0000 (08:51 +0200)]
effectv: Fix unused but set variable compiler warnings
Tim-Philipp Müller [Tue, 2 Aug 2011 22:42:58 +0000 (23:42 +0100)]
docs: fix two more Since: tags
Mart Raudsepp [Sun, 31 Jul 2011 01:19:00 +0000 (04:19 +0300)]
deinterlace: Fix Since tags for fieldanalysis related new properties
commit
c1b100cf9c is after 0.10.29 and 0.10.30 was a branched release.
So fix Since tags from 0.10.29 to 0.10.31 for the new properties.
Wim Taymans [Tue, 2 Aug 2011 09:51:45 +0000 (11:51 +0200)]
rtpvorbispay: fix porting error
Edward Hervey [Tue, 2 Aug 2011 09:29:40 +0000 (11:29 +0200)]
configure.ac: Define list of non-ported plugins
Edward Hervey [Tue, 2 Aug 2011 09:29:25 +0000 (11:29 +0200)]
Update common submodule
Edward Hervey [Tue, 2 Aug 2011 09:17:38 +0000 (11:17 +0200)]
configure.ac: Sort AG_GST_CHECK_PLUGIN alphabetically
Wim Taymans [Fri, 29 Jul 2011 15:27:07 +0000 (17:27 +0200)]
-good: fix for bufferpool API change
Wim Taymans [Fri, 29 Jul 2011 15:21:03 +0000 (17:21 +0200)]
v4l: change for new API
Tim-Philipp Müller [Fri, 29 Jul 2011 12:05:42 +0000 (13:05 +0100)]
pulsesink: fix variable-set-but-not-used compiler warning with older pulse versions
Mark Nauwelaerts [Fri, 29 Jul 2011 10:07:24 +0000 (12:07 +0200)]
rtpsession: properly init rtcp_min_interval
Arun Raghavan [Wed, 9 Mar 2011 05:34:36 +0000 (11:04 +0530)]
pulsesink: Add support for compressed formats
This adds support for various compressed formats (AC3, E-AC3, DTS and
MP3) payloaded in IEC 61937 format (used for transmission over S/PDIF,
HDMI and Bluetooth).
The acceptcaps() function allows bins to probe for what formats the sink
being connected to support. This only works after the element is set to
at least READY.
If the underlying sink changes and the format we are streaming is not
available, we emit a message that will allow upstream elements/bins to
block and renegotiate a new format.
Arun Raghavan [Tue, 1 Mar 2011 10:04:46 +0000 (15:34 +0530)]
pulsesink: Use the extended stream API if available
This uses the new extended API for creating streams. This will allow us
to support compressed formats natively in pulsesink as well.
Arun Raghavan [Thu, 28 Jul 2011 18:37:52 +0000 (00:07 +0530)]
pulsesrc: Add a source-output-index property
This exposes the source output index of the record stream that we open
so that clients can use this with the introspection if they want (to
move the stream, for example).
Mark Nauwelaerts [Thu, 28 Jul 2011 12:44:57 +0000 (14:44 +0200)]
rtpssrcdemux: keep a ref on the src pad while using it
Prevent a possible race if clear_ssrc() is called between getting the pad and
doing the push.
Based on patch by <olivier.crete@collabora.com>
https://bugzilla.gnome.org/show_bug.cgi?id=650916
Olivier Crête [Tue, 24 May 2011 08:29:57 +0000 (11:29 +0300)]
rtpssrcdemux: Make the pads lock recursive and hold it across the signal emit
We need to keep the lock held because we don't want a push before the "new-ssrc-pad"
handler has completed. But we may want to push an event from inside that handler, hence
the recursive mutex.
https://bugzilla.gnome.org/show_bug.cgi?id=650916
Olivier Crête [Tue, 24 May 2011 08:17:25 +0000 (11:17 +0300)]
rtpssrcdemux: Use PADs lock
https://bugzilla.gnome.org/show_bug.cgi?id=650916
Tim-Philipp Müller [Thu, 28 Jul 2011 10:09:08 +0000 (11:09 +0100)]
speex: update for position/query/convert API changes
Tim-Philipp Müller [Thu, 28 Jul 2011 09:54:38 +0000 (10:54 +0100)]
gst: udpate for position/duration/convert query API changes
Tim-Philipp Müller [Wed, 27 Jul 2011 23:37:13 +0000 (00:37 +0100)]
avidemux: fix compiler warning
gstavidemux.c: In function 'gst_avi_demux_parse_stream':
gstavidemux.c:1261:24: error: 'data' may be used uninitialized in this function [-Werror=uninitialized]
gstavidemux.c:1204:11: note: 'data' was declared here
Sjoerd Simons [Wed, 27 Jul 2011 17:15:20 +0000 (18:15 +0100)]
rtph264depay: Cope with FU-A E bit not being set
Some h264 payloaders are unfortunately buggy and don't correctly set the
E bit in FU-A NAL when they have ended. Work around this by assuming
such a fragmentation unit has ended when there was no packet loss and a
new NAL is started
Arun Raghavan [Tue, 12 Apr 2011 11:31:47 +0000 (17:01 +0530)]
ac3parse: Support switching alignment on-the-fly
This allows switching of alignment for E-AC3 streams at run-time. This
is requested by downstream elements via a custom event.
https://bugzilla.gnome.org/show_bug.cgi?id=650313
Wim Taymans [Wed, 27 Jul 2011 14:46:46 +0000 (16:46 +0200)]
v4l2: remove unused variables
Use the more specialized type for the bufferpool.
Use the size from the driver as the size of the image to read.
Don't configure the pool when created. This will be done in the setup_allocation
method later or by upstream for sinks.
Remove unused properties and variables. Bufferpool sizes are now configured in
the bufferpool by the elements in the pipeline. We might want to influence the
pool size later somehow.
Wim Taymans [Wed, 27 Jul 2011 11:46:09 +0000 (13:46 +0200)]
v4l2bufferpool: remove unused variable
Wim Taymans [Wed, 27 Jul 2011 11:43:08 +0000 (13:43 +0200)]
v4l2src: add metadata
Wim Taymans [Wed, 27 Jul 2011 11:41:28 +0000 (13:41 +0200)]
bufferpool: check for metadata
Only add video metadata when it was configured in the pool. Fail if there was no
video metadata configured and the strides are not the default ones.
Wim Taymans [Wed, 27 Jul 2011 11:42:21 +0000 (12:42 +0100)]
warp: add stride support
Wim Taymans [Wed, 27 Jul 2011 11:41:33 +0000 (12:41 +0100)]
v4l2: add colorspace to debug
Wim Taymans [Tue, 26 Jul 2011 15:45:01 +0000 (17:45 +0200)]
rtp: fix compilation
Wim Taymans [Tue, 26 Jul 2011 14:15:05 +0000 (16:15 +0200)]
v4l2: rename a variable
Rename the size variable to sizeimage and fill it with the size that has been
given to use by the v4l2 driver instead of making something up..
Wim Taymans [Tue, 26 Jul 2011 11:18:55 +0000 (13:18 +0200)]
v4l2: use new setup_allocation vmethod
Wim Taymans [Tue, 26 Jul 2011 09:56:07 +0000 (10:56 +0100)]
v4l2: implement more bits of RW I/O mode
Implement the relaese of RW buffers in the pool.
Warn for unsupported write() mode for sinks.
Wim Taymans [Tue, 26 Jul 2011 09:54:23 +0000 (10:54 +0100)]
v4l2: improve IO mode error handling
Error out when an unsupported IO mode was selected
Arun Raghavan [Sat, 9 Apr 2011 06:56:56 +0000 (12:26 +0530)]
ac3parse: Add support for IEC 61937 alignment
When pushing out buffers over S/PDIF or HDMI, IEC 61937 payloading
requires each buffer to contain 6 blocks from each substream. This adds
code to collect all the frames needed to meet this requirement before
pushing out a buffer.
https://bugzilla.gnome.org/show_bug.cgi?id=650313
Olivier Crête [Wed, 8 Jun 2011 19:57:37 +0000 (15:57 -0400)]
rtpsession: Always send application requested feedback in immediate mode
Send as many application requested feedback messages in immediate mode, even if they
have already been sent.
https://bugzilla.gnome.org/show_bug.cgi?id=654583
Olivier Crête [Wed, 8 Jun 2011 18:48:01 +0000 (14:48 -0400)]
rtpsession: Don't let the computed RTP bandwidth fall too low
If it falls too low, the computed RTCP bandwidth will be near zero and
the RTCP thread will be stopped.
https://bugzilla.gnome.org/show_bug.cgi?id=654583
Olivier Crête [Mon, 25 Apr 2011 20:13:38 +0000 (16:13 -0400)]
rtpsession: Wait longer to timeout SSRC collision
Using the current RTCP interval to timeout SSRC collision can lead to
collisions being timed out immediately if a BYE packet is sent because
it is sent immediately, so the interval is 0. This is not what we
want. So just set a static 10 times the default RTCP interval, it
should be enough
https://bugzilla.gnome.org/show_bug.cgi?id=648642
Wim Taymans [Mon, 25 Jul 2011 13:51:22 +0000 (15:51 +0200)]
v4l2: remove unused method
Wim Taymans [Mon, 25 Jul 2011 13:38:38 +0000 (15:38 +0200)]
v4l2: fix flushing start and stop
Move the flushing calls to the right place in the bufferpool.
Fix the min and max buffer sizes.
Wim Taymans [Mon, 25 Jul 2011 13:47:05 +0000 (14:47 +0100)]
v4l2: dequeue buffers when all are queued
Prefer to always use the default bufferpool queue for the _acquire function
because it properly supports unblocking when setting inactive etc. As a result,
we need to dequeue buffers and put them back in the bufferpool queue when we
have queued all buffers in the sink.
Rename some variables to more meaningfull names to avoid a problem with
freeing the wrong amount of buffers.
Mark Nauwelaerts [Tue, 19 Jul 2011 11:38:01 +0000 (13:38 +0200)]
rtspsrc: set SOURCE flag at init time
Fixes #654816.
Wim Taymans [Mon, 25 Jul 2011 09:10:58 +0000 (10:10 +0100)]
vertigotv: add stride support
Wim Taymans [Tue, 19 Jul 2011 17:25:29 +0000 (18:25 +0100)]
v4l2: only to STREAMOFF when streaming
Only call STREAMOFF when we previously called STREAMON
Wim Taymans [Fri, 22 Jul 2011 19:26:32 +0000 (21:26 +0200)]
replay: fix for event handler
Wim Taymans [Fri, 22 Jul 2011 19:19:45 +0000 (21:19 +0200)]
fixes for event handler changes
Olivier Crête [Mon, 18 Jul 2011 20:46:27 +0000 (16:46 -0400)]
rtph264depay: Complete merged AU on marker bit
The marker bit on a RTP packet means the AU has been completed, so push it out
immediately to reduce the latency.
https://bugzilla.gnome.org/show_bug.cgi?id=654850
Olivier Crête [Tue, 19 Jul 2011 00:27:38 +0000 (20:27 -0400)]
rtph264pay: Only set the marker bit on the last NALU of a multi-NALU access unit
An access unit could contain multiple NAL units, in that case, only the last
RTP packet of the last NALU should have its marker bit set.
https://bugzilla.gnome.org/show_bug.cgi?id=654850
Alessandro Decina [Wed, 20 Jul 2011 06:52:58 +0000 (08:52 +0200)]
multipart: fix compiler warning
Wim Taymans [Tue, 19 Jul 2011 17:20:43 +0000 (18:20 +0100)]
v4l2: handle unsupported formats
Wim Taymans [Tue, 19 Jul 2011 15:59:55 +0000 (16:59 +0100)]
v4l2: Fix sink bufferpool handling
Remove old method, use neww _process method for the sink.
Inform the parent bufferpool class about the settings too. This is needed to let
it know about the max-buffers.
Allocate the negotiated max-buffers and initially mmap min-buffers. The idea is
that the bufferpool will allocate more when needed.
Improve debugging.
Only poll in capture mode, it does not seem to work in playback mode on this
beagleboard.
Mark Nauwelaerts [Tue, 19 Jul 2011 10:05:51 +0000 (12:05 +0200)]
auparse: avoid hanging on invalid short input
... as in such case there is no srcpad yet on which to forward EOS.
Thiago Santos [Mon, 18 Jul 2011 18:13:33 +0000 (15:13 -0300)]
pulsesrc: Fix default value leaking
Remember to free the default value of client name, avoiding a
leak
Wim Taymans [Mon, 18 Jul 2011 16:54:49 +0000 (18:54 +0200)]
v4l2: More work on bufferpools
Add different transport methods to the bufferpool (MMAP and READ/WRITE)
Do more parsing of the bufferpool config.
Start and stop streaming based on the bufferpool state.
Make separate methods for getting a buffer from the pool and filling it with
data. This allows us to fill buffers from other pools too. Either use copy or
read to fill up the target buffers.
Add property to force a transfer mode in v4l2src.
Increase default number of buffers to 4.
Negotiate bufferpool and its properties in v4l2src.
Mark Nauwelaerts [Mon, 18 Jul 2011 12:24:48 +0000 (14:24 +0200)]
rtph264depay: reset upon FLUSH_STOP
... which is particularly needed when merging NAL units, where not resetting
would lead to output of an older (pre-flush) AU (with unintended timestamp).
Mark Nauwelaerts [Mon, 18 Jul 2011 12:30:51 +0000 (14:30 +0200)]
multifilesink: do not use g_slist_free_full
... as that is only in GLib 2.28, which is not yet required at this time.
Wim Taymans [Mon, 18 Jul 2011 08:52:23 +0000 (10:52 +0200)]
v4l2: add IO method enum
Wim Taymans [Mon, 18 Jul 2011 08:51:21 +0000 (10:51 +0200)]
bufferpool: improve _new function
Alessandro Decina [Mon, 18 Jul 2011 07:38:26 +0000 (09:38 +0200)]
multifilesink: add max-files property
Add max-files property to limit the number of files saved on disk.
API: multifilesink::max-files
Alessandro Decina [Sun, 17 Jul 2011 21:36:55 +0000 (23:36 +0200)]
multifilesink: refactor file opening and closing code
Alexey Fisher [Sat, 16 Jul 2011 17:38:51 +0000 (19:38 +0200)]
matroskademux: fix pixel-aspect-ratio if header has only one display variable
Current matroska demux calculates the pixel aspect ratio only if both
DisplayHeight and DisplayWidth are set, but it is legal to use only
one variable if the other is equal to PixelWidth or PixelHeight, at
least the mkclean utility is doing that. So this makse mkcleaned
files play correctly.
https://bugzilla.gnome.org/show_bug.cgi?id=654744
Antoine Jacoutot [Sat, 16 Jul 2011 22:47:50 +0000 (23:47 +0100)]
goom: fix build on PPC on openbsd
A missing sys/param.h include results in:
/usr/include/sys/proc.h:64: error: 'MAXLOGNAME' undeclared here (not in a
function)
/usr/include/sys/proc.h:285: error: 'MAXCOMLEN' undeclared here (not in a
function)
when compiling goom on openbsd/ppc. We can just remove the two sys/ includes
here, they are not needed for anything.
https://bugzilla.gnome.org/show_bug.cgi?id=654749
Wim Taymans [Fri, 15 Jul 2011 15:06:39 +0000 (17:06 +0200)]
Merge branch 'master' into 0.11
Wim Taymans [Fri, 15 Jul 2011 14:55:50 +0000 (16:55 +0200)]
v4l2: implement setup_allocation
Implement the setup_allocation vmethod, we'll hopefully do something clever in
there later.
Wim Taymans [Fri, 15 Jul 2011 15:26:06 +0000 (16:26 +0100)]
v4l2: improve bufferpool config setting
Pass the caps and the default video size to the bufferpool config.
Don't activate the bufferpool, this will be done by the object that decides to
use the bufferpool.
Improve debugging and error reporting.
Wim Taymans [Fri, 15 Jul 2011 12:52:38 +0000 (13:52 +0100)]
v4l2: handle dequeueing correcly
First clean up the buffers in the queue, then the remaining ones in the
device.
Wim Taymans [Fri, 15 Jul 2011 12:29:42 +0000 (13:29 +0100)]
v4l2: unref copied buffer
After we copy the incomming buffer to one of our bufferpool buffers, unref the
target buffer after rendering so that it is put back in the pool.
Wim Taymans [Fri, 15 Jul 2011 12:07:11 +0000 (13:07 +0100)]
v4l2: dequeue buffers for the sink
When we have all buffers queued for playback and we need a new empty buffer,
dequeue one and return it.
Set the right size for sink buffers.
Improve counting of queued buffers.
Wim Taymans [Fri, 15 Jul 2011 11:35:14 +0000 (12:35 +0100)]
v4l2: use the parent queue for the sink
We want to maintain a queue of free buffers for the sink, use the parent methods
to do that.
Wim Taymans [Fri, 15 Jul 2011 10:00:54 +0000 (12:00 +0200)]
v4l2: fix error messages
Wim Taymans [Fri, 15 Jul 2011 09:30:25 +0000 (11:30 +0200)]
v4l2: add ALLOCATION query to the sink
Wim Taymans [Fri, 15 Jul 2011 09:27:18 +0000 (11:27 +0200)]
v4l2: convert to GstBufferPool
Extend from GstBufferPool.
Handle the lifetime of the pool buffers correctly with the start/stop vmethods.
Map acquire and release directly to QBUF and DQBUF. We still expose an explicit
qbuf for the v4l2sink for now.
Wim Taymans [Fri, 15 Jul 2011 09:18:03 +0000 (11:18 +0200)]
v4l2: remove experimental markers
Olivier Crête [Fri, 15 Jul 2011 00:10:02 +0000 (20:10 -0400)]
rtppcmApay/depay: Static clock rates on static payloads, dynamic on dynamic
Partially reverts
397dc60b
Wim Taymans [Thu, 14 Jul 2011 14:21:36 +0000 (16:21 +0200)]
v4l2: merge code
Wim Taymans [Thu, 14 Jul 2011 14:12:15 +0000 (16:12 +0200)]
v4l2: Move output details to device object
Move the details of how a buffer is rendered to the device object.
Olivier Crête [Fri, 4 Mar 2011 20:41:22 +0000 (15:41 -0500)]
rtph264pay: Implement getcaps
Convert profile-level-id from RTP caps into video/x-h264 style caps (with profile and level)
Wim Taymans [Wed, 13 Jul 2011 16:32:00 +0000 (18:32 +0200)]
v4l2: move capture code to device object
Move the details of how to capture to the device object. Remove the
v4l2src_calls.[ch] files because they are empty now.
Provide two simple methods to get and return a buffer to the device.
Also do a slow copy when the buffer is not from our pool.
Wim Taymans [Wed, 13 Jul 2011 14:58:08 +0000 (16:58 +0200)]
v4l2: add some more debug
Wim Taymans [Wed, 13 Jul 2011 15:56:21 +0000 (16:56 +0100)]
v4l2: stop streaming in READY and NULL
Wim Taymans [Wed, 13 Jul 2011 14:40:39 +0000 (16:40 +0200)]
v4l2: start streaming for the output as well
Wim Taymans [Wed, 13 Jul 2011 14:33:58 +0000 (16:33 +0200)]
v4l2: Let the device object manage the pool
Rename start and stop methods to open and close because that is what they do.
After setting the format on the device object, setup the bufferpools. Move this
code from the v4l2src_calls.c file, it is shared between source and sink.
Make new device start and stop method that merges various bits of common code
spread over several files.
Wim Taymans [Wed, 13 Jul 2011 12:52:30 +0000 (13:52 +0100)]
v4l2: don't store stride in the videoinfo
We want to keep the default strides in the videoinfo. Keep the stride of the
video frames separate so that we can use both to copy a video frame and do
correct stride conversion.
Wim Taymans [Wed, 13 Jul 2011 11:38:15 +0000 (13:38 +0200)]
v4l2: Use video frame copy for raw video
Use the video frame copy API for raw video frames so that we copy with the right
strides.
Wim Taymans [Wed, 13 Jul 2011 11:37:58 +0000 (13:37 +0200)]
v4l2: add video metadata to raw video buffers
Wim Taymans [Wed, 13 Jul 2011 11:15:05 +0000 (13:15 +0200)]
v4l2: small cleanups