Sebastian Dröge [Wed, 7 May 2014 12:09:06 +0000 (14:09 +0200)]
souphttpsrc: Add custom sticky event to contain the HTTP request and response headers
This can be useful to e.g. get cookie information downstream.
https://bugzilla.gnome.org/show_bug.cgi?id=729707
Thiago Santos [Mon, 26 May 2014 22:47:39 +0000 (19:47 -0300)]
avidemux: remove stream last flow return
GstPad already stores that information
https://bugzilla.gnome.org/show_bug.cgi?id=709224
Thiago Santos [Mon, 26 May 2014 22:37:46 +0000 (19:37 -0300)]
qtdemux: remove last flow return from stream struct
It is already stored on GstPad on core
https://bugzilla.gnome.org/show_bug.cgi?id=709224
Thiago Santos [Mon, 26 May 2014 22:19:45 +0000 (19:19 -0300)]
flvdemux: Use GstFlowCombiner
Use the flow combiner to have the standard combination results and avoid
repeating the same code
https://bugzilla.gnome.org/show_bug.cgi?id=709224
Thiago Santos [Mon, 26 May 2014 16:21:25 +0000 (13:21 -0300)]
matroskademux: use GstFlowCombiner
Use the flow combiner to have the standard combination results and avoid
repeating the same code
https://bugzilla.gnome.org/show_bug.cgi?id=709224
Thiago Santos [Mon, 26 May 2014 16:04:10 +0000 (13:04 -0300)]
avidemux: use GstFlowCombiner
Removes flow return combination code to use the newly added GstFlowCombiner
Thiago Santos [Fri, 23 May 2014 20:53:00 +0000 (17:53 -0300)]
qtdemux: use GstFlowCombiner
Removes the common code to combining flow returns to let it be
handled by core gstutils' GstFlowCombiner
https://bugzilla.gnome.org/show_bug.cgi?id=709224
Julien Isorce [Mon, 26 May 2014 14:59:55 +0000 (10:59 -0400)]
v4l2sink: implement gstvideosink.show_frame instead of gstbasesink.render
It allows to show preroll frame. Especially it allows to update the
frame when seeking in PAUSED state.
https://bugzilla.gnome.org/show_bug.cgi?id=722303
Nicolas Dufresne [Mon, 26 May 2014 14:59:06 +0000 (10:59 -0400)]
v4l2sink: Cleanup old pad alloc declaration
Nicolas Dufresne [Mon, 26 May 2014 16:34:42 +0000 (12:34 -0400)]
v4l2bufferpool: Copy already queued buffer
This is required as during preroll we pass the first buffer twice, hence already
queued. It is also useful, to allow filters replaying a previous rendered buffers.
This will require 1 more buffer in sink if last-sample is enabled, since the last
sample will not be the same as the currently queued buffer.
https://bugzilla.gnome.org/show_bug.cgi?id=722303
Nicolas Dufresne [Sun, 25 May 2014 00:20:07 +0000 (20:20 -0400)]
v4l2bufferpool: Port to bufferpool flush_start/stop method
Port the buffer pool to use the new flush_start/flush_stop virtual
methods added to GstBufferPool.
https://bugzilla.gnome.org/show_bug.cgi?id=727611
Tim-Philipp Müller [Sun, 25 May 2014 16:40:58 +0000 (17:40 +0100)]
po: update
Piotr Drąg [Sun, 25 May 2014 14:54:18 +0000 (16:54 +0200)]
po: update POTFILES
https://bugzilla.gnome.org/show_bug.cgi?id=726556
Nicolas Dufresne [Sun, 25 May 2014 03:51:58 +0000 (23:51 -0400)]
v4l2bufferpool: Don't queue all the buffers before dequeueing first
For output device, we where queuing all the buffers, and then we would
dequeue one. This means we only have 1 buffer for the pipeline, no matter
the size of the queue. Instead, start dequeued when min_latency is reached.
Eventually, this the min_latency should also be affected by control
MIN_BUFFERS_FOR_OUTPUT (use by encoders).
Nicolas Dufresne [Sun, 25 May 2014 03:49:19 +0000 (23:49 -0400)]
v4l2object: Simply read back the config to update the query
It's easy to get the min/max outdate when hacking decide allocation. In
order to avoid this, simply read back the choosen value from the config.
Nicolas Dufresne [Sun, 25 May 2014 03:31:24 +0000 (23:31 -0400)]
v4l2: Cleanup and fix calculation of latency
Calculation of num_buffers (the max latency in buffers) was
up-side-down. If we can allcoate, then our maximum latency match
pool maximum number of buffers. Also renamed it to max latency. Finally
introduced a min_latency for clarity.
Nicolas Dufresne [Sun, 25 May 2014 00:00:14 +0000 (20:00 -0400)]
Revert "v4l2bufferpool: Port to bufferpool flush_start/stop method"
This reverts commit
2e0fb42e868fc9f6d98b028def80a3e953527307.
Conflicts:
sys/v4l2/gstv4l2allocator.c
sys/v4l2/gstv4l2bufferpool.c
sys/v4l2/gstv4l2videodec.c
Nicolas Dufresne [Sat, 24 May 2014 22:56:32 +0000 (18:56 -0400)]
v4l2object: Fix configuration of other_pool and importation case
Fix the choice of min/max, don't override the min/max with own pool selected
size, correct other_pool is_active check, start from other_pool config when
configuring the other pool and finally validate the configuration.
Nicolas Dufresne [Sat, 24 May 2014 22:45:30 +0000 (18:45 -0400)]
v4l2object: Use proposed allocator as default
Nicolas Dufresne [Sat, 24 May 2014 22:43:28 +0000 (18:43 -0400)]
v4l2bufferpool: Fix USERPTR map flags
We need to map READ only for output and write only for capture, we where
doing the opposite. This fixing USERPTR with glimagesink
https://bugzilla.gnome.org/show_bug.cgi?id=730698
Thiago Santos [Sat, 24 May 2014 14:16:35 +0000 (11:16 -0300)]
qtdemux: parse tkhd transformation matrix and add tags if appropriate
Handle the transformation matrix cases where there are only simple rotations
(90, 180 or 270 degrees) and use a tag for those cases. This is a common scenario
when recording with mobile devices
https://bugzilla.gnome.org/show_bug.cgi?id=679522
Nicolas Dufresne [Fri, 23 May 2014 23:10:21 +0000 (19:10 -0400)]
v4l2bufferpool: Prevent num_queued from going negative
Nicolas Dufresne [Fri, 23 May 2014 22:25:49 +0000 (18:25 -0400)]
v4l2videodec: don't stop if loop returned FLUSHING
The decodeing thread returning flushing isn't an error, we should simply
try starting the task again. If it's actually flushing, it will stop again by itself.
Nicolas Dufresne [Fri, 23 May 2014 21:54:20 +0000 (17:54 -0400)]
v4l2videodec: Handle early task stop
Nicolas Dufresne [Fri, 23 May 2014 21:28:13 +0000 (17:28 -0400)]
v4l2videodec: Handle gst_pad_start_task() failure
Nicolas Dufresne [Fri, 23 May 2014 21:19:07 +0000 (17:19 -0400)]
v4l2videodec: Add trace for FLUSH_START/STOP handling
Nicolas Dufresne [Fri, 23 May 2014 21:18:16 +0000 (17:18 -0400)]
v4l2videodec: Fix use of atomic value
Nicolas Dufresne [Fri, 23 May 2014 21:01:53 +0000 (17:01 -0400)]
v4l2bufferpool: Improve debugging
No need to use obj->element, the pool now have a significant name. Also don't
warn if flushing.
Nicolas Dufresne [Fri, 23 May 2014 21:01:02 +0000 (17:01 -0400)]
v4l2videodec: Fix handle_frame error handling
Nicolas Dufresne [Fri, 23 May 2014 19:56:24 +0000 (15:56 -0400)]
v4l2bufferpool: Add a trace when _start() is called
Nicolas Dufresne [Fri, 23 May 2014 19:56:02 +0000 (15:56 -0400)]
v4l2allocator: Add debug assert to detect calls in the wrong state
Nicolas Dufresne [Fri, 23 May 2014 19:55:26 +0000 (15:55 -0400)]
v4l2allocator: Reset count when stopped
Nicolas Dufresne [Fri, 23 May 2014 19:55:08 +0000 (15:55 -0400)]
v4l2allocator: Return a GstFlowReturn instead of boolean in alloc
Nicolas Dufresne [Fri, 23 May 2014 19:17:27 +0000 (15:17 -0400)]
v4l2object: Don't leak config structure
Nicolas Dufresne [Fri, 23 May 2014 18:12:10 +0000 (14:12 -0400)]
v4l2bufferpool: Port to bufferpool flush_start/stop method
Thiago Santos [Fri, 23 May 2014 06:00:50 +0000 (03:00 -0300)]
qtdemux: add tag mappings for _swr, _mak and _mod tags
swr -> Application name
mak -> device manufacturer
mod -> device model
Nicolas Dufresne [Tue, 20 May 2014 21:37:49 +0000 (17:37 -0400)]
ximagesrc: Fix ximage leaks when buffer has more then one ximage
From time to time, when the image_pool list has more then 1 element
and I suppose at start, all but 1 pooled ximage are leaked. This is
due to broken algorithm in gst_ximagesink_src_ximage_get(). There was
also a risk of use after free for the case where the ximage size has
changed.
https://bugzilla.gnome.org/show_bug.cgi?id=728502
Sebastian Dröge [Wed, 21 May 2014 11:23:27 +0000 (13:23 +0200)]
Back to development
Sebastian Dröge [Wed, 21 May 2014 11:06:35 +0000 (13:06 +0200)]
Release 1.3.2
Sebastian Dröge [Wed, 21 May 2014 10:19:39 +0000 (12:19 +0200)]
Update .po files
Sebastian Dröge [Wed, 21 May 2014 08:51:10 +0000 (10:51 +0200)]
Automatic update of common submodule
From 211fa5f to 1f5d3c3
Edward Hervey [Tue, 20 May 2014 06:23:06 +0000 (08:23 +0200)]
vp8enc: Don't dereference NULL variable
CID #1139838
Edward Hervey [Tue, 20 May 2014 06:20:42 +0000 (08:20 +0200)]
vp9enc: Don't dereference NULL checks
CID #1197703
Sebastian Dröge [Mon, 19 May 2014 09:26:46 +0000 (11:26 +0200)]
v4l2bufferpool: Explicitly cast enum "subtype" to its "supertype"
gstv4l2bufferpool.c:608:18: error: implicit conversion from enumeration type
'enum _GstV4l2BufferPoolAcquireFlags' to different enumeration type
'GstBufferPoolAcquireFlags' [-Werror,-Wenum-conversion]
params.flags = GST_V4L2_POOL_ACQUIRE_FLAG_RESURECT;
~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sebastian Dröge [Mon, 19 May 2014 09:24:06 +0000 (11:24 +0200)]
goom: Use fabs() instead of abs() to calculate the floating point absolute value
tentacle3d.c:268:7: error: using integer absolute value function 'abs' when
argument is of floating point type [-Werror,-Wabsolute-value]
if (abs (tmp - fx_data->rot) > abs (tmp - (fx_data->rot + 2.0 * G_PI))) {
^
Sebastian Dröge [Mon, 19 May 2014 09:21:36 +0000 (11:21 +0200)]
debugutils: Properly calculate the difference with unsigned types
tests.c:161:16: error: taking the absolute value of unsigned type
'unsigned long' has no effect [-Werror,-Wabsolute-value]
t->diff += labs (GST_BUFFER_TIMESTAMP (buffer) - t->expected);
Nicolas Dufresne [Fri, 16 May 2014 21:46:30 +0000 (17:46 -0400)]
v4l2videodec: Handle flush while in start_streaming
We need to handle the case where a flush occure while the streaming
thread is being brought up. In this case, the flushing state of the poll
object is cleared. To solve this, we simply set the capture poll to flushing
again, this way we know the thread will exit. The decoder streamlock
is used to synchronize with handle frame.
Nicolas Dufresne [Fri, 16 May 2014 20:44:37 +0000 (16:44 -0400)]
v4l2allocator: Don't trace twice the same message
Aleix Conchillo Flaqué [Thu, 15 May 2014 18:25:50 +0000 (11:25 -0700)]
rtspsrc: always use a random ssrc for the internal session
Use a random SSRC different than 0 for the internal session SSRC.
https://bugzilla.gnome.org/show_bug.cgi?id=730212
Wim Taymans [Fri, 16 May 2014 14:52:25 +0000 (16:52 +0200)]
rtpsession: update last_activity when sending RTP
Also update last_activity when doing something with the internal
source to make sure don't timeout early.
See https://bugzilla.gnome.org/show_bug.cgi?id=730217
Nicolas Dufresne [Thu, 15 May 2014 22:08:53 +0000 (18:08 -0400)]
v4l2: Cleanup M2M properties
M2M devices were sharing the same properties as src and sink. Most of
these made no sense. This patch reduces the number of propeties and
makes io-mode clearer by having capture-io-mode and output-io-mode. This
also accidently fixed a bug in gstv4l2transform io-mode code, where the
capture io-mode could not be set.
https://bugzilla.gnome.org/show_bug.cgi?id=729591
Benjamin Gaignard [Thu, 15 May 2014 15:39:39 +0000 (17:39 +0200)]
v4l2bufferpool: Update pool limit with hardware requiremenst
If the driver need more buffers than requested by the config,
update the pool min/max values. The minimum value for the pool
could be provided either by the driver or by the pool. This is
best effort for drivers that don't support
CID V4L2_CID_MIN_BUFFERS_FOR_CAPTURE.
https://bugzilla.gnome.org/show_bug.cgi?id=730200
Nicolas Dufresne [Thu, 15 May 2014 14:44:29 +0000 (10:44 -0400)]
v4l2videodec: Handle start_streaming error
https://bugzilla.gnome.org/show_bug.cgi?id=730207
Nicolas Dufresne [Thu, 15 May 2014 14:39:40 +0000 (10:39 -0400)]
v4l2videodec: Print the flow return causing the loop to leave
https://bugzilla.gnome.org/show_bug.cgi?id=730207
Nicolas Dufresne [Thu, 15 May 2014 14:31:40 +0000 (10:31 -0400)]
v4l2videodec: Don't lock the decoder when stopping task
That src pad task may need to take the lock when being pulled
down. takeing that lock can lead to a deadlock.
https://bugzilla.gnome.org/show_bug.cgi?id=730207
Nicolas Dufresne [Wed, 14 May 2014 21:18:52 +0000 (17:18 -0400)]
v4l2transform: Don't leak pool if activation failed
https://bugzilla.gnome.org/show_bug.cgi?id=730207
Nicolas Dufresne [Wed, 14 May 2014 21:18:35 +0000 (17:18 -0400)]
v4l2: Split flush in start/stop_streaming
This allow calling start streaming later for capture device. Currently it breaks
in dmabuf-import because downstream is holding a buffer that will only be
released after stream-start.
https://bugzilla.gnome.org/show_bug.cgi?id=730207
Nicolas Dufresne [Wed, 14 May 2014 19:12:26 +0000 (15:12 -0400)]
v4l2transform: Flush buffer pools on flush stop
https://bugzilla.gnome.org/show_bug.cgi?id=730207
Nicolas Dufresne [Wed, 14 May 2014 17:28:31 +0000 (13:28 -0400)]
v4l2allocator: Fix use of atomic active marker
https://bugzilla.gnome.org/show_bug.cgi?id=730207
Nicolas Dufresne [Wed, 14 May 2014 17:05:42 +0000 (13:05 -0400)]
v4l2bufferpool: Don't deactivate otherpool
We should not stop the otherpool unless we also stop our own
pool, otherwise it will never get restarted.
https://bugzilla.gnome.org/show_bug.cgi?id=730207
Nicolas Dufresne [Wed, 14 May 2014 16:33:58 +0000 (12:33 -0400)]
v4l2bufferpool: Also update num_buffers for import cases
https://bugzilla.gnome.org/show_bug.cgi?id=730207
Aleix Conchillo Flaqué [Wed, 14 May 2014 20:42:25 +0000 (13:42 -0700)]
rtpbin: update rtp encoder/decoder docs
Use %u in RTP encoder/decoder pads to match other rtpbin pads.
https://bugzilla.gnome.org/show_bug.cgi?id=730146
George Kiagiadakis [Fri, 27 Dec 2013 09:55:18 +0000 (11:55 +0200)]
tests/check: rtpsession: test internal sources timing out
George Kiagiadakis [Thu, 26 Dec 2013 15:30:42 +0000 (17:30 +0200)]
rtpsession: remove unused if branch
1) sources that have sent BYE in the past cannot be senders, since
they would have timed out to being receivers in the meantime...
2) sources that have sent BYE are now being removed earlier inside
this function
George Kiagiadakis [Thu, 26 Dec 2013 15:29:42 +0000 (17:29 +0200)]
rtpsession: cleanup sources that have sent BYE
George Kiagiadakis [Thu, 26 Dec 2013 15:24:51 +0000 (17:24 +0200)]
rtpsession: unify nested if clauses
George Kiagiadakis [Thu, 26 Dec 2013 15:21:44 +0000 (17:21 +0200)]
rtpsession: timeout internal sources that are inactive for a long time and send BYE
Aleix Conchillo Flaqué [Tue, 13 May 2014 19:25:04 +0000 (12:25 -0700)]
rtpjitterbuffer: don't stop looping if event found in the queue
If we are inserting a packet into the jitter queue we need to keep
looping through the items until the right position is found. Currently,
the code stops as soon as an event is found in the queue.
Regarding events, we should only move packets before an event if there
is another packet before the event that has a larger seqnum.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=730078
Adrien SCH [Thu, 17 Apr 2014 13:04:00 +0000 (13:04 +0000)]
matroskamux: fix the memory leak of language attribute
https://bugzilla.gnome.org/show_bug.cgi?id=728418
Nicolas Dufresne [Tue, 13 May 2014 17:44:20 +0000 (13:44 -0400)]
v4l2object: Fix regression in offset extrapolation
When extrapolating the offset, we need to use the extrapolate
stride rather then the base stride. This should fix support for format
with more then two planes (I420, Y42B, etc).
Nicolas Dufresne [Mon, 12 May 2014 22:03:18 +0000 (18:03 -0400)]
v4l2bufferpool: Use default VideoInfo for frame operation
When doing frame operation, we need to use the default VideoInfo
and let the frame API read the video meta in order to get the stride
and offset right. Currently we where using the specialized VideoInfo
which reflects what the HW is setup to.
Tim-Philipp Müller [Mon, 12 May 2014 16:23:19 +0000 (17:23 +0100)]
v4l2src: minor GValue handling optimisation in probing code
Tim-Philipp Müller [Mon, 12 May 2014 16:20:14 +0000 (17:20 +0100)]
v4l2src: avoid lists with one single framerate in probed caps
Simplify framerate field if possible, so we don't end up with
e.g. framerate = (fraction) { 30/1 }. Maybe the helper function
should be moved to core, but we can do this later.
Edward Hervey [Mon, 12 May 2014 14:56:35 +0000 (16:56 +0200)]
qtdemux: Fix leak of palette_data in error cases
CID #1212151
Edward Hervey [Mon, 12 May 2014 14:53:32 +0000 (16:53 +0200)]
qtmux: Free node_header in error cases
CID #1212134
Edward Hervey [Mon, 12 May 2014 11:46:01 +0000 (13:46 +0200)]
flvdemux: Don't use WARNING for not-linked flow return
Pollutes debug logs for no reason. It's only an error if all pads
return not-linked
Edward Hervey [Mon, 12 May 2014 11:45:06 +0000 (13:45 +0200)]
flvdemux: Skip unknown tags in push-mode
We add a new mode (SKIP) in push-mode to skip tags that we don't known about
Partially fixes https://bugzilla.gnome.org/show_bug.cgi?id=670712
Sebastian Dröge [Sat, 10 May 2014 07:14:33 +0000 (09:14 +0200)]
flacdec: Add support for variable block size files and remove dead code
This dead code wasn't used since the 1.0 port and would need to
be modified heavily for variable block size support.
https://bugzilla.gnome.org/show_bug.cgi?id=729894
Nicolas Dufresne [Fri, 9 May 2014 16:14:23 +0000 (12:14 -0400)]
v4l2transform: Fix NULL check copy paste error
CID 1212129
Nicolas Dufresne [Fri, 9 May 2014 16:11:54 +0000 (12:11 -0400)]
v4l2transform: Fix potential deadlock due to missing break
CID 1212131
Wim Taymans [Fri, 9 May 2014 16:01:28 +0000 (18:01 +0200)]
rtpjitterbuffer: increment accepted packets after loss
When we detect a lost packet, expect packets with higher
seqnum on the input.
Also update the unit test.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=729524
Jason Litzinger [Sun, 4 May 2014 17:12:54 +0000 (11:12 -0600)]
Add new test case.
Wim Taymans [Fri, 9 May 2014 14:14:21 +0000 (16:14 +0200)]
shapewipe: no need to activate pads
Activation will happen in the state change
Nicolas Dufresne [Fri, 9 May 2014 16:10:04 +0000 (12:10 -0400)]
v4l2object: Don't leak config structure
this fixes a leak of the config structure and take care of making sure
caps can't reach ref 0 before we are done doing our check.
CID 1212144
Nicolas Dufresne [Fri, 9 May 2014 16:08:11 +0000 (12:08 -0400)]
v4l2object: Remove uneeded cast for code clarity
Nicolas Dufresne [Fri, 9 May 2014 15:56:52 +0000 (11:56 -0400)]
v4l2pool: Fix leak of config structure in error case
CIDs 1212167 and 1212167
Nicolas Dufresne [Fri, 9 May 2014 15:51:26 +0000 (11:51 -0400)]
v4l2object: Fix use of unitilized pool pointer
CID #1212173
Eric Trousset [Fri, 9 May 2014 14:48:58 +0000 (16:48 +0200)]
qtdemux: don't respond to a position query in BYTE format with a TIME position
https://bugzilla.gnome.org/show_bug.cgi?id=729553
Tim-Philipp Müller [Fri, 9 May 2014 13:22:42 +0000 (14:22 +0100)]
matroskademux: don't leak doctype string in error code path
CID 1212145.
Nicolas Dufresne [Tue, 6 May 2014 17:37:47 +0000 (13:37 -0400)]
v4l2object: Readback pool config if used within the baseclass
Nicolas Dufresne [Tue, 6 May 2014 16:58:59 +0000 (12:58 -0400)]
v4l2: Replace miss-use of crop meta in favour of proper offset
This moves away from copying information and store everything inside
the GstVideoInfo structure. The alignement exposed by v4l2 api
is now handled using proper offset.
Nicolas Dufresne [Tue, 6 May 2014 16:55:30 +0000 (12:55 -0400)]
v4l2object: Style fix
Nicolas Dufresne [Mon, 5 May 2014 16:38:33 +0000 (12:38 -0400)]
v4l2allocator: Reset imported buffer size with expected size
This ensure that the buffer pool won't always discard buffer with these
memory when they are released.
Nicolas Dufresne [Mon, 5 May 2014 16:37:43 +0000 (12:37 -0400)]
v4l2allocator: Reset flushed group
This ensure that a flushed group memory are the same size as when they
where originally allocated / imported.
Nicolas Dufresne [Mon, 5 May 2014 16:07:31 +0000 (12:07 -0400)]
v4l2bufferpool: Get number of allocated buffers from allocator
The value of num_allocated buffer would get confused when
buffer are being discarded.
Nicolas Dufresne [Mon, 5 May 2014 16:06:44 +0000 (12:06 -0400)]
v4l2allocator: Add a method to read number of allocated group
Nicolas Dufresne [Mon, 5 May 2014 00:23:42 +0000 (20:23 -0400)]
v4l2bufferpool: Improve debugging
Nicolas Dufresne [Sun, 4 May 2014 23:51:48 +0000 (19:51 -0400)]
v4l2bufferpool: Ensure we don't re-enqueue buffer during flush
Nicolas Dufresne [Sun, 4 May 2014 23:13:37 +0000 (19:13 -0400)]
v4l2transform: Initilialize debug category
Nicolas Dufresne [Sun, 4 May 2014 20:11:09 +0000 (16:11 -0400)]
v4l2allocator: Fix libv4l2 support
Need to include config.h, otherwise we endup directly using the
ioct/mmap/munmap calls and need to vall v4l2_munmap.