Commit graph

7587 commits

Author SHA1 Message Date
Sebastian Dröge
9bd6fe41cb decodebin2: Chains with an exposed endpad are complete too
This allows partial group changes, i.e. demuxer2 in the example below
goes EOS but has a next group and audio2 stays the same.

          /-- >demuxer2---->video
demuxer---             \--->audio1
          \--->audio2
2009-10-07 17:46:30 +02:00
Sebastian Dröge
bf7cd0ed81 decodebin2: Use the iterate internal links function instead of string magic to get multiqueue srcpads 2009-10-07 17:46:29 +02:00
Sebastian Dröge
674e2309ac uridecodebin: Don't post missing plugin messages twice
decodebin2 already posts them after emitting the unknown-type signal,
there's no need to post another one.
2009-10-07 17:46:29 +02:00
Sebastian Dröge
cf9c6a2271 decodebin2: Rewrite autoplugging and how groups of pads are exposed
This now keeps track of everything that is going on, creates
a tree of chains and groups to allow "demuxer after demuxer" scenarios
and allows chained Oggs with multiple streams (needs oggdemux or playbin2 fixes).

Also document everything in detail and give a general overview of what
decodebin2 is doing at the top of the sources.

Fixes bug #596183, #563828 and #591677.
2009-10-07 17:46:28 +02:00
Stefan Kost
1e004cd363 ximagesink: only start event thread if needed
The event thread is doing 20 wakeups per second to poll the events. If one
runs ximagesink with handle-events=false and handle-expose=false then we can
avoid the extra thread.
2009-10-07 17:57:54 +03:00
Edward Hervey
2021791b75 theoraenc: Make the default quality property 48.
This guarantees that people who use theoraenc without modifying any
properties will end up with a reasonably good quality output.

48 is also the default of the encoder_example application shipped with
libtheora.
2009-10-07 16:56:28 +02:00
Benjamin Otte
4db9487a1f tests/check/libs/video.c: Update strides for Y41B 2009-10-07 11:49:18 +02:00
Tim-Philipp Müller
92465ba8ac rtspconnection: we can use GLib 2.18 API unconditionally now 2009-10-07 10:32:17 +01:00
Tim-Philipp Müller
74b83a692a configure: bump GLib requirement to 2.18
Bump required GLib version as per the release planning docs.
2009-10-07 10:15:52 +01:00
Tim-Philipp Müller
a52483e59e docs: clarify GstTuner docs in two places 2009-10-07 10:15:52 +01:00
Tim-Philipp Müller
a039d3a1a6 v4l: fix compiler warning
Fix 'variable may be used uninitialized' compiler warning (which is
true in theory, but can't actually ever happen, since we always
call the function with check=FALSE).

Fixes #596313.
2009-10-07 10:15:52 +01:00
Stefan Kost
ccf5d6551a build: sprintf, sscanf need stdio.h 2009-10-07 11:56:35 +03:00
Stefan Kost
99b4483b8c xvimagesink: only start event thread if needed
The event thread is doing 20 wakeups per second to poll the events. If one runs
xvimagesink with handle-events=false and handle-expose=false then we can avoid
the extra thread.
2009-10-07 11:18:09 +03:00
Benjamin Otte
a27f439ab3 Update Since tags for NV12/NV21
They are added in 0.10.26 now, not 0.10.25
2009-10-07 09:58:27 +02:00
Benjamin Otte
6621dd3d3e [videotestsrc] Make checkers-8 pattern create 8x8 instead of 16x16 tiles 2009-10-07 09:54:08 +02:00
Benjamin Otte
9d6eb19453 [ffmpegcolorspace] Fix NV12 and NV21 with odd width and height 2009-10-07 09:54:08 +02:00
Benjamin Otte
1cf651f883 Add NV12 and NV21 formats 2009-10-07 09:54:07 +02:00
Benjamin Otte
92928134ca [video] Fix Y41B
Chroma components should be aligned on 4byte boundaries.

https://bugzilla.gnome.org/show_bug.cgi?id=595849
2009-10-07 09:54:07 +02:00
Benjamin Otte
a0a66e8ceb [videotestsrc] Fix Y41B
Chroma components should be aligned on 4byte boundaries.

