Tim-Philipp Müller [Mon, 3 Sep 2012 17:57:00 +0000 (18:57 +0100)]
tests: make git ignore streamsynchronizer test binary
Tim-Philipp Müller [Sun, 2 Sep 2012 21:32:12 +0000 (22:32 +0100)]
video/x-xvid -> video/mpeg,mpegversion=4
Jan Schmidt [Mon, 3 Sep 2012 06:19:09 +0000 (23:19 -0700)]
On a still-frame begin message, drain out the decoder and send it.
Fixes still frame handling on DVDs
Jan Schmidt [Mon, 3 Sep 2012 05:59:58 +0000 (22:59 -0700)]
Revert "videodecoder: Send serialised events immediately, after we're pre-rolled."
This reverts commit
ef5316fbb0f6d5ffad7be18ed36903a89341c4de.
Tim-Philipp Müller [Sun, 2 Sep 2012 02:39:51 +0000 (03:39 +0100)]
docs: add design doc for text/x-raw format
Tim-Philipp Müller [Sun, 2 Sep 2012 01:41:34 +0000 (02:41 +0100)]
text/plain + text/x-pango-markup -> text/x-raw
Tim-Philipp Müller [Sun, 2 Sep 2012 00:27:17 +0000 (01:27 +0100)]
gst_message_new_duration() -> gst_message_new_duration_changed()
Jan Schmidt [Fri, 31 Aug 2012 19:42:12 +0000 (12:42 -0700)]
audiodecoder: Handle GAP events in place of segment updates
Use them to trigger generation of an empty output buffer or
to send pending events downstream and trigger pre-roll
Jan Schmidt [Fri, 31 Aug 2012 19:40:36 +0000 (12:40 -0700)]
videodecoder: Send serialised events immediately, after we're pre-rolled.
Only hold back events until the first buffer is generated, then just
send them directly. Otherwise, important events like 'still-frame' are
held forever, waiting for a frame that'll never arrive.
Edward Hervey [Thu, 30 Aug 2012 23:54:17 +0000 (16:54 -0700)]
check: Don't fail on GST_MESSAGE_WARNING
we will get some because some elements aren't present.
If the availability of those elements was critical, we will
eventually get an error message
Wim Taymans [Thu, 30 Aug 2012 18:22:32 +0000 (20:22 +0200)]
audiovis: add more debug
Mark Nauwelaerts [Thu, 30 Aug 2012 11:23:42 +0000 (13:23 +0200)]
videooverlaycomposition: also adjust docs and API defs to modified API
Mark Nauwelaerts [Thu, 30 Aug 2012 10:09:47 +0000 (12:09 +0200)]
pango: adjust to modified video overlay composition API
Mark Nauwelaerts [Thu, 30 Aug 2012 10:09:27 +0000 (12:09 +0200)]
videooverlaycomposition: allow more formats for rectangle pixel data
... adding AYUV, and allowing for ARGB or RGBA endian-independent.
Tim-Philipp Müller [Wed, 29 Aug 2012 18:23:57 +0000 (19:23 +0100)]
encodebin: rename flags type name
Mark Nauwelaerts [Tue, 28 Aug 2012 12:19:19 +0000 (14:19 +0200)]
theoradec: reset freed input and output states
Conflicts:
ext/theora/gsttheoradec.c
Mark Nauwelaerts [Fri, 24 Aug 2012 20:12:48 +0000 (22:12 +0200)]
videodecoder: parsing loop must ensure for a current frame
Mark Nauwelaerts [Tue, 7 Aug 2012 11:25:03 +0000 (13:25 +0200)]
videooverlaycomposition: stricter check on input variables
Tim-Philipp Müller [Sun, 26 Aug 2012 21:25:32 +0000 (22:25 +0100)]
playbin: automatically deinterlace interlaced content by default
Tim-Philipp Müller [Fri, 24 Aug 2012 16:21:58 +0000 (17:21 +0100)]
docs: add docs for some of the video info macros
Wim Taymans [Fri, 24 Aug 2012 14:56:00 +0000 (16:56 +0200)]
videoencoder: allow 0 sized output frames
Allow 0 sized frames in gst_video_encoder_allocate_output_frame(). Theora
encodes repeat frames, for example, as 0 sized buffers.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681196
Stefan Sauer [Wed, 22 Aug 2012 11:29:51 +0000 (13:29 +0200)]
Automatic update of common submodule
From 668acee to 4f962f7
Stefan Sauer [Wed, 22 Aug 2012 11:17:08 +0000 (13:17 +0200)]
configure: bump gtk-doc req to 1.12 (mar-2009)
This allows us to e.g. unconditionally use gtkdoc-rebase.
Tim-Philipp Müller [Wed, 22 Aug 2012 08:20:55 +0000 (09:20 +0100)]
rtp: fix buffer leak when gst_rtp_buffer_map() fails because of broken data
Makes libs/rtp unit test valgrind clean.
Wim Taymans [Wed, 22 Aug 2012 07:46:38 +0000 (09:46 +0200)]
rtp: Fix extension data support
Allocate header, payload and padding in separate memory blocks in
gst_rtp_buffer_allocate().
don't use part of the payload data as storage for the extension data but store
it in a separate memory block that can be enlarged when needed.
Rework the one and two-byte header extension to make it reserve space for the
extra extension first.
Fix RTP unit test. Don't map the complete buffer or make assumptions on the
memory layout of the underlaying implementation. We can now always add extension
data because we have a separate memory block for it.
Wim Taymans [Tue, 21 Aug 2012 09:49:36 +0000 (11:49 +0200)]
rtp: fix extension length calculation
Wim Taymans [Tue, 21 Aug 2012 09:48:33 +0000 (11:48 +0200)]
rtp: remove unused field
Tim-Philipp Müller [Tue, 21 Aug 2012 21:51:38 +0000 (22:51 +0100)]
pango: fix bad unref and crashes with multiple text overlays
gst_element_class_get_pad_template() does not return a ref,
so we mustn't unref the template returned. Fixes crashes
when switching back and forth between different types of
subtitle streams.
Tim-Philipp Müller [Tue, 21 Aug 2012 09:04:41 +0000 (10:04 +0100)]
win32: add new video align API to .def file
Tim-Philipp Müller [Mon, 20 Aug 2012 20:35:03 +0000 (21:35 +0100)]
video/x-dvd-subpicture -> subpicture/x-dvd
Wim Taymans [Mon, 20 Aug 2012 14:17:27 +0000 (16:17 +0200)]
video-frame: only copy the visible region
Make sure to only copy the visible region instead of assuming that the complete
stride is visible (which is not the case when padding is used).
Wim Taymans [Mon, 20 Aug 2012 14:14:07 +0000 (16:14 +0200)]
videometa: add more debug
Wim Taymans [Mon, 20 Aug 2012 14:13:00 +0000 (16:13 +0200)]
X11: add unpadded width/height as videometa
We need to add the real width/height as the values in the video metadata instead
of the padded values.
Wim Taymans [Mon, 20 Aug 2012 09:19:37 +0000 (11:19 +0200)]
X11: use new alignment function
Remove some custom padding and alignment functions and replace with the new
align function from the video library.
Wim Taymans [Mon, 20 Aug 2012 09:12:31 +0000 (11:12 +0200)]
video-info: update padding
Update the alignement structure with the new padding values because they could
have been changed when the padding was increased to align the strides.
Wim Taymans [Mon, 20 Aug 2012 08:50:59 +0000 (10:50 +0200)]
video: expose gst_video_info_align
Expose the gst_video_info_align function that adds padding and does stride
alignment on a GstVideoInfo. Move this previously private function to
video-info.co
Move the definition of the alignment structure to video.h where it can be picked
up by both the bufferpool and the video-info.
Wim Taymans [Mon, 20 Aug 2012 08:16:59 +0000 (10:16 +0200)]
videopool: improve alignment
Check the alignment of the strides in gst_video_info_align and increase the
padding on the frame until the strides are aligned.
Wim Taymans [Mon, 20 Aug 2012 08:03:09 +0000 (10:03 +0200)]
videopool: improve alignment
Align each plane instead of each component, we might otherwise apply the
alignment adjustement twice if a plane contains multiple components.
Wim Taymans [Mon, 13 Aug 2012 14:42:32 +0000 (16:42 +0200)]
video-format: fix docs a little
Tim-Philipp Müller [Sun, 19 Aug 2012 16:05:04 +0000 (17:05 +0100)]
toos: fix build and distcheck some more
The .in file is gone now.
Tim-Philipp Müller [Sat, 18 Aug 2012 20:36:09 +0000 (21:36 +0100)]
tools: remove gst-visualise script
Bit pointless really and clearly unused since the 0.8 days.
Also simplify Makefile while we're at it.
Tim-Philipp Müller [Sat, 18 Aug 2012 20:33:38 +0000 (21:33 +0100)]
videoscale: mark Lanczos method as experimental/unstable
It's known to crash in some circumstances.
Tim-Philipp Müller [Sat, 18 Aug 2012 20:18:57 +0000 (21:18 +0100)]
tools: remove man page for tool that no longer exists
Tim-Philipp Müller [Sat, 18 Aug 2012 20:15:24 +0000 (21:15 +0100)]
tools: remove obsolete filterstamp.sh script
There's gst-element-maker in -bad now.
Tim-Philipp Müller [Sat, 18 Aug 2012 20:13:01 +0000 (21:13 +0100)]
tools: add basic man page for gst-discoverer
https://bugzilla.gnome.org/show_bug.cgi?id=681905
Tim-Philipp Müller [Fri, 17 Aug 2012 21:54:13 +0000 (22:54 +0100)]
discoverer: remove unused 'silent' command line option
Stefan Sauer [Fri, 17 Aug 2012 21:03:52 +0000 (23:03 +0200)]
visual: enable commented out code again.
Finish the last change and reenable the shader code.
Sebastian Dröge [Thu, 16 Aug 2012 10:12:54 +0000 (12:12 +0200)]
docs: Add new video API to the docs
Sebastian Dröge [Thu, 16 Aug 2012 10:12:06 +0000 (12:12 +0200)]
video: Add methods to return a list of all pending GstVideoCodecFrames
Tim-Philipp Müller [Wed, 15 Aug 2012 23:11:00 +0000 (00:11 +0100)]
fft: shouldn't ever call exit()
Libraries shouldn't ever just call exit().
Let's hope we'll remember to cherry-pick this commit again
if we ever update these files.
https://bugzilla.gnome.org/show_bug.cgi?id=681904
Edward Hervey [Tue, 14 Aug 2012 16:53:52 +0000 (18:53 +0200)]
streamsynchronizer: Handle stream switching
* Update outgoing segment.base with accumulated time, ensuring all
streams are synchronized.
* Only consider streams as "new" is they have a STREAM_START event
with a different seqnum.
* Use GstStream segment.base instead of separate variable to store
the past running time.
* Disable passthrough
* Switch to glib 2.32 GMutex/GCond
* Avoid getting pad parent the expensive way
* Minor other fixes
Edward Hervey [Tue, 14 Aug 2012 16:50:39 +0000 (18:50 +0200)]
check: Add streamsynchronizer unit test
Edward Hervey [Tue, 14 Aug 2012 16:53:04 +0000 (18:53 +0200)]
audiobasesink: Avoid resetting ringbuffer when not needed
If the ringbuffer was configured to the same caps as previously, we
don't need to reconfigure it.
Sebastian Dröge [Tue, 14 Aug 2012 13:48:45 +0000 (15:48 +0200)]
audio/video: Add new API to the docs
Víctor Manuel Jáquez Leal [Tue, 7 Aug 2012 15:24:33 +0000 (17:24 +0200)]
audiodecoder: getter for allocator
Sometimes the decoder would use the allocator for something else than just
allocating output buffers, for example, querying different parameters.
This patch expose a getter accessor for the negotiated memory allocator.
Víctor Manuel Jáquez Leal [Tue, 7 Aug 2012 15:21:53 +0000 (17:21 +0200)]
audioencoder: getter for allocator
Sometimes the encoder would use the allocator for something else than just
allocating output buffers, for example, querying different parameters.
This patch expose a getter accessor for the negotiated memory allocator.
Víctor Manuel Jáquez Leal [Tue, 7 Aug 2012 15:19:05 +0000 (17:19 +0200)]
videoencoder: getter for allocator
Sometimes the encoder would need to use the allocator for something else than
just allocating output buffers, for example, querying different parameters.
This patch expose a getter accessor for the negotiated memory allocator.
Víctor Manuel Jáquez Leal [Mon, 6 Aug 2012 18:18:30 +0000 (20:18 +0200)]
videodecoder: getters for pool and allocator
Sometimes the decoder would need to use the pool or the allocator for
something else than just allocating output buffers. For example, the querying
for different parameters, such as asking for a bigger number of buffers to
allocate in the pool.
This patch expose a two getters accessors: one for the buffer pool and the
other for the memory allocator.
Tim-Philipp Müller [Mon, 13 Aug 2012 22:32:59 +0000 (23:32 +0100)]
audioencoder: return TRUE from _set_output_format() if all is good
Fixes not-negotiated errors in wavpackenc unit test.
Wim Taymans [Mon, 13 Aug 2012 11:47:01 +0000 (13:47 +0200)]
visual: add support for GstVideoFrame
Add support for GstVideoMeta and GstVideoFrame.
Remove some redundant fields that are also in GstVideoInfo
Disable the shader code, it looks broken.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681719
Wim Taymans [Mon, 13 Aug 2012 09:55:58 +0000 (11:55 +0200)]
visualizer: small cleanup
Wim Taymans [Mon, 13 Aug 2012 09:51:45 +0000 (11:51 +0200)]
visual: remove channel mask
We don't really care about what's inside those channels. This also makes the
caps valid because now it's no longer possible to have channels=1 and a mask
of 0x3.
Wim Taymans [Mon, 13 Aug 2012 09:27:47 +0000 (11:27 +0200)]
discovere: also parse encoded formats
The video library can now also parse encoded formats so use this to fill up the
width/height and other properties.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681535
Wim Taymans [Mon, 13 Aug 2012 09:27:26 +0000 (11:27 +0200)]
discoverer: remove \n from debug statement
Tim-Philipp Müller [Sun, 12 Aug 2012 17:10:02 +0000 (18:10 +0100)]
tests: update structure sizes for ABI test for i386
Stefan Sauer [Sun, 12 Aug 2012 07:57:11 +0000 (09:57 +0200)]
oggmux: remove superflous assignment
Stefan Sauer [Mon, 30 Jul 2012 13:38:45 +0000 (15:38 +0200)]
visual: add a FIXME as the discussion in IRC discontinued
Tim-Philipp Müller [Sat, 11 Aug 2012 09:18:37 +0000 (10:18 +0100)]
oggdemux: set HEADER flag on header packets
https://bugzilla.gnome.org/show_bug.cgi?id=681499
Tim-Philipp Müller [Sat, 11 Aug 2012 08:53:49 +0000 (09:53 +0100)]
oggmux: don't leak dropped seek event
Tim-Philipp Müller [Sat, 11 Aug 2012 07:14:27 +0000 (08:14 +0100)]
tests: update libsABI test to new structure sizes
The offset field addition in GstSegment has added
a few bytes.
Tim-Philipp Müller [Fri, 10 Aug 2012 16:08:31 +0000 (17:08 +0100)]
docs: expand GstDiscoverer::discovered signal docs a little
Evan Nemerson [Fri, 29 Jun 2012 22:46:46 +0000 (15:46 -0700)]
appsink, appsrc: skip set_callbacks APIs for introspection
https://bugzilla.gnome.org/show_bug.cgi?id=678301
Wim Taymans [Fri, 10 Aug 2012 14:58:47 +0000 (16:58 +0200)]
x11: fix alignment in non-XSHM case
Align the allocated memory to 16 bytes. When doing XSHM we are already aligned
to a page boundary but without, we use plain g_malloc, which could allocate
aligned on 8 bytes only.
See https://bugzilla.gnome.org/show_bug.cgi?id=680796
Wim Taymans [Fri, 10 Aug 2012 09:45:38 +0000 (11:45 +0200)]
x11: don't block in buffer acquire
Don't ever block when acquiring a buffer from the bufferpool in the fallback
mode. If we block, we might deadlock when going to PAUSED because we never
unlock when going to paused.
The acquire can block when there are no more buffers in the pool, this is a
sign that the pool is too small. Since we are the only ones using the pool in
the fallback case and because we scale the buffer, someone else must be using
our pool as well and is doing something bad.
Tim-Philipp Müller [Fri, 10 Aug 2012 09:45:09 +0000 (10:45 +0100)]
oggmux: pick delta pad earlier during header parsing and based on video/non-video
Pick delta pad earlier during header parsing, and pick it based
on whether it's a video stream or not rather than some rather
byzantine signalling from theoraenc etc. which would set the delta
flag on header packets which oggmux would then pick up and determine
that this is a "delta-able" stream.
Since the new videodecoder-based theoraenc didn't do that any more,
we would only see the first delta flag on the second video packet,
which is after we've already muxed a few audio packets flagged as
key units, which trips up the unit test.
Fixes pipelines/oggmux unit test.
https://bugzilla.gnome.org/show_bug.cgi?id=679958
Tim-Philipp Müller [Thu, 9 Aug 2012 18:57:49 +0000 (19:57 +0100)]
videodecoder: fix seeking again
Add missing break in FLUSH_STOP case.
Sebastian Dröge [Thu, 9 Aug 2012 15:06:31 +0000 (17:06 +0200)]
audioencoder: Let global tag events be handled the same way as other events
Sebastian Dröge [Thu, 9 Aug 2012 14:55:19 +0000 (16:55 +0200)]
audiodecoder: Let global tag events be handled the same way as other events
Sebastian Dröge [Thu, 9 Aug 2012 14:24:47 +0000 (16:24 +0200)]
audio: Merge upstream stream tags
Sebastian Dröge [Thu, 9 Aug 2012 14:19:32 +0000 (16:19 +0200)]
video: Merge upstream stream tags
Sebastian Dröge [Thu, 9 Aug 2012 14:09:46 +0000 (16:09 +0200)]
theoradec: Use new video decoder tag API
Sebastian Dröge [Thu, 9 Aug 2012 14:03:25 +0000 (16:03 +0200)]
docs: Add new video API to the docs
Sebastian Dröge [Thu, 9 Aug 2012 14:02:42 +0000 (16:02 +0200)]
videodecoder: Add API to conveniently handle tags
Sebastian Dröge [Thu, 9 Aug 2012 14:02:15 +0000 (16:02 +0200)]
videoencoder: Add API to conveniently handle tags
Sebastian Dröge [Thu, 9 Aug 2012 13:48:03 +0000 (15:48 +0200)]
audio: Always keep a complete taglist around
Otherwise updates to the tags will cause non-updated
tags to be lost downstream.
Sebastian Dröge [Thu, 9 Aug 2012 13:30:30 +0000 (15:30 +0200)]
docs: Add new audio base classes API to the docs
Sebastian Dröge [Thu, 9 Aug 2012 13:27:33 +0000 (15:27 +0200)]
audioencoder: Add negotiate vfunc that is used to negotiate with downstream
The default implementation negotiates a buffer pool and allocator
with downstream.
Sebastian Dröge [Thu, 9 Aug 2012 13:20:45 +0000 (15:20 +0200)]
audioencoder: Decouple setting of output format and downstream negotiation
This makes the audio encoder base class more similar to the video
encoder base class.
Sebastian Dröge [Thu, 9 Aug 2012 13:07:18 +0000 (15:07 +0200)]
audiodecoder: Add negotiate vfunc that is used to negotiate with downstream
The default implementation negotiates a buffer pool and allocator
with downstream.
Sebastian Dröge [Thu, 9 Aug 2012 13:02:27 +0000 (15:02 +0200)]
audiodecoder: Decouple setting of output format and downstream negotiation
This makes the audio decoder base class more similar to the video
decoder base class.
Sebastian Dröge [Thu, 9 Aug 2012 12:39:18 +0000 (14:39 +0200)]
videoencoder: Add negotiate vfunc that is used to negotiate with downstream
The default implementation negotiates a buffer pool and allocator
with downstream.
Sebastian Dröge [Thu, 9 Aug 2012 12:35:22 +0000 (14:35 +0200)]
videodecoder: Add negotiate vfunc that is used to negotiate with downstream
The default implementation negotiates a buffer pool and allocator
with downstream.
Tim-Philipp Müller [Wed, 8 Aug 2012 23:54:30 +0000 (00:54 +0100)]
tests: fix vorbisdec test
There won't be a tag messages on the bus, because tags
are now sent downstream for sinks to post on the bus,
and there's no sink involved here that would do that.
Secondly, the audio decoder base class only sends the
tags out once it has received some non-header data as
input, which is not something we're providing here.
Sebastian Dröge [Wed, 8 Aug 2012 14:12:20 +0000 (16:12 +0200)]
gst: Set alignment at the correct place of GstAllocationParams
Andoni Morales Alastruey [Wed, 8 Aug 2012 13:07:49 +0000 (15:07 +0200)]
oggdemux: add proper cast for print
Andoni Morales Alastruey [Wed, 8 Aug 2012 12:59:49 +0000 (14:59 +0200)]
videoencoder: add proper format for gsize
Andoni Morales Alastruey [Wed, 8 Aug 2012 12:55:56 +0000 (14:55 +0200)]
rtpbuffer: use proper format for gsize
Sebastian Dröge [Wed, 8 Aug 2012 13:28:52 +0000 (15:28 +0200)]
videoencoder: Always propose a video buffer pool when the subclass didn't provide one
And also request 16-byte aligned buffers if the subclass didn't
set anything else.
Tim-Philipp Müller [Wed, 8 Aug 2012 15:21:22 +0000 (16:21 +0100)]
Back to development
Tim-Philipp Müller [Wed, 8 Aug 2012 14:08:33 +0000 (15:08 +0100)]
Release 0.11.93