Commit graph

2788 commits

Author SHA1 Message Date
Tim-Philipp Müller
8573dbdf66 playback: rename playbin2 to playbin
But keep source file name as-is for now.
2011-06-15 00:06:09 +01:00
Tim-Philipp Müller
5fd073e070 playback: merge playbin and decodebin plugins into one single playback plugin again 2011-06-15 00:02:13 +01:00
Tim-Philipp Müller
b5ef8efa1a decodebin2: rename decodebin2 to decodebin
But don't rename source file for now, which hopefully
makes merging from master easier.
2011-06-14 23:53:38 +01:00
Tim-Philipp Müller
24f28cfdb0 playback: remove old playbin and decodebin elements 2011-06-14 23:42:27 +01:00
Debarshi Ray
2c6dbae423 Remove unused but set variables
This is needed to satisfy the new -Wunused-but-set-variable added in
GCC 4.6: http://gcc.gnu.org/gcc-4.6/changes.html
2011-06-14 22:40:13 +01:00
Wim Taymans
40d567153a Merge branch 'master' into 0.11 2011-06-13 19:09:05 +02:00
Wim Taymans
9c54ca5254 -base: update for buffer API change 2011-06-13 16:32:56 +02:00
Wim Taymans
f542a3e582 videotestsrc: use baseclass allocator negotiation logic
Let the baseclass implement the negotiation of the allocators.
Influence the allocator buffersize.
Use the fill vmethod to fill the buffer with data.
2011-06-13 12:09:34 +02:00
Wim Taymans
1c8324a0d1 update for bufferpool api change 2011-06-11 18:54:44 +02:00
David Schleef
4db89c82bb convert M_PI to G_PI, for msvc 2011-06-10 23:56:34 -07:00
Wim Taymans
408221119c videotestsrc: fix for alignment value change 2011-06-10 17:58:26 +02:00
Wim Taymans
0ac9bb7d99 Merge branch 'master' into 0.11
Conflicts:
	tests/examples/audio/Makefile.am
	tests/examples/v4l/Makefile.am
2011-06-10 12:14:57 +02:00
Wim Taymans
db999572a8 -base: fix for flush_stop event API change 2011-06-10 11:59:53 +02:00
Wim Taymans
f565812e25 playback: changes for message API changes 2011-06-08 13:45:41 +02:00
Tim-Philipp Müller
c692191c33 GST_PLUGINS_BASE_LIBS is not defined in -base. 2011-06-08 12:21:43 +01:00
Tim-Philipp Müller
c092981b16 Remove v4l plugin
The old v4l interface has been deprecated for years and even
been removed from the kernel headers. If anyone still needs
this plugin, they can resurrect it in gst-plugins-bad, there's
no reason for it to be in -base.
2011-06-07 20:47:46 +01:00
Wim Taymans
2940249a84 -base: use caps event
Remove uses of setcaps function and use the caps event.
2011-06-07 11:55:36 +02:00
Wim Taymans
beb864bd93 -base: use caps event instead of setcapsfunction 2011-06-07 10:58:27 +02:00
Wim Taymans
c88ee10c9b Merge branch 'master' into 0.11
Conflicts:
	ext/theora/gsttheoraenc.c
2011-06-06 16:27:12 +02:00
Wim Taymans
8722bdc694 videotestsrc: remove deprecated peer-alloc property
Remove the peer-alloc property, it's not used anymore because pad-alloc is gone.
2011-06-06 16:13:43 +02:00
Tim-Philipp Müller
4db75330b2 subparse: fix indentation 2011-06-06 00:23:59 +01:00
David Schleef
836081abee adder: Work around changes in g_atomic API
See #651514 for details.
2011-06-04 13:36:55 -07:00
Wim Taymans
c74443b347 typefind: fix after merge 2011-06-03 13:16:09 +02:00
Wim Taymans
5f271d64a6 playback: fix compilation after ghostpad setcaps removal 2011-06-03 13:12:31 +02:00
Wim Taymans
0200e720de Merge branch 'master' into 0.11 2011-06-02 19:26:33 +02:00
Tim-Philipp Müller
d10a7b439b typefinding: add typefinder for WAP WBMP bitmaps
https://bugzilla.gnome.org/show_bug.cgi?id=651294
2011-06-02 14:36:06 +01:00
Wim Taymans
f9967e4aac Merge branch 'master' into 0.11
Conflicts:
	gst-libs/gst/video/video.h
	gst/playback/gstplaysinkaudioconvert.c
	gst/playback/gstplaysinkvideoconvert.c
	tests/check/libs/rtp.c
