Commit graph

12386 commits

Author SHA1 Message Date
David Schleef
ceb6585d26 videodecoder: warn if frame list gets long
Decoders that get unparsed input are internally leaking nearly
every incoming buffer.  This checks that case.
2013-02-11 11:56:14 -08:00
Tim-Philipp Müller
804959ac5f tests: don't use deprecated thread API in streamsynchronizer test 2013-02-09 16:50:05 +00:00
Marc Leeman
f704b3f975 decodebin: g_mutex_new -> g_mutex_init
Don't use deprecated GLib API.

https://bugzilla.gnome.org/show_bug.cgi?id=693302
2013-02-07 13:51:17 +00:00
Jan Schmidt
fb102419c7 pango: 3rd time's the charm. Fix attribute list handling.
Really really fix attribute list handling by taking a
copy of the original attributes that pango_attr_list_filter
can mutate, but keep the original around intact to restore
later.
2013-02-08 00:05:24 +11:00
Jan Schmidt
bc42d382e2 pango: Don't modify the original attributes list.
Take a copy of the original attributes list instead of just
a ref, since pango_attr_list_filter can remove elements from it.
2013-02-07 23:45:26 +11:00
Jan Schmidt
2528baf2c2 pango: Remove extra pango_attr_list_copy() from basetextoverlay
Fixes a per-buffer memory leak of the attribute list.
2013-02-07 23:06:57 +11:00
Tim-Philipp Müller
dce49a1a7e video: fix return type of _get_palette() and add since markers to docs
'const gpointer' is not the same as 'gconstpointer', see
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35928.
2013-02-06 12:43:51 +00:00
Wim Taymans
ed6e7776f3 appsrc: negotiate before popping buffer
First negotiate and then try to pop a buffer from the queue. This is just
to improve the debug log.
2013-02-06 10:07:47 +01:00
Wim Taymans
d4ed3ddf6f appsrc: always take mutex before object lock
The locking order is to first take the appsrc mutex and then the
object lock.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=693224
2013-02-06 10:00:27 +01:00
Wim Taymans
ebf24e292e videotestsrc: use video library palette
Use the palette provided and used by the video library instead of making our own
copy.
2013-02-05 11:20:20 +01:00
Wim Taymans
0085a77919 videoscale: scale each field in interlace mode
When we are dealing with interlaced content, scale each field intependently so
that we don't destroy the interlacing.

See https://bugzilla.gnome.org/show_bug.cgi?id=588535
2013-02-05 10:49:57 +01:00
Wim Taymans
be866d4b78 videoconvert: interlace support to some fastpath functions
Add interlace support for some fastpath functions.
2013-02-04 16:21:20 +01:00
Wim Taymans
599880ff8d videoconvert: make fast path interlaced aware
Make sure that we also handle interlacing when choosing the fast path.

See https://bugzilla.gnome.org/show_bug.cgi?id=588535
2013-02-04 15:40:02 +01:00
Wim Taymans
e3a9a7cf07 videoconvert: pass frame interlaced flag to pack/unpack
If the frame is interlaced, pass the interlaced flag to the pack/unpack
functions to make it unpack correctly.
2013-02-04 15:19:35 +01:00
Wim Taymans
c1a25d2ce7 video-format: fix interlaced 4:2:0 and 4:1:0 pack/unpack
For interlaced vertically subsampled images we need to combine alternating
chroma lines with alternating luma lines. That is line 0 and 2 are combined
with the first line of chroma samples and line 1 and 3 with the second line
of chroma samples.

See also: https://bugzilla.gnome.org/show_bug.cgi?id=588535
2013-02-04 15:06:10 +01:00
Wim Taymans
ed2ce49499 videoconvert: use the palette helper functions
Get the palette from the video library instead of making our own.
2013-02-04 15:06:10 +01:00
Wim Taymans
cb7a7cd05c video-format: add method to get palette
Make a new method to get the default palette for paletted formats.
2013-02-04 15:06:07 +01:00
Wim Taymans
9b95f9de95 videoconvert: make a constant of scale factor 2013-02-04 15:06:06 +01:00
Wim Taymans
e303b0ad33 video-format: add interlace flag
Add an interlaced flag that can be used to control the unpack/pack
functions.
2013-02-04 15:05:59 +01:00
Wim Taymans
d094ac49cc riff: add more gray8 variants 2013-01-31 12:57:11 +01:00
Dirk Van Haerenborgh
a81089614b riff: add support for raw monochrome 8-bit video
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=692930
2013-01-31 12:56:16 +01:00
Wim Taymans
ef8e17f993 visualizer: improve allocation
Based on patch by Matthew Waters

