Tim-Philipp Müller
3ee2ad255b
audiocdsrc: mention TOCs in docs
2012-10-17 19:59:57 +01:00
Tim-Philipp Müller
224fb90469
theora, app: use gst_element_class_set_static_metadata()
...
Avoids string copies.
2012-10-17 16:54:14 +01:00
Tim-Philipp Müller
efff57d497
videodecoder: return NULL from _allocate_output_buffer() if alloc fails
...
.. instead of garbage pointer. Also log failure in debug log.
Should've returned the flow return like _allocate_output_frame().
https://bugzilla.gnome.org/show_bug.cgi?id=683098
2012-10-17 10:55:01 +01:00
Tim-Philipp Müller
4834e11da0
riff-media: fix palette extraction some more
...
We still need to make sure the palette is always at least 1024
bytes.
2012-10-16 11:48:32 +01:00
Tim-Philipp Müller
b0d581eadc
riff: create palette_data buffer correctly
...
gst_buffer_copy_into() will append to any existing
memory region, so don't create a buffer and alloc
some memory, but just create an empty buffer and
let _copy_into() append the memory we want. Fixes
the palette being 2048 bytes with the first half
being filled with garbage.
https://bugzilla.gnome.org/show_bug.cgi?id=686046
2012-10-16 00:55:56 +01:00
Mark Nauwelaerts
162433795a
audio: properly handle clipping of empty buffer
2012-10-15 18:48:01 +02:00
Tim-Philipp Müller
336842d35c
rtsprange: fix formatting and parsing of range floating-point values
...
Other locales might use a comma instead of a floating point
for floats, which might lead to parsing errors.
https://bugzilla.gnome.org/show_bug.cgi?id=684411
2012-10-13 00:19:54 +01:00
Tim-Philipp Müller
b772d5d271
riff: 8-bit paletted video is format RGB8P, not RGB8_PALETTED
...
https://bugzilla.gnome.org/show_bug.cgi?id=686046
2012-10-12 21:31:25 +01:00
Josep Torra
d8d9f0db97
audiodecoder: set of base_ts for segment formats other than time
...
Fixes setting of converted segment start as base_ts when estimate rate
is allowed.
2012-10-11 13:17:01 +02:00
Sebastian Dröge
e779002cfd
audiodecoder: Don't unref caps twice
...
Thanks to Josep Torra for noticing.
2012-10-10 15:50:31 +02:00
Mark Nauwelaerts
706498cb6e
videodecoder: finetune missing timestamp estimating
...
Monitor for reordered output timestamps, and then avoid oldest DTS
as PTS approach, and try for an oldest PTS as out PTS approach,
if at least all valid PTS available.
Avoids bogus estimating upon sparse available input PTS, and tries
to handle all-keyframe input, or input PTS which are actually DTS.
2012-10-10 15:04:10 +02:00
Wim Taymans
3591df23b1
docs: playbin2 -> playbin
2012-10-09 12:20:10 +02:00
Andoni Morales Alastruey
8a5cf5ef4d
audio/video: update documentation for vfunc's that require chaining up
2012-10-08 13:04:02 +02:00
Wim Taymans
c1d67d9bd6
video: small docs fix
2012-10-08 09:21:16 +02:00
Tim-Philipp Müller
cdb22274e6
audioencoder: make stop() vfunc also optional
...
Just change default value, since we also don't want to fail
if we want to deactivate and aren't active or want to activate
and are already active.
https://bugzilla.gnome.org/show_bug.cgi?id=685490
2012-10-04 13:40:32 +01:00
Andoni Morales Alastruey
795d366a0c
audioencoder: don't fail if the start vfunc is not implemented
...
Fix behaviour to match documentation and decoder class behaviour.
https://bugzilla.gnome.org/show_bug.cgi?id=685490
2012-10-04 13:14:10 +01:00
Michael Smith
92560517e8
Merge branch 'master' of ssh://git.freedesktop.org/git/gstreamer/gst-plugins-base
2012-10-03 10:45:26 -07:00
Michael Smith
a29c4f9489
meta registration: use g_once functions to register these threadsafely.
2012-10-03 10:44:59 -07:00
Sebastian Dröge
9d59b789c7
videodecoder: Fix unused variable compiler warning if debugging is disabled
2012-10-02 09:29:49 +02:00
Sebastian Pölsterl
e8fed7f04b
rtsp: mark url argument of gst_rtsp_url_parse() as out arg
...
https://bugzilla.gnome.org/show_bug.cgi?id=685242
2012-10-01 22:36:06 +01:00
Olivier Crête
531a5af30c
videodecoder: Also use the object lock to protect the output_state
...
Hold both the stream and the object lock to modify the output_state,
this way it can be safely modified while hold either one or the other.
Also, only hold the object lock in the query
https://bugzilla.gnome.org/show_bug.cgi?id=684832
2012-10-01 14:43:29 -04:00
Tim-Philipp Müller
80e45be3d0
appsrc: fix max-latency property getter
...
Was returning the min-latency value.
2012-09-29 21:42:46 +01:00
Mark Nauwelaerts
4adfff03ef
video{de,en}coder: fix missing timestamp estimating
...
... by having some more timestamp tracking in a private frame field.
Not doing so would lead to (a.o.) losing the needed minimum timestamp in
an earlier sent frame.
2012-09-28 13:59:24 +02:00
Mark Nauwelaerts
dc2f2c9a40
videodecoder: use oldest frame DTS to estimate missing outgoing PTS
2012-09-27 11:31:34 +02:00
Mark Nauwelaerts
dbc89e3ab6
videoencoder: use oldest frame PTS to estimate missing outgoing DTS
2012-09-26 16:32:37 +02:00
Mark Nauwelaerts
d247301aec
videoencoder: incoming buffer DTS is irrelevant
...
... and bogus anyway if PTS != DTS
2012-09-26 16:32:37 +02:00
Mark Nauwelaerts
6973a66813
videoencoder: clip input buffers to current input segment
...
... rather than to output segment, which will only be set
to current input segment if some output is produced
(coming from non-clipped input).
Also fixup debug message.
2012-09-25 17:19:15 +02:00
Tim-Philipp Müller
62c111f1e4
videodecoder: don't take STREAM_LOCK on upstream events
...
Don't try to take STREAM_LOCK on upstream events such as QOS.
Protect qos-related variables with object lock instead. Fixes
possible deadlock when shutting down in certain situations.
https://bugzilla.gnome.org/show_bug.cgi?id=684658
2012-09-24 10:56:35 +01:00
Sebastian Dröge
1e8f5a0b06
videodecoder: Update comments about forwarding/not-forwarding serialized events immediately
2012-09-20 10:04:30 +02:00
Olivier Crête
ebae8ffa71
videodecoder: Protect all accesses to priv->output_frame with the stream lock
...
Fixes segfault as queries/events can happen after a reset
2012-09-19 21:16:01 -04:00
Arun Raghavan
9f9718715a
audio: Explicitly specify endianness for IEC 61937 payloading
...
This is required since some systems (DirectSound and OS X) manage the
final byte order themselves.
https://bugzilla.gnome.org/show_bug.cgi?id=678021
2012-09-19 09:15:16 +05:30
Tim-Philipp Müller
5e0dfec62c
Remove -DGST_USE_UNSTABLE_API
2012-09-17 16:05:37 +01:00
Mark Nauwelaerts
c629a44162
replace gst_tag_list_free with gst_tag_list_unref
2012-09-14 17:53:21 +02:00
Mark Nauwelaerts
f7c247b6a3
replace gst_element_class_set_details_simple with gst_element_class_set_metadata
2012-09-14 17:02:59 +02:00
Wim Taymans
a57198a0ba
audio: improve property description
...
Improve the description of the latency-time and buffer-time properties in the
audio sink and source.
2012-09-14 16:08:50 +02:00
Sebastian Dröge
6e33f2d464
audiodecoder: Don't output an (unreffed) buffer in error cases
2012-09-14 14:54:22 +02:00
Wim Taymans
24bab1e5a8
fix for appsink GstFlowReturn
2012-09-14 13:39:20 +02:00
Wim Taymans
e46b45b0b8
appsink: add GstFlowReturn from signal handler
...
Expect a GstFlowReturn from the signal handler, just like from the callback.
Also use the return value.
2012-09-14 13:31:36 +02:00
Tim-Philipp Müller
f7c6aa5abd
Release 0.11.94
2012-09-14 02:47:54 +01:00
Olivier Crête
b35bc51ed6
audio: Fix annotations
2012-09-13 17:11:56 -04:00
Jan Schmidt
6159817c95
videodecoder: Handle GAP events
...
Drain out the decoder when encountering a gap. Needed for DVD 'still'
sequences which consist of a single video frame, and a large gap
while audio plays.
2012-09-12 23:07:29 -07:00
Jan Schmidt
52cfce851a
Fix still-frame handling.
...
Still frame events are not OOB downstream. Also, always send
immediately downstream.
2012-09-12 23:07:28 -07:00
Stefan Sauer
2fb27fa463
xmptag: migrate to the _full version of the API and drop the _full postfix
...
Fix up all invocations.
2012-09-12 21:32:04 +02:00
Michael Smith
79f0210aed
video: Add support for 4:2:2 10 bit video.
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683838
2012-09-12 09:59:26 +02:00
Tim-Philipp Müller
ec27f4e13c
tagdemux: also read tags if downstream activates us in pull mode right away
...
Fix reading of tags for the case filsrc ! footagdemux ! fooparse ! ..
where we would not read the tags because we never start our own
streaming thread.
https://bugzilla.gnome.org/show_bug.cgi?id=673185
2012-09-11 20:53:16 +01:00
Mark Nauwelaerts
899a809330
ext, gst-libs: only activate in pull mode if upstream is seekable
2012-09-11 17:37:27 +02:00
Wim Taymans
cbb78eb610
video-info: don't do alignment on the palette
...
Don't align the palette data. Fixes endless loop when trying to align
paletted formats.
2012-09-11 12:53:01 +02:00
Tim-Philipp Müller
d2237b2276
tagdemux: operate in pull mode
...
When we are operating in pull mode, we need to pull from upstream and push
downstream. Also make sure to push tags first.
2012-09-10 17:16:26 +02:00
Mark Nauwelaerts
214b7b6d1d
video: add some padding
...
... and clean up some related resolved FIXMEs
2012-09-10 14:03:49 +02:00
Wim Taymans
0ce33461c8
audiosrc: check for flushing state in provide_clock
...
Only provide a clock when we are not flushing, this means that we have posted a
PROVIDE_CLOCK message. We used to check if we were acquired but that doesn't
work anymore now that we do the negotiation async in the streaming thread: it's
possible that we are still negotiating when the pipeline asks us for a clock.
2012-09-10 12:19:22 +02:00
Wim Taymans
44dab50b7a
ringbuffer: add method to check the flushing state
2012-09-10 12:19:22 +02:00
Mark Nauwelaerts
75fe950c33
gst-libs: restore original full padding
2012-09-10 11:45:44 +02:00
Pontus Oldberg
a2f8ec4f5a
ringbuffer: add support for timestamps
...
Make it possible for subclasses to provide the timestamp (as an absolute time
against the pipeline clock) of the last read data.
Fix up alsa to provide the timestamp received from alsa. Because the alsa
timestamps are in monotonic time, we can only do this when the monotonic clock
has been selected as the pipeline clock.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=635256
2012-09-10 11:34:14 +02:00
Mark Nauwelaerts
a29fab200c
audio{de,en}coder: use GstClockTime parameters where appropriate
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683672
2012-09-10 11:20:50 +02:00
Tim-Philipp Müller
5101adf740
Remove some #define GLIB_DISABLE_DEPRECATION_WARNINGS that are no longer needed
2012-09-10 01:27:18 +01:00
Tim-Philipp Müller
879e6ab35c
appsrc: don't clear/free GCond twice
2012-09-10 01:16:41 +01:00
Tim-Philipp Müller
c4bd7c2391
discoverer: port to new GLib thread API
2012-09-10 01:10:33 +01:00
Thibault Saunier
91cdd763eb
rtsp: port to the new GLib thread API
2012-09-09 20:41:06 -03:00
Thibault Saunier
39a907d04d
video: port to the new GLib thread API
2012-09-09 20:41:06 -03:00
Thibault Saunier
dc5bb008a3
audio: port to the new GLib thread API
2012-09-09 20:41:06 -03:00
Thibault Saunier
acde0579f8
app: port to the new GLib thread API
2012-09-09 20:41:06 -03:00
Tim-Philipp Müller
37f9177817
video/x-3ivx -> video/mpeg, mpegversion=4
2012-09-10 00:28:15 +01:00
Tim-Philipp Müller
9b8cbec590
discoverer: extract audio depth correctly
...
But we should only do that if it comes straight from a
container or wavparse, not if it comes from a decoder,
otherwise it's probably not really meaningful.
2012-09-09 21:11:20 +01:00
Tim-Philipp Müller
bd12b82538
discoverer: reflow some code to avoid gst-indent ping-pong
2012-09-09 19:48:54 +01:00
Tim-Philipp Müller
2079a8c12b
Remove glib-compat-private.h stuff we don't need any more
...
It's all been ported to the latest GLib API now.
2012-09-09 18:36:49 +01:00
Tim-Philipp Müller
202cd3c17c
install-plugins: constify _install_*sync() details array arguments
2012-09-09 18:29:40 +01:00
Mark Nauwelaerts
d4c1b160ef
videoencoder: only set invalid DTS equal to PTS for keyframe
...
Also add a bit more debug.
See also https://bugzilla.gnome.org/show_bug.cgi?id=679443
2012-09-07 17:41:52 +02:00
Tim-Philipp Müller
21c61586ad
rtpbasepayload: error out if no CAPS event was received before buffers
...
Most payloaders set/send their own output format from the setcaps
function, so if we don't get input caps, things probably wont' work
right, even if the input format is fixed (as in the case of the mpeg-ts
payloader for example).
https://bugzilla.gnome.org/show_bug.cgi?id=683428
2012-09-06 18:23:22 +01:00
Tim-Philipp Müller
3d006f6d2a
rtpbasepayload: assume input caps are accepted if subclass has no set_caps vfunc
...
Not that anyone should ascribe too much meaning to these return
values in the age of sticky caps.
2012-09-06 17:47:01 +01:00
Mark Nauwelaerts
20806e4c16
videoencoder: plug some leaks
2012-09-06 13:04:56 +02:00
Mark Nauwelaerts
c9d3f32cc9
audioencoder: plug some leaks
2012-09-06 12:16:59 +02:00
Mark Nauwelaerts
bd67736851
rtpbasedepay: indicate packet loss using GAP event
2012-09-05 12:02:32 +02:00
Mark Nauwelaerts
cd2e795154
videooverlaycomposition: add some _get_argb and _get_ayuv functions
...
... that will handle automatic conversion to indicated format.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683180
2012-09-05 10:15:51 +02:00
Wim Taymans
668ce33384
update for basesink change
2012-09-04 12:18:11 +02:00
Tim-Philipp Müller
ba7d738d9e
video/x-xvid -> video/mpeg,mpegversion=4
2012-09-03 18:56:26 +01:00
Jan Schmidt
041c16b47d
On a still-frame begin message, drain out the decoder and send it.
...
Fixes still frame handling on DVDs
2012-09-02 23:19:09 -07:00
Jan Schmidt
acadc94279
Revert "videodecoder: Send serialised events immediately, after we're pre-rolled."
...
This reverts commit ef5316fbb0
.
2012-09-02 22:59:58 -07:00
Tim-Philipp Müller
7c2e7b1a4f
text/plain + text/x-pango-markup -> text/x-raw
2012-09-02 02:45:41 +01:00
Tim-Philipp Müller
a99a1042b9
gst_message_new_duration() -> gst_message_new_duration_changed()
2012-09-02 01:27:17 +01:00
Jan Schmidt
5dafecad31
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
2012-08-31 12:42:12 -07:00
Jan Schmidt
ef5316fbb0
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.
2012-08-31 12:40:36 -07:00
Mark Nauwelaerts
89228e911c
videooverlaycomposition: allow more formats for rectangle pixel data
...
... adding AYUV, and allowing for ARGB or RGBA endian-independent.
2012-08-30 12:12:39 +02:00
Mark Nauwelaerts
9262e00007
videodecoder: parsing loop must ensure for a current frame
2012-08-28 14:31:06 +02:00
Mark Nauwelaerts
dd4836a8d1
videooverlaycomposition: stricter check on input variables
2012-08-28 11:01:46 +02:00
Tim-Philipp Müller
7970a0ac71
docs: add docs for some of the video info macros
2012-08-24 17:23:08 +01:00
Wim Taymans
a994ebcf1b
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
2012-08-24 16:56:00 +02:00
Tim-Philipp Müller
392d3225ce
rtp: fix buffer leak when gst_rtp_buffer_map() fails because of broken data
...
Makes libs/rtp unit test valgrind clean.
2012-08-22 09:20:55 +01:00
Wim Taymans
1968127650
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.
2012-08-22 09:56:39 +02:00
Wim Taymans
2d6fd0f72d
rtp: fix extension length calculation
2012-08-22 09:56:39 +02:00
Wim Taymans
f548e58385
rtp: remove unused field
2012-08-22 09:56:39 +02:00
Tim-Philipp Müller
5b715cdb90
video/x-dvd-subpicture -> subpicture/x-dvd
2012-08-20 21:36:15 +01:00
Wim Taymans
211b8b6004
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).
2012-08-20 16:17:27 +02:00
Wim Taymans
6702a2f64c
videometa: add more debug
2012-08-20 16:14:07 +02:00
Wim Taymans
9583d1bfc9
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.
2012-08-20 11:12:31 +02:00
Wim Taymans
9a2344c2e5
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.
2012-08-20 10:50:59 +02:00
Wim Taymans
f56e1222da
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.
2012-08-20 10:25:39 +02:00
Wim Taymans
ca77174f91
videopool: improve alignment
...
Align each plane instead of each component, we might otherwise apply the
alignment adjustement twice if a plane contains multiple components.
2012-08-20 10:06:15 +02:00
Wim Taymans
2bffebcb02
video-format: fix docs a little
2012-08-20 10:06:15 +02:00
Sebastian Dröge
bdc056c12d
video: Add methods to return a list of all pending GstVideoCodecFrames
2012-08-16 12:13:25 +02:00
Tim-Philipp Müller
d1dc65d6ee
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
2012-08-16 00:11:00 +01:00