2011-06-02 12:18:13 +02:00
Wim Taymans
ea672b68a1 playsinconvert: clear the probe id when removing 2011-06-02 12:12:04 +02:00
Wim Taymans
3b09cfe54d playsink: refactor block/unblock code a little 2011-06-02 12:08:22 +02:00
Sebastian Dröge
5c97aa2e5c playsink: Fix deadlock in the audio/video converter bins when linking fails 2011-06-02 11:54:35 +02:00
Wim Taymans
f91c753959 probes: port to new API for blocking and probes 2011-06-01 19:34:54 +02:00
Sebastian Dröge
8f967e9e70 volume: Fix handling of volume>=4.0 for 8 and 16 bit integer formats
Also add a unit test for this. Previously volumes bigger than 4.0
would have resulted in overflows in the fixed point processing.

Fixes bug #649642.
2011-05-31 11:07:11 +02:00
Wim Taymans
c7428aeaae playbin: fixed for new pad block API 2011-05-30 18:36:14 +02:00
Sebastian Dröge
0c99ab5806 videoscale: Optimize transform_caps()
If the second and next caps structures are a subset of the already existing
transformed caps we can safely skip them because we would transform them to
the same caps again.
2011-05-27 14:37:41 +02:00
Sebastian Dröge
da4e79bb6b ffmpegcolorspace: Optimize transform_caps()
If the second and next caps structures are a subset of the already existing
transformed caps we can safely skip them because we would transform them to
the same caps again.
2011-05-27 14:34:37 +02:00
Sebastian Dröge
a2162b07ad audioresample: Optimize transform_caps()
If the second and next caps structures are a subset of the already existing
transformed caps we can safely skip them because we would transform them to
the same caps again.
2011-05-27 14:31:02 +02:00
Sebastian Dröge
4fcd621101 audioconvert: Use new gst_caps_is_subset_structure() API
This prevents one copy of every structure and creating a new caps
instance.
2011-05-27 14:10:50 +02:00
Sebastian Dröge
d590bce5f7 audioconvert: Optimize transform_caps()
If the second and next caps structures are a subset of the already existing
transformed caps we can safely skip them because we would transform them to
the same caps again.

This makes gst_pad_get_caps() on an audiotestsrc ! audioconvert !
audioconvert ! audioconvert ! fakesink pipeline about 1.7 times faster.
2011-05-27 13:13:42 +02:00
Sebastian Dröge
d8e0af1fc1 gst: Update for the GstBaseTransform::transform_caps() changes 2011-05-27 12:13:14 +02:00
Wim Taymans
8501753033 -base: change for changed set_blocked API 2011-05-26 16:18:16 +02:00
Sebastian Dröge
bf08ca7020 Merge branch 'master' into 0.11 2011-05-26 13:54:09 +02:00
Sebastian Dröge
216258fbc2 playbin2: Let the input-selectors sync all streams to the running time
This is especially needed when switching between a non-sparse and sparse
video stream, see bug #537382. It also lowers the time needed for switching
between streams a bit.
2011-05-26 11:41:50 +02:00
Stefan Kost
5cd0e0f666 audiotestsrc: add blue and violet noise by using spectral inversion
Add blue and violet noise by spectral inversion of pink and red noise.
Fixes #649969
2011-05-26 00:18:55 +03:00
Stefan Kost
1cf831e74e audiotestsrc: add red (brownian) noise generator
Add another noise generator which produces a quite dark noise color.

Fixes parts of #649969.
2011-05-25 23:43:56 +03:00
Stefan Kost
1916eecc30 volume: use a flag for 'mute' using the controller
Previously we checked mute_csource to determine wheter we need to premultiply
volumes and mute values. That fails as we unrefs mute_csource and set it to
NULL after. Use an extra flag instead.
2011-05-25 14:28:18 +03:00
Wim Taymans
e614c6bd81 feature: use object name instaed of feature name 2011-05-24 18:21:06 +02:00
Wim Taymans
010add200a scheduling: port to new scheduling query 2011-05-24 17:37:45 +02:00
Wim Taymans
a87c021237 Merge branch 'master' into 0.11
Conflicts:
	gst-libs/gst/video/convertframe.c