Add private data
Add decide_allocation vmethod
Refactor bufferpool negotiation

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681719
2013-01-29 10:18:06 +01:00
Stefan Sauer
0ac034db91 Automatic update of common submodule
From a942293 to 2de221c
2013-01-28 20:41:44 +01:00
B.Prathibha
8afb9e896c tests: use g_timeout_add_seconds wherever possible.
https://bugzilla.gnome.org/show_bug.cgi?id=692613
2013-01-27 13:37:29 +00:00
Olivier Crête
a4bee3c83a docs: Put GST_*_INIT into the -sections.txt file too 2013-01-24 20:15:09 -05:00
Olivier Crête
14c77ec671 doc: Sort new things into ..-libs-sections.txt 2013-01-24 20:12:41 -05:00
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
Tim-Philipp Müller
500b864899 decodebin: try harder to always expose pads in the same order
Use stream-id as sort criterion in addition to the media type.

https://bugzilla.gnome.org/show_bug.cgi?id=634407
2013-01-19 13:03:03 +00:00
Tim-Philipp Müller
cb99c16744 tests: disable ABI checks for architectures with outdated structure size files 2013-01-17 09:50:16 +00:00
Tim-Philipp Müller
664adc6e19 gst-libs: use GST_*_1_0 environment variables everywhere
The _1_0 suffixed environment variables override the
non-suffixed ones, so if we're in an environment that
sets the _1_0 suffixed ones, such as jhbuild, we need
to set those to make sure ours actually always get
used.
2013-01-16 10:16:27 +00:00
Tim-Philipp Müller
2f817af71c po: update for new translatable string 2013-01-16 10:16:14 +00:00
Tim-Philipp Müller
98c81089d1 pbutils: add description for SBC audio caps 2013-01-15 17:33:38 +00:00
Tim-Philipp Müller
fcd8566665 typefinding: add typefind functions for SBC audio
https://bugzilla.gnome.org/show_bug.cgi?id=690582
2013-01-15 17:27:31 +00:00
Tim-Philipp Müller
4554a8fd64 Automatic update of common submodule
From a72faea to a942293
2013-01-15 15:04:12 +00:00
Martin Pitt
c472bce8e1 tests: use _1_0 variants for the various registry variables
These override the variants without version suffix. Makes
'make check' work properly in environments that set the
suffixed variant for 1.0, such as jhbuild.
2013-01-15 12:40:40 +00:00
Martin Pitt
6f59c958ca Set $GST_PLUGIN_PATH_1_0 for tests as well
jhbuild already sets $GST_PLUGIN_PATH_1_0 which overrides $GST_PLUGIN_PATH. Set
both for the tests to see the locally built elements. Fixes 'make check' in
jhbuild.
2013-01-15 12:28:33 +00:00
Pete Beardmore
569f3a29ab riff: add waveformatextension generic support
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=690591
2013-01-14 16:49:15 +01:00
Tim-Philipp Müller
776bae5b84 docs: fix 0.10-ism in GstTagImageType docs
The image type is not in the info structure in the sample,
not in the caps.

https://bugzilla.gnome.org/show_bug.cgi?id=691687
2013-01-14 11:12:03 +00:00
Stefan Sauer
8296b683ca volume: a return value of FALSE from the controller is not fatal
A return value of FALSE here indicates that we don't have control-values. In
0.10 we were returning the default value of the property. Now we don't fill an
array with defaults in the ControlBinding, but leave it up to the element to
handle this case.
2013-01-09 23:15:06 +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
Nicolas Dufresne
7107e97273 videoencoder: Remove done ToDo
https://bugzilla.gnome.org/show_bug.cgi?id=675761
2012-12-31 19:09:01 +00:00
Nicolas Dufresne
8a233a215d videoencoder: Documentation fix
https://bugzilla.gnome.org/show_bug.cgi?id=675761
2012-12-31 19:03:29 +00:00
Tim-Philipp Müller
b4def63f55 audio: don't use uninitialized variable in debug log
https://bugzilla.gnome.org/show_bug.cgi?id=667317
2012-12-29 14:29:53 +00:00
Tim-Philipp Müller
a3c6d0da91 encoding-profile: add special-casing for asf/wmv/wma file extensions
https://bugzilla.gnome.org/show_bug.cgi?id=636753
2012-12-23 15:51:51 +00:00
Tim-Philipp Müller
f1948e21ae win32: update .def file for new rtsp API 2012-12-23 15:32:02 +00:00
Tim-Philipp Müller
42f971c5eb encoding-profile: add gst_encoding_profile_get_file_extension()
API: gst_encoding_profile_get_file_extension()

https://bugzilla.gnome.org/show_bug.cgi?id=636753
2012-12-23 15:26:59 +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
Tim-Philipp Müller
df186d5240 video: fix A420 size calculation 2012-12-22 21:04:11 +00:00
Wim Taymans
0feecef275 decodebin2: use NO_RESYNC flag
to avoid the state change function from messing with the state of the elements
that we add.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=690420
2012-12-21 16:38:36 +01:00