yanghuolin
67a7b5a993
alsasink: don't use 100% CPU
...
The root cause is that alsa-lib is not thread safe for the same handle.
There are two threads in the gstreamer accessing alsa-lib not serilized.
The race condition happens when one thread holds the old framebuffer app_ptr
position in the kernel, another thread advances the framebuffer app_ptr.
when the former thread is scheduled to run again, it overwrites the app_ptr
to old value by copying from kernel.Thus,the app_ptr in the upper
alsa-lib(pcm_rate) become one period size more advanced than the lower
alsa-lib(pcm_hw & kernel).
gstreamer uses noblock and poll method to communicate with the alsa-lib.
The app_ptr unsync situation as described above makes the poll return immediately because
it concludes there is enough space for the ring-buffer via the low-level alsa-lib.
The write function returns immediately because it concludes there is not enough
space for the ring-buffer from the upper-level alsa-lib. Then the loop of poll
and write runs again and again until another period size is available for
ring-buffer.This leads to the cpu 100 problem.
delay_lock is used to avoid the race condition.
Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=690937
2013-01-24 15:08:31 +01:00
Vincent Penquerc'h
658195e6de
oggdemux: fix incorrect testing of invalid granpos values
...
Positive granulepos is valid, -1 granulepos is unset, and all
other negative granulepos are invalid.
Reported by Tim-Philipp Müller
2013-01-07 18:03:52 +00:00
Tim-Philipp Müller
76c0cca765
textoverlay: minor clean-up
...
Remove some macros that aren't needed any more.
2012-12-22 21:19:51 +00:00
Tim-Philipp Müller
df8e7f14a8
textoverlay: support shaded background for A420 format
...
https://bugzilla.gnome.org/show_bug.cgi?id=687817
2012-12-22 21:18:11 +00:00
Thijs Vermeir
41412f08ec
opus: use appropriate printf format for gsize
2012-12-18 16:56:28 +01:00
Thijs Vermeir
dc9f19cbba
vorbis: fix unused variable
2012-12-18 15:34:42 +01:00
Tim-Philipp Müller
df6031f7c6
alsasrc: return negative value on read error
...
Otherwise baseaudiosrc won't go into the error code path.
https://bugzilla.gnome.org/show_bug.cgi?id=690197
2012-12-17 20:50:33 +00:00
Tim-Philipp Müller
3d5a78e67a
alsa: post error message when audio device disappears
...
Don't loop forever if an USB audio device gets disconnected
while in use. Post an error message instead. This is not
enough yet though, we still need to make the base class
and/or the ring buffer bail out.
https://bugzilla.gnome.org/show_bug.cgi?id=690197
2012-12-16 01:00:43 +00:00
Sebastian Dröge
d9b25afe71
ext: Fix some compilation errors caused by circular header includes
2012-12-12 17:22:31 +00:00
Tim-Philipp Müller
71e46b2478
gst_adapter_prev_timestamp -> gst_adapter_prev_pts
...
https://bugzilla.gnome.org/show_bug.cgi?id=675598
2012-11-14 00:03:15 +00:00
Sebastian Dröge
c09f503f72
Revert "vorbisdec: Fix GType name conflict if tremor and libvorbis decoder are used in the same process"
...
This reverts commit 858392f88a
.
A similar, cleaner fix was already in place.
2012-11-13 16:11:42 +01:00
Sebastian Dröge
858392f88a
vorbisdec: Fix GType name conflict if tremor and libvorbis decoder are used in the same process
2012-11-13 15:41:34 +01:00
Tim-Philipp Müller
ba255fbac6
textoverlay: implement background shading for IYU1
...
https://bugzilla.gnome.org/show_bug.cgi?id=687817
2012-11-07 13:59:53 +00:00
Tim-Philipp Müller
bd578c1dd4
textoverlay: also draw shaded backgrounds for RGB and BGR
...
https://bugzilla.gnome.org/show_bug.cgi?id=687817
2012-11-07 13:25:13 +00:00
Tim-Philipp Müller
caad241432
textoverlay: we can do YVU9 as well
2012-11-07 11:36:42 +00:00
Tim-Philipp Müller
16350b7d66
textoverlay: don't advertise 10-16-bit formats we can't blend text onto yet
...
We can't blend stuff on top of video formats that unpack into
ARGB64 or AYUV64 yet, so don't advertise them in our template caps.
2012-11-07 11:32:50 +00:00
Tim-Philipp Müller
e3bb068392
textoverlay: fix up names of old gray formats
...
Y800 -> GRAY8, Y16 -> GRAY16_{LE,BE}
2012-11-07 09:46:50 +00:00
Tim-Philipp Müller
74343165e1
textoverlay: draw shaded background for some more video formats
...
https://bugzilla.gnome.org/show_bug.cgi?id=687817
2012-11-07 09:41:13 +00:00
Tim-Philipp Müller
bedbfd0091
textoverlay: clamp shaded background box coordinates in one place
2012-11-07 09:41:13 +00:00
Tim-Philipp Müller
4aace8e0eb
textoverlay: move background shading into separate function
2012-11-07 09:41:13 +00:00
Tim-Philipp Müller
a53f0f382e
textoverlay: don't abort if we don't know how to paint shaded background for a format
...
It's not a very nice thing to do.
https://bugzilla.gnome.org/show_bug.cgi?id=687666
2012-11-06 23:44:01 +00:00
Sreerenj Balachandran
6cbcca0bc5
textoverlay: forward allocation queries on video sink pad instead of discarding them
...
This allows the upstream elements to use the allocation parameters
or pools from the downstream elements like videosink.
https://bugzilla.gnome.org/show_bug.cgi?id=687459
2012-11-05 13:27:56 +00:00
Tim-Philipp Müller
3e208df632
Fix FSF address
...
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:09:59 +00:00
Tim-Philipp Müller
5f59b4f7ee
Fix FSF address
...
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-03 23:05:09 +00:00
Jonathan Liu
7f22e3ea7f
oggstream: fix crash with 0 byte ogg packets
...
https://bugzilla.gnome.org/show_bug.cgi?id=687030
2012-10-29 12:04:38 +00:00
Tim-Philipp Müller
3138c4e696
pango: avoid unnecessary pango attribute list copy
...
We just want to keep it alive, not modify it, so a
simple ref should be enough.
https://bugzilla.gnome.org/show_bug.cgi?id=686841
2012-10-25 17:16:58 +01:00
Jihyun Cho
2e0174e13c
pango: delete foreground color in shadow text
...
This makes colored text have gray drop shadows
instead of colored ones, which looks much better.
https://bugzilla.gnome.org/show_bug.cgi?id=686841
2012-10-25 17:16:58 +01:00
Carlos Rafael Giani
a01598c1f1
opusdec: fixed buffer unmapping bug
...
When the decoder received a NULL buffer, it tried to
unmap a not mapped buffer.
https://bugzilla.gnome.org/show_bug.cgi?id=686829
2012-10-25 01:20:23 +01:00
Sebastian Dröge
3c1041d5eb
Revert "gst: Add better support for static plugins"
...
This reverts commit d2d79e3bc2
,
which was accidentially pushed.
2012-10-24 13:26:26 +02:00
Sebastian Dröge
d2d79e3bc2
gst: Add better support for static plugins
2012-10-24 12:10:44 +02:00
Tim-Philipp Müller
ccbb233da8
alsasink: fix caps leak in acceptcaps function
...
https://bugzilla.gnome.org/show_bug.cgi?id=681192
2012-10-20 11:38:55 +01:00
Tim-Philipp Müller
1a69ec3fd3
alsa: if no formats in native endianness could be detected, try non-native endianness as well
...
This can happen, e.g. when using an USB sound card on
a big-endian device
https://bugzilla.gnome.org/show_bug.cgi?id=680904
2012-10-18 11:04:06 +01:00
Tim-Philipp Müller
1e329bb4f4
alsa: fix supported format detection
...
The format probing code was assuming there'd be one caps
structure for each separate width/depth combination like
we did in 0.10 all over the place: for one, we'd query
unsigned/signed formats together for the same width/height,
and we'd add the entire current structure to the probed
caps when we find a format is supported. Now that we have
all raw formats in a single structure, this is all not going
to work so well any more. We added the entire structure with
all possible formats to the caps if we support just one format.
Fix probing so that we only return the list of actually
supported raw audio formats (with native endianness) from
get_caps().
2012-10-18 11:03:07 +01:00
Tim-Philipp Müller
942680d979
Use gst_element_class_set_static_metadata()
...
where possible. Avoids some string copies. Also re-indent
some stuff. Also some indent fixes here and there.
2012-10-17 17:46:34 +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
Sebastian Dröge
754d0fca25
ivorbisdec: Rename debug category to prevent symbol conflict when using static linking
2012-10-09 13:10:38 +02:00
Wim Taymans
3591df23b1
docs: playbin2 -> playbin
2012-10-09 12:20:10 +02:00
Sebastian Dröge
c4fb8d1e69
basetextoverlay: Correctly handle empty text buffers
2012-09-27 12:41:28 +02:00
Tim-Philipp Müller
1c22b1fe11
oggmux: send stream-start event
2012-09-23 13:27:27 +01:00
Olivier Crête
f1227a374a
opusenc: Rank as Primary
2012-09-22 14:58:52 -04:00
Tim-Philipp Müller
e072bd6130
oggmux: fix up previous commit
...
Was missing the header file change.
2012-09-21 16:10:27 +01:00
Tim-Philipp Müller
5890a4a803
oggmux: send a segment event at the beginning
2012-09-21 15:58:07 +01: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
Sebastian Dröge
b19944d1e4
gst: Update for link/unlink function API change
2012-09-17 13:24:52 +02:00
Mark Nauwelaerts
c629a44162
replace gst_tag_list_free with gst_tag_list_unref
2012-09-14 17:53:21 +02:00
Mark Nauwelaerts
42024f70dc
replace gst_element_class_set_details_simple with gst_element_class_set_metadata
2012-09-14 17:27:49 +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
Stefan Sauer
b9054de15c
collectpads: remove gst_collect_pads_add_pad_full
...
Rename gst_collect_pads_add_pad_full() to gst_collect_pads_add_pad() and fix all
invocations.
2012-09-12 21:03:21 +02:00
Peter Korsgaard
331b660e65
opus + jpegformat: unbreak non-debug build
...
opus + jpegformat plugin builds fail when gstreamer is configured with
--disable-gst-debug as they are checking the GST_DISABLE_DEBUG symbol
instead of GST_DISABLE_GST_DEBUG.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
https://bugzilla.gnome.org/show_bug.cgi?id=683850
2012-09-12 09:13:30 +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
Mark Nauwelaerts
59e408f54e
opusenc: port to the new GLib thread API
2012-09-11 15:12:55 +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
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
5bb8021fc9
oggdemux: port to new GLib thread API
2012-09-10 01:08:51 +01:00
Tim-Philipp Müller
794af4fc51
alsa: port to new GLib thread API
2012-09-10 01:06:51 +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
16c185bac6
libvisual: fix crashes and invalid writes in totem
...
This reverts part of "visual: enable commented out code again."
(commit 8222ba16c8
).
The shader code does indeed look broken (or rather,
it makes assumptions that are not necessarily true here,
namly that pixel stride is 4, for example), which
makes totem very crashy and causes other weird behaviour.
Also see https://bugzilla.gnome.org/show_bug.cgi?id=683527
2012-09-08 23:03:16 +01:00
Mark Nauwelaerts
36e78af5bf
pango: add missing break
2012-09-05 15:14:05 +02:00
Mark Nauwelaerts
b3545604c0
pango: handle GAP event to update text position
2012-09-05 12:02:32 +02:00
Mark Nauwelaerts
62ef0fc55e
oggmux: remove dead code
2012-09-05 12:02:32 +02:00
Mark Nauwelaerts
6a43c1f9c7
oggdemux: send GAP event
...
... in stead of old update newsegment event.
2012-09-05 12:02:32 +02: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
Wim Taymans
bd9a7fdeaf
audiovis: add more debug
2012-08-30 20:22:32 +02:00
Mark Nauwelaerts
8db0cc4350
pango: adjust to modified video overlay composition API
2012-08-30 12:12:39 +02:00
Mark Nauwelaerts
b80f5e53c4
theoradec: reset freed input and output states
...
Conflicts:
ext/theora/gsttheoradec.c
2012-08-28 14:31:06 +02:00
Tim-Philipp Müller
96faac2891
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.
2012-08-21 22:51:38 +01:00
Stefan Sauer
8222ba16c8
visual: enable commented out code again.
...
Finish the last change and reenable the shader code.
2012-08-17 23:04:53 +02:00
Wim Taymans
c6e19d5df2
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
2012-08-13 13:47:01 +02:00
Wim Taymans
19695f76d0
visualizer: small cleanup
2012-08-13 11:55:58 +02:00
Wim Taymans
c4d97601ea
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.
2012-08-13 11:52:15 +02:00
Stefan Sauer
a2b1243064
oggmux: remove superflous assignment
2012-08-12 09:57:11 +02:00
Stefan Sauer
8add0de2c5
visual: add a FIXME as the discussion in IRC discontinued
2012-08-11 12:52:07 +02:00
Tim-Philipp Müller
4ed7ebc071
oggdemux: set HEADER flag on header packets
...
https://bugzilla.gnome.org/show_bug.cgi?id=681499
2012-08-11 10:18:37 +01:00
Tim-Philipp Müller
8b15f5a8ab
oggmux: don't leak dropped seek event
2012-08-11 09:53:49 +01:00
Tim-Philipp Müller
0dd2766d83
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
2012-08-10 10:45:09 +01:00
Sebastian Dröge
5989d75e10
theoradec: Use new video decoder tag API
2012-08-09 16:09:46 +02:00
Andoni Morales Alastruey
15c712c7c6
oggdemux: add proper cast for print
2012-08-08 17:41:19 +02:00
Tim-Philipp Müller
fc37cf5779
Silence some 'variable may be used uninitialized' compiler warnings
...
when compiling with -DG_DISABLE_ASSERT
2012-08-08 10:19:20 +01:00
Tim-Philipp Müller
17c839c8a1
No statements with side-effects in g_assert() or g_return_*() please
2012-08-08 10:11:48 +01:00
Olivier Crête
e24196ae28
theoradec: Drop ignored headers
...
Instead of finishing an empty frame, call drop_frame as we're
ignoring the header frame.
2012-08-07 13:58:58 -07:00
Sebastian Dröge
e25a861ed6
oggdemux: Add stream-id to the stream-start event
2012-08-06 14:01:28 +02:00
Tim-Philipp Müller
a052550ed7
gst_tag_list_free -> gst_tag_list_unref
2012-08-04 16:31:30 +01:00
Sebastian Dröge
99d73c94e9
tag: Update for taglist/tag event API changes
2012-07-28 00:35:02 +02:00
Wim Taymans
683a38ad65
update for new variable names
2012-07-27 15:24:43 +02:00
Mark Nauwelaerts
f1c583bde3
vorbisenc: adjust to modified audioencoder getcaps helper API
2012-07-25 15:58:19 +02:00
Vivia Nikolaidou
6830a7f744
theoraenc: Call video_encoder_negotiate() once configured
2012-07-24 20:42:49 +02:00
Wim Taymans
c9c4aedaa6
oggdemux: don't copy empty packets
...
Don't try to copy empty packets, which contain a repeated frame in theora.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680520
2012-07-24 14:36:58 +02:00
Wim Taymans
cdbd97a43d
audiovisualizer: fixate caps completely
...
Call gst_caps_fixate() to make sure that the caps are completely fixated before
using them as the final caps in negotiation.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680162
2012-07-24 12:25:08 +02:00
Sebastian Dröge
5d830cfbd8
vorbis: Update for audio base classes API changes
2012-07-23 10:30:40 +02:00
Sebastian Dröge
aa21a162d7
theora: Update for video base classes API changes
2012-07-23 10:19:16 +02:00
Sebastian Dröge
ca928f3916
theoraenc: Use base class functions to allocate output buffers
2012-07-23 09:45:11 +02:00
Edward Hervey
0cc8445cfa
theoradec: Call video_decoder_negotiate() once configured
2012-07-18 18:17:57 +02:00
Edward Hervey
1097102b20
oggdemux: Don't push stream-start in two different locations
2012-07-18 18:17:57 +02:00
Mark Nauwelaerts
3ecad525b7
pango: adjust to modified video overlay composition API
2012-07-17 18:08:11 +02:00
Stefan Sauer
a1d2abbde6
audiovisualizer: shorten base class name
...
As suggested on IRC rename to AudioVisualizer. We use custom suffix on the type
to avoid clashing with other copies for the time being.
2012-07-16 21:58:23 +02:00
Stefan Sauer
673dafd09d
oggmux: only drop flushing seeks after we started to mux
...
Don't drop all seek events. It is okay to seek before we send the headers. Non
flushing seeks are okay at any time later as well.
2012-07-16 11:27:57 +02:00
Edward Hervey
25aa25be3a
oggdemux: Push out STREAM_START events when needed
2012-07-12 09:51:36 +02:00
Wim Taymans
566b5c4d1d
visual: use right base class name
...
Rename to GstAudioBaseVisualizer. Also avoids conflict with a base class with
the same name in -bad.
2012-07-10 10:07:08 +02:00
Stefan Sauer
5e6abc449b
visual: port to baseaudiovisualizer
...
Add a copy of the base class until it is stable. Right now the extra effects of
the baseclass are not supported as the sublass overwrites the buffer instead of
blending.
2012-07-09 19:59:53 +02:00
Stefan Sauer
85565952ee
visual: split the plugin wrapper and the actual element
2012-07-09 19:59:53 +02:00
Tim-Philipp Müller
a654ba5b85
pango: remove deprecated valign and halign properties
...
Replaced by valignment and halignment (enum-based now rather than strings).
2012-07-06 12:34:46 +01:00
Wim Taymans
53fc1f3fca
update for query api changes
2012-07-06 11:50:44 +02:00
Wim Taymans
177fd005ab
update for query api changes
2012-07-06 11:23:48 +02:00
Wim Taymans
bc5ba349b7
update for allocation query changes
2012-07-06 11:05:09 +02:00
Sebastian Dröge
74c7524b49
gst: Implement segment-done event
2012-07-05 13:06:04 +02:00
Mark Nauwelaerts
4761e6d6ab
pango: query downstream for video overlay composition meta support
2012-07-03 14:35:25 +02:00
Mark Nauwelaerts
aa6295744b
pango: adjust to modified overlay composition API
2012-07-03 14:35:25 +02:00
Tim-Philipp Müller
1396f804be
pango: only map video buffer memory if actually needed
...
No need to map the video buffer if we're just going to attach
the meta; but if we map, we should do so in READWRITE mode.
2012-07-02 19:23:47 +01:00
Tim-Philipp Müller
52056653be
pango: pass pre-multiplied alpha to overlay composition directly
...
We now support pre-multiplied alpha in the overlay composition API,
and can avoid multiple conversions if the the overlay also supports
pre-multiplied alpha. We should probably also have mapped the
buffer as READWRITE when unpremultiplying.
2012-07-02 19:23:04 +01:00
Tim-Philipp Müller
c09512ee99
pango: remove support for video/x-surface again which is 0.10 stuff
...
This needs to be done and can be done differently/properly in 0.11.
2012-06-28 23:15:34 +01:00
Tim-Philipp Müller
b381af7d2d
theoraenc: clean up some property descriptions
...
We now require a sufficiently-recent libtheora.
2012-06-28 23:07:16 +01:00
Mark Nauwelaerts
0325a3bdae
pango: use ported GstVideoOverlayComposition functionality
...
Based on commits by Thibault Saunier <thibault.saunier@collabora.co.uk>
2012-06-28 18:16:25 +02:00
Wim Taymans
f28e2e7bea
fix interlace-mode
2012-06-26 17:15:49 +02:00
Wim Taymans
21e9f64ab2
update for task api change
2012-06-20 10:33:24 +02:00
Jan Schmidt
30c9bb709b
theoradec: Remove use of NEED_DATA
...
Remove the confusing internal-only use of
the GST_VIDEO_DECODER_FLOW_NEED_DATA return code.
2012-06-17 12:42:08 +10:00
Vincent Penquerc'h
de739ee1d1
opusenc: add missing mutex unlock on error path
2012-06-15 10:39:48 +01:00
Vincent Penquerc'h
ad4da8dd0e
opus: set author to myself, and update copyright notices
...
because as slomo noted, in fact pretty much all the code in there is mine.
2012-06-15 10:39:41 +01:00
Vincent Penquerc'h
492341db77
oggdemux: fix quadratic search for last page
...
A crafted file with invalid pages will cause repeated searches from
earlier offsets in steps of 8500 bytes, but reading till the end of
the stream. Since we know the maximum size of an Ogg page, we can
bound the search for next page, to get a linear behavior (though
still not good enough as it will read the entire file backwards if
there's no valid page till then).
2012-06-14 18:42:12 +01:00
Jan Schmidt
2fbb803d85
theoradec: Always inform base class when dropping frames
...
Partially fixes backwards playback. Informing the base class
of the dropped frame lets it manage the timestamping and events
better.
2012-06-13 03:17:27 +10:00
Sebastian Dröge
233622437f
elements: Use gst_pad_set_caps() instead of manual event fiddling
2012-06-08 15:51:06 +02:00
Vincent Penquerc'h
03ef88d7da
theoradec: fix frame leaks
2012-06-07 13:36:35 +01:00
Vincent Penquerc'h
d4b8778299
theoradec: fix video state leaks
2012-06-07 11:23:23 +01:00
Vincent Penquerc'h
e126073489
oggdemux: reject opus streams with negative start time
...
This is used by Vorbis for sample accurate clipping, but this is
deemed an invalid stream by the opus spec.
2012-06-06 17:49:13 +01:00
Vincent Penquerc'h
ba967d285a
oggstream: add a flag to say whether start granule clamping is to be done
2012-06-06 17:49:13 +01:00
Wim Taymans
a2172bdb4b
update for tag event change
2012-06-06 13:05:47 +02:00
Vincent Penquerc'h
078dd2e896
oggstream: reject Ogg/Opus streams with nonsensical preskip/granpos setup
...
As the spec mandates.
2012-06-06 11:05:53 +01:00
Sebastian Dröge
a69d6ddb74
vorbisdec: Error out if handling a header packet failed instead of just finishing the frame
2012-06-02 17:16:13 +02:00
Thiago Santos
81b914a61f
theoraenc: do not use %zu, it is C99
...
Cast the variables instead and fallback to %u
2012-05-31 18:55:32 -03:00
Thiago Santos
772e3d514d
theoraenc: fix printf format variable
2012-05-31 18:28:14 -03:00
Vincent Penquerc'h
3dc1ef35b1
opusdec: read gain from the right place in the header
...
It's at byte offset 16, not 14.
2012-05-29 17:24:33 +01:00
Andre Moreira Magalhaes (andrunko)
bac5fd4c6a
textoverlay: Use an external lock
...
Conflicts:
ext/pango/gsttextoverlay.c
ext/pango/gsttextoverlay.h
2012-05-29 11:53:08 +02:00
Vincent Penquerc'h
209e3c5e39
opusdec: do not assert on bad header, error out instead
2012-05-27 23:45:53 +01:00
Vincent Penquerc'h
221a840eb8
opus: reject major version number above what we grok
2012-05-24 22:59:09 +01:00
Vincent Penquerc'h
62d6c08148
opus: bump written version from 0 to 0x01
...
as per the spec update at https://wiki.xiph.org/OggOpus#ID_Header
2012-05-24 22:57:25 +01:00
Vincent Penquerc'h
7d731ac155
opusdec: fix lost packet handling for FEC/PLC
...
The base audio decoder sends zero size packets, not NULL buffers,
to signal dropped packets.
2012-05-24 22:56:41 +01:00
Wim Taymans
897a1e93b7
cdparanoia: always set the read_speed
...
Always set the read speed to the configured value. Clarify that 0 or -1
speed means full speed.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=676361
2012-05-24 13:39:54 +02:00
Sreerenj Balachandran
663abda778
theoradec: remove usless checking of return val.
...
fixes https://bugzilla.gnome.org/show_bug.cgi?id=676525
2012-05-24 11:12:26 +02:00
Sreerenj Balachandran
d9ec99e598
theoradec: remove the nonuse parameter from handle_type_packet() method
2012-05-23 10:16:25 +02:00
Sreerenj Balachandran
8054c66194
theoradec: stream is marking as non-packeized so that the data gets parsed and keyframes marked
2012-05-23 10:16:25 +02:00
Andoni Morales Alastruey
2434f2932b
alsasink: check for spdif support only in the current device
2012-05-18 12:01:06 +02:00
Tim-Philipp Müller
8f08f6d256
cdparanoiasrc: include stdio.h for SEEK_SET
...
https://bugzilla.gnome.org/show_bug.cgi?id=676255
2012-05-17 16:38:58 +01:00
Tim-Philipp Müller
6d27a26d57
vorbis: give libvorbis-based decoder and vorbisidec decoder different type names
...
Should fix "cannot register existing type `GstVorbisDec'" criticals
when both libvorbis and vorbisidec are available.
https://bugzilla.gnome.org/show_bug.cgi?id=673333
2012-05-16 15:31:38 +01:00
Edward Hervey
a4eda89b3c
theoraenc: Don't leak incoming frames (and buffers)
...
We get given a reference in ::handle_frame(), remove it when we're done.
2012-05-15 08:38:41 +02:00
Tim-Philipp Müller
5518dd69c7
oggdemux: fix potential crash in SEEKING query handler
...
Take chain lock when accessing chains. Fall back gracefully
when there's no current chain Hopefully fixes crash when
seeking in Jamendo or Magnatune streams in Amarok.
https://bugzilla.gnome.org/show_bug.cgi?id=675609
2012-05-13 23:23:03 +01:00
Tim-Philipp Müller
0e216d1f4c
typefinding, ogg: don't bother with annodex media types
...
They're hardly used, and probably more confusing than anything
else, and it's not clear that anyone would really need to be
able to tell them apart at the media type level.
2012-05-13 18:49:31 +01:00
Tim-Philipp Müller
657fe5efff
oggdemux: don't expose Annodex CMML streams any more
...
This never really took off - it's hardly used anywhere
and deprecated in favour of Kate. Exposing pads just
leads to confusing 'you are missing a plug-in' messages
when people come across such streams. We could still post
the data on the bus for applications to parse.
2012-05-13 18:39:06 +01:00
Tim-Philipp Müller
756625edd2
oggdemux: update some comments that refer to internal decoders
...
We don't do that any more, we now have stream mappers for this.
2012-05-13 17:13:39 +01:00
Tim-Philipp Müller
882ffc7b98
oggdemux: remove unused GstOggPadMode enum
2012-05-13 17:13:26 +01:00
Tim-Philipp Müller
b9f8a26f62
libvisual: include string.h for strcmp()
2012-05-13 17:13:02 +01:00
Mark Nauwelaerts
1c70c5b85e
alsasink: really use local ringbuffer spec helper var and init it a bit more
...
... to avoid assertion failures
Conflicts:
ext/alsa/gstalsasink.c
2012-05-09 10:28:16 +02:00
Andoni Morales Alastruey
c6409806c1
alsasink: use the iec958 payloader to support non-payloaded input streams
2012-05-07 13:31:01 +02:00
Sebastian Dröge
7ff23514ee
theoradec: Correctly handle crop metadata and update for videodecoder API changes
2012-05-01 13:33:20 +02:00
Sebastian Dröge
0c2f43750d
theoradec: Unref state when we're done with it
2012-04-25 14:34:43 +02:00
Sebastian Dröge
71fc0a7f3e
theoradec: Update for video decoder API changes
...
And also improve the buffer pool handling.
2012-04-25 13:19:11 +02:00
Sebastian Dröge
261188ae68
theoraenc: Update for video encoder API changes and propose video-meta for allocation
2012-04-25 13:19:11 +02:00
Edward Hervey
220687e602
opus: Handle GstByteWriter return values
2012-04-25 10:30:53 +02:00
Sebastian Dröge
894875d705
theoradec: Use crop metadata if possible and refactor cropping code a bit
2012-04-24 22:35:58 +02:00
Sebastian Dröge
8571293311
theoradec: Set some more information on the output caps
2012-04-24 22:05:53 +02:00
Sebastian Dröge
e120979f17
theora: Port to 0.11 again with the new base classes
2012-04-24 21:32:28 +02:00
Sebastian Dröge
a0e3a9e32d
Merge remote-tracking branch 'origin/0.10'
...
Video base classes and theora plugin still needs to be ported again
Conflicts:
docs/libs/gst-plugins-base-libs-docs.sgml
docs/libs/gst-plugins-base-libs-sections.txt
docs/libs/gst-plugins-base-libs.types
ext/theora/gsttheoradec.c
ext/theora/gsttheoradec.h
ext/theora/gsttheoraenc.c
ext/theora/gsttheoraenc.h
gst-libs/gst/video/Makefile.am
gst-libs/gst/video/video.c
gst-libs/gst/video/video.h
gst/playback/gsturidecodebin.c
tests/check/libs/video.c
tests/check/pipelines/theoraenc.c
win32/common/libgstvideo.def
2012-04-24 18:14:31 +02:00
Mark Nauwelaerts
7bfd1bc3d7
theora: Port to base video classes
...
FIXME : Don't forget to backport changes that happened to theoraenc
since April 2011
theoraenc: Don't create keyframe on time gap
There is no rational to do so, and also gst_video_encoder_set_discont() is
gone from base class.
2012-04-24 17:03:40 +02:00
Mark Nauwelaerts
a008aa0b46
collectpads2: rename to collectpads
2012-04-17 15:09:58 +02:00
Mark Nauwelaerts
ccda1c23f3
oggmux: use standard collectpads event handling
...
... rather than (old) hacked overriding.
2012-04-16 16:30:44 +02:00
Tim-Philipp Müller
05b1ad1b56
ogg: update for media type typefinding changes
2012-04-15 23:03:58 +01:00
Sebastian Dröge
69b18ab09d
gst-libs: Remove interfaces libs and mixer/tuner interfaces
...
The navigation interface is now in the video library.
2012-04-13 13:14:13 +02:00
Wim Taymans
b2f0236319
vorbisenc: fix channel mask
2012-04-11 17:40:04 +02:00
Mark Nauwelaerts
5bb216046e
opusdec: tweak caps negotiation
...
... so as to avoid leaking caps or manipulating NULL caps.
2012-04-10 17:29:11 +02:00
Tim-Philipp Müller
3c6a3ad629
Use new gst_element_class_set_static_metadata()
2012-04-10 00:45:16 +01:00
Sebastian Dröge
49fd40952a
gst: Update for GST_PLUGIN_DEFINE() API changes
2012-04-05 18:02:56 +02:00
Sebastian Dröge
ad42b16375
gst: Update for GST_PLUGIN_DEFINE() API change
2012-04-05 15:11:05 +02:00
Sebastian Dröge
65307dd132
gst: Update versioning
2012-04-04 14:55:15 +02:00
Sebastian Dröge
6d1665cc91
gst: Update versioning
2012-04-04 14:44:34 +02:00
Mark Nauwelaerts
68300bde0b
pango: plug rare buffer leak
2012-04-03 18:31:27 +02:00
Wim Taymans
de7148a942
theoradec: deactivate pool on negotiation
...
Deactivate the old bufferpool when we negotiate a new one.
2012-04-02 12:48:45 +02:00
Mark Nauwelaerts
2f53680369
opusenc: fixup merge
2012-03-30 17:09:34 +02:00
Sebastian Dröge
27408ee47f
theoradec: Add crop metadata before mapping the buffer content
...
Otherwise the buffer is not writable and the crop metadata can't be added.
2012-03-30 13:52:56 +02:00
Sebastian Dröge
097972086b
vorbisdec: Use new gst_audio_encoder_set_headers() API
2012-03-30 12:51:11 +02:00
Sebastian Dröge
c44397cccb
vorbisenc: Update for GstAudioEncoder API changes
2012-03-30 12:23:13 +02:00
Sebastian Dröge
76d2eac1cc
ext: Update for GstAudioEncoder API changes
2012-03-30 12:22:48 +02:00
Edward Hervey
c5d7bb8918
theoraenc: Specify array size
...
Fixes error: initialization of flexible array member is not allowed
2012-03-30 12:02:37 +02:00
Edward Hervey
5c83351510
oggstream: Fix 'comparison of unsigned expression < 0 is always false'
...
-1 (aka G_MAXUINT32) is the only possible 'negative' value that is used
as a special value for 'not set' here. All other positive values are
valid.
2012-03-30 12:00:08 +02:00
Edward Hervey
d1abf468c4
oggmux: Handle return values from GstByteWriter
2012-03-30 11:58:37 +02:00
Sebastian Dröge
cdf9e0ecef
Merge remote-tracking branch 'origin/0.10'
...
Conflicts:
NEWS
RELEASE
common
configure.ac
docs/libs/gst-plugins-bad-libs-sections.txt
docs/plugins/gst-plugins-bad-plugins.args
docs/plugins/gst-plugins-bad-plugins.hierarchy
docs/plugins/gst-plugins-bad-plugins.interfaces
docs/plugins/inspect/plugin-adpcmdec.xml
docs/plugins/inspect/plugin-adpcmenc.xml
docs/plugins/inspect/plugin-assrender.xml
docs/plugins/inspect/plugin-audiovisualizers.xml
docs/plugins/inspect/plugin-autoconvert.xml
docs/plugins/inspect/plugin-bayer.xml
docs/plugins/inspect/plugin-bz2.xml
docs/plugins/inspect/plugin-camerabin2.xml
docs/plugins/inspect/plugin-celt.xml
docs/plugins/inspect/plugin-dataurisrc.xml
docs/plugins/inspect/plugin-debugutilsbad.xml
docs/plugins/inspect/plugin-dtmf.xml
docs/plugins/inspect/plugin-dtsdec.xml
docs/plugins/inspect/plugin-dvbsuboverlay.xml
docs/plugins/inspect/plugin-dvdspu.xml
docs/plugins/inspect/plugin-faac.xml
docs/plugins/inspect/plugin-faad.xml
docs/plugins/inspect/plugin-gsm.xml
docs/plugins/inspect/plugin-h264parse.xml
docs/plugins/inspect/plugin-mms.xml
docs/plugins/inspect/plugin-modplug.xml
docs/plugins/inspect/plugin-mpeg2enc.xml
docs/plugins/inspect/plugin-mpegdemux2.xml
docs/plugins/inspect/plugin-mpegtsdemux.xml
docs/plugins/inspect/plugin-mpegvideoparse.xml
docs/plugins/inspect/plugin-mplex.xml
docs/plugins/inspect/plugin-pcapparse.xml
docs/plugins/inspect/plugin-rawparse.xml
docs/plugins/inspect/plugin-rtpmux.xml
docs/plugins/inspect/plugin-rtpvp8.xml
docs/plugins/inspect/plugin-scaletempo.xml
docs/plugins/inspect/plugin-schro.xml
docs/plugins/inspect/plugin-sdp.xml
docs/plugins/inspect/plugin-segmentclip.xml
docs/plugins/inspect/plugin-shm.xml
docs/plugins/inspect/plugin-videomaxrate.xml
docs/plugins/inspect/plugin-videoparsersbad.xml
docs/plugins/inspect/plugin-vp8.xml
docs/plugins/inspect/plugin-y4mdec.xml
ext/celt/gstceltdec.c
ext/dts/gstdtsdec.c
ext/modplug/gstmodplug.cc
ext/opus/gstopusenc.c
gst-libs/gst/video/gstbasevideocodec.c
gst-libs/gst/video/gstbasevideocodec.h
gst-libs/gst/video/gstbasevideodecoder.c
gst-libs/gst/video/gstbasevideodecoder.h
gst-libs/gst/video/gstbasevideoencoder.c
gst-libs/gst/video/gstbasevideoencoder.h
gst/adpcmdec/Makefile.am
gst/audiovisualizers/gstbaseaudiovisualizer.c
gst/h264parse/gsth264parse.c
gst/mpegdemux/mpegtsparse.c
gst/mpegtsdemux/mpegtsbase.c
gst/mpegtsdemux/mpegtspacketizer.c
gst/mpegtsdemux/mpegtsparse.c
gst/mpegtsdemux/tsdemux.c
gst/mpegtsdemux/tsdemux.h
gst/mxf/mxfdemux.c
gst/rawparse/gstaudioparse.c
gst/videoparsers/gsth263parse.c
gst/videoparsers/gsth264parse.c
sys/d3dvideosink/d3dvideosink.c
sys/decklink/gstdecklinksink.cpp
sys/dvb/gstdvbsrc.c
sys/shm/gstshmsrc.c
sys/vdpau/h264/gstvdph264dec.c
sys/vdpau/mpeg/gstvdpmpegdec.c
tests/examples/opencv/gst_element_print_properties.c
win32/common/config.h
2012-03-29 17:41:53 +02:00
Olivier Crête
b34b0129da
opus: Rank rtp pay/depay
...
This way they can be auto-plugged.
2012-03-27 15:14:01 -04:00
Wim Taymans
897e8730e8
testoverlay: fix object and caps leak
2012-03-27 15:44:14 +02:00
Wim Taymans
6e054dfc3d
alsa: fix small caps leak
2012-03-27 15:43:44 +02:00
Wim Taymans
32bd12dba9
Merge branch 'master' into 0.11
...
Conflicts:
.gitignore
common
configure.ac
ext/vorbis/gstvorbisdeclib.h
gst-libs/gst/audio/gstaudioencoder.c
gst-libs/gst/riff/riff-read.c
gst/playback/gstplaysink.c
gst/playback/gstplaysinkconvertbin.c
tests/check/libs/video.c
2012-03-22 11:35:13 +01:00
Wim Taymans
2ad7e8f217
theoradec: add performance debug
2012-03-20 13:31:24 +01:00
Wim Taymans
d7c42e6680
oggdemux: avoid memcpy in pull mode
...
In pull mode, we can now ask the upstream element to write directly into the
memory provided by libogg.
2012-03-20 13:20:36 +01:00
Wim Taymans
dfb8e7cb2c
don't pass random pointers to pull_range
2012-03-16 21:46:47 +01:00
Wim Taymans
1e884df1df
update for bufferpool changes
2012-03-15 22:10:58 +01:00
Wim Taymans
7c0e2b5b1e
update for allocation query changes
2012-03-15 20:36:51 +01:00
Wim Taymans
df5253b22c
update for memory api changes
2012-03-15 13:32:08 +01:00
Wim Taymans
39d78762b9
take padding into account
2012-03-14 19:56:51 +01:00
Peter Korsgaard
787e896bde
vorbisdec: support modern Tremor versions
...
Tremor changed to use standard libogg rather than its own incompatible
copy back in Aug 2010 (r17375), causing gst-plugin-base build to fail.
Tremolo so far unfortunately hasn't been updated. Restructure
vorbisdeclib.h so the int/float logic is seperate from the ogg handling,
and only use the legacy _ogg_packet_wrapper code for Tremolo.
https://bugzilla.gnome.org/show_bug.cgi?id=668726
2012-03-14 14:10:27 +00:00
Wim Taymans
867e635cde
oggdemux: only create unknown caps once
2012-03-13 12:40:11 +01:00
Wim Taymans
0d84de3fa9
opusdec: fix for caps api change
2012-03-12 17:06:11 +01:00
Wim Taymans
25137962ad
fix for caps API changes
2012-03-11 19:04:41 +01:00
Tim-Philipp Müller
0b17c3747a
pango: re-port pangocairo deprecation and compiler warning fixes from 0.10
...
Wasn't applied because that code is in the new private base class.
2012-03-08 20:54:49 +00:00
Tim-Philipp Müller
c9308a73ca
vorbisdec: fix up for 0.11 after merge
2012-03-08 20:49:46 +00:00
Tim-Philipp Müller
29c266ccff
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
common
docs/libs/gst-plugins-base-libs.types
ext/pango/gsttextoverlay.c
ext/vorbis/gstvorbisdec.c
gst/playback/gstplaysink.c
gst/playback/gstplaysinkconvertbin.c
sys/ximage/ximagesink.c
sys/xvimage/xvimagesink.c
2012-03-08 20:31:34 +00:00
Mark Nauwelaerts
fa02111b7c
opus: port to updated 0.11
2012-03-07 17:18:48 +01:00
Tim-Philipp Müller
1dd86b9c66
Revert "ogg: Fix handling of unset granuleshift for the skeleton parser"
...
This reverts commit 7418ddd753
.
This breaks the unit test and messes up preroll/seeking.
2012-03-07 12:47:23 +00:00
Mark Nauwelaerts
74256b69af
opusenc: only request and process 1 frame at a time
...
... since it is specified in _finish_frame that input buffer may be invalidated
after calling it, and is as such not reliably available for further encoding.
Also, requesting or allowing several frames is only useful if subclass intends
to process these "in 1 run" (as in, 1 output buffer), not for having another
(inner) loop in subclass where the baseclass one will do just fine.
2012-03-07 13:03:14 +01:00
Mark Nauwelaerts
11f2207d1f
opusenc: configure baseclass requested samples really in samples
...
... as opposed to bytes.
2012-03-07 13:03:14 +01:00
Mark Nauwelaerts
600b91e878
vorbisdec: simplify tag handling using base class helper
2012-03-06 16:17:55 +01:00
Sebastian Dröge
93e7bb6759
pango: Fix 'implicit conversion from enumeration type 'GstTextOverlayLineAlign' to different enumeration type 'PangoAlignment'' compiler warning
2012-03-06 13:11:16 +01:00
Sebastian Dröge
7418ddd753
ogg: Fix handling of unset granuleshift for the skeleton parser
...
And also add a helper function to properly clear/reset/free the
GstOggStream structures.
2012-03-06 13:09:05 +01:00
Oleksij Rempel (Alexey Fisher)
0c2f2a64c5
pango: don't use deprecated pango_cairo_font_map_create_context()
...
https://bugzilla.gnome.org/show_bug.cgi?id=671300
2012-03-04 18:32:32 +00:00
Wim Taymans
e45e6bc297
theoradec: init VideoInfo before usage.
2012-03-02 17:10:26 +01:00
Wim Taymans
f9bdf436f9
theoradec: move negotiation code around
...
Move the format negotiation to the bufferpool negotiation.
2012-03-02 11:34:10 +01:00
Wim Taymans
271939d118
theoradec: move some code
...
The parsing of the headers consists of negotiating the format and then setting
up the decoder so split this in two parts.
2012-03-02 11:34:10 +01:00
Wim Taymans
f89c85485d
theoradec: use the right GstVideoInfo
...
Keep track if we use the cropped or uncropped dimensions in the bufferpool and
map using the right GstVideoInfo.
2012-03-02 11:34:10 +01:00
Sebastian Dröge
84a02f9f13
Merge branch '0.11' of ssh://git.freedesktop.org/git/gstreamer/gst-plugins-base into 0.11
2012-03-02 10:13:52 +01:00
Sebastian Dröge
1cbcb9281c
mixer/colorbalance: Update for API changes
2012-03-02 10:00:59 +01:00
Sebastian Dröge
f7939bb43f
Merge branch 'master' into 0.11
...
Conflicts:
NEWS
RELEASE
configure.ac
docs/plugins/gst-plugins-base-plugins.args
docs/plugins/gst-plugins-base-plugins.hierarchy
docs/plugins/gst-plugins-base-plugins.interfaces
docs/plugins/inspect/plugin-adder.xml
docs/plugins/inspect/plugin-alsa.xml
docs/plugins/inspect/plugin-app.xml
docs/plugins/inspect/plugin-audioconvert.xml
docs/plugins/inspect/plugin-audiorate.xml
docs/plugins/inspect/plugin-audioresample.xml
docs/plugins/inspect/plugin-audiotestsrc.xml
docs/plugins/inspect/plugin-cdparanoia.xml
docs/plugins/inspect/plugin-encoding.xml
docs/plugins/inspect/plugin-ffmpegcolorspace.xml
docs/plugins/inspect/plugin-gdp.xml
docs/plugins/inspect/plugin-gio.xml
docs/plugins/inspect/plugin-gnomevfs.xml
docs/plugins/inspect/plugin-libvisual.xml
docs/plugins/inspect/plugin-ogg.xml
docs/plugins/inspect/plugin-pango.xml
docs/plugins/inspect/plugin-playback.xml
docs/plugins/inspect/plugin-subparse.xml
docs/plugins/inspect/plugin-tcp.xml
docs/plugins/inspect/plugin-theora.xml
docs/plugins/inspect/plugin-typefindfunctions.xml
docs/plugins/inspect/plugin-uridecodebin.xml
docs/plugins/inspect/plugin-videorate.xml
docs/plugins/inspect/plugin-videoscale.xml
docs/plugins/inspect/plugin-videotestsrc.xml
docs/plugins/inspect/plugin-volume.xml
docs/plugins/inspect/plugin-vorbis.xml
docs/plugins/inspect/plugin-ximagesink.xml
docs/plugins/inspect/plugin-xvimagesink.xml
gst-libs/gst/app/gstappsink.c
gst-libs/gst/audio/mixer.c
gst-libs/gst/audio/mixer.h
gst-libs/gst/tag/gstxmptag.c
gst-libs/gst/video/colorbalance.c
gst-libs/gst/video/colorbalance.h
gst/adder/gstadder.c
gst/playback/gstplaybasebin.c
gst/playback/gstplaybin2.c
gst/playback/gstplaysink.c
gst/videoscale/gstvideoscale.c
tests/check/elements/videoscale.c
tests/examples/seek/seek.c
tests/examples/v4l/probe.c
win32/common/_stdint.h
win32/common/audio-enumtypes.c
win32/common/config.h
2012-03-02 10:00:55 +01:00
Wim Taymans
5bad1eaa24
theora: fix bufferpool negotiation
...
Store the uncropped frame dimensions in the videoinfo.
Always set the caps with the dimension of the cropped output.
Don't negotiate the bufferpool multiple times.
Remove the old crop feature, we always crop now.
2012-03-01 17:29:37 +01:00
Wim Taymans
502c12f827
update for metadata API changes
2012-02-29 17:25:10 +01:00
Wim Taymans
337cfb764a
add more debug about cropping
2012-02-28 16:49:10 +01:00
Edward Hervey
59918e841f
Suppress deprecation warnings in selected files, for g_value_array_* mostly
2012-02-27 14:28:15 +01:00
Wim Taymans
ea3f41e06a
audioencoders: chain up to parent event handler
2012-02-27 13:13:14 +01:00
Wim Taymans
55076379b2
vorbisenc: chain up to parent event function
2012-02-27 12:51:08 +01:00
Alessandro Decina
9f1732fba7
Fix compiler warnings
2012-02-26 20:36:46 +01:00
Alessandro Decina
5db562f13b
theoraenc: fix compiler warning
2012-02-26 20:32:05 +01:00
Wim Taymans
a7c80a9c87
vorbisdec: remove old code
2012-02-15 13:32:05 +01:00
Wim Taymans
bf476953f4
vorbis: port to new memory api
2012-02-13 18:12:01 +01:00
Wim Taymans
d894567e0f
Merge branch 'master' into 0.11
...
Conflicts:
ext/chromaprint/gstchromaprint.c
ext/mpeg2enc/Makefile.am
ext/voaacenc/gstvoaacenc.c
gst/dvbsuboverlay/gstdvbsuboverlay.c
gst/mpegtsdemux/mpegtsbase.c
gst/sdp/gstsdpdemux.c
gst/videoparsers/gsth264parse.c
sys/d3dvideosink/d3dvideosink.c
tests/examples/camerabin/gst-camera-perf.c
tests/examples/camerabin/gst-camerabin-test.c
tests/examples/camerabin2/gst-camerabin2-test.c
tests/examples/mxf/mxfdemux-structure.c
tests/examples/scaletempo/demo-main.c
2012-02-10 16:46:50 +01:00
Wim Taymans
c3478b2da0
Merge branch 'master' into 0.11
...
Conflicts:
ext/vorbis/gstvorbisparse.c
gst-libs/gst/video/video.c
gst/videoscale/gstvideoscale.c
sys/v4l/gstv4lxoverlay.c
sys/v4l/v4l_calls.c
sys/v4l/v4lsrc_calls.c
tests/check/libs/video.c
2012-02-10 15:41:06 +01:00
Wim Taymans
a75e9102c5
GST_FLOW_WRONG_STATE -> GST_FLOW_FLUSHING
2012-02-08 15:17:49 +01:00
Tim-Philipp Müller
99bff2329e
theoraenc: remove obsolete properties
...
https://bugzilla.gnome.org/show_bug.cgi?id=669328
2012-02-05 11:00:39 +00:00
David Schleef
19141759c1
theoraenc: Use GAP flag when possible
...
Set TH_ENCCTL_SET_DUPLICATE_FLAG when we see a gap flag, to
indicate to the encoder that the current frame is a duplicate
of the previous frame.
2012-02-04 13:41:47 -08:00
Tim-Philipp Müller
3ecfd25808
build: fix CFLAGS order and LIBS order
...
_BAD_CFLAGS should always come first, then GST_PLUGINS_BASE_CFLAGS,
then GST_BASE_CFLAGS then GST_CFLAGS. Same for libs: first plugins
base libs, then GST_BASE_LIB then GST_LIBS.
2012-02-03 00:50:33 +00:00
Vincent Penquerc'h
b4d6263f38
oggdemux: fix granpos interpolation violating max keyframe distance
...
In case many packets fit on a page, we may not see a granpos for
a while, and granpos interpolation can wrap the 'frames since last
keyframe' part of the granpos, generating a granpos which is smaller
than what it should be.
This is fixed by detecting keyframe packets (at least for Theora),
and updating the last keyframe granpos from this.
This may still be generating potentially wrong granpos for streams
which have a Theora like granpos (keyframes, a max keyframe distance
and a count of frames since last keyframe), and which allow implicit
granules on packets. For these streams, a custom keyframe detection
routine should be plugged into their GstOggStream mapper.
https://bugzilla.gnome.org/show_bug.cgi?id=669164
2012-02-02 13:06:29 +00:00
Vincent Penquerc'h
b647c627e4
vorbisparse: pedantically recognize undefined headers too
2012-02-01 16:46:13 +00:00
Vincent Penquerc'h
809546c324
vorbisparse: fix header detection
...
It was matching non header packets.
This fixes various leaks, where buffers would be pushed onto a headers
list, but never popped.
Might also fix corruption as those buffers were dropped from the output
silently...
https://bugzilla.gnome.org/show_bug.cgi?id=669167
2012-02-01 16:40:35 +00:00
Sebastian Dröge
2fe94cad44
vorbis: Use new audio encoder/decoder base class API for srcpad caps
2012-02-01 16:27:47 +01:00
Wim Taymans
848e107146
oggdemux: don't blindly forward all unknown events
...
It causes the caps event to be send downstream and cause negotiation failures.
2012-01-30 20:58:34 +01:00
Wim Taymans
be0cadac03
update for HEADER flag changes
2012-01-30 17:16:17 +01:00
Sebastian Dröge
ba6d096d01
vorbisenc: Properly generate the channel-mask on the sinkpad caps
2012-01-27 17:10:35 +01:00
Vincent Penquerc'h
fdb5c79b8b
plenty: fixup glib deprecations
2012-01-27 15:47:07 +00:00
Sebastian Dröge
76b7ff8f99
vorbisparse: Pass correct header buffer size to libvorbis and include channels/rate in the srcpad caps
2012-01-27 12:08:33 +01:00
Wim Taymans
61a53092e4
alsa: merge instead of appending structures
2012-01-26 14:28:06 +01:00
Sebastian Dröge
2e65a0f34a
theoraenc: Add width/height/framerate to the srcpad caps
2012-01-26 11:02:51 +01:00
Sebastian Dröge
1f37f9f41d
vorbisenc: Add samplerate and channels to the srcpad caps
2012-01-26 11:01:12 +01:00
Sebastian Dröge
b363d4a103
theoraenc: Fix encoding of non-mod-16 widths/heights
...
The next higher multiple of 16 has to be passed
in the input buffers but Theora does never read
beyond the configured picture size.
2012-01-25 18:24:07 +01:00
Sebastian Dröge
544b7a35b0
theoraparse: Remove the synchronization points property
...
Is someone really using it? In that case it has to be
changed from a GValueArray property to something else.
2012-01-25 16:44:38 +01:00
Wim Taymans
fcdc385aa1
port to new map API
2012-01-25 12:30:53 +01:00
Sebastian Dröge
68c0790817
Merge branch 'master' into 0.11
...
Conflicts:
gst-libs/gst/interfaces/propertyprobe.c
sys/xvimage/xvimagesink.c
2012-01-25 11:50:54 +01:00
Tim-Philipp Müller
5487cb98ef
Replace deprecated GStaticMutex with GMutex
2012-01-22 22:52:28 +00:00
Wim Taymans
3d42f0f6ed
port to new glib thread API
2012-01-19 11:36:17 +01:00
Tim-Philipp Müller
576bbb4fd8
Remove compatibility code cruft for old GLib versions
2012-01-18 17:22:21 +00:00
Tim-Philipp Müller
fa0464cd7a
pango: port to new GLib threading API
2012-01-18 17:21:02 +00:00
Sebastian Dröge
317894d314
gio: Move to gst subdirectory
...
It's a plugin without external dependencies now because we
unconditionally depend on GIO anyway.
2012-01-18 16:21:14 +01:00
Mark Nauwelaerts
34d767c6a8
oggstream: initialize variable
...
... to help out challenged compiler.
2012-01-17 18:19:30 +01:00
Vincent Penquerc'h
8d29fe8834
alsasink: fix high sample rates being rejected
...
An ALSA sink may select a different rate (as we use the _set_rate_near
API, which is not guaranteed to set the exact target rate).
The rest of the code seems to already handle this well, as output
from a 88200 Hz file seems to have the correct pitch when selecting
a 96 kHz rate.
2012-01-16 11:46:05 +00:00
Vincent Penquerc'h
361f2b169c
alsasink: fix rate match message mistaking error code for sample rate
2012-01-16 11:46:05 +00:00
Vincent Penquerc'h
e60027c795
alsasink: log API errors along with the error code and string
2012-01-16 11:46:05 +00:00
Reynaldo H. Verdejo Pinochet
87bb5dddb2
Fix wrong access to undefined struct member
...
For the USE_TREMOLO case, GstVorbisDec doesn't have
a vb member. Besides, Tremolo's vorbis_dsp_synthesis()
expects a vorbis_dsp_state to be passed as first
argument. Not a vorbis_block.
2012-01-13 14:50:49 -03:00
Reynaldo H. Verdejo Pinochet
22e6c28284
Fix TREMELO -> TREMOLO typo
2012-01-13 14:47:13 -03:00
Tim-Philipp Müller
0461ed2ada
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
gst-libs/gst/pbutils/gstdiscoverer-types.c
gst-libs/gst/pbutils/gstdiscoverer.c
tests/check/Makefile.am
2012-01-12 23:21:17 +00:00
Vincent Penquerc'h
3fbd95d85e
theoraparse: fix array leak
2012-01-12 16:24:01 +00:00
Vincent Penquerc'h
9f4b71b2a7
oggdemux: fix push mode chain leak
...
When I first implemented push mode seeking, I removed the chain
freeing there as it could be used later. The current code does not
seem to do that though, so I'm restoring the previous freeing,
which plugs the leak while apparently not reintroducing use of
freed data with chained and normal files, both with gst-launch
playbin2 and Totem.
2012-01-11 16:17:42 +00:00
Vincent Penquerc'h
83c9396850
Revert "oggmux: fix pad leak"
...
This reverts commit 5df30c1b90
.
I must have dreamt the Valgrind logs, reverting this reintroduces
no leak, and gets rid of the test failures it introduced :S
2012-01-10 19:02:31 +00:00
Vincent Penquerc'h
35df9d2ad9
oggstream: fix tag list leak
2012-01-10 16:57:04 +00:00
Vincent Penquerc'h
a718b859a7
oggdemux: fix pad leak
2012-01-10 16:51:09 +00:00
Vincent Penquerc'h
ef1469fc8b
oggdemux: fix hang on small truncated files
...
A first hang was happening when trying to locate a page backwards,
where we'd sync forever on the same page.
With that fixed, a second hang would happen after preparing an EOS
event, but with no chain created yet to send it to, the pipeline
would stay idle forever.
An element error is now emitted for this case.
2012-01-10 16:20:23 +00:00
Vincent Penquerc'h
5df30c1b90
oggmux: fix pad leak
2012-01-10 16:20:23 +00:00
Sebastian Dröge
e802002d96
Merge branch 'master' into 0.11
...
Conflicts:
gst/mpegtsdemux/tsdemux.c
gst/videoparsers/gsth264parse.c
tests/check/elements/camerabin2.c
2012-01-10 15:50:37 +01:00
Vincent Penquerc'h
d6b60c62e6
opusenc: fix slist leak
2012-01-10 13:38:50 +00:00
Vincent Penquerc'h
2ca8f88ecc
opusenc: fix caps leak
2012-01-10 13:38:42 +00:00
Sebastian Dröge
dc8984d76c
Merge branch 'master' into 0.11
...
Conflicts:
gst-libs/gst/app/gstappsrc.c
gst-libs/gst/audio/multichannel.h
gst-libs/gst/video/videooverlay.c
gst/playback/gstplaysink.c
gst/playback/gststreamsynchronizer.c
tests/check/Makefile.am
win32/common/libgstvideo.def
2012-01-10 13:15:12 +01:00
Mark Nauwelaerts
08a6621b2d
vorbisdec: use right channel variable even more
2012-01-06 16:15:45 +01:00
Wim Taymans
f8ae2a0d5b
vorbisdec: use right channel variable
2012-01-05 12:32:06 +01:00
Idar Tollefsen
580b6b2b69
pango: changes includes from brackets to quotes for local files
...
https://bugzilla.gnome.org/show_bug.cgi?id=667316
2012-01-05 10:52:14 +00:00
Sebastian Dröge
40938b8a89
ogg: Update for the libgstriff API changes
...
Still needs to handle the raw audio channel reordering.
2012-01-05 10:34:25 +01:00
Sebastian Dröge
75f91ebea0
ext: Add new layout field to the raw audio caps
2012-01-05 10:34:25 +01:00
Sebastian Dröge
9c60505900
vorbis: Port to the new multichannel caps
2012-01-05 10:34:24 +01:00
Sebastian Dröge
2fc75efdce
alsa: Port to the new multichannel caps
2012-01-05 10:34:20 +01:00
Edward Hervey
f562a29284
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
ext/theora/gsttheoraenc.c
gst-libs/gst/tag/gstexiftag.c
gst/adder/gstadder.c
gst/adder/gstadder.h
gst/playback/gstdecodebin2.c
gst/playback/gstsubtitleoverlay.c
tests/check/libs/tag.c
2011-12-30 13:21:35 +01:00
Edward Hervey
d5b34263cd
Merge remote-tracking branch 'origin/master' into 0.11-premerge
...
Conflicts:
docs/libs/Makefile.am
ext/kate/gstkatetiger.c
ext/opus/gstopusdec.c
ext/xvid/gstxvidenc.c
gst-libs/gst/basecamerabinsrc/Makefile.am
gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c
gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h
gst-libs/gst/video/gstbasevideocodec.c
gst-libs/gst/video/gstbasevideocodec.h
gst-libs/gst/video/gstbasevideodecoder.c
gst-libs/gst/video/gstbasevideoencoder.c
gst/asfmux/gstasfmux.c
gst/audiovisualizers/gstwavescope.c
gst/camerabin2/gstcamerabin2.c
gst/debugutils/gstcompare.c
gst/frei0r/gstfrei0rmixer.c
gst/mpegpsmux/mpegpsmux.c
gst/mpegtsmux/mpegtsmux.c
gst/mxf/mxfmux.c
gst/videomeasure/gstvideomeasure_ssim.c
gst/videoparsers/gsth264parse.c
gst/videoparsers/gstmpeg4videoparse.c
2011-12-30 11:41:17 +01:00
Thiago Santos
08022bddc8
oggmux: fix leak when initializing pads
...
Pads are initialized twice: when requesting pads and when
initializing collectpads. Avoid double initialization by
checking if collectpads are still going to be initialized when
creating request pads.
2011-12-28 09:45:53 -03:00
Tim-Philipp Müller
3dfdd6be9d
audioringbuffer: rename GST_BUFTYPE_* to GST_AUDIO_RING_BUFFER_FORMAT_TYPE_*
...
Bit unwieldy, but more appropriate. Could also be moved into
audio.h as GstAudioFormatType.
2011-12-25 21:38:21 +00:00
Tim-Philipp Müller
4fc4aeee71
theoraenc: fix template caps creation on big endian systems
2011-12-23 22:51:59 +00:00
Wim Taymans
6aafcb3992
theoradec: improve cropping
...
Only add cropping metadata when needed
Remove some used code.
2011-12-23 16:10:53 +01:00
Tim-Philipp Müller
cab6432c68
alsasink: make work for raw audio formats by fixing template caps
2011-12-23 00:54:43 +00:00
Wim Taymans
dde5e5a248
alsa: remove more property probe stuff
2011-12-22 16:37:29 +01:00
Wim Taymans
ddc05e0ed1
propertyprobe: remove propertyprobe
...
Remove the propertyprobe interface
Improve docs
2011-12-21 11:58:53 +01:00
Oleksij Rempel (Alexey Fisher)
5f3a31f4d1
theoraenc: add "dup-on-gap" option
...
This option will produce duplicate frames if we get
a frame with GAP flag. This will reduce CPU load and file size.
This option should be disabled for real time applications, because it
collects GAP frames and waits until it gets a non GAP frame to start
encoding.
v30.06.2011: make some spell changes.
v03.07.2011: add handling of EOS and discontinuous for dup-on-gap.
v19.12.2011: fix pointer dangling in theora_timefifo_free
v20.12.2010: fix timestamp bug for dup-on-gap=0
Bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=627459
Signed-off-by: Oleksij Rempel (Alexey Fisher) <bug-track@fisher-privat.net>
2011-12-20 19:43:47 +00:00
Vincent Penquerc'h
229377fb6b
oggdemux: assume live stream if byte size cannot be determined
...
This prevents trying to seek and failing, then ending up unable
to stream because we can't get back at the headers.
A more robust way would be to find a good place to reinject the
headers when a seek fails, but I can't seem to get this to work.
2011-12-16 15:29:21 +00:00
Vincent Penquerc'h
b20879ea9e
opus: fix bad merge (stray unmap, undeclared var)
2011-12-15 16:42:20 +00:00
Vincent Penquerc'h
3f47a43f2a
opusenc: add upstream negotiation for multistream ability
...
This will help elements that cannot deal with multistream,
such as the RTP payloader.
The caps now do not include a "streams" field anymore, but
a "multistream" boolean, since we have no real use for knowing
the exact amount of streams.
https://bugzilla.gnome.org/show_bug.cgi?id=665078
2011-12-10 10:39:11 +00:00
Danilo Cesar Lemes de Paula
3a978f5a69
Adding opus RTP payloader/depayloader element
...
Adding OPUS RTP module based on the current draft:
http://tools.ietf.org/id/draft-spittka-payload-rtp-opus-00.txt
https://bugzilla.gnome.org/show_bug.cgi?id=664817
2011-12-09 15:05:42 +00:00
Vincent Penquerc'h
dbca14b23b
opus: include streams count in caps
...
https://bugzilla.gnome.org/show_bug.cgi?id=665078
2011-12-09 15:04:20 +00:00
Vincent Penquerc'h
f807905786
opus: properly create channel mapping tables
...
There are two of them, unintuitively enough; the one passed
to the encoder should not be the one that gets written to the
file. The former maps the input to an ordering which puts
paired channels first, while the latter moves the channels
to Vorbis order. So add code to calculate both, and we now
have properly paired channels where appropriate.
https://bugzilla.gnome.org/show_bug.cgi?id=665078
2011-12-09 15:04:20 +00:00
Tim-Philipp Müller
fb6d09055a
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
ext/alsa/gstalsadeviceprobe.c
ext/alsa/gstalsamixer.c
ext/pango/gsttextoverlay.c
ext/pango/gsttextoverlay.h
gst-libs/gst/audio/gstaudiobasesink.c
gst-libs/gst/audio/gstaudioringbuffer.c
gst-libs/gst/audio/gstaudiosrc.c
gst-libs/gst/video/Makefile.am
gst-libs/gst/video/video.c
gst/encoding/gststreamcombiner.c
gst/encoding/gststreamsplitter.c
gst/playback/gstplaybasebin.c
gst/playback/gststreamsynchronizer.c
gst/playback/gstsubtitleoverlay.c
gst/playback/gsturidecodebin.c
sys/xvimage/xvimagesink.c
tests/examples/Makefile.am
win32/common/libgstvideo.def
Video overlay composition disabled for now, needs
porting to buffer meta.
2011-12-08 01:19:03 +00:00
Olivier Crête
16bb45d64a
opusdec: header cleanup
...
https://bugzilla.gnome.org/show_bug.cgi?id=665078
2011-12-07 14:03:02 +00:00
Olivier Crête
b7d53c866b
opusdec: Truncate caps first
...
https://bugzilla.gnome.org/show_bug.cgi?id=665078
2011-12-07 14:03:00 +00:00
Vincent Penquerc'h
f6ebc2de8e
opusdec: default to stereo 48000 Hz if possible when no headers seen
...
https://bugzilla.gnome.org/show_bug.cgi?id=665078
2011-12-07 13:57:38 +00:00
Thibault Saunier
785e006de9
textoverlay: unpremultiply text image
...
The GstVideoOverlayComposition only supports unpremultiplied ARGB
(for now anyway, support for pre-multiplied alpha is planned.)
2011-12-05 15:37:04 +00:00
Thibault Saunier
cbcf1e0b46
textoverlay: Attach OverlayComposition to buffers when needed
...
Add video/x-surface support in the caps
We should then attach it whenever the sink supports it, but this
is working for the time being
2011-12-05 15:37:04 +00:00
Thibault Saunier
2a687b6dfb
textoverlay: Make the text_image data a buffer
...
This way we won't free data that would be attached to some buffer.
2011-12-05 15:37:03 +00:00
Thibault Saunier
a741c0cf11
textoverlay: Sync the caps with the new supported formats
...
Thanks to the use of the new video composition library, we gain support to
more colospaces and formats, let's state it.
2011-12-05 15:37:03 +00:00
Thibault Saunier
a018c187a0
textoverlay: Make use of the new video blending utility
2011-12-05 15:37:03 +00:00
Tim-Philipp Müller
5440ae3c18
Suppress deprecation warnings in selected files, for g_static_rec_mutex_* mostly
...
GStaticRecMutex is part of our API/ABI, not much we can do here
in 0.10 for most of these.
2011-12-04 20:50:25 +00:00
Tim-Philipp Müller
4828234639
alsamixer: use GRectMutext instead of GStaticRecMutex with newer glib versions
2011-12-04 20:38:19 +00:00
Tim-Philipp Müller
9c307bccc5
alsamixer: embed static mutexes into the mixer structure
...
instead of allocating them dynamically
2011-12-04 20:21:26 +00:00
Tim-Philipp Müller
0d98aa25b8
Work around deprecated thread API in glib master
...
Add private replacements for deprecated functions such as
g_mutex_new(), g_mutex_free(), g_cond_new() etc., mostly
to avoid the deprecation warnings. We'll change these
over to the new API once we depend on glib >= 2.32.
Replace g_thread_create() with g_thread_try_new().
2011-12-04 17:16:30 +00:00
Wim Taymans
1225aa9a78
update for basesink event handler changes
2011-12-02 22:24:43 +01:00
Vincent Penquerc'h
51b02f61fc
opusdec: guard against decoding 0 samples
...
https://bugzilla.gnome.org/show_bug.cgi?id=665078
2011-12-02 15:19:52 +00:00
Tim-Philipp Müller
177525f89f
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
gst-libs/gst/netbuffer/gstnetbuffer.c
gst/ffmpegcolorspace/avcodec.h
gst/ffmpegcolorspace/gstffmpegcodecmap.c
gst/ffmpegcolorspace/imgconvert.c
gst/ffmpegcolorspace/imgconvert_template.h
gst/ffmpegcolorspace/mem.c
gst/playback/README
gst/playback/gstplaybasebin.c
gst/playback/gstplaybasebin.h
gst/playback/gstplaybin.c
sys/v4l/v4lmjpegsrc_calls.c
sys/v4l/videodev_mjpeg.h
tests/check/elements/gnomevfssink.c
2011-12-02 11:10:17 +00:00
Piotr Fusik
14644457b0
various: typo fixes
...
Fix typos in code and docs. Fixes. #658984
2011-12-02 12:03:27 +01:00
Tim-Philipp Müller
ec0d3566bf
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
ext/alsa/gstalsasrc.c
ext/alsa/gstalsasrc.h
gst/adder/gstadder.c
gst/playback/gstplaybin2.c
gst/playback/gstplaysinkconvertbin.c
win32/common/libgstvideo.def
2011-12-02 00:07:39 +00:00
Tim-Philipp Müller
e88e47cd24
Revert "alsasrc: Improve timestamp accuracy"
...
This reverts commit 0b774e0b7c
.
2011-11-30 23:15:35 +00:00
Tim-Philipp Müller
e5ae553850
Revert "alsasrc: Fix some compilation errors"
...
This reverts commit 2b84f5bd74
.
2011-11-30 23:15:22 +00:00
Tim-Philipp Müller
4cc8920db4
Revert "alsa: Remove unused but set variable"
...
This reverts commit e9aed7f31c
.
2011-11-30 23:15:12 +00:00
Tim-Philipp Müller
1290f7de0e
Revert "alsasrc: fail gracefully when ALSA does not give timestamps"
...
This reverts commit c7282a5718
.
2011-11-30 23:15:03 +00:00
Tim-Philipp Müller
d11849114c
Revert "alsasrc: handle the case where the drivers don't supply timestamps"
...
This reverts commit 8154b69112
.
2011-11-30 23:14:54 +00:00
Stefan Sauer
6d167abdfa
Revert "alsasrc: style fix"
...
This reverts commit f70ca6d4cb
.
2011-11-30 23:14:44 +00:00
Wim Taymans
47cbb230e9
audio: move audio interfaces
...
Move the audio related interfaces to the audio library.
2011-11-30 07:57:02 +01:00
Alessandro Decina
ab921eec11
oggdemux: fix compiler warning
2011-11-29 09:16:20 +01:00
Tim-Philipp Müller
0c056a04fe
Merge commit '4a58223e4c824fedc024af435337a769e8ce593e' into 0.11
2011-11-28 21:20:10 +00:00
Vincent Penquerc'h
c554463025
Revert "theoradec: move the QoS logic to libgstvideo"
...
This reverts commit 149a4ce390
.
*grumble* I managed to merge something I did not mean to.
2011-11-28 13:27:29 +00:00
Vincent Penquerc'h
96374054ac
various: fix pad template leaks
...
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:09:02 +00:00
Vincent Penquerc'h
b8431a03a7
various: fix pad template ref leaks
...
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:08:27 +00:00
Vincent Penquerc'h
149a4ce390
theoradec: move the QoS logic to libgstvideo
...
https://bugzilla.gnome.org/show_bug.cgi?id=658241
2011-11-28 12:34:43 +00:00
Stefan Sauer
f70ca6d4cb
alsasrc: style fix
...
Use timestamp==0 instead of mixing it with !timestamp style checks.
2011-11-28 10:55:39 +01:00
Stefan Sauer
8154b69112
alsasrc: handle the case where the drivers don't supply timestamps
...
If highres-timestamp is 0, try lowres and if that fails fallback to system clock
timestamps.
2011-11-28 09:13:29 +01:00
Tim-Philipp Müller
619915ea74
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
ext/opus/gstopusdec.c
ext/opus/gstopusparse.c
gst-libs/gst/video/gstbasevideodecoder.c
gst-libs/gst/video/gstbasevideodecoder.h
2011-11-26 15:37:25 +00:00
Tim-Philipp Müller
32b14c6ed3
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
ext/vorbis/gstvorbisenc.c
gst/playback/gstdecodebin2.c
gst/playback/gstplaysinkconvertbin.c
gst/videorate/gstvideorate.c
2011-11-26 12:12:59 +00:00
Vincent Penquerc'h
c6b9145630
oggmux: set collectpads2 not to wait on sparse streams
...
https://bugzilla.gnome.org/show_bug.cgi?id=663174
2011-11-25 16:11:01 +00:00
Danilo Cesar Lemes de Paula
64c3d73642
opusenc: Fixing "Unused var" compiling error for opus codec
...
https://bugzilla.gnome.org/show_bug.cgi?id=664815
2011-11-25 15:32:12 +00:00
Vincent Penquerc'h
8ac75d10fd
opusenc: only use mono streams for > 2 channels
...
I'm getting odd results with packing streams into stereo
streams, and using only mono streams is enough in all cases.
2011-11-25 15:31:59 +00:00
Vincent Penquerc'h
287a0c646e
opus: add some more debug information about channel mapping
2011-11-25 15:31:59 +00:00
Vincent Penquerc'h
605d407b16
opusenc: do not cause the decoder to apply the channel mapping again
...
Since we already reorder channels, we do not want to write that
reordering in the header, or the decoder will do it again.
2011-11-25 15:31:59 +00:00
Vincent Penquerc'h
1e00fbdacb
opusdec: fix bogus assertion
2011-11-25 15:31:59 +00:00
Tim-Philipp Müller
a0639dad38
audio: remove unstable API guards from the audio decoder and encoder base classes
2011-11-25 13:11:54 +00:00
Edward Hervey
a8024bb698
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
ext/faac/gstfaac.c
ext/opus/gstopusdec.c
ext/opus/gstopusenc.c
gst/audiovisualizers/gstspacescope.c
gst/colorspace/colorspace.c
2011-11-25 12:48:58 +01:00
Vincent Penquerc'h
a5c64d5b97
oggdemux: minor cleanup
2011-11-24 17:12:56 +00:00
Vincent Penquerc'h
32e9de842f
opus: pre-skip and output gain are little endian, remove reminder note
2011-11-24 13:40:34 +00:00
Vincent Penquerc'h
d38f4b8a09
opus: multichannel support
2011-11-24 13:40:34 +00:00
Vincent Penquerc'h
670c365400
opus: switch to multistream API
...
It's very similar to the basic API, and is a superset ot it,
which will allow encoding and decoding more than 2 channels.
2011-11-24 13:40:34 +00:00
Vincent Penquerc'h
e4ae3e89fa
opusdec: shuffle supported sample rates to favor 48000
2011-11-24 13:40:34 +00:00
Vincent Penquerc'h
d1d8cbad95
opusenc: remove useless setup field
2011-11-24 13:40:34 +00:00
Vincent Penquerc'h
b0bb1d3539
oggdemux: skip the second bisection when possible
...
If we already saw the keyframes that we need to find,
we do not need to bisect to find them.
This will always be the case for streams with audio only,
where each frame acts as a keyframe, but will occasionally
also happen for streams with video.
https://bugzilla.gnome.org/show_bug.cgi?id=662475
2011-11-24 10:48:48 +01:00
Vincent Penquerc'h
e7079cd8d5
oggdemux: improve push time seeking
...
Various tweaks to improve convergence, in particular for
the worst case, which is now cut in about half.
https://bugzilla.gnome.org/show_bug.cgi?id=662475
2011-11-24 10:48:32 +01:00
Vincent Penquerc'h
db21375406
oggdemux: gather some more stats about bisection
...
https://bugzilla.gnome.org/show_bug.cgi?id=662475
2011-11-24 10:48:15 +01:00
Vincent Penquerc'h
dbd694c7c4
vorbisenc: do not accept 256 channels, 255 is the max vorbis supports
2011-11-23 16:09:13 +00:00
Vincent Penquerc'h
5c8812f58c
opusdec: implement replay gain
...
It would ideally be better to leave this to a rgvolume element,
but we don't control the pipeline. So do it by default, and allow
disabling it via a property, so the correct volume should always
be output.
2011-11-23 14:03:30 +00:00
Vincent Penquerc'h
bfdda8e09a
opusdec: add in-band FEC support
...
This allows reconstruction of lost packets if FEC info is included
in the next packet, at the cost of extra latency. Since we do not
know if the stream has FEC (and this can change at runtime), we
always incur the latency, even if we never lose any frame, or see
any FEC information. Off by default.
2011-11-23 12:08:01 +00:00
Wim Taymans
17f6254ab4
ogg: fix compilation
2011-11-23 11:10:31 +01:00
Wim Taymans
296786c011
Merge branch 'master' into 0.11
...
Conflicts:
ext/opus/gstopusdec.c
ext/opus/gstopusenc.c
ext/opus/gstopusparse.c
gst/audiovisualizers/gstwavescope.c
gst/filter/Makefile.am
gst/filter/gstfilter.c
gst/filter/gstiir.c
gst/playondemand/gstplayondemand.c
2011-11-23 11:08:39 +01:00
Wim Taymans
7b45a7367b
Merge branch 'master' into 0.11
...
Conflicts:
ext/ogg/gstoggmux.c
2011-11-23 10:50:53 +01:00
Tim-Philipp Müller
2befc00dea
opusenc: mark properties changeable at runtime with GST_PARAM_MUTABLE_PLAYING
2011-11-22 20:27:50 +00:00
Vincent Penquerc'h
b226e8a085
opusenc: allow setting most properties at PLAYING time
...
Opus allows these to be changed during encoding, transparently
to the decoder.
2011-11-22 17:04:09 +00:00
Vincent Penquerc'h
ee723996db
opusenc: bound the bitrate to more sensible values
...
Go from the bounds mentioned in the spec, and allow some more
variation.
In particular, don't allow silly low bitrates, and allow reaching
the maximum useful bitrate.
2011-11-22 16:14:06 +00:00
Vincent Penquerc'h
bb39c86fdf
opusenc: fix crash on pathological parameters
...
Asking for 1 bit/s would select a 0 byte buffer, leading
to a crash. Buffer size is now controlled by a max-payload-size
property, which can't be less than 2.
2011-11-22 15:33:20 +00:00
Vincent Penquerc'h
042b4f9a29
oggstream: extract opus comments if available
2011-11-22 13:29:10 +00:00
Vincent Penquerc'h
5be77031ca
opus: move header magic testing to gstopusheader
2011-11-22 13:20:31 +00:00
Vincent Penquerc'h
354c7824aa
opusdec: skip pre-skip samples
2011-11-22 13:20:31 +00:00
Vincent Penquerc'h
1e81bc4b64
opusdec: read pre-skip from first header if available
2011-11-22 13:20:31 +00:00
Vincent Penquerc'h
bf73491077
oggstream: recognize opus headers from data, not packet count
...
Opus streams outside of Ogg may not have headers, and oggstream
may be used by oggmux to mux an Opus stream which does not come
from Ogg - thus without headers.
Determining headerness by packet count would strip the first two
packets from such an Opus stream, leading to a very small amount
of audio being clipped at the beginning of the stream.
2011-11-22 13:15:33 +00:00
Vincent Penquerc'h
9d4989395c
oggdemux: add some more debug info when determining start time
2011-11-22 13:01:35 +00:00
Vincent Penquerc'h
2a87d7c8ce
oggstream: fix opus duration calculation
2011-11-22 12:55:56 +00:00
Vincent Penquerc'h
ceee36195a
oggstream: early out on headers when determining packet duration
2011-11-22 12:00:58 +00:00
Vincent Penquerc'h
e05f1df04b
oggstream: account for opus pre-skip in granpos/time mapping
2011-11-22 11:59:54 +00:00
Tim-Philipp Müller
e8fb8cb523
Fix some more printf format warnings
2011-11-22 01:21:04 +00:00
Wim Taymans
8fc2a21775
update for activation changes
2011-11-21 13:35:34 +01:00
Vincent Penquerc'h
fbfc870343
opusenc: reset tagsetter interface on stop
2011-11-21 12:02:28 +00:00
Vincent Penquerc'h
a6ca3673b4
opusdec: handle NULL packets (used for PLC)
2011-11-21 11:51:21 +00:00
Vincent Penquerc'h
de87d061fc
opusdec: light cleanup
2011-11-21 11:51:21 +00:00
Vincent Penquerc'h
95ae14f8b4
opusenc: do not push header buffers
...
Opus headers appear only when muxed in Ogg, so only place them
on the caps, where oggmux will find them, but other elements will
be blithely unaware of them.
2011-11-21 11:51:21 +00:00
Vincent Penquerc'h
7030b04f5e
opus: make opusparse set headers on caps
...
Header-on-caps code moved to a new shared location to avoid
duplicating the code.
2011-11-21 11:51:20 +00:00
Vincent Penquerc'h
9d2a2750c2
ogg: add opus support
2011-11-19 16:06:09 +00:00
Vincent Penquerc'h
efcd038346
opusenc: fix terminating NUL being written in signature
2011-11-19 15:59:53 +00:00
Vincent Penquerc'h
7c0c221fa4
opusenc: make frame-size an enum
...
It only supports a set number of specific values (including
a non integer one).
2011-11-19 15:59:52 +00:00
Vincent Penquerc'h
d2aba01428
opusenc: the encoder might not make use of all the bytes
2011-11-19 15:59:52 +00:00
Wim Taymans
d0bd5f04c0
update for new scheduling query
2011-11-18 17:58:58 +01:00
Wim Taymans
1ad4d20607
add parent to activate functions
2011-11-18 13:56:04 +01:00
Wim Taymans
f566dae7dc
Merge branch 'master' into 0.11
...
Conflicts:
ext/celt/gstceltdec.c
ext/opus/gstopusdec.c
ext/opus/gstopusdec.h
ext/opus/gstopusenc.c
ext/opus/gstopusenc.h
ext/opus/gstopusparse.c
2011-11-17 17:32:42 +01:00
Wim Taymans
7afdff3575
Merge branch 'master' into 0.11
...
Conflicts:
gst-libs/gst/audio/gstaudiodecoder.c
2011-11-17 17:07:41 +01:00
Wim Taymans
e302833e65
add parent to pad functions
2011-11-17 12:48:25 +01:00
Vincent Penquerc'h
ccc04a1529
opusenc: do not include variable fields in caps
...
Those can vary from one packet to the next, so have no reason
to be in the caps.
2011-11-16 18:51:16 +00:00
Vincent Penquerc'h
0031b48684
opusenc: fix constrained-vbr property name typo
2011-11-16 18:51:16 +00:00
Vincent Penquerc'h
656e1f8d9f
opusdec: let the base class handle all timing
2011-11-16 18:35:29 +00:00
Mark Nauwelaerts
80658564ae
vorbisenc: reset tag setter interface when appropriate
2011-11-16 19:03:49 +01:00
Vincent Penquerc'h
8bb91f923f
opusparse: add opusparse element
...
A very simple element that parses Opus streams from the ad hoc
framing used by the Opus test vectors.
2011-11-16 17:58:15 +00:00
Vincent Penquerc'h
310daa5096
opusdec: allow negotiation of rate/channels with downstream
...
Since an opus stream may be decoded to any (sensible) rate,
and either stereo or mono, we try to accomodate downstream.
2011-11-16 17:45:00 +00:00
Vincent Penquerc'h
ffc4408d53
opusdec: rewrite logic
...
Parameters such as frame size, etc, are variable. Pretty much
everything can change within a stream, so be prepared about it,
and do not cache parameters in the decoder.
2011-11-16 17:45:00 +00:00
Vincent Penquerc'h
f978a60f38
opus: port to base audio encoder/decoder
2011-11-16 17:45:00 +00:00
Wim Taymans
2202511e77
add parent to query function
2011-11-16 17:25:17 +01:00
Vincent Penquerc'h
acf18e34be
opusdec: allow negotiation of rate/channels with downstream
...
Since an opus stream may be decoded to any (sensible) rate,
and either stereo or mono, we try to accomodate downstream.
2011-11-16 13:43:36 +00:00
Vincent Penquerc'h
afbc4fdd71
opusdec: rewrite logic
...
Parameters such as frame size, etc, are variable. Pretty much
everything can change within a stream, so be prepared about it,
and do not cache parameters in the decoder.
2011-11-16 13:43:36 +00:00
Vincent Penquerc'h
9690361d04
opusdec: remove buffer pool, buffers are not constant size
2011-11-16 13:43:36 +00:00
Vincent Penquerc'h
1c99cb3ab1
opusparse: add opusparse element
...
A very simple element that parses Opus streams from the ad hoc
framing used by the Opus test vectors.
2011-11-16 13:43:36 +00:00
Wim Taymans
94ac7e858f
visual: update for renamed flags
...
Use the _check_reconfigure method instead of checking flags.
Don't need to ref the parent anymore, core does that.
2011-11-16 12:40:26 +01:00
Vincent Penquerc'h
a4a837dd39
opusenc: fix pointer mismatch in memcpy on drain
2011-11-15 17:50:39 +00:00
Wim Taymans
026ec68f75
_peer_get_caps() -> _peer_query_caps()
2011-11-15 18:04:17 +01:00
Wim Taymans
7402d3a3d2
update for _get_caps() -> _query_caps()
2011-11-15 18:04:17 +01:00
Wim Taymans
ab9ffa93f5
change getcaps to query
...
Add sink and src event functions in rtpbasepayload
Add query vmethod to rtpbasepayload.
2011-11-15 18:04:16 +01:00