2011-05-24 09:47:15 +02:00
Sebastian Dröge
c867f677c0 subparse: Try to typefind even if conversion to UTF8 failed
Fixes bug #600043.
2011-05-23 16:05:35 +02:00
Sebastian Dröge
2c7cdbc2ca subparse: Compile the typefind regex with optimization to speed up matching 2011-05-23 16:05:35 +02:00
Sebastian Dröge
3dc4987138 subparse: Interprete typefind strings passed to GRegex as raw bytes instead of valid UTF8 2011-05-23 16:05:35 +02:00
Stefan Kost
762bb236fa docs: fixup appsrc/sink api docs 2011-05-23 15:02:27 +03:00
Wim Taymans
6688eea15c encodebin: use new method
Use the new element class method to get the metadata from an element. Not all
elements might have an elementfactory.
2011-05-20 12:50:39 +02:00
Sebastian Dröge
1be10803ba encodebin: Fix compilation after the removal of GstElementDetails 2011-05-20 12:32:35 +02:00
Sebastian Dröge
a9b134d1a9 Merge branch 'master' into 0.11
Conflicts:
	docs/plugins/gst-plugins-base-plugins.hierarchy
	docs/plugins/gst-plugins-base-plugins.interfaces
	docs/plugins/gst-plugins-base-plugins.prerequisites
2011-05-20 12:26:57 +02:00
Stefan Kost
f514be993c audioconvert: cleanup helper code
make_lossless_changes() returns the same structure that we're passing (probably
to enable chaining). Instead of reusing s and making it point to s2 as well,
keep using s2. Drop the assignment which in the 2nd case is a dead one anyway.
2011-05-19 23:41:08 +03:00
Thiago Santos
b5fb542386 encodebin: Autoplug formatters
Autoplug formatters for streams if a formatter with secondary or
higher rank is found. Formatters are autoplugged when there is no
muxer or when the muxer doesn't implement the tagsetter interface.

Currently only the first formatter found is plugged, this might
help in lots of cases, but it doesn't solve the
'lamemp3 ! xingmux ! id3mux'
case.

https://bugzilla.gnome.org/show_bug.cgi?id=649841
2011-05-19 08:35:46 -03:00
Thiago Santos
0060900d68 encodebin: fix typos 2011-05-19 08:30:03 -03:00
Sebastian Dröge
884213b8b8 base: Update for SEGMENT event parse API changes 2011-05-18 17:23:18 +02:00
Sebastian Dröge
a46485e357 gst: Update for caps/pad template related API changes 2011-05-17 13:06:01 +02:00
Sebastian Dröge
03f9ca3d64 encodebin: Update for caps/pad template related API changes 2011-05-17 13:06:00 +02:00
Sebastian Dröge
318ed07598 Revert "-base_port to new query API"
This reverts commit c9f4e0676b.
2011-05-17 11:25:31 +02:00
Sebastian Dröge
8549dd352d Revert "decodebin2: Update for GstQuery related API changes"
This reverts commit 549128c2a3.
2011-05-17 11:24:18 +02:00
Sebastian Dröge
07617d50d3 videorate: Update for segment API changes 2011-05-16 17:14:08 +02:00
Sebastian Dröge
549128c2a3 decodebin2: Update for GstQuery related API changes 2011-05-16 17:13:14 +02:00
Sebastian Dröge
34849f0108 playsink: Update for other 0.11 API changes 2011-05-16 17:13:04 +02:00
Sebastian Dröge
01c798605a playsink: Use correct number of parameters to gst_pad_get_caps() 2011-05-16 17:08:45 +02:00
Sebastian Dröge
d0362c2b87 Merge branch 'master' into 0.11
Conflicts:
	configure.ac
	ext/alsa/gstalsasrc.c
	gst-libs/gst/audio/gstbaseaudiosink.c
	gst-libs/gst/tag/gstxmptag.c
	gst/playback/gstsubtitleoverlay.c
	gst/videorate/gstvideorate.c
	sys/xvimage/xvimagesink.c
2011-05-16 17:06:22 +02:00
Sebastian Dröge
e21ec369f0 videorate: Update for negotiation related API changes 2011-05-16 15:35:41 +02:00
Sebastian Dröge
7330318e2f tcpclientsrc: Update for negotation related API changes 2011-05-16 15:35:41 +02:00
Sebastian Dröge
2b9845e60f audioresample: Update for negotiation related API changes 2011-05-16 15:35:40 +02:00
Sebastian Dröge
616181901e playback: Update for negotiation related API changes 2011-05-16 15:35:40 +02:00
Sebastian Dröge
a78bf729a9 ffmpegcolorspace: Update for negotiation related API changes 2011-05-16 15:35:40 +02:00
Sebastian Dröge
709b831a72 encodebin: Update for negotiation related API changes 2011-05-16 15:35:40 +02:00
Sebastian Dröge
c020add91e audioconvert: Update for negotiation related API changes 2011-05-16 15:35:40 +02:00
Sebastian Dröge
48654cdacf adder: Update for negotiation related API changes 2011-05-16 15:35:40 +02:00
Sebastian Dröge
219b610fdd videotestsrc: Update for negotiation related API changes 2011-05-16 15:35:18 +02:00
Sebastian Dröge
0d39d5bb8f videoscale: Update for negotiation related API changes 2011-05-16 15:35:17 +02:00
Sebastian Dröge
cc785bade6 videoscale: basetransform is now better at trying passthrough, remove workaround 2011-05-16 15:34:49 +02:00
Wim Taymans
94dfe80f71 -base: port to new SEGMENT API 2011-05-16 13:48:11 +02:00
Mark Nauwelaerts
eba4a948fb videorate: optionally ensure maximum average output frame rate
See #628764.
2011-05-16 12:46:00 +02:00
Alexey Fisher
1e09272024 videorate: optionally only drop frames to ensure maximum frame rate
This adds option to arrange for maximal allowed variable frame rate.