https://bugzilla.gnome.org/show_bug.cgi?id=595849
2009-10-07 09:54:07 +02:00
Sebastian Dröge
6d40818ec0 streamvolume: Define cbrt() if it's not available
Fixes build on Win32, bug #597537.
2009-10-07 07:28:15 +02:00
Sebastian Dröge
24b7d2500c factorylist: Use gst_caps_can_intersect() instead of _intersect()
This is faster and results in less allocations.
2009-10-07 07:23:20 +02:00
Sebastian Dröge
999483b454 decodebin2: Don't set the external ghostpads blocked but only their targets
Pad blocks should never be done on external pads as outside elements
might want to use their own pad blocks on them and this will lead to
conflicts and deadlocks.
2009-10-07 07:23:20 +02:00
Sebastian Dröge
0dcc0857aa decodebin2: Only use the object lock for protecting the subtitle elements
Using the decodebin lock will result in deadlocks if the subtitle encoding
is accessed from a pad-added handler.
2009-10-07 07:23:19 +02:00
Sebastian Dröge
9be848d04f playbin2: Improve debugging of pad blocks 2009-10-07 07:21:38 +02:00
Sebastian Dröge
a4f454dc24 playbin2/playsink: Use gst_object_ref_sink() instead of calling both separately 2009-10-07 07:21:37 +02:00
David Schleef
4a6d97cda0 configure: Add an 'else' to pangocairo check
Otherwise it exits if it fails.
2009-10-06 19:59:11 -07:00
David Schleef
205ada8454 videotestsrc: add pattern with out-of-gamut colors
Adds a pattern with out-of-gamut colors in a checkerboard
pattern with in-gamut neighbors.  Useful for checking YCbCr->RGB
color matrixing.  Correct matrixing and clamping will cause the
checkerboard pattern to be invisible.
2009-10-06 19:47:01 -07:00
Wim Taymans
730eead9a9 rtsp: use CLOSE_SOCKET() instead of close()
Use CLOSE_SOCKET instead of directly calling close() because it does the right
thing for windows.

Fixes #597539
2009-10-06 22:37:00 +02:00
Robert Swain
fc56adc2e3 audioresample: fix printf variable type
Change printf variable type from %lu to %" G_GUINT64_FORMAT " as it
should be for guint64.

Fixes #596981
2009-10-06 22:37:00 +02:00
Jan Schmidt
f58a2b71b5 ffmpegcolorspace: Use the ffmpegcolorspace debug category
Move gstffmpegcodecmap debug to the ffmpegcolorspace category
2009-10-06 20:37:42 +01:00
Jan Schmidt
850c95178d gdppay: Don't repeat tags buffers for every new segment
Only send a tag buffer when one is received, not after every new segment
event/update.
2009-10-06 20:37:42 +01:00
David Schleef
1871a6025d typefind: detect 'ftypqt ' as video/quicktime 2009-10-06 12:19:12 -07:00
Jan Schmidt
1a788825ee back to development -> 0.10.25.1 2009-10-06 19:47:00 +01:00
Jan Schmidt
225d6d77b1 Release 0.10.25 2009-10-05 13:56:15 +01:00
Jan Schmidt
336573f38c Update .po files 2009-10-05 13:49:10 +01:00
Jan Schmidt
2211713978 0.10.24.4 pre-release 2009-10-01 17:17:55 +01:00
Sebastian Dröge
7c6c74e4a3 pango: Unpremultiply Cairo's ARGB to match GStreamers ARGB 2009-10-01 11:41:16 +02:00
Wim Taymans
a8d7e6a490 playsink: make the lock recursive for now
Fixes #583255
2009-10-01 09:35:54 +02:00
Wim Taymans
f18ed7abf9 playsink: fix the vis property getter 2009-10-01 09:35:54 +02:00
Christian F.K. Schaller
7be6753e0d Add missing file to spec file 2009-09-30 18:06:56 +01:00
Sebastian Dröge
901dbc6ab4 cddabasesrc: Fix string leaks in the unit test and a leak in cddabasesrc 2009-09-17 17:00:10 +02:00
Jonathan Matthew
6781c4c9c5 cddabasesrc: ignore URI fragments that look like device paths
Rhythmbox uses cdda:// URIs of the form cdda://track#device, which
worked before the fix for bug #321532.

Also adds a check for negative track numbers and some unit tests for URI
parsing.

Fixes bug #595454.
2009-09-17 17:00:10 +02:00
Jan Schmidt
257dbccad4 0.10.24.3 pre-release 2009-09-17 01:20:45 +01:00
Michael Smith
1f43f87023 vorbistag: don't ever return NULL in list of strings. 2009-09-15 15:55:34 -07:00
Edward Hervey
b565a3088c playsink: Expose mute,volume,vis-plugin and font-desc properties
https://bugzilla.gnome.org/show_bug.cgi?id=594623
2009-09-14 12:26:05 +02:00
Edward Hervey
377e781ad5 GstPlaySink: Expose 'reconfigure' as an action signal. 2009-09-14 10:40:00 +02:00
Edward Hervey
bafe9082fd GstPlaySink: Expose flags as a gobject property. 2009-09-14 10:40:00 +02:00
Edward Hervey
02c50388c4 playback: Register playsink as an element.
This allows using playsink from outside the playback plugin.

Add code to be able to request the sink pads using standard GStreamer API.

TODO : expose GObject properties/signals.
2009-09-14 10:39:59 +02:00
Stefan Kost
f00b79fc65 docs: add new gst_stream_volume_get_type to types file
This is needs to get Gobject features to show up in the docs.
2009-09-13 21:02:42 +03:00
David Schleef
f126617dbd oggdemux: Fix duration calculation for truncated files
If the last page of a stream has a granulepos of -1, that is,
it doesn't complete a packet, we need to continue to search
for the last granulepos.
2009-09-13 10:58:12 -07:00