Vincent Penquerc'h [Mon, 25 Feb 2013 10:49:19 +0000 (10:49 +0000)]
theoraenc: do not reset the encoder when we need a keyframe
Instead, remember we need a keyframe, and we will force the encoder
to emit one next time we submit a new frame.
Since libtheora does not have an API to request a keyframe, we reset
the max keyframe interval to 1 temporarily.
This has the advantage that the rate control keeps its history,
and that the encoder won't choose different quant tables or
somesuch, thus requiring new streamheaders (although this is
probably only a theoretical possibility). Should also be a
bit faster than resetting the encoder.
https://bugzilla.gnome.org/show_bug.cgi?id=663350
Wim Taymans [Sun, 31 Mar 2013 11:46:30 +0000 (13:46 +0200)]
audiodecoder: don't make negative timestamp
Clamp timestamp interpollation to 0 to avoid going negative. This should not
happen, really, but until the interpolation is improved this seems better.
Wim Taymans [Sun, 31 Mar 2013 10:55:33 +0000 (12:55 +0200)]
streamsynchronizer: update position for reverse
When doing reverse playback the positino advances from timestamp_end to
timestamp.
Edward Hervey [Thu, 28 Mar 2013 14:20:19 +0000 (15:20 +0100)]
encodebin: Add action signal to get pad for a given profile
This allows getting a pad for a specific encoding profile, which can
be useful when there are several stream profiles of the same type.
Also update the encodebin unit tests so that we check that the returned
pad has the right caps.
https://bugzilla.gnome.org/show_bug.cgi?id=689845
Wim Taymans [Sat, 30 Mar 2013 16:20:42 +0000 (17:20 +0100)]
videoconvert: use one matrix function
Use only one matrix function pointer, let the implementation cast the pixels to
the right size.
Wim Taymans [Fri, 29 Mar 2013 10:48:05 +0000 (11:48 +0100)]
videoconvert: use one temp array for lines
Use only one temporary array for pixels.
Wim Taymans [Sat, 30 Mar 2013 18:13:47 +0000 (19:13 +0100)]
videodecoder: forward stream-start immediately
Wim Taymans [Sat, 30 Mar 2013 18:07:05 +0000 (19:07 +0100)]
audiodecoder: forward stream-start immediately
Sebastian Dröge [Sat, 30 Mar 2013 16:17:04 +0000 (17:17 +0100)]
decodebin: Remove GstdecodePads that are not going to be exposed
This makes sure that they're unlnked and don't cause any errors or
block the pipeline.
Sebastian Dröge [Sat, 30 Mar 2013 11:15:38 +0000 (12:15 +0100)]
playbin: Ignore caps from audio/video sink factories if there are fixed sinks already
Sebastian Dröge [Sat, 30 Mar 2013 11:08:06 +0000 (12:08 +0100)]
dmabuf: Some code cleanup
Sebastian Dröge [Sat, 30 Mar 2013 11:00:35 +0000 (12:00 +0100)]
docs: Add some documentation that was missing before
Sebastian Dröge [Sat, 30 Mar 2013 10:25:22 +0000 (11:25 +0100)]
playbin: Handle caps queries from unlinked elements
Pass them to all possible sinks and the current sinks to
allow elements to chose a more optimal initial caps.
Sebastian Dröge [Fri, 29 Mar 2013 17:27:03 +0000 (18:27 +0100)]
decodebin: Add autoplug-query signal to handle queries for yet unconnected elements
This allows playbin to answer the CAPS query with the possible sink
caps for example, and allows decoders to chose more optimal caps.
Sebastian Dröge [Sat, 30 Mar 2013 09:25:45 +0000 (10:25 +0100)]
decodebin: Don't add a children to a decode group twice
This can happen if a demuxer does not provide fixed caps from the
beginning but only sets them later.
Sreerenj Balachandran [Fri, 29 Mar 2013 14:05:12 +0000 (16:05 +0200)]
pbutils: Fix the documentation build warning.
Josep Torra [Sat, 30 Mar 2013 08:39:32 +0000 (09:39 +0100)]
xvimagesink: fix debug message printf format compiler warning
Stefan Sauer [Fri, 29 Mar 2013 16:14:09 +0000 (17:14 +0100)]
audiotestsrc: fix a comment typo from previous commit
Sebastian Dröge [Fri, 29 Mar 2013 15:55:56 +0000 (16:55 +0100)]
videometa: Add documentation for GstVideoGLTextureUploadMeta
Stefan Sauer [Fri, 29 Mar 2013 15:44:17 +0000 (16:44 +0100)]
audiotestssrc: truncate the seek pos to the sample and round the time
Before it was done the other way around and that can trigger the assert that
already is in place. This also makes more sense; when seeking to time x, we want
then sample that is <= that pos.
Sebastian Dröge [Fri, 29 Mar 2013 15:37:01 +0000 (16:37 +0100)]
videometa: Implement copying of GstVideoGLTextureUploadMeta
Sebastian Dröge [Fri, 29 Mar 2013 13:46:00 +0000 (14:46 +0100)]
videometa: API: Add GstVideoGLTextureUploadMeta
This allows elements to specify a function to upload
a buffer content to a specific OpenGL texture ID. It
could be used by the vaapi elements to provide a way
for eglglessink or WebKit to upload a VA surface to
an GL texture without the respective sinks knowing
anything about VA.
Stefan Sauer [Fri, 29 Mar 2013 10:47:20 +0000 (11:47 +0100)]
adder: cleanup and reenable adder live source test
The test now passed a few rounds of nice -n19 make elements/adder.torture.
Stefan Sauer [Mon, 25 Mar 2013 15:46:29 +0000 (16:46 +0100)]
audioencoder: api doc fixes.
Wim Taymans [Thu, 28 Mar 2013 17:16:09 +0000 (18:16 +0100)]
videoconvert: respect the pack_lines when packing
Packing is supposed to happen on the amount of lines specified in the format
info. It's currently all set to 1 but that will change.
Wim Taymans [Thu, 28 Mar 2013 17:13:10 +0000 (18:13 +0100)]
videoconvert: be smarter when selecting a conversion
Try to select the conversion that would result in the minimal amount of quality
loss. Quality loss is calculated rather arbitrarily but it avoids doing
something really stupid in most cases.
Wim Taymans [Wed, 27 Mar 2013 18:37:08 +0000 (19:37 +0100)]
videoconvert: small cleanup
Stefan Sauer [Thu, 28 Mar 2013 11:35:45 +0000 (12:35 +0100)]
uridecodebin: remove commented code
This is dead since ~6 years.
Stefan Sauer [Tue, 12 Mar 2013 07:10:23 +0000 (08:10 +0100)]
audiotestsrc: simplify the caps
Drop channel-mask as we only do mon/stereo and channel-mask is optional in these
cases.
Anton Belka [Mon, 25 Mar 2013 10:41:13 +0000 (13:41 +0300)]
riff: add "note" tag
Add GST_RIFF_TAG_note for wavparse.
https://bugzilla.gnome.org/show_bug.cgi?id=696549
https://bugzilla.gnome.org/show_bug.cgi?id=696550
Paul HENRYS [Fri, 22 Mar 2013 12:41:17 +0000 (13:41 +0100)]
audiobasesrc: Fix ringbuffer handling when settings caps
ringbuffer was released after setting values to its spec field
in gst_audio_base_src_setcaps(). This led to failure in case
gst_audio_base_src_setcaps() is called more than one time.
https://bugzilla.gnome.org/show_bug.cgi?id=696540
Wim Taymans [Mon, 25 Mar 2013 08:59:45 +0000 (09:59 +0100)]
video: set interlaced flag correctly in frame
We only look at the interlaced buffer flag in mixed mode, in other modes we
always need to set the interlaced flag.
Simon Berg [Sun, 24 Mar 2013 20:44:58 +0000 (20:44 +0000)]
audiotestsrc: fix rounding errors that might cause segments to be one sample too short
https://bugzilla.gnome.org/show_bug.cgi?id=676884
Simon Berg [Sun, 24 Mar 2013 20:41:44 +0000 (20:41 +0000)]
audiotestsrc: fix buffer size of last buffer
The last buffer before EOS may be smaller than the maximum
size. The current code doesn't adjust for this, it only sets
the duration and offsets.
https://bugzilla.gnome.org/show_bug.cgi?id=696411
Wim Taymans [Sat, 23 Mar 2013 23:39:01 +0000 (00:39 +0100)]
video-format: add small comment
Wim Taymans [Sat, 23 Mar 2013 23:38:22 +0000 (00:38 +0100)]
videoconvert: avoid double free
Set variable to NULL after free so that we don't free twice.
Wim Taymans [Sat, 23 Mar 2013 23:21:36 +0000 (00:21 +0100)]
Revert "videoconvert: prevent bad interlaced conversions"
This reverts commit
adc9694ed70870549fc8f4a6257f3b132ea31733.
No need to restrict the conversion, we can handle interlace correctly. We
basically unpack each field, then convert each field to the target colorspace
and pack and interleave each field to the target format. We also disable any
fast path that can't deal with interlaced formats.
David Schleef [Fri, 8 Mar 2013 22:49:31 +0000 (14:49 -0800)]
videoconvert: prevent bad interlaced conversions
Don't allow conversion that changes vertical subsampling if video
is interlaced.
Arnaud Vrac [Thu, 14 Feb 2013 00:35:45 +0000 (01:35 +0100)]
subparse: fix off by one offset calculation
Do not use the buffer start offset when it is invalid, otherwise a
discontinuity is detected on the next buffer, and the subtitle parser
reset and some subtitle lines are not shown.
Also remove unused next_offset field.
https://bugzilla.gnome.org/show_bug.cgi?id=693981
Tim-Philipp Müller [Fri, 22 Mar 2013 10:47:47 +0000 (10:47 +0000)]
Require Orc >= 0.4.17
Orc 0.4.17 fixes a bunch crashes on i386 and RPi when orc
functions can't be compiled and the fallback function is
supposed to be used. Also fixes some issues on PowerPC.
https://bugzilla.gnome.org/show_bug.cgi?id=684399
https://bugzilla.gnome.org/show_bug.cgi?id=693862
Tim-Philipp Müller [Fri, 22 Mar 2013 09:35:21 +0000 (09:35 +0000)]
typefinding: fix y4m caps
We need to specify the y4mversion field now.
https://bugzilla.gnome.org/show_bug.cgi?id=696282
Sebastian Dröge [Thu, 21 Mar 2013 14:37:31 +0000 (15:37 +0100)]
subtitleoverlay: Return ANY caps for the GET_CAPS query
subtitleoverlay handles any caps, not just the ones
for which a subtitle parser/renderer exist. It will
just ignore any unsupported streams instead of causing
an error.
https://bugzilla.gnome.org/show_bug.cgi?id=688476
Sebastian Dröge [Thu, 21 Mar 2013 12:33:44 +0000 (13:33 +0100)]
playsinkconvertbin: Make sure to return all allowed caps in the GET_CAPS query
Add all the caps that we can convert to to the filter caps,
otherwise downstream might just return EMPTY caps because
it doesn't handle the filter caps but we could still convert
to these caps, causing us to return EMPTY caps although
conversion would be possible.
https://bugzilla.gnome.org/show_bug.cgi?id=688803
Sebastian Dröge [Thu, 21 Mar 2013 12:29:06 +0000 (13:29 +0100)]
ximagesink: Don't access structures of EMPTY caps
If the intersection between our caps and the filter caps is
empty, just immediately return EMPTY caps instead of trying
to access the (non-existant) structures.
Sebastian Dröge [Thu, 21 Mar 2013 10:42:43 +0000 (11:42 +0100)]
playsinkconvertbin: Use gst_caps_is_subset() for handling the ACCEPT_CAPS query
Sebastian Dröge [Thu, 21 Mar 2013 10:14:27 +0000 (11:14 +0100)]
videoscale: Let the add-borders property default to TRUE
It's undesirable most of the time that the display aspect ratio
is changed.
Jan Schole [Wed, 20 Mar 2013 18:34:06 +0000 (19:34 +0100)]
videoscale: Correct DAR and border calculations
changed: gst_video_scale_set_info in gst/videoscale/gstvideoscale.c
DAR on sink side now calculated with PAR on sink side
ratio of output width/height now calculated with inverse PAR
additional condition that borders are 0:0 for passthrough mode
https://bugzilla.gnome.org/show_bug.cgi?id=696019
Wim Taymans [Fri, 15 Mar 2013 09:07:55 +0000 (10:07 +0100)]
playback-test: wait for buffering after seek
Wait for buffering to finish before setting the element to the playing state
after a seek.
Marc Leeman [Thu, 14 Mar 2013 09:58:11 +0000 (10:58 +0100)]
audioringbuffer: avoid division by 0 when outputting debug info
https://bugzilla.gnome.org/show_bug.cgi?id=695832
Wim Taymans [Thu, 14 Mar 2013 14:46:59 +0000 (15:46 +0100)]
xvimagesink: configure colorimetry
Use the XV_ITURBT_709 attribute to configure the 601 or 709 matrix
depending on the color matrix of the input video frame.
Wim Taymans [Thu, 14 Mar 2013 14:44:53 +0000 (15:44 +0100)]
xvcontext: protect X call with lock
Wim Taymans [Wed, 13 Mar 2013 10:13:58 +0000 (11:13 +0100)]
xvimagesink: use xvcontext for allocation
Make a new refcounted xvcontext object that handles the X connection.
Use the xvcontext to allocate images and windows. Move some code
around so that all X calls are made from the xvcontext object.
Make a GstXvImageAllocator object that allocates images from the xvcontext. We
can implement a copy function now for these memory objects now.
Make the bufferpool use the xvimageallocator object for its images.
Tim-Philipp Müller [Wed, 13 Mar 2013 01:00:45 +0000 (01:00 +0000)]
tests: fix appsrc unit test spam
spam 1 spam 2 spam 3 spam 4 spam 5
Greg Rutz [Tue, 12 Mar 2013 03:55:28 +0000 (21:55 -0600)]
libvisual: fix improper video frame clear operation
The current code is memsetting the GstVideoFrame.data address to 0s (which
causes a segfault). This member is actually an array of data buffers (one for
each plane). This fix iterates over each data plane to clear them all.
https://bugzilla.gnome.org/show_bug.cgi?id=695655
Nicola Murino [Tue, 12 Mar 2013 09:32:44 +0000 (10:32 +0100)]
appsrc: fix deadlock setting pipeline in NULL state with block=true
Emanuele Aina [Mon, 11 Mar 2013 21:33:04 +0000 (22:33 +0100)]
build: Link libgstrtsp-1.0.so to libm for pow()
https://bugzilla.gnome.org/show_bug.cgi?id=695658
Víctor Manuel Jáquez Leal [Mon, 11 Mar 2013 22:46:19 +0000 (23:46 +0100)]
appsink: update the emit-signal description
Update the emit-signal description according to its current signals.
https://bugzilla.gnome.org/show_bug.cgi?id=695660
Stefan Sauer [Mon, 11 Mar 2013 21:46:45 +0000 (22:46 +0100)]
adder: add a missing break
Dirk Van Haerenborgh [Sun, 10 Mar 2013 08:07:17 +0000 (09:07 +0100)]
riff: never create caps with negative height
https://bugzilla.gnome.org/show_bug.cgi?id=695540
Wim Taymans [Mon, 11 Mar 2013 09:49:58 +0000 (10:49 +0100)]
defs: add new methods
Olivier Crête [Fri, 22 Feb 2013 18:32:21 +0000 (13:32 -0500)]
rtsprange: Add function to convert a range between formats
Also add unit tests.
Olivier Crête [Fri, 22 Feb 2013 18:26:03 +0000 (13:26 -0500)]
rtsprange: Make _to_string() be more in line with RFC 2326
Fix various nits to make it more in line with the RFC, also add unit tests.
Olivier Crête [Fri, 22 Feb 2013 18:20:21 +0000 (13:20 -0500)]
rtsprange: Avoid going through fractions for large numbers
If the number of seconds exceeds 2^31, then it will be truncated if the
conversion is done using fractions, so multiply it directly.
Olivier Crête [Fri, 22 Feb 2013 18:18:10 +0000 (13:18 -0500)]
rtsprange: Fix conversion from UTC to GstClockTime
Do the difference in the right direction.
Olivier Crête [Tue, 19 Feb 2013 00:49:07 +0000 (19:49 -0500)]
rtspconnection: Add API to disable session ID caching in the connection
This is necessary to allow having more than one session in the same connection.
API: gst_rtsp_connection_set_remember_session_id()
API: gst_rtsp_connection_get_remember_session_id()
Josep Torra [Sun, 10 Mar 2013 17:05:28 +0000 (18:05 +0100)]
dmabuf: Use correct print format specifier to fix a compiler warning
Tim-Philipp Müller [Thu, 7 Mar 2013 10:49:30 +0000 (10:49 +0000)]
tests: update libs ABI check GstRTSPTimeRange structure size on i386
https://bugzilla.gnome.org/show_bug.cgi?id=695276
Stefan Sauer [Thu, 7 Mar 2013 08:27:45 +0000 (09:27 +0100)]
videotestsrc: make colors controlable
Also trim since markers.
Tim-Philipp Müller [Thu, 7 Mar 2013 00:00:14 +0000 (00:00 +0000)]
Automatic update of common submodule
From 2de221c to 04c7a1e
Stefan Sauer [Tue, 5 Mar 2013 21:29:24 +0000 (22:29 +0100)]
oggmux: don't keep a static string beyond the ref of the owning object
Also move down the ref for the caps a bit, so tha we don't leak it in the branch that calls continue.
Wim Taymans [Tue, 5 Mar 2013 15:41:52 +0000 (16:41 +0100)]
ximagesink: don't share memory
Wim Taymans [Tue, 5 Mar 2013 15:34:35 +0000 (16:34 +0100)]
xvimagesink: mark as NO_SHARE
We don't want to share the memory between buffers because that could
cause the memory of the bufferpool buffers to be copied and replaced
with other memory.
This is a hopefully a temporary fix until we can figure out how to share
properly.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=695203
Stefan Sauer [Fri, 1 Mar 2013 18:14:18 +0000 (19:14 +0100)]
oggmux: don't crash on caps being NULL
Also avoid unused variables if debugging is disabled.
Tim-Philipp Müller [Sun, 3 Mar 2013 17:44:11 +0000 (17:44 +0000)]
uridecodebin: minor GValue handling optimisation
Tim-Philipp Müller [Sun, 3 Mar 2013 17:43:47 +0000 (17:43 +0000)]
video: navigation: minor GValue optimisation
Tim-Philipp Müller [Sun, 3 Mar 2013 17:42:50 +0000 (17:42 +0000)]
vorbis: small GValue optimisation
No need to copy buffers we put into the streamheader any more
now that we don't put caps on buffers any more, so there's no
danger of a refcount cycle.
Tim-Philipp Müller [Sun, 3 Mar 2013 17:41:34 +0000 (17:41 +0000)]
theora: small GValue optimisations
No need to copy buffers we put into the streamheader any more
now that we don't put caps on buffers any more, so there's no
danger of a refcount cycle.
Tim-Philipp Müller [Sun, 3 Mar 2013 17:39:13 +0000 (17:39 +0000)]
ogg: small GValue optimisation
No need to copy buffers we put into the streamheader any more
now that we don't put caps on buffers any more, so there's no
danger of a refcount cycle.
Tim-Philipp Müller [Sun, 3 Mar 2013 17:26:03 +0000 (17:26 +0000)]
tests: fix leaks in adder unit test
Tim-Philipp Müller [Sun, 3 Mar 2013 17:11:25 +0000 (17:11 +0000)]
tests: fix leaks in videorate unit test
Tim-Philipp Müller [Sun, 3 Mar 2013 17:06:38 +0000 (17:06 +0000)]
tests: fix leak in audioresample unit test
Tim-Philipp Müller [Sun, 3 Mar 2013 16:51:10 +0000 (16:51 +0000)]
tests: fix leak in vorbisdec unit test
Sebastian Dröge [Sun, 3 Mar 2013 10:19:42 +0000 (11:19 +0100)]
riff: Use correct print format specifiers to fix compiler warnings
Sebastian Dröge [Sat, 2 Mar 2013 18:29:40 +0000 (19:29 +0100)]
videoscale: Fix compiler errors caused by not including config.h
_stdint.h requires config.h to be included to properly
use the correct code to get uint8_t and friends.
Sebastian Dröge [Sat, 2 Mar 2013 18:13:39 +0000 (19:13 +0100)]
fft: Fix compiler errors caused by not including config.h
_stdint.h requires config.h to be included to properly
use the correct code to get uint8_t and friends.
Christian Fredrik Kalager Schaller [Fri, 1 Mar 2013 09:04:53 +0000 (10:04 +0100)]
Update spec file for latest changes
Tim-Philipp Müller [Mon, 11 Apr 2011 14:10:01 +0000 (15:10 +0100)]
oggdemux: add audio-codec and video-codec tags for streams in more cases
Stefan Sauer [Wed, 27 Feb 2013 21:05:36 +0000 (22:05 +0100)]
adder: don't discard the flush-start events
This reverts one more part of
a86ca535c88a604daa431b0bc1cf4cd8fbb2d100 and
hopefully fixes #694553 for good.
Stefan Sauer [Wed, 27 Feb 2013 20:57:15 +0000 (21:57 +0100)]
tests: add a loop test for adder
Stefan Sauer [Wed, 27 Feb 2013 20:38:27 +0000 (21:38 +0100)]
adder: fix looping
Use gst_segment_do_seek() and clip position before updating the segment.
Stefan Sauer [Wed, 27 Feb 2013 20:36:26 +0000 (21:36 +0100)]
adder: remove defines we don#t use anymore
Akihiro Tsukada [Fri, 22 Feb 2013 12:02:19 +0000 (21:02 +0900)]
audio: add support for AAC pass-through
https://bugzilla.gnome.org/show_bug.cgi?id=694443
Wim Taymans [Tue, 26 Feb 2013 15:02:41 +0000 (16:02 +0100)]
ximagesink: use memory to store XImage info
Store the extra XImage information in the GstMemory instead of metadata.
Stefan Sauer [Mon, 25 Feb 2013 17:50:33 +0000 (18:50 +0100)]
adder: mark pending flush-stop on segment event
Also add more debug logging. Fixes #694553.
Stefan Sauer [Mon, 25 Feb 2013 17:49:56 +0000 (18:49 +0100)]
audioringbuffer: log a few more details (e.g. obj-name)
Sebastian Dröge [Sun, 24 Feb 2013 08:45:19 +0000 (09:45 +0100)]
xvimagepool: gst_memory_init() does not take ownership of the allocator
Sebastian Dröge [Sat, 23 Feb 2013 08:52:57 +0000 (09:52 +0100)]
xvimagesink: Implement XvImage memory as a GstMemory, not as a GstMeta
Sebastian Dröge [Fri, 22 Feb 2013 08:07:06 +0000 (09:07 +0100)]
dmabuf: The dmabuf allocator has a custom alloc function, mark it as such
Sreerenj Balachandran [Wed, 20 Feb 2013 16:36:20 +0000 (18:36 +0200)]
pbutils: recognise more H.264 profiles/levels
Add profile/level extraction for Multiview High profile
and Stereo High profile.
https://bugzilla.gnome.org/show_bug.cgi?id=694346
Sreerenj Balachandran [Thu, 21 Feb 2013 09:38:45 +0000 (11:38 +0200)]
typefindfunctions: recognize SVC and MVC nal units in h264 streams
Ensure the detection of svc and mvc as a part of h264 stream.
Once the typefinder detect a subset_sequence_parameter_set(ssps),
then each nal unit with type 14 or 20 should be detected as a
part of h264 stream thereafter.
https://bugzilla.gnome.org/show_bug.cgi?id=694346