Fixes #628764.
2011-05-16 12:45:47 +02:00
Mark Nauwelaerts
4ba6acdba5 uridecodebin: use bitrate to configure streaming buffer-duration default case
In particular, in audio only cases whose (estimated) metadata provides bitrate
information, the buffer-size based on such bitrate (and buffer-duration)
will be much more reasonable than queue2 default buffer-size.
2011-05-16 12:44:52 +02:00
Mark Nauwelaerts
8480b1ef1d uridecodebin: remove some dead code
... which was dead as pads were never added to the list, and need not be added,
since removing them is handled by a pad callback.
2011-05-16 12:44:50 +02:00
Thiago Santos
fd486588ce encodebin: Check for missing converters
Adds checks for missing video and audio converter elements
2011-05-15 13:02:39 -03:00
Andoni Morales Alastruey
dd36e4cd0e decodebin2: fix preroll for streams at low bitrates
For streams at low bitrates we need to set a limit in time because the limit
in bytes might not reached too late, sometimes more than 30 seconds.
This limit can only be set if upstream is seekable (see #584104)
Closes #647769
2011-05-14 11:42:33 +02:00
Sebastian Dröge
9337a293e1 playsink: Use new ghostpad/proxypad API to get the internal pad 2011-05-14 11:42:33 +02:00
Sebastian Dröge
9b6e1952a4 playsink: Use new ghostpad/proxypad API 2011-05-14 11:42:33 +02:00
Sebastian Dröge
2f8467d682 playsink: Add audio and video converter convenience bins
These reconfigure based on the caps and plugin in converters if
necessary. This also makes switching between compressed and raw
streams work flawlessly without loosing the states of any element
somewhere or having running time problems.
2011-05-14 11:42:32 +02:00
Sebastian Dröge
105da803ad playbin2/playsink: Decide if A/V caps are raw only inside playsink
Before playbin2 would use different selectors for raw audio and
compressed audio (and the same for video) and used different
pads from playsink. This made the involved logic much more
complex and was not implemented completely in playsink, which
made it impossible to support files with a compressed and
uncompressed stream that is support by the sink.

playbin2 handles raw/non-raw streams the same now and the
decision is left to playsink, which now can also handle
caps changes from raw to non-raw and the other way around.

Fixes bug #632788.
2011-05-14 11:42:32 +02:00
Sebastian Dröge
45bf51dcdf subtitleoverlay: Use new, public ghostpad functions 2011-05-14 11:42:32 +02:00
Wim Taymans
c9f4e0676b -base_port to new query API 2011-05-10 18:39:07 +02:00
Wim Taymans
7cad11e912 -base: fix for now request pad API 2011-05-10 16:44:37 +02:00
Wim Taymans
556afdef97 message: don't acces the structure directly 2011-05-10 13:35:49 +02:00
Wim Taymans
5dbc49ccf7 event: don't access the event structure
the event structure is now hidden, so don't access it directly.
2011-05-10 11:54:30 +02:00
Wim Taymans
bdb4676455 qos: _qos_full -> _qos 2011-05-09 18:53:03 +02:00
Wim Taymans
816f4e791d segment: fix for new core API
Fix for gst_*_segment_full rename.
2011-05-09 18:16:46 +02:00
Wim Taymans
9d594f4242 audiorate: abs_rate is removed from segment structure 2011-05-09 16:42:34 +02:00
Wim Taymans
ec57868488 -base: don't use buffer caps
Port to newest 0.11 core API, remove GST_PAD_CAPS and GST_BUFFER_CAPS.
2011-05-09 13:05:12 +02:00
Wim Taymans
df54ba57a9 adder: fix getcaps function
Explicitely get the possible caps in the sinkpad instead of using an old removed
function.
2011-05-08 13:24:30 +02:00