Commit graph

9388 commits

Author SHA1 Message Date
Sebastian Dröge
4027a4c34f visual: Update for negotiation related API changes 2011-05-16 15:35:41 +02:00
Sebastian Dröge
0415b90e99 alsa: Update for negotiation related API changes 2011-05-16 15:35:41 +02:00
Sebastian Dröge
8d6e2c8a89 xvimagesink: Update for negotiation related API changes 2011-05-16 15:35:41 +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
2987ad9358 discoverer: Update for the new gst_pad_get_caps() signature 2011-05-16 15:35:40 +02:00
Sebastian Dröge
8598775951 appsink: Update for the negotiation related API changes 2011-05-16 15:35:40 +02:00
Sebastian Dröge
97f18beaeb basertppayload: Change ::get_caps to include the filter caps
And improve downstream negotiation a bit by passing our proposed
caps to the peer as a filter.
2011-05-16 15:35:40 +02:00
Sebastian Dröge
6ed5013733 ximagesink: Update for negotiation related API changes 2011-05-16 15:35:28 +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
3c3a78f34a encodebin: examples: Add missing base libs to makefile 2011-05-15 13:02:39 -03: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
Thiago Santos
c13a6e2281 tag: xmpwriter: Rename documentation headers
Fix some wrong documentation headers from the first name
given to this interface.
2011-05-15 13:02:39 -03:00
Thiago Santos
f7c9f953cb tests: xmp: New tests for the Iptc4xmpExt tags 2011-05-15 13:02:39 -03:00
Thiago Santos
2df57f289a tag: xmp: Add Iptc4xmpExt schema support
Adds Iptc4xmpExt schema with country, city and sublocation
tags mapped
2011-05-15 13:02:39 -03:00
Thiago Santos
12813fc10b tag: xmp: Add support for reading struct tags
Adds a context variable that controls if the parsing is on
'top level' tags or inside a struct tag.
2011-05-15 13:02:39 -03:00
Thiago Santos
1b29009bb3 tag: xmp: Add struct xmp tag type support
Adds support for writing the xmp struct tag type, it is a compound tag
that has inner tags.
2011-05-15 13:02:38 -03:00
Thiago Santos
d764676583 tag: xmp: Fixing schema maps
Do not forget to create a new schema for every supported schema
instead of reusing the same object
2011-05-15 13:02:38 -03:00
Thiago Santos
09ec43a22e tag: xmp: Write the same tag to all schemas
Instead of writing only the xmp tag for the first found entry
that matches the gstreamer tag, look for all mappings to write
the tag to different schemas.

The rationale here is that some reader application might only
be interested on a particular schema tags, so we should try
to write as many tags for all schemas.
2011-05-15 13:02:38 -03:00
Edward Hervey
4c1cf01beb win32: Update libgstaudio.def for new symbols 2011-05-15 13:39:18 +02:00
Arun Raghavan
623e8781ab baseaudiosink: Use g_str_equal() instead of strncmp()
The strncmp is unnecessary anyway since one of the strings is a const
string.
2011-05-14 18:53:12 +05:30
Arun Raghavan
824e643ec9 baseaudiosink: Fix trivial indentation problems 2011-05-14 18:53:12 +05:30
Arun Raghavan
8ff93a6a3d audio: Add an IEC 61937 payloading library
This can be used by sinks to take compressed formats, correctly payload
these in IEC 61937 frames and feed these to sinks that support
passthrough output over IEC 60958 (S/PDIF) or, in the case of MP3, over
Bluetooth.

Initial implementation includes AC3, E-AC3, MPEG-1, MPEG-2 (non-AAC),
and DTS (type-I/II/II) payloading. More formats can be added as needed.

API: gst_audio_iec61937_frame_size()
API: gst_audio_iec61937_payload()

https://bugzilla.gnome.org/show_bug.cgi?id=642730
2011-05-14 18:53:12 +05:30
Arun Raghavan
643e5f586c baseaudiosink: Allow subclasses to provide payloaders
This allows subclasses to provide a "payload" function to prepare
buffers for consumption. The immediate use for this is for sinks that
can handle compressed formats - parsers are directly connected to the
sink, and for formats such as AC3, DTS, and MPEG, IEC 61937 patyloading
might be used.

API: GstBaseAudioSinkClass:payload()

https://bugzilla.gnome.org/show_bug.cgi?id=642730
2011-05-14 18:23:18 +05:30
Arun Raghavan
9615081f9c ringbuffer: Add support for E-AC3
Adds support for pushing E-AC3 buffers and doing bytes-to-ms conversion
correctly. The assumption (as with other formats) is that something like
IEC 61937 payloading will be used. Correspondingly the ringbuffer spec
is populated so that the data rate is 4x normal AC3.

https://bugzilla.gnome.org/show_bug.cgi?id=642730
2011-05-14 18:21:23 +05:30
Arun Raghavan
193fbf93a9 ringbuffer: Add support for MPEG audio buffers 2011-05-14 18:21:16 +05:30
Arun Raghavan
1a1f2cc50a ringbuffer: Add AAC format types
These are meant to be used for buffers containing AAC data. Nothing uses
this yet, but for now it serves to distinguish from GST_BUFTYPE_MPEG
which represents non-AAC MPEG audio.

API: GST_BUFTYPE_MPEG2_AAC
API: GST_BUFTYPE_MPEG4_AAC
2011-05-14 18:20:37 +05:30
Arun Raghavan
33ef9ab054 ringbuffer: Add support for DTS buffers 2011-05-14 16:53:33 +05:30
Sebastian Dröge
6032e39025 configure: Require core 0.10.34.1 for the new ghostpad API 2011-05-14 11:42:50 +02: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
b0e608e308 playbin2: Disable some compressed stream tests that are racy without a stream-activate event 2011-05-14 11:42:33 +02:00
Sebastian Dröge
0e9203df11 playbin2: Reset buffer counter in playbin2-compressed tests every time when going to READY 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
22dae31c2d playbin2: Add unit test for compressed stream support in playbin2/playsink 2011-05-14 11:42:32 +02:00