Tim-Philipp Müller
d5b344ba74
oss: simplify probed caps before returning them
...
Exposes all formats in the first structure if the
rest is the same for all of them.
2014-06-13 09:52:03 +01:00
Tim-Philipp Müller
ffcb884551
oss: make sure 16-bit formats are before 8-bit formats in probed caps
...
Probe supported formats in order of desirability rather than in
what order they may happen to be in the formats bitmask. Fixes
accidentally exposure of 8-bit formats in caps before 16-bit formats
(in case where U16 was not supported S8 might be listed before S16).
https://bugzilla.gnome.org/show_bug.cgi?id=706884
2014-06-13 09:49:38 +01:00
Nicolas Dufresne
0fb59dbdba
v4l2bufferpool: Cleanly handle v4l2_allocator_new failure
2014-06-12 16:41:09 -04:00
Vincent Penquerc'h
25c26a4c4c
rtptheordepay: fix leaks
...
Coverity 1212163
2014-06-12 11:24:15 +01:00
Vincent Penquerc'h
8e80478cf7
rtpg729pay: leak fixes
...
Coverity 1212159
2014-06-12 11:16:08 +01:00
Vincent Penquerc'h
fe4c5b92b1
rtph263pay: fix leak
...
Coverity 1212157
2014-06-12 11:11:38 +01:00
Vincent Penquerc'h
6ef26e4a8a
rtph263pay: fix leaks
...
Coverity 1212149
2014-06-12 10:43:53 +01:00
Vincent Penquerc'h
c58a2d9bbb
rtpdvpay: catch failures to map buffer
...
Coverity 1139741
2014-06-12 10:31:47 +01:00
Vincent Penquerc'h
7e278e6b22
multipartdemux: guard against having no MIME type
...
The code would previously crash trying to insert a NULL string
into a hash table.
It does seem a little broken that indexing is done by MIME type
and not by index though, unless the spec says there cannot be
two parts with the same MIME type.
https://bugzilla.gnome.org/show_bug.cgi?id=659573
2014-06-11 17:44:56 +01:00
Nicolas Dufresne
9966fdfa75
multipartdemux: Send stream-start event
...
This event was not sent. Send it before caps, this requires the pad to
be parented. This removes warning like: "Got data flow before
stream-start event".
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=731475
2014-06-10 15:43:21 -04:00
Thiago Santos
9fda7b107f
qtdemux: avoid looping indefinitely in broken svq3 files
...
Abort if an atom with size 0 is read from within the svq3 stsd
atoms
https://bugzilla.gnome.org/show_bug.cgi?id=726512
2014-06-10 15:33:33 -03:00
Vincent Penquerc'h
592c34336e
flacdec: add const where appropriate
2014-06-10 12:15:15 +01:00
Edward Hervey
9843b08e53
speexenc: add missing va_end in variadic function
...
Coverity 1139944
2014-06-09 10:39:20 +02:00
Edward Hervey
f7fc8d74c9
flvdemux: Attempt upstream seek first
...
If we have an upstream element that can handle the seek (such as
rtmpsrc), try to do that first before attempting it ourself.
2014-06-09 10:04:38 +02:00
Vincent Penquerc'h
40ae581ef2
wavparse: do not include codec_data on raw audio caps
...
If the wav header contains an extended chunk, we want to keep
the codec_data field, but not for raw audio.
This fixes some elements (such as adder) from failing to intersect
raw audio caps which would otherwise be intersectable.
2014-06-05 10:34:49 +01:00
Edward Hervey
2b9493b5f0
flvdemux: Query duration upstream first
...
Upstream elements (like rtmpsrc) might be able to provide the duration
more accurately than flvdemux. Especially with index-less vod files
2014-06-05 09:38:29 +02:00
Nicolas Dufresne
1648e46f86
v4l2bufferpool: Cleanup poll method and retry on EINTR/EAGAIN
...
https://bugzilla.gnome.org/show_bug.cgi?id=731015
2014-06-04 15:15:56 -04:00
Jan Alexander Steffens (heftig)
303883752e
flvdemux: set RESYNC buffer flag when bridging large PTS gaps
...
So downstream gets notified when this happens.
https://bugzilla.gnome.org/show_bug.cgi?id=725903
2014-06-04 10:28:47 -04:00
Olivier Crête
4377dfeadd
rtprtx: Reset state on each iteration
...
Otherwise it didn't wait for the test to finish before checking the results.
https://bugzilla.gnome.org/show_bug.cgi?id=728501
2014-06-03 17:59:32 -04:00
Tim-Philipp Müller
341b691b18
matroskademux: don't leak doctype string in error code path
...
CID 1212145.
2014-06-02 09:57:42 +02:00
Edward Hervey
eb30edae9f
vp9enc: Don't dereference NULL checks
...
CID #1197703
2014-06-02 09:47:34 +02:00
Edward Hervey
b4a129ad71
vp8enc: Don't dereference NULL variable
...
CID #1139838
2014-06-02 09:46:05 +02:00
Thiago Santos
c25d94b7ef
qtdemux: upstream handles seek if fragmented and on time segment
...
Otherwise we can reject seeks on local files that contain fragmented-like
atoms like 'mvex'. Also improve a message log
https://bugzilla.gnome.org/show_bug.cgi?id=730722
2014-05-30 15:01:50 -03:00
Wim Taymans
a5a7649831
h264depay: make sure we call handle_nal for each NAL
...
Call handle_nal for each NAL in the STAP-A RTP packet. This makes
sure we correctly extract the SPS and PPS.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=730999
2014-05-30 16:51:37 +02:00
Sebastian Dröge
edc7d9027e
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
2014-05-28 09:20:21 +02:00
Thiago Santos
fd6b348898
avidemux: remove stream last flow return
...
GstPad already stores that information
https://bugzilla.gnome.org/show_bug.cgi?id=709224
2014-05-26 19:51:13 -03:00
Thiago Santos
2b454bf87f
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
2014-05-26 19:51:12 -03:00
Thiago Santos
3b887887be
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
2014-05-26 19:51:07 -03:00
Thiago Santos
c7c25071e3
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
2014-05-26 19:51:02 -03:00
Thiago Santos
da3c031627
avidemux: use GstFlowCombiner
...
Removes flow return combination code to use the newly added GstFlowCombiner
2014-05-26 15:30:12 -03:00
Thiago Santos
4b0ce7dc30
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
2014-05-26 15:30:12 -03:00
Julien Isorce
5c07e6b45c
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
2014-05-26 14:07:42 -04:00
Nicolas Dufresne
ea340455ae
v4l2sink: Cleanup old pad alloc declaration
2014-05-26 13:43:30 -04:00
Nicolas Dufresne
b3bf4e33d0
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
2014-05-26 13:43:30 -04:00
Nicolas Dufresne
e2fd7e274e
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
2014-05-26 13:43:30 -04:00
Tim-Philipp Müller
f4d9e12614
po: update
2014-05-25 17:40:58 +01:00
Piotr Drąg
fcb51cadde
po: update POTFILES
...
https://bugzilla.gnome.org/show_bug.cgi?id=726556
2014-05-25 17:38:43 +01:00
Nicolas Dufresne
bc002d579f
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).
2014-05-25 00:05:56 -04:00
Nicolas Dufresne
ffb7a78798
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.
2014-05-25 00:05:56 -04:00
Nicolas Dufresne
66519d08b0
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.
2014-05-25 00:04:44 -04:00
Nicolas Dufresne
2e89f4ecff
Revert "v4l2bufferpool: Port to bufferpool flush_start/stop method"
...
This reverts commit 2e0fb42e86
.
Conflicts:
sys/v4l2/gstv4l2allocator.c
sys/v4l2/gstv4l2bufferpool.c
sys/v4l2/gstv4l2videodec.c
2014-05-24 20:00:14 -04:00
Nicolas Dufresne
ba10cb14ea
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.
2014-05-24 18:56:32 -04:00
Nicolas Dufresne
4aa5d42184
v4l2object: Use proposed allocator as default
2014-05-24 18:45:30 -04:00
Nicolas Dufresne
aff64af8ad
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
2014-05-24 18:43:28 -04:00
Thiago Santos
d423b9f63e
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
2014-05-24 15:38:54 -04:00
Nicolas Dufresne
3a7bd8d479
v4l2bufferpool: Prevent num_queued from going negative
2014-05-24 15:38:53 -04:00
Nicolas Dufresne
57726911f8
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.
2014-05-24 15:38:53 -04:00
Nicolas Dufresne
3acbd9cb99
v4l2videodec: Handle early task stop
2014-05-24 15:38:53 -04:00
Nicolas Dufresne
a65ab6378d
v4l2videodec: Handle gst_pad_start_task() failure
2014-05-24 15:38:53 -04:00
Nicolas Dufresne
1e48ad8fa8
v4l2videodec: Add trace for FLUSH_START/STOP handling
2014-05-24 15:38:53 -04:00