mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-29 21:21:12 +00:00
Release 1.9.1
This commit is contained in:
parent
49c644ce25
commit
08f993d090
42 changed files with 3249 additions and 887 deletions
787
NEWS
787
NEWS
|
@ -1,786 +1 @@
|
||||||
# GStreamer 1.8 Release Notes
|
This is GStreamer 1.9.1
|
||||||
|
|
||||||
**GStreamer 1.8.0 was released on 24 March 2016.**
|
|
||||||
|
|
||||||
The GStreamer team is proud to announce a new major feature release in the
|
|
||||||
stable 1.x API series of your favourite cross-platform multimedia framework!
|
|
||||||
|
|
||||||
As always, this release is again packed with new features, bug fixes and other
|
|
||||||
improvements.
|
|
||||||
|
|
||||||
See [https://gstreamer.freedesktop.org/releases/1.8/][latest] for the latest
|
|
||||||
version of this document.
|
|
||||||
|
|
||||||
*Last updated: Thursday 24 March 2016, 10:00 UTC [(log)][gitlog]*
|
|
||||||
|
|
||||||
[latest]: https://gstreamer.freedesktop.org/releases/1.8/
|
|
||||||
[gitlog]: https://cgit.freedesktop.org/gstreamer/www/log/src/htdocs/releases/1.8/release-notes-1.8.md
|
|
||||||
|
|
||||||
## Highlights
|
|
||||||
|
|
||||||
- **Hardware-accelerated zero-copy video decoding on Android**
|
|
||||||
|
|
||||||
- **New video capture source for Android using the android.hardware.Camera API**
|
|
||||||
|
|
||||||
- **Windows Media reverse playback** support (ASF/WMV/WMA)
|
|
||||||
|
|
||||||
- **New tracing system** provides support for more sophisticated debugging tools
|
|
||||||
|
|
||||||
- **New high-level GstPlayer playback convenience API**
|
|
||||||
|
|
||||||
- **Initial support for the new [Vulkan][vulkan] API**, see
|
|
||||||
[Matthew Waters' blog post][vulkan-in-gstreamer] for more details
|
|
||||||
|
|
||||||
- **Improved Opus audio codec support**: Support for more than two channels; MPEG-TS demuxer/muxer can now handle Opus;
|
|
||||||
[sample-accurate][opus-sample-accurate] encoding/decoding/transmuxing with
|
|
||||||
Ogg, Matroska, ISOBMFF (Quicktime/MP4), and MPEG-TS as container;
|
|
||||||
[new codec utility functions for Opus header and caps handling][opus-codec-utils]
|
|
||||||
in pbutils library. The Opus encoder/decoder elements were also moved to
|
|
||||||
gst-plugins-base (from -bad), and the opus RTP depayloader/payloader to -good.
|
|
||||||
|
|
||||||
[opus-sample-accurate]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstaudiometa.html#GstAudioClippingMeta
|
|
||||||
[opus-codec-utils]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstpbutilscodecutils.html
|
|
||||||
|
|
||||||
- **GStreamer VAAPI module now released and maintained as part of the GStreamer project**
|
|
||||||
|
|
||||||
[vulkan]: https://www.khronos.org/vulkan
|
|
||||||
[vulkan-in-gstreamer]: http://ystreet00.blogspot.co.uk/2016/02/vulkan-in-gstreamer.html
|
|
||||||
|
|
||||||
## Major new features and changes
|
|
||||||
|
|
||||||
### Noteworthy new API, features and other changes
|
|
||||||
|
|
||||||
- New GstVideoAffineTransformationMeta meta for adding a simple 4x4 affine
|
|
||||||
transformation matrix to video buffers
|
|
||||||
|
|
||||||
- [g\_autoptr()](https://developer.gnome.org/glib/stable/glib-Miscellaneous-Macros.html#g-autoptr)
|
|
||||||
support for all types is exposed in GStreamer headers now, in combination
|
|
||||||
with a sufficiently-new GLib version (i.e. 2.44 or later). This is primarily
|
|
||||||
for the benefit of application developers who would like to make use of
|
|
||||||
this, the GStreamer codebase itself will not be using g_autoptr() for
|
|
||||||
the time being due to portability issues.
|
|
||||||
|
|
||||||
- GstContexts are now automatically propagated to elements added to a bin
|
|
||||||
or pipeline, and elements now maintain a list of contexts set on them.
|
|
||||||
The list of contexts set on an element can now be queried using the new functions
|
|
||||||
[gst\_element\_get\_context()](https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#gst-element-get-context)
|
|
||||||
and [gst\_element\_get\_contexts()](https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#gst-element-get-contexts). GstContexts are used to share context-specific configuration objects
|
|
||||||
between elements and can also be used by applications to set context-specific
|
|
||||||
configuration objects on elements, e.g. for OpenGL or Hardware-accelerated
|
|
||||||
video decoding.
|
|
||||||
|
|
||||||
- New [GST\_BUFFER\_DTS\_OR\_PTS()](https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html#GST-BUFFER-DTS-OR-PTS:CAPS)
|
|
||||||
convenience macro that returns the decode timestamp if one is set and
|
|
||||||
otherwise returns the presentation timestamp
|
|
||||||
|
|
||||||
- New GstPadEventFullFunc that returns a GstFlowReturn instead of a gboolean.
|
|
||||||
This new API is mostly for internal use and was added to fix a race condition
|
|
||||||
where occasionally internal flow error messages were posted on the bus when
|
|
||||||
sticky events were propagated at just the wrong moment whilst the pipeline
|
|
||||||
was shutting down. This happened primarily when the pipeline was shut down
|
|
||||||
immediately after starting it up. GStreamer would not know that the reason
|
|
||||||
the events could not be propagated was because the pipeline was shutting down
|
|
||||||
and not some other problem, and now the flow error allows GStreamer to know
|
|
||||||
the reason for the failure (and that there's no reason to post an error
|
|
||||||
message). This is particularly useful for queue-like elements which may need
|
|
||||||
to asynchronously propagate a previous flow return from downstream.
|
|
||||||
|
|
||||||
- Pipeline dumps in form of "dot files" now also show pad properties that
|
|
||||||
differ from their default value, the same as it does for elements. This is
|
|
||||||
useful for elements with pad subclasses that provide additional properties,
|
|
||||||
e.g. videomixer or compositor.
|
|
||||||
|
|
||||||
- Pad probes are now guaranteed to be called in the order they were added
|
|
||||||
(before they were called in reverse order, but no particular order was
|
|
||||||
documented or guaranteed)
|
|
||||||
|
|
||||||
- Plugins can now have dependencies on device nodes (not just regular files)
|
|
||||||
and also have a prefix filter. This is useful for plugins that expose
|
|
||||||
features (elements) based on available devices, such as the video4linux
|
|
||||||
plugin does with video decoders on certain embedded systems.
|
|
||||||
|
|
||||||
- gst\_segment\_to\_position() has been deprecated and been replaced by the
|
|
||||||
better-named gst\_segment\_position\_from\_running\_time(). At the same time
|
|
||||||
gst\_segment\_position\_from\_stream\_time() was added, as well as \_full()
|
|
||||||
variants of both to deal with negative stream time.
|
|
||||||
|
|
||||||
- GstController: the interpolation control source gained a new monotonic cubic
|
|
||||||
interpolation mode that, unlike the existing cubic mode, will never overshoot
|
|
||||||
the min/max y values set.
|
|
||||||
|
|
||||||
- GstNetAddressMeta: can now be read from buffers in language bindings as well,
|
|
||||||
via the new gst\_buffer\_get\_net\_address\_meta() function
|
|
||||||
|
|
||||||
- ID3 tag PRIV frames are now extraced into a new GST\_TAG\_PRIVATE\_DATA tag
|
|
||||||
|
|
||||||
- gst-launch-1.0 and gst\_parse\_launch() now warn in the most common case if
|
|
||||||
a dynamic pad link could not be resolved, instead of just silently
|
|
||||||
waiting to see if a suitable pad appears later, which is often perceived
|
|
||||||
by users as hanging -- they are now notified when this happens and can check
|
|
||||||
their pipeline.
|
|
||||||
|
|
||||||
- GstRTSPConnection now also parses custom RTSP message headers and retains
|
|
||||||
them for the application instead of just ignoring them
|
|
||||||
|
|
||||||
- rtspsrc handling of authentication over tunneled connections (e.g. RTSP over HTTP)
|
|
||||||
was fixed
|
|
||||||
|
|
||||||
- gst\_video\_convert\_sample() now crops if there is a crop meta on the input buffer
|
|
||||||
|
|
||||||
- The debugging system printf functions are now exposed for general use, which
|
|
||||||
supports special printf format specifiers such as GST\_PTR\_FORMAT and
|
|
||||||
GST\_SEGMENT\_FORMAT to print GStreamer-related objects. This is handy for
|
|
||||||
systems that want to prepare some debug log information to be output at a
|
|
||||||
later point in time. The GStreamer-OpenGL subsystem is making use of these
|
|
||||||
new functions, which are [gst\_info\_vasprintf()][gst_info_vasprintf],
|
|
||||||
[gst\_info\_strdup\_vprintf()][gst_info_strdup_vprintf] and
|
|
||||||
[gst\_info\_strdup\_printf()][gst_info_strdup_printf].
|
|
||||||
|
|
||||||
- videoparse: "strides", "offsets" and "framesize" properties have been added to
|
|
||||||
allow parsing raw data with strides and padding that do not match GStreamer
|
|
||||||
defaults.
|
|
||||||
|
|
||||||
- GstPreset reads presets from the directories given in GST\_PRESET\_PATH now.
|
|
||||||
Presets are read from there after presets in the system path, but before
|
|
||||||
application and user paths.
|
|
||||||
|
|
||||||
[gst_info_vasprintf]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#gst-info-vasprintf
|
|
||||||
[gst_info_strdup_vprintf]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#gst-info-strdup-vprintf
|
|
||||||
[gst_info_strdup_printf]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstInfo.html#gst-info-strdup-printf
|
|
||||||
|
|
||||||
### New Elements
|
|
||||||
|
|
||||||
- [netsim](): a new (resurrected) element to simulate network jitter and
|
|
||||||
packet dropping / duplication.
|
|
||||||
|
|
||||||
- New VP9 RTP payloader/depayloader elements: rtpvp9pay/rtpvp9depay
|
|
||||||
|
|
||||||
- New [videoframe_audiolevel]() element, a video frame synchronized audio level element
|
|
||||||
|
|
||||||
- New spandsp-based tone generator source
|
|
||||||
|
|
||||||
- New NVIDIA NVENC-based H.264 encoder for GPU-accelerated video encoding on
|
|
||||||
suitable NVIDIA hardware
|
|
||||||
|
|
||||||
- [rtspclientsink](), a new RTSP RECORD sink element, was added to gst-rtsp-server
|
|
||||||
|
|
||||||
- [alsamidisrc](), a new ALSA MIDI sequencer source element
|
|
||||||
|
|
||||||
### Noteworthy element features and additions
|
|
||||||
|
|
||||||
- *identity*: new ["drop-buffer-flags"](https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-plugins/html/gstreamer-plugins-identity.html#GstIdentity--drop-buffer-flags)
|
|
||||||
property to drop buffers based on buffer flags. This can be used to drop all
|
|
||||||
non-keyframe buffers, for example.
|
|
||||||
|
|
||||||
- *multiqueue*: various fixes and improvements, in particular special handling
|
|
||||||
for sparse streams such as substitle streams, to make sure we don't overread
|
|
||||||
them any more. For sparse streams it can be normal that there's no buffer for
|
|
||||||
a long period of time, so having no buffer queued is perfectly normal. Before
|
|
||||||
we would often unnecessarily try to fill the subtitle stream queue, which
|
|
||||||
could lead to much more data being queued in multiqueue than necessary.
|
|
||||||
|
|
||||||
- *multiqueue*/*queue*: When dealing with time limits, these elements now use the
|
|
||||||
new ["GST_BUFFER_DTS_OR_PTS"](https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBuffer.html#GST-BUFFER-DTS-OR-PTS:CAPS)
|
|
||||||
and ["gst_segment_to_running_time_full()"](https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstSegment.html#gst-segment-to-running-time-full)
|
|
||||||
API, resulting in more accurate levels, especially when dealing with non-raw
|
|
||||||
streams (where reordering happens, and we want to use the increasing DTS as
|
|
||||||
opposed to the non-continuously increasing PTS) and out-of-segment input/output.
|
|
||||||
Previously all encoded buffers before the segment start, which can happen when
|
|
||||||
doing ACCURATE seeks, were not taken into account in the queue level calculation.
|
|
||||||
|
|
||||||
- *multiqueue*: New ["use-interleave"](https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-plugins/html/gstreamer-plugins-multiqueue.html#GstMultiQueue--use-interleave)
|
|
||||||
property which allows the size of the queues to be optimized based on the input
|
|
||||||
streams interleave. This should only be used with input streams which are properly
|
|
||||||
timestamped. It will be used in the future decodebin3 element.
|
|
||||||
|
|
||||||
- *queue2*: new ["avg-in-rate"](https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-plugins/html/gstreamer-plugins-queue2.html#GstQueue2--avg-in-rate)
|
|
||||||
property that returns the average input rate in bytes per second
|
|
||||||
|
|
||||||
- audiotestsrc now supports all audio formats and is no longer artificially
|
|
||||||
limited with regard to the number of channels or sample rate
|
|
||||||
|
|
||||||
- gst-libav (ffmpeg codec wrapper): map and enable JPEG2000 decoder
|
|
||||||
|
|
||||||
- multisocketsink can, on request, send a custom GstNetworkMessage event
|
|
||||||
upstream whenever data is received from a client on a socket. Similarly,
|
|
||||||
socketsrc will, on request, pick up GstNetworkMessage events from downstream
|
|
||||||
and send any data contained within them via the socket. This allows for
|
|
||||||
simple bidirectional communication.
|
|
||||||
|
|
||||||
- matroska muxer and demuxer now support the ProRes video format
|
|
||||||
|
|
||||||
- Improved VP8/VP9 decoding performance on multi-core systems by enabling
|
|
||||||
multi-threaded decoding in the libvpx-based decoders on such systems
|
|
||||||
|
|
||||||
- appsink has a new ["wait-on-eos"](https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-plugins/html/gst-plugins-base-plugins-appsink.html#GstAppSink--wait-on-eos)
|
|
||||||
property, so in cases where it is uncertain if an appsink will have a consumer for
|
|
||||||
its buffers when it receives an EOS this can be set to FALSE to ensure that the
|
|
||||||
appsink will not hang.
|
|
||||||
|
|
||||||
- rtph264pay and rtph265pay have a new "config-interval" mode -1 that will
|
|
||||||
re-send the setup data (SPS/PPS/VPS) before every keyframe to ensure
|
|
||||||
optimal coverage and the shortest possibly start-up time for a new client
|
|
||||||
|
|
||||||
- mpegtsmux can now mux H.265/HEVC video as well
|
|
||||||
|
|
||||||
- The MXF muxer was ported to 1.x and produces more standard conformant files now
|
|
||||||
that can be handled by more other software; The MXF demuxer got improved
|
|
||||||
support for seek tables (IndexTableSegments).
|
|
||||||
|
|
||||||
### Plugin moves
|
|
||||||
|
|
||||||
- The rtph265pay/depay RTP payloader/depayloader elements for H.265/HEVC video
|
|
||||||
from the rtph265 plugin in -bad have been moved into the existing rtp plugin
|
|
||||||
in gst-plugins-good.
|
|
||||||
|
|
||||||
- The mpg123 plugin containing a libmpg123 based audio decoder element has
|
|
||||||
been moved from -bad to -ugly.
|
|
||||||
|
|
||||||
- The Opus encoder/decoder elements have been moved to gst-plugins-base and
|
|
||||||
the RTP payloader to gst-plugins-good, both coming from gst-plugins-bad.
|
|
||||||
|
|
||||||
### New tracing tools for developers
|
|
||||||
|
|
||||||
A new tracing subsystem API has been added to GStreamer, which provides
|
|
||||||
external tracers with the possibility to strategically hook into GStreamer
|
|
||||||
internals and collect data that can be evaluated later. These tracers are a
|
|
||||||
new type of plugin features, and GStreamer core ships with a few example
|
|
||||||
tracers (latency, stats, rusage, log) to start with. Tracers can be loaded
|
|
||||||
and configured at start-up via an environment variable (GST\_TRACER\_PLUGINS).
|
|
||||||
|
|
||||||
Background: While GStreamer provides plenty of data on what's going on in a
|
|
||||||
pipeline via its debug log, that data is not necessarily structured enough to
|
|
||||||
be generally useful, and the overhead to enable logging output for all data
|
|
||||||
required might be too high in many cases. The new tracing system allows tracers
|
|
||||||
to just obtain the data needed at the right spot with as little overhead as
|
|
||||||
possible, which will be particularly useful on embedded systems.
|
|
||||||
|
|
||||||
Of course it has always been possible to do performance benchmarks and debug
|
|
||||||
memory leaks, memory consumption and invalid memory access using standard
|
|
||||||
operating system tools, but there are some things that are difficult to track
|
|
||||||
with the standard tools, and the new tracing system helps with that. Examples
|
|
||||||
are things such as latency handling, buffer flow, ownership transfer of
|
|
||||||
events and buffers from element to element, caps negotiation, etc.
|
|
||||||
|
|
||||||
For some background on the new tracing system, watch Stefan Sauer's
|
|
||||||
GStreamer Conference talk ["A new tracing subsystem for GStreamer"][tracer-0]
|
|
||||||
and for a more specific example how it can be useful have a look at
|
|
||||||
Thiago Santos's lightning talk ["Analyzing caps negotiation using GstTracer"][tracer-1]
|
|
||||||
and his ["GstTracer experiments"][tracer-2] blog post. There was also a Google
|
|
||||||
Summer of Code project in 2015 that used tracing system for a graphical
|
|
||||||
GStreamer debugging tool ["gst-debugger"][tracer-3].
|
|
||||||
|
|
||||||
This is all still very much work in progress, but we hope this will provide the
|
|
||||||
foundation for a whole suite of new debugging tools for GStreamer pipelines.
|
|
||||||
|
|
||||||
[tracer-0]: https://gstconf.ubicast.tv/videos/a-new-tracing-subsystem-for-gstreamer/
|
|
||||||
[tracer-1]: https://gstconf.ubicast.tv/videos/analyzing-caps-negotiation-using-gsttracer/
|
|
||||||
[tracer-2]: http://blog.thiagoss.com/2015/07/23/gsttracer-experiments/
|
|
||||||
[tracer-3]: https://git.gnome.org/browse/gst-debugger
|
|
||||||
|
|
||||||
### GstPlayer: a new high-level API for cross-platform multimedia playback
|
|
||||||
|
|
||||||
GStreamer has had reasonably high-level API for multimedia playback
|
|
||||||
in the form of the playbin element for a long time. This allowed application
|
|
||||||
developers to just configure a URI to play, and playbin would take care of
|
|
||||||
everything else. This works well, but there is still way too much to do on
|
|
||||||
the application-side to implement a fully-featured playback application, and
|
|
||||||
too much general GStreamer pipeline API exposed, making it less accessible
|
|
||||||
to application developers.
|
|
||||||
|
|
||||||
Enter GstPlayer. GstPlayer's aim is to provide an even higher-level abstraction
|
|
||||||
of a fully-featured playback API but specialised for its specific use case. It
|
|
||||||
also provides easy integration with and examples for Gtk+, Qt, Android, OS/X,
|
|
||||||
iOS and Windows. Watch Sebastian's [GstPlayer talk at the GStreamer Conference][gstplayer-talk]
|
|
||||||
for more information, or check out the [GstPlayer API reference][gstplayer-api]
|
|
||||||
and [GstPlayer examples][gstplayer-examples].
|
|
||||||
|
|
||||||
[gstplayer-api]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/player.html
|
|
||||||
[gstplayer-talk]: https://gstconf.ubicast.tv/videos/gstplayer-a-simple-cross-platform-api-for-all-your-media-playback-needs-part-1/
|
|
||||||
[gstplayer-examples]: https://github.com/sdroege/gst-player/
|
|
||||||
|
|
||||||
### Adaptive streaming: DASH, HLS and MSS improvements
|
|
||||||
|
|
||||||
- dashdemux now supports loading external xml nodes pointed from its MPD.
|
|
||||||
|
|
||||||
- Content protection nodes parsing support for PlayReady WRM in mssdemux.
|
|
||||||
|
|
||||||
- Reverse playback was improved to respect seek start and stop positions.
|
|
||||||
|
|
||||||
- Adaptive demuxers (hlsdemux, dashdemux, mssdemux) now support the SNAP_AFTER
|
|
||||||
and SNAP_BEFORE seek flags which will jump to the nearest fragment boundary
|
|
||||||
when executing a seek, which means playback resumes more quickly after a seek.
|
|
||||||
|
|
||||||
### Audio library improvements
|
|
||||||
|
|
||||||
- audio conversion, quantization and channel up/downmixing functionality
|
|
||||||
has been moved from the audioconvert element into the audio library and
|
|
||||||
is now available as public API in form of [GstAudioConverter][audio-0],
|
|
||||||
[GstAudioQuantize][audio-1] and [GstAudioChannelMixer][audio-2].
|
|
||||||
Audio resampling will follow in future releases.
|
|
||||||
|
|
||||||
- [gst\_audio\_channel\_get\_fallback\_mask()][audio-3] can be used
|
|
||||||
to retrieve a default channel mask for a given number of channels as last
|
|
||||||
resort if the layout is unknown
|
|
||||||
|
|
||||||
- A new [GstAudioClippingMeta][audio-4] meta was added for specifying clipping
|
|
||||||
on encoded audio buffers
|
|
||||||
|
|
||||||
- A new GstAudioVisualizer base class for audio visualisation elements;
|
|
||||||
most of the existing visualisers have been ported over to the new base class.
|
|
||||||
This new base class lives in the pbutils library rather than the audio library,
|
|
||||||
since we'd have had to make libgstaudio depend on libgstvideo otherwise,
|
|
||||||
which was deemed undesirable.
|
|
||||||
|
|
||||||
[audio-0]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-GstAudioConverter.html
|
|
||||||
[audio-1]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-GstAudioQuantize.html
|
|
||||||
[audio-2]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstaudiochannels.html#gst-audio-channel-mix-new
|
|
||||||
[audio-3]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstaudiochannels.html#gst-audio-channel-get-fallback-mask
|
|
||||||
[audio-4]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstaudiometa.html#GstAudioClippingMeta
|
|
||||||
|
|
||||||
### GStreamer OpenGL support improvements
|
|
||||||
|
|
||||||
#### Better OpenGL Shader support
|
|
||||||
|
|
||||||
[GstGLShader][shader] has been revamped to allow more OpenGL shader types
|
|
||||||
by utilizing a new GstGLSLStage object. Each stage holds an OpenGL pipeline
|
|
||||||
stage such as a vertex, fragment or a geometry shader that are all compiled
|
|
||||||
separately into a program that is executed.
|
|
||||||
|
|
||||||
The glshader element has also received a revamp as a result of the changes in
|
|
||||||
the library. It does not take file locations for the vertex and fragment
|
|
||||||
shaders anymore. Instead it takes the strings directly leaving the file
|
|
||||||
management to the application.
|
|
||||||
|
|
||||||
A new [example][liveshader-example] was added utilizing the new shader
|
|
||||||
infrastructure showcasing live shader edits.
|
|
||||||
|
|
||||||
[shader]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/gst-plugins-bad-libs-gstglshader.html
|
|
||||||
[liveshader-example]: https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/tree/tests/examples/gtk/glliveshader.c
|
|
||||||
|
|
||||||
#### OpenGL GLMemory rework
|
|
||||||
|
|
||||||
[GstGLMemory] was extensively reworked to support the addition of multiple
|
|
||||||
texture targets required for zero-copy integration with the Android
|
|
||||||
MediaCodec elements. This work was also used to provide IOSurface based
|
|
||||||
GLMemory on OS X for zero-copy with OS X's VideoToolbox decoder (vtdec) and
|
|
||||||
AV Foundation video source (avfvideosrc). There are also patches in bugzilla
|
|
||||||
for GstGLMemoryEGL specifically aimed at improving the decoding performance on
|
|
||||||
the Raspberry Pi.
|
|
||||||
|
|
||||||
[GstGLMemory]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/gst-plugins-bad-libs-gstglmemory.html
|
|
||||||
|
|
||||||
A texture-target field was added to video/x-raw(memory:GLMemory) caps to signal
|
|
||||||
the texture target contained in the GLMemory. Its values can be 2D, rectangle
|
|
||||||
or external-oes. glcolorconvert can convert between the different formats as
|
|
||||||
required and different elements will accept or produce different targets. e.g.
|
|
||||||
glimagesink can take and render external-oes textures directly as required for
|
|
||||||
effecient zero-copy on android.
|
|
||||||
|
|
||||||
A generic GL allocation framework was also implemented to support the generic
|
|
||||||
allocation of OpenGL buffers and textures which is used extensively by
|
|
||||||
GstGLBufferPool.
|
|
||||||
|
|
||||||
#### OpenGL DMABuf import uploader
|
|
||||||
|
|
||||||
There is now a DMABuf uploader available for automatic selection that will
|
|
||||||
attempt to import the upstream provided DMABuf. The uploader will import into
|
|
||||||
2D textures with the necesarry format. YUV to RGB conversion is still provided
|
|
||||||
by glcolorconvert to avoid the laxer restrictions with external-oes textures.
|
|
||||||
|
|
||||||
#### OpenGL queries
|
|
||||||
|
|
||||||
Queries of various aspects of the OpenGL runtime such as timers, number of
|
|
||||||
samples or the current timestamp are not possible. The GstGLQuery object uses a
|
|
||||||
delayed debug system to delay the debug output to later to avoid expensive calls
|
|
||||||
to the glGet\* family of functions directly after finishing a query. It is
|
|
||||||
currently used to output the time taken to perform various operations of texture
|
|
||||||
uploads and downloads in GstGLMemory.
|
|
||||||
|
|
||||||
#### New OpenGL elements
|
|
||||||
|
|
||||||
glcolorbalance has been created mirroring the videobalance elements.
|
|
||||||
glcolorbalance provides the exact same interface as videobalance so can be used
|
|
||||||
as a GPU accelerated replacement. glcolorbalance has been added to glsinkbin so
|
|
||||||
usage with playsink/playbin will use it automatically instead of videobalance
|
|
||||||
where possible.
|
|
||||||
|
|
||||||
glvideoflip, which is the OpenGL equiavalant of videoflip, implements the exact
|
|
||||||
same interface and functionality as videoflip.
|
|
||||||
|
|
||||||
#### EGL implementation now selects OpenGL 3.x
|
|
||||||
|
|
||||||
The EGL implementation can now select OpenGL 3.x contexts.
|
|
||||||
|
|
||||||
#### OpenGL API removal
|
|
||||||
|
|
||||||
The GstGLDownload library object was removed as it was not used by anything.
|
|
||||||
Everything is performed by GstGLMemory or in the gldownloadelement.
|
|
||||||
|
|
||||||
The GstGLUploadMeta library object was removed as it was not being used and we
|
|
||||||
don't want to promote the use of GstVideoGLTextureUploadMeta.
|
|
||||||
|
|
||||||
#### OpenGL: Other miscellaneous changes
|
|
||||||
|
|
||||||
- The EGL implementation can now select OpenGL 3.x contexts. This brings
|
|
||||||
OpenGL 3.x to e.g. wayland and other EGL systems.
|
|
||||||
|
|
||||||
- glstereomix/glstereosplit are now built and are usable on OpenGL ES systems
|
|
||||||
|
|
||||||
- The UYVY/YUY2 to RGBA and RGBA to UYVY/YUY2 shaders were fixed removing the
|
|
||||||
sawtooth pattern and luma bleeding.
|
|
||||||
|
|
||||||
- We now utilize the GL\_APPLE\_sync extension on iOS devices which improves
|
|
||||||
performance of OpenGL applications, especially with multiple OpenGL
|
|
||||||
contexts.
|
|
||||||
|
|
||||||
- glcolorconvert now uses a bufferpool to avoid costly
|
|
||||||
glGenTextures/glDeleteTextures for every frame.
|
|
||||||
|
|
||||||
- glvideomixer now has full glBlendFunc and glBlendEquation support per input.
|
|
||||||
|
|
||||||
- gltransformation now support navigation events so your weird transformations
|
|
||||||
also work with DVD menus.
|
|
||||||
|
|
||||||
- qmlglsink can now run on iOS, OS X and Android in addition to the already
|
|
||||||
supported Linux platform.
|
|
||||||
|
|
||||||
- glimagesink now posts unhandled keyboard and mouse events (on backends that
|
|
||||||
support user input, current only X11) on the bus for the application.
|
|
||||||
|
|
||||||
### Initial GStreamer Vulkan support
|
|
||||||
|
|
||||||
Some new elements, vulkansink and vulkanupload have been implemented utilizing
|
|
||||||
the new Vulkan API. The implementation is currently limited to X11 platforms
|
|
||||||
(via xcb) and does not perform any scaling of the stream's contents to the size
|
|
||||||
of the available output.
|
|
||||||
|
|
||||||
A lot of infrasctructure work has been undertaken to support using Vulkan in
|
|
||||||
GStreamer in the future. A number of GstMemory subclasses have been created for
|
|
||||||
integrating Vulkan's GPU memory handling along with VkBuffer's and VkImage's
|
|
||||||
that can be passed between elements. Some GStreamer refcounted wrappers for
|
|
||||||
global objects such as VkInstance, VkDevice, VkQueue, etc have also been
|
|
||||||
implemented along with GstContext integration for sharing these objects with the
|
|
||||||
application.
|
|
||||||
|
|
||||||
### GStreamer VAAPI support for hardware-accelerated video decoding and encoding on Intel (and other) platforms
|
|
||||||
|
|
||||||
#### GStreamer VAAPI is now part of upstream GStreamer
|
|
||||||
|
|
||||||
The GStreamer-VAAPI module which provides support for hardware-accelerated
|
|
||||||
video decoding, encoding and post-processing on Intel graphics hardware
|
|
||||||
on Linux has moved from its previous home at the [Intel Open Source Technology Center][iostc]
|
|
||||||
to the upstream GStreamer repositories, where it will in future be maintained
|
|
||||||
as part of the upstream GStreamer project and released in lockstep with the
|
|
||||||
other GStreamer modules. The current maintainers will continue to spearhead
|
|
||||||
the development at the new location:
|
|
||||||
|
|
||||||
[http://cgit.freedesktop.org/gstreamer/gstreamer-vaapi/][gst-vaapi-git]
|
|
||||||
|
|
||||||
[gst-vaapi-git]: http://cgit.freedesktop.org/gstreamer/gstreamer-vaapi/
|
|
||||||
|
|
||||||
GStreamer-VAAPI relies heavily on certain GStreamer infrastructure API that
|
|
||||||
is still in flux such as the OpenGL integration API or the codec parser
|
|
||||||
libraries, and one of the goals of the move was to be able to leverage
|
|
||||||
new developments early and provide tighter integration with the latest
|
|
||||||
developments of those APIs and other graphics-related APIs provided by
|
|
||||||
GStreamer, which should hopefully improve performance even further and in
|
|
||||||
some cases might also provide better stability.
|
|
||||||
|
|
||||||
Thanks to everyone involved in making this move happen!
|
|
||||||
|
|
||||||
#### GStreamer VAAPI: Bug tracking
|
|
||||||
|
|
||||||
Bugs had already been tracked on [GNOME bugzilla](bgo) but will be moved
|
|
||||||
from the gstreamer-vaapi product into a new gstreamer-vaapi component of
|
|
||||||
the GStreamer product in bugzilla. Please file new bugs against the new
|
|
||||||
component in the GStreamer product from now on.
|
|
||||||
|
|
||||||
#### GStreamer VAAPI: Pending patches
|
|
||||||
|
|
||||||
The code base has been re-indented to the GStreamer code style, which
|
|
||||||
affected some files more than others. This means that some of the patches
|
|
||||||
in bugzilla might not apply any longer, so if you have any unmerged patches
|
|
||||||
sitting in bugzilla please consider checking if they still apply cleany and
|
|
||||||
refresh them if not. Sorry for any inconvenience this may cause.
|
|
||||||
|
|
||||||
#### GStreamer VAAPI: New versioning scheme and supported GStreamer versions
|
|
||||||
|
|
||||||
The version numbering has been changed to match the GStreamer version
|
|
||||||
numbering to avoid confusion: there is a new gstreamer-vaapi 1.6.0 release
|
|
||||||
and a 1.6 branch that is roughly equivalent to the previous 0.7.0 version.
|
|
||||||
Future releases 1.7.x and 1.8.x will be made alongside GStreamer releases.
|
|
||||||
|
|
||||||
While it was possible and supported by previous releases to build against
|
|
||||||
a whole range of different GStreamer versions (such as 1.2, 1.4, 1.6 or 1.7/1.8),
|
|
||||||
in the future there will only be one target branch, so that git master will
|
|
||||||
track GStreamer git master, 1.8.x will target GStreamer 1.8, and
|
|
||||||
1.6.x will target the 1.6 series.
|
|
||||||
|
|
||||||
[iostc]: http://01.org
|
|
||||||
[bgo]: http://bugzilla.gnome.og
|
|
||||||
|
|
||||||
#### GStreamer VAAPI: Miscellaneous changes
|
|
||||||
|
|
||||||
All GStreamer-VAAPI functionality is now provided solely by its GStreamer
|
|
||||||
elements. There is no more public library exposing GstVaapi API, this API
|
|
||||||
was only ever meant for private use by the elements. Parts of it may be
|
|
||||||
resurrected again in future if needed, but for now it has all been made
|
|
||||||
private.
|
|
||||||
|
|
||||||
GStreamer-VAAPI now unconditionally uses the codecparser library in
|
|
||||||
gst-plugins-bad instead of shipping its own internal copy. Similarly,
|
|
||||||
it no longer ships its own codec parsers but relies on the upstream
|
|
||||||
codec parser elements.
|
|
||||||
|
|
||||||
The GStreamer-VAAPI encoder elements have been renamed from vaapiencode_foo
|
|
||||||
to vaapifooenc, so encoders are now called vaapih264enc, vaapih265enc,
|
|
||||||
vaapimpeg2enc, vaapijpegenc, and vaapivp8enc. With this change we now follow
|
|
||||||
the standard names in GStreamer, and the plugin documentation is generated
|
|
||||||
correctly.
|
|
||||||
|
|
||||||
In the case of the decoders, only the jpeg decoder has been split from the
|
|
||||||
general decoding element vaapidecode: vaapijpegdec. This is the first step to
|
|
||||||
split per codec each decoding element. The vaapijpegdec has also been given
|
|
||||||
marginal rank for the time being.
|
|
||||||
|
|
||||||
#### GStreamer VAAPI: New features in 1.8: 10-bit H.265/HEVC decoding support
|
|
||||||
|
|
||||||
Support for decoding 10-bit H.265/HEVC has been added. For the time being
|
|
||||||
this only works in combination with vaapisink though, until support for the
|
|
||||||
P010 video format used internally is added to GStreamer and to the
|
|
||||||
vaGetImage()/vaPutimage() API in the vaapi-intel-driver.
|
|
||||||
|
|
||||||
Several fixes for memory leaks, build errors, and in the internal
|
|
||||||
video parsing.
|
|
||||||
|
|
||||||
Finally, vaapisink now posts the unhandled keyboard and mouse events to the
|
|
||||||
application.
|
|
||||||
|
|
||||||
### GStreamer Video 4 Linux Support
|
|
||||||
|
|
||||||
Colorimetry support has been enhanced even more. It will now properly select
|
|
||||||
default values when not specified by the driver. The range of color formats
|
|
||||||
supported by GStreamer has been greatly improved. Notably, support for
|
|
||||||
multi-planar I420 has been added along with all the new and non-ambiguous RGB
|
|
||||||
formats that got added in recent kernels.
|
|
||||||
|
|
||||||
The device provider now exposes a variety of properties as found in the udev
|
|
||||||
database.
|
|
||||||
|
|
||||||
The video decoder is now able to negotiate the downstream format.
|
|
||||||
|
|
||||||
Elements that are dynamically created from /dev/video\* now track changes on
|
|
||||||
these devices to ensure the registry stay up to date.
|
|
||||||
|
|
||||||
All this and various bug fixes that improve both stability and correctness.
|
|
||||||
|
|
||||||
### GStreamer Editing Services
|
|
||||||
|
|
||||||
Added APIs to handle asset proxying support. Proxy creation is not the
|
|
||||||
responsibility of GES itself, but GES provides all the needed features
|
|
||||||
for it to be cleanly handled at a higher level.
|
|
||||||
|
|
||||||
Added support for changing playback rate. This means that now, whenever a
|
|
||||||
user adds a 'pitch' element (as it is the only known element to change playback
|
|
||||||
rate through properties), GES will handle everything internally. This change
|
|
||||||
introduced a new media-duration-factor property in NleObject which will
|
|
||||||
lead to tweaking of seek events so they have the proper playback range to be
|
|
||||||
requested upstream.
|
|
||||||
|
|
||||||
Construction of NLE objects has been reworked making copy/pasting fully
|
|
||||||
functional and allowing users to set properties on effects right after
|
|
||||||
creating them.
|
|
||||||
|
|
||||||
Rework of the title source to add more flexibility in text positioning,
|
|
||||||
and letting the user get feedback about rendered text positioning.
|
|
||||||
|
|
||||||
Report nlecomposition structural issues (coming from user programing mistakes)
|
|
||||||
into ERROR messages on the bus.
|
|
||||||
|
|
||||||
Add GI/pythyon testsuite in GES itself, making sure the API is working as expected
|
|
||||||
in python, and allowing writing tests faster.
|
|
||||||
|
|
||||||
### GstValidate
|
|
||||||
|
|
||||||
Added support to run tests inside gdb.
|
|
||||||
|
|
||||||
Added a 'smart' reporting mode where we give as much information as possible about
|
|
||||||
critical errors.
|
|
||||||
|
|
||||||
Uses GstTracer now instead of a LD\_PRELOAD library.
|
|
||||||
|
|
||||||
## Miscellaneous
|
|
||||||
|
|
||||||
- encodebin now works with "encoder-muxers" such as wavenc
|
|
||||||
|
|
||||||
- gst-play-1.0 acquired a new keyboard shortcut: '0' seeks back to the start
|
|
||||||
|
|
||||||
- gst-play-1.0 supports two new command line switches: -v for verbose output
|
|
||||||
and --flags to configure the playbin flags to use.
|
|
||||||
|
|
||||||
## Build and Dependencies
|
|
||||||
|
|
||||||
- The GLib dependency requirement was bumped to 2.40
|
|
||||||
|
|
||||||
- The -Bsymbolic configure check now works with clang as well
|
|
||||||
|
|
||||||
- ffmpeg is now required as libav provider, incompatible changes were
|
|
||||||
introduced that make it no longer viable to support both FFmpeg and Libav
|
|
||||||
as libav providers. Most major distros have switched to FFmpeg or are in
|
|
||||||
the process of switching to it anyway, so we don't expect this to be a
|
|
||||||
problem, and there is still an internal copy of ffmpeg that can be used
|
|
||||||
as fallback if needed.
|
|
||||||
|
|
||||||
- The internal ffmpeg snapshot is now FFMpeg 3.0, but it should be possible
|
|
||||||
to build against 2.8 as well for the time being.
|
|
||||||
|
|
||||||
## Platform-specific improvements
|
|
||||||
|
|
||||||
### Android
|
|
||||||
|
|
||||||
- Zero-copy video decoding on Android using the hardware-accelerated decoders
|
|
||||||
has been implemented, and is fully integrated with the GStreamer OpenGL stack
|
|
||||||
|
|
||||||
- ahcsrc, a new camera source element, has been merged and can be used to
|
|
||||||
capture video on android devices. It uses the android.hardware.Camera Java
|
|
||||||
API to capture from the system's cameras.
|
|
||||||
|
|
||||||
- The OpenGL-based QML video sink can now also be used on Android
|
|
||||||
|
|
||||||
- New tinyalsasink element, which is mainly useful for Android but can also
|
|
||||||
be used on other platforms.
|
|
||||||
|
|
||||||
### OS/X and iOS
|
|
||||||
|
|
||||||
- The system clock now uses mach\_absolute\_time() on OSX/iOS, which is
|
|
||||||
the preferred high-resolution monotonic clock to be used on Apple platforms
|
|
||||||
|
|
||||||
- The OpenGL-based QML video sink can now also be used on OS X and iOS (with
|
|
||||||
some Qt build system massaging)
|
|
||||||
|
|
||||||
- New IOSurface based memory implementation in avfvideosrc and vtdec on OS X
|
|
||||||
for zerocopy with OpenGL. The previously used OpenGL extension
|
|
||||||
GL_APPLE_ycbcr_422 is not compatible with GL 3.x core contexts.
|
|
||||||
|
|
||||||
- New GstAppleCoreVideoMemory wrapping CVPixelBuffer's
|
|
||||||
|
|
||||||
- avfvideosrc now supports renegotiation.
|
|
||||||
|
|
||||||
### Windows
|
|
||||||
|
|
||||||
- Various bugs with UDP and multicast were fixed on Windows, mostly related to
|
|
||||||
gst-rtsp-server.
|
|
||||||
|
|
||||||
- A few bugs in directsoundsrc and directsoundsink were fixed that could cause
|
|
||||||
the element to lock up. Also the "mute" property on the sink was fixed, and
|
|
||||||
a new "device" property for device selection was added to the source.
|
|
||||||
|
|
||||||
## Known Issues
|
|
||||||
|
|
||||||
- Building GStreamer applications with the Android NDK r11 is currently not
|
|
||||||
supported due to incompatible changes in the NDK. This is expected to be
|
|
||||||
fixed for 1.8.1.
|
|
||||||
[Bugzilla #763999](https://bugzilla.gnome.org/show_bug.cgi?id=763999)
|
|
||||||
|
|
||||||
- vp8enc crashes on 32 bit Windows, but was working fine in 1.6. 64 bit
|
|
||||||
Windows is unaffected.
|
|
||||||
[Bugzilla #763663](https://bugzilla.gnome.org/show_bug.cgi?id=763663)
|
|
||||||
|
|
||||||
## Contributors
|
|
||||||
|
|
||||||
Adam Miartus, Alban Bedel, Aleix Conchillo Flaqué, Aleksander Wabik,
|
|
||||||
Alessandro Decina, Alex Ashley, Alex Dizengof, Alex Henrie, Alistair Buxton,
|
|
||||||
Andreas Cadhalpun, Andreas Frisch, André Draszik, Anthony G. Basile,
|
|
||||||
Antoine Jacoutot, Anton Bondarenko, Antonio Ospite, Arjen Veenhuizen,
|
|
||||||
Arnaud Vrac, Arun Raghavan, Athanasios Oikonomou, Aurélien Zanelli, Ben Iofel,
|
|
||||||
Bob Holcomb, Branko Subasic, Carlos Rafael Giani, Chris Bass, Csaba Toth,
|
|
||||||
Daniel Kamil Kozar, Danilo Cesar Lemes de Paula, Dave Craig, David Fernandez,
|
|
||||||
David Schleef, David Svensson Fors, David Waring, David Wu, Duncan Palmer,
|
|
||||||
Edward Hervey, Egor Zaharov, Etienne Peron, Eunhae Choi, Evan Callaway,
|
|
||||||
Evan Nemerson, Fabian Orccon, Florent Thiéry, Florin Apostol, Frédéric Wang,
|
|
||||||
George Kiagiadakis, George Yunaev, Göran Jönsson, Graham Leggett,
|
|
||||||
Guillaume Desmottes, Guillaume Marquebielle, Haihua Hu, Havard Graff,
|
|
||||||
Heinrich Fink, Holger Kaelberer, HoonHee Lee, Hugues Fruchet, Hyunil Park,
|
|
||||||
Hyunjun Ko, Ilya Konstantinov, James Stevenson, Jan Alexander Steffens (heftig),
|
|
||||||
Jan Schmidt, Jason Litzinger, Jens Georg, Jimmy Ohn, Joan Pau Beltran,
|
|
||||||
Joe Gorse, John Chang, John Slade, Jose Antonio Santos Cadenas, Josep Torra,
|
|
||||||
Julian Bouzas, Julien Isorce, Julien Moutte, Justin Kim, Kazunori Kobayashi,
|
|
||||||
Koop Mast, Lim Siew Hoon, Linus Svensson, Lubosz Sarnecki, Luis de Bethencourt,
|
|
||||||
Lukasz Forynski, Manasa Athreya, Marcel Holtmann, Marcin Kolny, Marcus Prebble,
|
|
||||||
Mark Nauwelaerts, Maroš Ondrášek, Martin Kelly, Matej Knopp, Mathias Hasselmann,
|
|
||||||
Mathieu Duponchelle, Matt Crane, Matthew Marsh, Matthew Waters, Matthieu Bouron,
|
|
||||||
Mersad Jelacic, Michael Olbrich, Miguel París Díaz, Mikhail Fludkov,
|
|
||||||
Mischa Spiegelmock, Nicola Murino, Nicolas Dufresne, Nicolas Huet,
|
|
||||||
Nirbheek Chauhan, Ognyan Tonchev, Olivier Crête, Pablo Anton, Pankaj Darak,
|
|
||||||
Paolo Pettinato, Patricia Muscalu, Paul Arzelier, Pavel Bludov, Perry Hung,
|
|
||||||
Peter Korsgaard, Peter Seiderer, Petr Viktorin, Philippe Normand,
|
|
||||||
Philippe Renon, Philipp Zabel, Philip Van Hoof, Philip Withnall, Piotr Drąg,
|
|
||||||
plamot, Polochon\_street, Prashant Gotarne, Rajat Verma, Ramiro Polla,
|
|
||||||
Ravi Kiran K N, Reynaldo H. Verdejo Pinochet, Robert Swain, Romain Picard,
|
|
||||||
Roman Nowicki, Ross Burton, Ryan Hendrickson, Santiago Carot-Nemesio,
|
|
||||||
Scott D Phillips, Sebastian Dröge, Sebastian Rasmussen, Sergey Borovkov,
|
|
||||||
Seungha Yang, Sjors Gielen, Song Bing, Sreerenj Balachandran, Srimanta Panda,
|
|
||||||
Stavros Vagionitis, Stefan Sauer, Steven Hoving, Stian Selnes, Suhwang Kim,
|
|
||||||
Thiago Santos, Thibault Saunier, Thijs Vermeir, Thomas Bluemel, Thomas Roos,
|
|
||||||
Thomas Vander Stichele, Tim-Philipp Müller, Tim Sheridan, Ting-Wei Lan,
|
|
||||||
Tom Deseyn, Vanessa Chipirrás Navalón, Víctor Manuel Jáquez Leal,
|
|
||||||
Vincent Dehors, Vincent Penquerc'h, Vineeth T M, Vivia Nikolaidou,
|
|
||||||
Wang Xin-yu (王昕宇), William Manley, Wim Taymans, Wonchul Lee, Xavi Artigas,
|
|
||||||
Xavier Claessens, Youness Alaoui,
|
|
||||||
|
|
||||||
... and many others who have contributed bug reports, translations, sent
|
|
||||||
suggestions or helped testing.
|
|
||||||
|
|
||||||
## Bugs fixed in 1.8
|
|
||||||
|
|
||||||
More than [~700 bugs][bugs-fixed-in-1.8] have been fixed during
|
|
||||||
the development of 1.8.
|
|
||||||
|
|
||||||
This list does not include issues that have been cherry-picked into the
|
|
||||||
stable 1.6 branch and fixed there as well, all fixes that ended up in the
|
|
||||||
1.6 branch are also included in 1.8.
|
|
||||||
|
|
||||||
This list also does not include issues that have been fixed without a bug
|
|
||||||
report in bugzilla, so the actual number of fixes is much higher.
|
|
||||||
|
|
||||||
[bugs-fixed-in-1.8]: https://bugzilla.gnome.org/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&classification=Platform&limit=0&list_id=107311&order=bug_id&product=GStreamer&query_format=advanced&resolution=FIXED&target_milestone=1.6.1&target_milestone=1.6.2&target_milestone=1.6.3&target_milestone=1.7.0&target_milestone=1.7.1&target_milestone=1.7.2&target_milestone=1.7.3&target_milestone=1.7.4&target_milestone=1.7.90&target_milestone=1.7.91&target_milestone=1.7.92&target_milestone=1.7.x&target_milestone=1.8.0
|
|
||||||
|
|
||||||
## Stable 1.8 branch
|
|
||||||
|
|
||||||
After the 1.8.0 release there will be several 1.8.x bug-fix releases which
|
|
||||||
will contain bug fixes which have been deemed suitable for a stable branch,
|
|
||||||
but no new features or intrusive changes will be added to a bug-fix release
|
|
||||||
usually. The 1.8.x bug-fix releases will be made from the git 1.8 branch, which
|
|
||||||
is a stable branch.
|
|
||||||
|
|
||||||
### 1.8.0
|
|
||||||
|
|
||||||
1.8.0 was released on 24 March 2016.
|
|
||||||
|
|
||||||
### 1.8.1
|
|
||||||
|
|
||||||
The first 1.8 bug-fix release (1.8.1) is planned for April 2016.
|
|
||||||
|
|
||||||
## Schedule for 1.10
|
|
||||||
|
|
||||||
Our next major feature release will be 1.10, and 1.9 will be the unstable
|
|
||||||
development version leading up to the stable 1.10 release. The development
|
|
||||||
of 1.9/1.10 will happen in the git master branch.
|
|
||||||
|
|
||||||
The plan for the 1.10 development cycle is yet to be confirmed, but it is
|
|
||||||
expected that feature freeze will be around late July or early August,
|
|
||||||
followed by several 1.9 pre-releases and the new 1.10 stable release
|
|
||||||
in September.
|
|
||||||
|
|
||||||
1.10 will be backwards-compatible to the stable 1.8, 1.6, 1.4, 1.2 and 1.0
|
|
||||||
release series.
|
|
||||||
|
|
||||||
- - -
|
|
||||||
|
|
||||||
*These release notes have been prepared by Tim-Philipp Müller with
|
|
||||||
contributions from Sebastian Dröge, Nicolas Dufresne, Edward Hervey, Víctor
|
|
||||||
Manuel Jáquez Leal, Arun Raghavan, Thiago Santos, Thibault Saunier, Jan
|
|
||||||
Schmidt and Matthew Waters.*
|
|
||||||
|
|
||||||
*License: [CC BY-SA 4.0](http://creativecommons.org/licenses/by-sa/4.0/)*
|
|
||||||
|
|
97
RELEASE
97
RELEASE
|
@ -1,15 +1,16 @@
|
||||||
|
|
||||||
Release notes for GStreamer Base Plugins 1.8.0
|
Release notes for GStreamer Base Plugins 1.9.1
|
||||||
|
|
||||||
The GStreamer team is pleased to announce the first release of the new stable
|
The GStreamer team is pleased to announce the first release of the unstable
|
||||||
1.8 release series. The 1.8 release series is adding new features on top of
|
1.9 release series. The 1.9 release series is adding new features on top of
|
||||||
the 1.0, 1.2, 1.4 and 1.6 series and is part of the API and ABI-stable 1.x
|
the 1.0, 1.2, 1.4, 1.6 and 1.8 series and is part of the API and ABI-stable 1.x release
|
||||||
release series of the GStreamer multimedia framework.
|
series of the GStreamer multimedia framework. The unstable 1.9 release series
|
||||||
|
will lead to the stable 1.10 release series in the next weeks. Any newly added
|
||||||
|
API can still change until that point.
|
||||||
|
|
||||||
|
|
||||||
Binaries for Android, iOS, Mac OS X and Windows will be provided shortly after
|
Binaries for Android, iOS, Mac OS X and Windows will be provided in the next days.
|
||||||
the source release by the GStreamer project during the stable 1.8 release
|
|
||||||
series.
|
|
||||||
|
|
||||||
|
|
||||||
This module contains a set of reference plugins, base classes for other
|
This module contains a set of reference plugins, base classes for other
|
||||||
|
@ -58,7 +59,47 @@ contains a set of codecs plugins based on libav (formerly gst-ffmpeg)
|
||||||
|
|
||||||
Bugs fixed in this release
|
Bugs fixed in this release
|
||||||
|
|
||||||
* 763316 : install-plugins: update documentation
|
* 578933 : Need generic " deep-element-added " signal and/or playbin " element-setup " signal
|
||||||
|
* 629764 : subparse: Add WebVTT support
|
||||||
|
* 747574 : videodecoder: reverse playback in non-packetized decoders
|
||||||
|
* 753930 : tag: add GST_TAG_CAPTURING_FOCAL_LENGTH_35_MM and handle it in exiftag
|
||||||
|
* 761944 : rtcpbuffer: Add API for APP packets
|
||||||
|
* 761950 : rtcpbuffer: Add profile-specific extension API.
|
||||||
|
* 763058 : opusdec: add unit test for PLC timestamp when FEC is enabled
|
||||||
|
* 763075 : base plugins: use new gst_element_class_add_static_pad_template()
|
||||||
|
* 763630 : appsrc: If do-timestamp=true should take the timestamp when queueing the buffer
|
||||||
|
* 763799 : alsasrc: should not always assume that 8 channels implies 7.1 setup
|
||||||
|
* 763975 : decodebin: Modify result of seekable in check_upstream_seekable function
|
||||||
|
* 763985 : audio: add some debug output about channels mapping
|
||||||
|
* 764201 : video: Provide fast path for I420 to BGRA (and/or RGBA) conversion and back
|
||||||
|
* 764319 : videorate : avoid useless buffer copy un drop-only mode
|
||||||
|
* 764459 : GstRTPBasedepayload fail to detect new stream after SSRC change
|
||||||
|
* 764631 : GstAudioDecoder produce invalid timestamps when PLC and delay
|
||||||
|
* 764667 : videoaffinetransformationmeta: doesn't define the coordinate space
|
||||||
|
* 764902 : Explicitly initialize GstVideoCropMeta fields to 0 on init.
|
||||||
|
* 764948 : decodebin: use-buffering property ignored on non-muxed streams
|
||||||
|
* 764966 : oggdemux: Gaps when playing test sine wave VBR file
|
||||||
|
* 765042 : subparse: fix build error with GCC 4.6.3
|
||||||
|
* 765216 : gst-play: call gst_deinit()
|
||||||
|
* 765424 : ximagesink: generate reconfigure on window handle change
|
||||||
|
* 765663 : gst_audio_buffer_clip() needs const on segment
|
||||||
|
* 766226 : base: fix leaks in tests
|
||||||
|
* 766229 : appsrc: Add duration property for providing a duration in TIME format
|
||||||
|
* 766467 : oggdemux: Reset keyframe_granule when needed
|
||||||
|
* 766800 : videodecoder: Make sure the DISCONT flag is set on the outgoing buffer
|
||||||
|
* 767102 : decodebin: hits ASSERT with H264 byte-stream as input
|
||||||
|
* 767155 : base: use MAY_BE_LEAKED flag
|
||||||
|
* 767173 : tagdemux: preserve timestamp when skipping a tag at the beginning of a buffer
|
||||||
|
* 767232 : videodecoder: Drain data in more situations
|
||||||
|
* 767505 : audiovisualizer: produces wrong timestamps with non-16 bit audio formats
|
||||||
|
* 767506 : audiovisualizer: still uses old GST_BUFFER_TIMESTAMP() macro switch it to GST_BUFFER_PTS()
|
||||||
|
* 767507 : audiovisualizer: Timestamp adjustment calculations wrong for > 1 channel
|
||||||
|
* 767537 : exiftag: Increase serialized geo coordinate precision
|
||||||
|
* 767641 : videodecoder: Missing drain vfunc GST_FIXME flood on Raspberry Pi
|
||||||
|
* 767791 : tagdemux: preserve duration when skipping a tag at the beginning of a buffer
|
||||||
|
* 767826 : opusdec with plc enabled failing to decode audio
|
||||||
|
* 768361 : videodecoder: Takes stream lock for non-serialized queries
|
||||||
|
* 766203 : videoencoder/decoder: Wrong variable names used in GST_IS_*CODER_CLASS macros
|
||||||
|
|
||||||
==== Download ====
|
==== Download ====
|
||||||
|
|
||||||
|
@ -95,5 +136,43 @@ subscribe to the gstreamer-devel list.
|
||||||
|
|
||||||
Contributors to this release
|
Contributors to this release
|
||||||
|
|
||||||
|
* Aleix Conchillo Flaqué
|
||||||
|
* Alessandro Decina
|
||||||
|
* Arjen Veenhuizen
|
||||||
|
* Aurélien Zanelli
|
||||||
|
* Edward Hervey
|
||||||
|
* Fabrice Bellet
|
||||||
|
* Frédéric Bertolus
|
||||||
|
* Guillaume Desmottes
|
||||||
|
* Haakon Sporsheim
|
||||||
|
* Hyunjun Ko
|
||||||
|
* Jakub Adam
|
||||||
|
* Jan Schmidt
|
||||||
|
* Jimmy Ohn
|
||||||
|
* Joan Pau Beltran
|
||||||
|
* Josep Torra
|
||||||
|
* Julien Isorce
|
||||||
|
* Kipp Cannon
|
||||||
|
* Luis de Bethencourt
|
||||||
|
* Matthew Waters
|
||||||
|
* Michael Olbrich
|
||||||
|
* Mikhail Fludkov
|
||||||
|
* Nicolas Dufresne
|
||||||
|
* Nirbheek Chauhan
|
||||||
|
* Olivier Crête
|
||||||
|
* Paulo Neves
|
||||||
|
* Philippe Normand
|
||||||
|
* Scott D Phillips
|
||||||
|
* Sebastian Dröge
|
||||||
|
* Sreerenj Balachandran
|
||||||
|
* Stian Selnes
|
||||||
|
* Thiago Santos
|
||||||
|
* Thomas Jones
|
||||||
|
* Tim-Philipp Müller
|
||||||
|
* Vincent Penquerc'h
|
||||||
|
* Vineeth TM
|
||||||
|
* Vivia Nikolaidou
|
||||||
* Víctor Manuel Jáquez Leal
|
* Víctor Manuel Jáquez Leal
|
||||||
|
* Wim Taymans
|
||||||
|
* Zaheer Abbas Merali
|
||||||
|
|
|
@ -5,7 +5,7 @@ dnl please read gstreamer/docs/random/autotools before changing this file
|
||||||
dnl initialize autoconf
|
dnl initialize autoconf
|
||||||
dnl releases only do -Wall, git and prerelease does -Werror too
|
dnl releases only do -Wall, git and prerelease does -Werror too
|
||||||
dnl use a three digit version number for releases, and four for git/prerelease
|
dnl use a three digit version number for releases, and four for git/prerelease
|
||||||
AC_INIT([GStreamer Base Plug-ins],[1.9.0.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-base])
|
AC_INIT([GStreamer Base Plug-ins],[1.9.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-base])
|
||||||
|
|
||||||
AG_GST_INIT
|
AG_GST_INIT
|
||||||
|
|
||||||
|
@ -56,10 +56,10 @@ dnl 1.2.5 => 205
|
||||||
dnl 1.10.9 (who knows) => 1009
|
dnl 1.10.9 (who knows) => 1009
|
||||||
dnl
|
dnl
|
||||||
dnl sets GST_LT_LDFLAGS
|
dnl sets GST_LT_LDFLAGS
|
||||||
AS_LIBTOOL(GST, 900, 0, 900)
|
AS_LIBTOOL(GST, 901, 0, 901)
|
||||||
|
|
||||||
dnl *** required versions of GStreamer stuff ***
|
dnl *** required versions of GStreamer stuff ***
|
||||||
GST_REQ=1.9.0.1
|
GST_REQ=1.9.1
|
||||||
|
|
||||||
dnl *** autotools stuff ****
|
dnl *** autotools stuff ****
|
||||||
|
|
||||||
|
|
|
@ -2778,3 +2778,523 @@
|
||||||
<DEFAULT>FALSE</DEFAULT>
|
<DEFAULT>FALSE</DEFAULT>
|
||||||
</ARG>
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstURISourceBin::buffer-duration</NAME>
|
||||||
|
<TYPE>gint64</TYPE>
|
||||||
|
<RANGE>>= G_MAXULONG</RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Buffer duration (ns)</NICK>
|
||||||
|
<BLURB>Buffer duration when buffering streams (-1 default value).</BLURB>
|
||||||
|
<DEFAULT>-1</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstURISourceBin::buffer-size</NAME>
|
||||||
|
<TYPE>gint</TYPE>
|
||||||
|
<RANGE>>= G_MAXULONG</RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Buffer size (bytes)</NICK>
|
||||||
|
<BLURB>Buffer size when buffering streams (-1 default value).</BLURB>
|
||||||
|
<DEFAULT>-1</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstURISourceBin::connection-speed</NAME>
|
||||||
|
<TYPE>guint64</TYPE>
|
||||||
|
<RANGE><= 18446744073709551</RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Connection Speed</NICK>
|
||||||
|
<BLURB>Network connection speed in kbps (0 = unknown).</BLURB>
|
||||||
|
<DEFAULT>0</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstURISourceBin::download</NAME>
|
||||||
|
<TYPE>gboolean</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Download</NICK>
|
||||||
|
<BLURB>Attempt download buffering when buffering network streams.</BLURB>
|
||||||
|
<DEFAULT>FALSE</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstURISourceBin::ring-buffer-max-size</NAME>
|
||||||
|
<TYPE>guint64</TYPE>
|
||||||
|
<RANGE><= G_MAXUINT</RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Max. ring buffer size (bytes)</NICK>
|
||||||
|
<BLURB>Max. amount of data in the ring buffer (bytes, 0 = ring buffer disabled).</BLURB>
|
||||||
|
<DEFAULT>0</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstURISourceBin::source</NAME>
|
||||||
|
<TYPE>GstElement*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>r</FLAGS>
|
||||||
|
<NICK>Source</NICK>
|
||||||
|
<BLURB>Source object used.</BLURB>
|
||||||
|
<DEFAULT></DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstURISourceBin::uri</NAME>
|
||||||
|
<TYPE>gchar*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>URI</NICK>
|
||||||
|
<BLURB>URI to decode.</BLURB>
|
||||||
|
<DEFAULT>NULL</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstURISourceBin::use-buffering</NAME>
|
||||||
|
<TYPE>gboolean</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Use Buffering</NICK>
|
||||||
|
<BLURB>Perform buffering on demuxed/parsed media.</BLURB>
|
||||||
|
<DEFAULT>FALSE</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::audio-filter</NAME>
|
||||||
|
<TYPE>GstElement*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Audio filter</NICK>
|
||||||
|
<BLURB>the audio filter(s) to apply, if possible.</BLURB>
|
||||||
|
<DEFAULT></DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::audio-sink</NAME>
|
||||||
|
<TYPE>GstElement*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Audio Sink</NICK>
|
||||||
|
<BLURB>the audio output element to use (NULL = default sink).</BLURB>
|
||||||
|
<DEFAULT></DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::audio-stream-combiner</NAME>
|
||||||
|
<TYPE>GstElement*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Audio stream combiner</NICK>
|
||||||
|
<BLURB>Current audio stream combiner (NULL = input-selector).</BLURB>
|
||||||
|
<DEFAULT></DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::auto-select-streams</NAME>
|
||||||
|
<TYPE>gboolean</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Automatic Select-Streams</NICK>
|
||||||
|
<BLURB>Whether playbin should respond to stream-collection messags with select-streams events.</BLURB>
|
||||||
|
<DEFAULT>TRUE</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::av-offset</NAME>
|
||||||
|
<TYPE>gint64</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>AV Offset</NICK>
|
||||||
|
<BLURB>The synchronisation offset between audio and video in nanoseconds.</BLURB>
|
||||||
|
<DEFAULT>0</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::buffer-duration</NAME>
|
||||||
|
<TYPE>gint64</TYPE>
|
||||||
|
<RANGE>>= G_MAXULONG</RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Buffer duration (ns)</NICK>
|
||||||
|
<BLURB>Buffer duration when buffering network streams.</BLURB>
|
||||||
|
<DEFAULT>-1</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::buffer-size</NAME>
|
||||||
|
<TYPE>gint</TYPE>
|
||||||
|
<RANGE>>= G_MAXULONG</RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Buffer size (bytes)</NICK>
|
||||||
|
<BLURB>Buffer size when buffering network streams.</BLURB>
|
||||||
|
<DEFAULT>-1</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::connection-speed</NAME>
|
||||||
|
<TYPE>guint64</TYPE>
|
||||||
|
<RANGE><= 18446744073709551</RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Connection Speed</NICK>
|
||||||
|
<BLURB>Network connection speed in kbps (0 = unknown).</BLURB>
|
||||||
|
<DEFAULT>0</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::current-audio</NAME>
|
||||||
|
<TYPE>gint</TYPE>
|
||||||
|
<RANGE>>= G_MAXULONG</RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Current audio</NICK>
|
||||||
|
<BLURB>Currently playing audio stream (-1 = auto).</BLURB>
|
||||||
|
<DEFAULT>-1</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::current-suburi</NAME>
|
||||||
|
<TYPE>gchar*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>r</FLAGS>
|
||||||
|
<NICK>Current .sub-URI</NICK>
|
||||||
|
<BLURB>The currently playing URI of a subtitle.</BLURB>
|
||||||
|
<DEFAULT>NULL</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::current-text</NAME>
|
||||||
|
<TYPE>gint</TYPE>
|
||||||
|
<RANGE>>= G_MAXULONG</RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Current Text</NICK>
|
||||||
|
<BLURB>Currently playing text stream (-1 = auto).</BLURB>
|
||||||
|
<DEFAULT>-1</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::current-uri</NAME>
|
||||||
|
<TYPE>gchar*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>r</FLAGS>
|
||||||
|
<NICK>Current URI</NICK>
|
||||||
|
<BLURB>The currently playing URI.</BLURB>
|
||||||
|
<DEFAULT>NULL</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::current-video</NAME>
|
||||||
|
<TYPE>gint</TYPE>
|
||||||
|
<RANGE>>= G_MAXULONG</RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Current Video</NICK>
|
||||||
|
<BLURB>Currently playing video stream (-1 = auto).</BLURB>
|
||||||
|
<DEFAULT>-1</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::flags</NAME>
|
||||||
|
<TYPE>GstPlayFlags</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Flags</NICK>
|
||||||
|
<BLURB>Flags to control behaviour.</BLURB>
|
||||||
|
<DEFAULT>Render the video stream|Render the audio stream|Render subtitles|Use software volume|Deinterlace video if necessary|Use software color balance</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::force-aspect-ratio</NAME>
|
||||||
|
<TYPE>gboolean</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Force Aspect Ratio</NICK>
|
||||||
|
<BLURB>When enabled, scaling will respect original aspect ratio.</BLURB>
|
||||||
|
<DEFAULT>TRUE</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::mute</NAME>
|
||||||
|
<TYPE>gboolean</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Mute</NICK>
|
||||||
|
<BLURB>Mute the audio channel without changing the volume.</BLURB>
|
||||||
|
<DEFAULT>FALSE</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::n-audio</NAME>
|
||||||
|
<TYPE>gint</TYPE>
|
||||||
|
<RANGE>>= 0</RANGE>
|
||||||
|
<FLAGS>r</FLAGS>
|
||||||
|
<NICK>Number Audio</NICK>
|
||||||
|
<BLURB>Total number of audio streams.</BLURB>
|
||||||
|
<DEFAULT>0</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::n-text</NAME>
|
||||||
|
<TYPE>gint</TYPE>
|
||||||
|
<RANGE>>= 0</RANGE>
|
||||||
|
<FLAGS>r</FLAGS>
|
||||||
|
<NICK>Number Text</NICK>
|
||||||
|
<BLURB>Total number of text streams.</BLURB>
|
||||||
|
<DEFAULT>0</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::n-video</NAME>
|
||||||
|
<TYPE>gint</TYPE>
|
||||||
|
<RANGE>>= 0</RANGE>
|
||||||
|
<FLAGS>r</FLAGS>
|
||||||
|
<NICK>Number Video</NICK>
|
||||||
|
<BLURB>Total number of video streams.</BLURB>
|
||||||
|
<DEFAULT>0</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::ring-buffer-max-size</NAME>
|
||||||
|
<TYPE>guint64</TYPE>
|
||||||
|
<RANGE><= G_MAXUINT</RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Max. ring buffer size (bytes)</NICK>
|
||||||
|
<BLURB>Max. amount of data in the ring buffer (bytes, 0 = ring buffer disabled).</BLURB>
|
||||||
|
<DEFAULT>0</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::sample</NAME>
|
||||||
|
<TYPE>GstSample*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>r</FLAGS>
|
||||||
|
<NICK>Sample</NICK>
|
||||||
|
<BLURB>The last sample (NULL = no video available).</BLURB>
|
||||||
|
<DEFAULT></DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::source</NAME>
|
||||||
|
<TYPE>GstElement*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>r</FLAGS>
|
||||||
|
<NICK>Source</NICK>
|
||||||
|
<BLURB>Source element.</BLURB>
|
||||||
|
<DEFAULT></DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::subtitle-encoding</NAME>
|
||||||
|
<TYPE>gchar*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>subtitle encoding</NICK>
|
||||||
|
<BLURB>Encoding to assume if input subtitles are not in UTF-8 encoding. If not set, the GST_SUBTITLE_ENCODING environment variable will be checked for an encoding to use. If that is not set either, ISO-8859-15 will be assumed.</BLURB>
|
||||||
|
<DEFAULT>NULL</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::subtitle-font-desc</NAME>
|
||||||
|
<TYPE>gchar*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>w</FLAGS>
|
||||||
|
<NICK>Subtitle font description</NICK>
|
||||||
|
<BLURB>Pango font description of font to be used for subtitle rendering.</BLURB>
|
||||||
|
<DEFAULT>NULL</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::suburi</NAME>
|
||||||
|
<TYPE>gchar*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>.sub-URI</NICK>
|
||||||
|
<BLURB>Optional URI of a subtitle.</BLURB>
|
||||||
|
<DEFAULT>NULL</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::text-sink</NAME>
|
||||||
|
<TYPE>GstElement*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Text plugin</NICK>
|
||||||
|
<BLURB>the text output element to use (NULL = default subtitleoverlay).</BLURB>
|
||||||
|
<DEFAULT></DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::text-stream-combiner</NAME>
|
||||||
|
<TYPE>GstElement*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Text stream combiner</NICK>
|
||||||
|
<BLURB>Current text stream combiner (NULL = input-selector).</BLURB>
|
||||||
|
<DEFAULT></DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::uri</NAME>
|
||||||
|
<TYPE>gchar*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>URI</NICK>
|
||||||
|
<BLURB>URI of the media to play.</BLURB>
|
||||||
|
<DEFAULT>NULL</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::video-filter</NAME>
|
||||||
|
<TYPE>GstElement*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Video filter</NICK>
|
||||||
|
<BLURB>the video filter(s) to apply, if possible.</BLURB>
|
||||||
|
<DEFAULT></DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::video-multiview-flags</NAME>
|
||||||
|
<TYPE>GstVideoMultiviewFlags</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Multiview Flags Override</NICK>
|
||||||
|
<BLURB>Override details of the multiview frame layout.</BLURB>
|
||||||
|
<DEFAULT></DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::video-multiview-mode</NAME>
|
||||||
|
<TYPE>GstVideoMultiviewFramePacking</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Multiview Mode Override</NICK>
|
||||||
|
<BLURB>Re-interpret a video stream as one of several frame-packed stereoscopic modes.</BLURB>
|
||||||
|
<DEFAULT>GST_VIDEO_MULTIVIEW_FRAME_PACKING_NONE</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::video-sink</NAME>
|
||||||
|
<TYPE>GstElement*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Video Sink</NICK>
|
||||||
|
<BLURB>the video output element to use (NULL = default sink).</BLURB>
|
||||||
|
<DEFAULT></DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::video-stream-combiner</NAME>
|
||||||
|
<TYPE>GstElement*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Video stream combiner</NICK>
|
||||||
|
<BLURB>Current video stream combiner (NULL = input-selector).</BLURB>
|
||||||
|
<DEFAULT></DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::vis-plugin</NAME>
|
||||||
|
<TYPE>GstElement*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Vis plugin</NICK>
|
||||||
|
<BLURB>the visualization element to use (NULL = default).</BLURB>
|
||||||
|
<DEFAULT></DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstPlayBin3::volume</NAME>
|
||||||
|
<TYPE>gdouble</TYPE>
|
||||||
|
<RANGE>[0,10]</RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Volume</NICK>
|
||||||
|
<BLURB>The audio volume, 1.0=100%.</BLURB>
|
||||||
|
<DEFAULT>1</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstParseBin::connection-speed</NAME>
|
||||||
|
<TYPE>guint64</TYPE>
|
||||||
|
<RANGE><= 18446744073709551</RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Connection Speed</NICK>
|
||||||
|
<BLURB>Network connection speed in kbps (0 = unknown).</BLURB>
|
||||||
|
<DEFAULT>0</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstParseBin::expose-all-streams</NAME>
|
||||||
|
<TYPE>gboolean</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Expose All Streams</NICK>
|
||||||
|
<BLURB>Expose all streams, including those of unknown type or that don't match the 'caps' property.</BLURB>
|
||||||
|
<DEFAULT>TRUE</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstParseBin::sink-caps</NAME>
|
||||||
|
<TYPE>GstCaps*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Sink Caps</NICK>
|
||||||
|
<BLURB>The caps of the input data. (NULL = use typefind element).</BLURB>
|
||||||
|
<DEFAULT></DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstParseBin::subtitle-encoding</NAME>
|
||||||
|
<TYPE>gchar*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>subtitle encoding</NICK>
|
||||||
|
<BLURB>Encoding to assume if input subtitles are not in UTF-8 encoding. If not set, the GST_SUBTITLE_ENCODING environment variable will be checked for an encoding to use. If that is not set either, ISO-8859-15 will be assumed.</BLURB>
|
||||||
|
<DEFAULT>NULL</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstDecodebin3::caps</NAME>
|
||||||
|
<TYPE>GstCaps*</TYPE>
|
||||||
|
<RANGE></RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Caps</NICK>
|
||||||
|
<BLURB>The caps on which to stop decoding. (NULL = default).</BLURB>
|
||||||
|
<DEFAULT></DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstTheoraDec::visualize-bit-usage</NAME>
|
||||||
|
<TYPE>gint</TYPE>
|
||||||
|
<RANGE>[0,255]</RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Visualize bitstream usage breakdown</NICK>
|
||||||
|
<BLURB>Sets the bitstream breakdown visualization mode. Values influence the width of the bit usage bars to show.</BLURB>
|
||||||
|
<DEFAULT>0</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstTheoraDec::visualize-macroblock-modes</NAME>
|
||||||
|
<TYPE>gint</TYPE>
|
||||||
|
<RANGE>[0,65535]</RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Visualize macroblock modes</NICK>
|
||||||
|
<BLURB>Show macroblock mode selection overlaid on image. Value gives a mask for macroblock (MB) modes to show.</BLURB>
|
||||||
|
<DEFAULT>0</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstTheoraDec::visualize-motion-vectors</NAME>
|
||||||
|
<TYPE>gint</TYPE>
|
||||||
|
<RANGE>[0,65535]</RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Visualize motion vectors</NICK>
|
||||||
|
<BLURB>Show motion vector selection overlaid on image. Value gives a mask for motion vector (MV) modes to show.</BLURB>
|
||||||
|
<DEFAULT>0</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
<ARG>
|
||||||
|
<NAME>GstTheoraDec::visualize-quantization-modes</NAME>
|
||||||
|
<TYPE>gint</TYPE>
|
||||||
|
<RANGE>[0,65535]</RANGE>
|
||||||
|
<FLAGS>rw</FLAGS>
|
||||||
|
<NICK>Visualize adaptive quantization modes</NICK>
|
||||||
|
<BLURB>Show adaptive quantization mode selection overlaid on image. Value gives a mask for quantization (QI) modes to show.</BLURB>
|
||||||
|
<DEFAULT>0</DEFAULT>
|
||||||
|
</ARG>
|
||||||
|
|
||||||
|
|
|
@ -79,12 +79,16 @@ GObject
|
||||||
GstVideoRate
|
GstVideoRate
|
||||||
GstBin
|
GstBin
|
||||||
GstDecodeBin
|
GstDecodeBin
|
||||||
|
GstDecodebin3
|
||||||
GstEncodeBin
|
GstEncodeBin
|
||||||
|
GstParseBin
|
||||||
GstPipeline
|
GstPipeline
|
||||||
GstPlayBin
|
GstPlayBin
|
||||||
|
GstPlayBin3
|
||||||
GstPlaySink
|
GstPlaySink
|
||||||
GstSubtitleOverlay
|
GstSubtitleOverlay
|
||||||
GstURIDecodeBin
|
GstURIDecodeBin
|
||||||
|
GstURISourceBin
|
||||||
GstOggAviParse
|
GstOggAviParse
|
||||||
GstOggDemux
|
GstOggDemux
|
||||||
GstOggMux
|
GstOggMux
|
||||||
|
@ -108,6 +112,7 @@ GObject
|
||||||
GstProxyPad
|
GstProxyPad
|
||||||
GstGhostPad
|
GstGhostPad
|
||||||
GstDecodePad
|
GstDecodePad
|
||||||
|
GstParsePad
|
||||||
GstPadTemplate
|
GstPadTemplate
|
||||||
GstPlugin
|
GstPlugin
|
||||||
GstPluginFeature
|
GstPluginFeature
|
||||||
|
@ -116,6 +121,8 @@ GObject
|
||||||
GstTracerFactory
|
GstTracerFactory
|
||||||
GstTypeFindFactory
|
GstTypeFindFactory
|
||||||
GstRegistry
|
GstRegistry
|
||||||
|
GstStream
|
||||||
|
GstStreamCollection
|
||||||
GstTask
|
GstTask
|
||||||
GstTaskPool
|
GstTaskPool
|
||||||
GInputStream
|
GInputStream
|
||||||
|
|
|
@ -9,17 +9,21 @@ GstAudioEncoder GstPreset
|
||||||
GstBin GstChildProxy
|
GstBin GstChildProxy
|
||||||
GstCdParanoiaSrc GstURIHandler
|
GstCdParanoiaSrc GstURIHandler
|
||||||
GstDecodeBin GstChildProxy
|
GstDecodeBin GstChildProxy
|
||||||
|
GstDecodebin3 GstChildProxy
|
||||||
GstEncodeBin GstChildProxy
|
GstEncodeBin GstChildProxy
|
||||||
GstGioSink GstURIHandler
|
GstGioSink GstURIHandler
|
||||||
GstGioSrc GstURIHandler
|
GstGioSrc GstURIHandler
|
||||||
GstOggMux GstPreset
|
GstOggMux GstPreset
|
||||||
GstOpusEnc GstPreset GstTagSetter
|
GstOpusEnc GstPreset GstTagSetter
|
||||||
|
GstParseBin GstChildProxy
|
||||||
GstPipeline GstChildProxy
|
GstPipeline GstChildProxy
|
||||||
GstPlayBin GstChildProxy GstStreamVolume GstVideoOverlay GstNavigation GstColorBalance
|
GstPlayBin GstChildProxy GstStreamVolume GstVideoOverlay GstNavigation GstColorBalance
|
||||||
|
GstPlayBin3 GstChildProxy GstStreamVolume GstVideoOverlay GstNavigation GstColorBalance
|
||||||
GstPlaySink GstChildProxy GstStreamVolume GstVideoOverlay GstNavigation GstColorBalance
|
GstPlaySink GstChildProxy GstStreamVolume GstVideoOverlay GstNavigation GstColorBalance
|
||||||
GstSubtitleOverlay GstChildProxy
|
GstSubtitleOverlay GstChildProxy
|
||||||
GstTheoraEnc GstPreset
|
GstTheoraEnc GstPreset
|
||||||
GstURIDecodeBin GstChildProxy
|
GstURIDecodeBin GstChildProxy
|
||||||
|
GstURISourceBin GstChildProxy
|
||||||
GstVideoEncoder GstPreset
|
GstVideoEncoder GstPreset
|
||||||
GstVolume GstStreamVolume
|
GstVolume GstStreamVolume
|
||||||
GstVorbisEnc GstPreset GstTagSetter
|
GstVorbisEnc GstPreset GstTagSetter
|
||||||
|
|
|
@ -533,3 +533,264 @@ gint arg1
|
||||||
GstSocketSrc *gstsocketsrc
|
GstSocketSrc *gstsocketsrc
|
||||||
</SIGNAL>
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstURISourceBin::autoplug-continue</NAME>
|
||||||
|
<RETURNS>gboolean</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstURISourceBin *gsturisourcebin
|
||||||
|
GstPad *arg1
|
||||||
|
GstCaps *arg2
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstURISourceBin::autoplug-factories</NAME>
|
||||||
|
<RETURNS>GValueArray*</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstURISourceBin *gsturisourcebin
|
||||||
|
GstPad *arg1
|
||||||
|
GstCaps *arg2
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstURISourceBin::autoplug-query</NAME>
|
||||||
|
<RETURNS>gboolean</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstURISourceBin *gsturisourcebin
|
||||||
|
GstPad *arg1
|
||||||
|
GstElement *arg2
|
||||||
|
GstQuery *arg3
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstURISourceBin::autoplug-select</NAME>
|
||||||
|
<RETURNS>GstAutoplugSelectResult</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstURISourceBin *gsturisourcebin
|
||||||
|
GstPad *arg1
|
||||||
|
GstCaps *arg2
|
||||||
|
GstElementFactory *arg3
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstURISourceBin::autoplug-sort</NAME>
|
||||||
|
<RETURNS>GValueArray*</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstURISourceBin *gsturisourcebin
|
||||||
|
GstPad *arg1
|
||||||
|
GstCaps *arg2
|
||||||
|
GValueArray *arg3
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstURISourceBin::drained</NAME>
|
||||||
|
<RETURNS>void</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstURISourceBin *gsturisourcebin
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstURISourceBin::source-setup</NAME>
|
||||||
|
<RETURNS>void</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstURISourceBin *gsturisourcebin
|
||||||
|
GstElement *arg1
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstURISourceBin::unknown-type</NAME>
|
||||||
|
<RETURNS>void</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstURISourceBin *gsturisourcebin
|
||||||
|
GstPad *arg1
|
||||||
|
GstCaps *arg2
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstPlayBin3::about-to-finish</NAME>
|
||||||
|
<RETURNS>void</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstPlayBin3 *gstplaybin3
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstPlayBin3::audio-changed</NAME>
|
||||||
|
<RETURNS>void</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstPlayBin3 *gstplaybin3
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstPlayBin3::audio-tags-changed</NAME>
|
||||||
|
<RETURNS>void</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstPlayBin3 *gstplaybin3
|
||||||
|
gint arg1
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstPlayBin3::convert-sample</NAME>
|
||||||
|
<RETURNS>GstSample*</RETURNS>
|
||||||
|
<FLAGS>la</FLAGS>
|
||||||
|
GstPlayBin3 *gstplaybin3
|
||||||
|
GstCaps *arg1
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstPlayBin3::get-audio-pad</NAME>
|
||||||
|
<RETURNS>GstPad*</RETURNS>
|
||||||
|
<FLAGS>la</FLAGS>
|
||||||
|
GstPlayBin3 *gstplaybin3
|
||||||
|
gint arg1
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstPlayBin3::get-audio-tags</NAME>
|
||||||
|
<RETURNS>GstTagList*</RETURNS>
|
||||||
|
<FLAGS>la</FLAGS>
|
||||||
|
GstPlayBin3 *gstplaybin3
|
||||||
|
gint arg1
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstPlayBin3::get-text-pad</NAME>
|
||||||
|
<RETURNS>GstPad*</RETURNS>
|
||||||
|
<FLAGS>la</FLAGS>
|
||||||
|
GstPlayBin3 *gstplaybin3
|
||||||
|
gint arg1
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstPlayBin3::get-text-tags</NAME>
|
||||||
|
<RETURNS>GstTagList*</RETURNS>
|
||||||
|
<FLAGS>la</FLAGS>
|
||||||
|
GstPlayBin3 *gstplaybin3
|
||||||
|
gint arg1
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstPlayBin3::get-video-pad</NAME>
|
||||||
|
<RETURNS>GstPad*</RETURNS>
|
||||||
|
<FLAGS>la</FLAGS>
|
||||||
|
GstPlayBin3 *gstplaybin3
|
||||||
|
gint arg1
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstPlayBin3::get-video-tags</NAME>
|
||||||
|
<RETURNS>GstTagList*</RETURNS>
|
||||||
|
<FLAGS>la</FLAGS>
|
||||||
|
GstPlayBin3 *gstplaybin3
|
||||||
|
gint arg1
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstPlayBin3::source-setup</NAME>
|
||||||
|
<RETURNS>void</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstPlayBin3 *gstplaybin3
|
||||||
|
GstElement *arg1
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstPlayBin3::text-changed</NAME>
|
||||||
|
<RETURNS>void</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstPlayBin3 *gstplaybin3
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstPlayBin3::text-tags-changed</NAME>
|
||||||
|
<RETURNS>void</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstPlayBin3 *gstplaybin3
|
||||||
|
gint arg1
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstPlayBin3::video-changed</NAME>
|
||||||
|
<RETURNS>void</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstPlayBin3 *gstplaybin3
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstPlayBin3::video-tags-changed</NAME>
|
||||||
|
<RETURNS>void</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstPlayBin3 *gstplaybin3
|
||||||
|
gint arg1
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstParseBin::autoplug-continue</NAME>
|
||||||
|
<RETURNS>gboolean</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstParseBin *gstparsebin
|
||||||
|
GstPad *arg1
|
||||||
|
GstCaps *arg2
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstParseBin::autoplug-factories</NAME>
|
||||||
|
<RETURNS>GValueArray*</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstParseBin *gstparsebin
|
||||||
|
GstPad *arg1
|
||||||
|
GstCaps *arg2
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstParseBin::autoplug-query</NAME>
|
||||||
|
<RETURNS>gboolean</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstParseBin *gstparsebin
|
||||||
|
GstPad *arg1
|
||||||
|
GstElement *arg2
|
||||||
|
GstQuery *arg3
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstParseBin::autoplug-select</NAME>
|
||||||
|
<RETURNS>GstAutoplugSelectResult</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstParseBin *gstparsebin
|
||||||
|
GstPad *arg1
|
||||||
|
GstCaps *arg2
|
||||||
|
GstElementFactory *arg3
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstParseBin::autoplug-sort</NAME>
|
||||||
|
<RETURNS>GValueArray*</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstParseBin *gstparsebin
|
||||||
|
GstPad *arg1
|
||||||
|
GstCaps *arg2
|
||||||
|
GValueArray *arg3
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstParseBin::drained</NAME>
|
||||||
|
<RETURNS>void</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstParseBin *gstparsebin
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstParseBin::unknown-type</NAME>
|
||||||
|
<RETURNS>void</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstParseBin *gstparsebin
|
||||||
|
GstPad *arg1
|
||||||
|
GstCaps *arg2
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
<SIGNAL>
|
||||||
|
<NAME>GstDecodebin3::select-stream</NAME>
|
||||||
|
<RETURNS>gint</RETURNS>
|
||||||
|
<FLAGS>l</FLAGS>
|
||||||
|
GstDecodebin3 *gstdecodebin3
|
||||||
|
GstStreamCollection *arg1
|
||||||
|
GstStream *arg2
|
||||||
|
</SIGNAL>
|
||||||
|
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>Adds multiple streams</description>
|
<description>Adds multiple streams</description>
|
||||||
<filename>../../gst/adder/.libs/libgstadder.so</filename>
|
<filename>../../gst/adder/.libs/libgstadder.so</filename>
|
||||||
<basename>libgstadder.so</basename>
|
<basename>libgstadder.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>ALSA plugin library</description>
|
<description>ALSA plugin library</description>
|
||||||
<filename>../../ext/alsa/.libs/libgstalsa.so</filename>
|
<filename>../../ext/alsa/.libs/libgstalsa.so</filename>
|
||||||
<basename>libgstalsa.so</basename>
|
<basename>libgstalsa.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>Elements used to communicate with applications</description>
|
<description>Elements used to communicate with applications</description>
|
||||||
<filename>../../gst/app/.libs/libgstapp.so</filename>
|
<filename>../../gst/app/.libs/libgstapp.so</filename>
|
||||||
<basename>libgstapp.so</basename>
|
<basename>libgstapp.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>Convert audio to different formats</description>
|
<description>Convert audio to different formats</description>
|
||||||
<filename>../../gst/audioconvert/.libs/libgstaudioconvert.so</filename>
|
<filename>../../gst/audioconvert/.libs/libgstaudioconvert.so</filename>
|
||||||
<basename>libgstaudioconvert.so</basename>
|
<basename>libgstaudioconvert.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>Adjusts audio frames</description>
|
<description>Adjusts audio frames</description>
|
||||||
<filename>../../gst/audiorate/.libs/libgstaudiorate.so</filename>
|
<filename>../../gst/audiorate/.libs/libgstaudiorate.so</filename>
|
||||||
<basename>libgstaudiorate.so</basename>
|
<basename>libgstaudiorate.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>Resamples audio</description>
|
<description>Resamples audio</description>
|
||||||
<filename>../../gst/audioresample/.libs/libgstaudioresample.so</filename>
|
<filename>../../gst/audioresample/.libs/libgstaudioresample.so</filename>
|
||||||
<basename>libgstaudioresample.so</basename>
|
<basename>libgstaudioresample.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>Creates audio test signals of given frequency and volume</description>
|
<description>Creates audio test signals of given frequency and volume</description>
|
||||||
<filename>../../gst/audiotestsrc/.libs/libgstaudiotestsrc.so</filename>
|
<filename>../../gst/audiotestsrc/.libs/libgstaudiotestsrc.so</filename>
|
||||||
<basename>libgstaudiotestsrc.so</basename>
|
<basename>libgstaudiotestsrc.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>Read audio from CD in paranoid mode</description>
|
<description>Read audio from CD in paranoid mode</description>
|
||||||
<filename>../../ext/cdparanoia/.libs/libgstcdparanoia.so</filename>
|
<filename>../../ext/cdparanoia/.libs/libgstcdparanoia.so</filename>
|
||||||
<basename>libgstcdparanoia.so</basename>
|
<basename>libgstcdparanoia.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>various encoding-related elements</description>
|
<description>various encoding-related elements</description>
|
||||||
<filename>../../gst/encoding/.libs/libgstencodebin.so</filename>
|
<filename>../../gst/encoding/.libs/libgstencodebin.so</filename>
|
||||||
<basename>libgstencodebin.so</basename>
|
<basename>libgstencodebin.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>GIO elements</description>
|
<description>GIO elements</description>
|
||||||
<filename>../../gst/gio/.libs/libgstgio.so</filename>
|
<filename>../../gst/gio/.libs/libgstgio.so</filename>
|
||||||
<basename>libgstgio.so</basename>
|
<basename>libgstgio.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>libvisual visualization plugins</description>
|
<description>libvisual visualization plugins</description>
|
||||||
<filename>../../ext/libvisual/.libs/libgstlibvisual.so</filename>
|
<filename>../../ext/libvisual/.libs/libgstlibvisual.so</filename>
|
||||||
<basename>libgstlibvisual.so</basename>
|
<basename>libgstlibvisual.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>ogg stream manipulation (info about ogg: http://xiph.org)</description>
|
<description>ogg stream manipulation (info about ogg: http://xiph.org)</description>
|
||||||
<filename>../../ext/ogg/.libs/libgstogg.so</filename>
|
<filename>../../ext/ogg/.libs/libgstogg.so</filename>
|
||||||
<basename>libgstogg.so</basename>
|
<basename>libgstogg.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>OPUS plugin library</description>
|
<description>OPUS plugin library</description>
|
||||||
<filename>../../ext/opus/.libs/libgstopus.so</filename>
|
<filename>../../ext/opus/.libs/libgstopus.so</filename>
|
||||||
<basename>libgstopus.so</basename>
|
<basename>libgstopus.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>Pango-based text rendering and overlay</description>
|
<description>Pango-based text rendering and overlay</description>
|
||||||
<filename>../../ext/pango/.libs/libgstpango.so</filename>
|
<filename>../../ext/pango/.libs/libgstpango.so</filename>
|
||||||
<basename>libgstpango.so</basename>
|
<basename>libgstpango.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>various playback elements</description>
|
<description>various playback elements</description>
|
||||||
<filename>../../gst/playback/.libs/libgstplayback.so</filename>
|
<filename>../../gst/playback/.libs/libgstplayback.so</filename>
|
||||||
<basename>libgstplayback.so</basename>
|
<basename>libgstplayback.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
@ -30,6 +30,72 @@
|
||||||
</caps>
|
</caps>
|
||||||
</pads>
|
</pads>
|
||||||
</element>
|
</element>
|
||||||
|
<element>
|
||||||
|
<name>decodebin3</name>
|
||||||
|
<longname>Decoder Bin 3</longname>
|
||||||
|
<class>Generic/Bin/Decoder</class>
|
||||||
|
<description>Autoplug and decode to raw media</description>
|
||||||
|
<author>Edward Hervey <edward@centricular.com></author>
|
||||||
|
<pads>
|
||||||
|
<caps>
|
||||||
|
<name>sink</name>
|
||||||
|
<direction>sink</direction>
|
||||||
|
<presence>always</presence>
|
||||||
|
<details>ANY</details>
|
||||||
|
</caps>
|
||||||
|
<caps>
|
||||||
|
<name>sink_%u</name>
|
||||||
|
<direction>sink</direction>
|
||||||
|
<presence>request</presence>
|
||||||
|
<details>ANY</details>
|
||||||
|
</caps>
|
||||||
|
<caps>
|
||||||
|
<name>audio_%u</name>
|
||||||
|
<direction>source</direction>
|
||||||
|
<presence>sometimes</presence>
|
||||||
|
<details>ANY</details>
|
||||||
|
</caps>
|
||||||
|
<caps>
|
||||||
|
<name>src_%u</name>
|
||||||
|
<direction>source</direction>
|
||||||
|
<presence>sometimes</presence>
|
||||||
|
<details>ANY</details>
|
||||||
|
</caps>
|
||||||
|
<caps>
|
||||||
|
<name>text_%u</name>
|
||||||
|
<direction>source</direction>
|
||||||
|
<presence>sometimes</presence>
|
||||||
|
<details>ANY</details>
|
||||||
|
</caps>
|
||||||
|
<caps>
|
||||||
|
<name>video_%u</name>
|
||||||
|
<direction>source</direction>
|
||||||
|
<presence>sometimes</presence>
|
||||||
|
<details>ANY</details>
|
||||||
|
</caps>
|
||||||
|
</pads>
|
||||||
|
</element>
|
||||||
|
<element>
|
||||||
|
<name>parsebin</name>
|
||||||
|
<longname>Parse Bin</longname>
|
||||||
|
<class>Generic/Bin/Parser</class>
|
||||||
|
<description>Parse and de-multiplex to elementary stream</description>
|
||||||
|
<author>Jan Schmidt <jan@centricular.com>, Edward Hervey <edward@centricular.com></author>
|
||||||
|
<pads>
|
||||||
|
<caps>
|
||||||
|
<name>sink</name>
|
||||||
|
<direction>sink</direction>
|
||||||
|
<presence>always</presence>
|
||||||
|
<details>ANY</details>
|
||||||
|
</caps>
|
||||||
|
<caps>
|
||||||
|
<name>src_%u</name>
|
||||||
|
<direction>source</direction>
|
||||||
|
<presence>sometimes</presence>
|
||||||
|
<details>ANY</details>
|
||||||
|
</caps>
|
||||||
|
</pads>
|
||||||
|
</element>
|
||||||
<element>
|
<element>
|
||||||
<name>playbin</name>
|
<name>playbin</name>
|
||||||
<longname>Player Bin 2</longname>
|
<longname>Player Bin 2</longname>
|
||||||
|
@ -39,6 +105,15 @@
|
||||||
<pads>
|
<pads>
|
||||||
</pads>
|
</pads>
|
||||||
</element>
|
</element>
|
||||||
|
<element>
|
||||||
|
<name>playbin3</name>
|
||||||
|
<longname>Player Bin 3</longname>
|
||||||
|
<class>Generic/Bin/Player</class>
|
||||||
|
<description>Autoplug and play media from an uri</description>
|
||||||
|
<author>Wim Taymans <wim.taymans@gmail.com></author>
|
||||||
|
<pads>
|
||||||
|
</pads>
|
||||||
|
</element>
|
||||||
<element>
|
<element>
|
||||||
<name>playsink</name>
|
<name>playsink</name>
|
||||||
<longname>Player Sink</longname>
|
<longname>Player Sink</longname>
|
||||||
|
@ -141,5 +216,20 @@
|
||||||
</caps>
|
</caps>
|
||||||
</pads>
|
</pads>
|
||||||
</element>
|
</element>
|
||||||
|
<element>
|
||||||
|
<name>urisourcebin</name>
|
||||||
|
<longname>URI reader</longname>
|
||||||
|
<class>Generic/Bin/Source</class>
|
||||||
|
<description>Download and buffer a URI as needed</description>
|
||||||
|
<author>Jan Schmidt <jan@centricular.com></author>
|
||||||
|
<pads>
|
||||||
|
<caps>
|
||||||
|
<name>src_%u</name>
|
||||||
|
<direction>source</direction>
|
||||||
|
<presence>sometimes</presence>
|
||||||
|
<details>ANY</details>
|
||||||
|
</caps>
|
||||||
|
</pads>
|
||||||
|
</element>
|
||||||
</elements>
|
</elements>
|
||||||
</plugin>
|
</plugin>
|
|
@ -3,10 +3,10 @@
|
||||||
<description>Subtitle parsing</description>
|
<description>Subtitle parsing</description>
|
||||||
<filename>../../gst/subparse/.libs/libgstsubparse.so</filename>
|
<filename>../../gst/subparse/.libs/libgstsubparse.so</filename>
|
||||||
<basename>libgstsubparse.so</basename>
|
<basename>libgstsubparse.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>transfer data over the network via TCP</description>
|
<description>transfer data over the network via TCP</description>
|
||||||
<filename>../../gst/tcp/.libs/libgsttcp.so</filename>
|
<filename>../../gst/tcp/.libs/libgsttcp.so</filename>
|
||||||
<basename>libgsttcp.so</basename>
|
<basename>libgsttcp.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>Theora plugin library</description>
|
<description>Theora plugin library</description>
|
||||||
<filename>../../ext/theora/.libs/libgsttheora.so</filename>
|
<filename>../../ext/theora/.libs/libgsttheora.so</filename>
|
||||||
<basename>libgsttheora.so</basename>
|
<basename>libgsttheora.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>default typefind functions</description>
|
<description>default typefind functions</description>
|
||||||
<filename>../../gst/typefind/.libs/libgsttypefindfunctions.so</filename>
|
<filename>../../gst/typefind/.libs/libgsttypefindfunctions.so</filename>
|
||||||
<basename>libgsttypefindfunctions.so</basename>
|
<basename>libgsttypefindfunctions.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
</elements>
|
</elements>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>Colorspace conversion</description>
|
<description>Colorspace conversion</description>
|
||||||
<filename>../../gst/videoconvert/.libs/libgstvideoconvert.so</filename>
|
<filename>../../gst/videoconvert/.libs/libgstvideoconvert.so</filename>
|
||||||
<basename>libgstvideoconvert.so</basename>
|
<basename>libgstvideoconvert.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>Adjusts video frames</description>
|
<description>Adjusts video frames</description>
|
||||||
<filename>../../gst/videorate/.libs/libgstvideorate.so</filename>
|
<filename>../../gst/videorate/.libs/libgstvideorate.so</filename>
|
||||||
<basename>libgstvideorate.so</basename>
|
<basename>libgstvideorate.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>Resizes video</description>
|
<description>Resizes video</description>
|
||||||
<filename>../../gst/videoscale/.libs/libgstvideoscale.so</filename>
|
<filename>../../gst/videoscale/.libs/libgstvideoscale.so</filename>
|
||||||
<basename>libgstvideoscale.so</basename>
|
<basename>libgstvideoscale.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>Creates a test video stream</description>
|
<description>Creates a test video stream</description>
|
||||||
<filename>../../gst/videotestsrc/.libs/libgstvideotestsrc.so</filename>
|
<filename>../../gst/videotestsrc/.libs/libgstvideotestsrc.so</filename>
|
||||||
<basename>libgstvideotestsrc.so</basename>
|
<basename>libgstvideotestsrc.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>plugin for controlling audio volume</description>
|
<description>plugin for controlling audio volume</description>
|
||||||
<filename>../../gst/volume/.libs/libgstvolume.so</filename>
|
<filename>../../gst/volume/.libs/libgstvolume.so</filename>
|
||||||
<basename>libgstvolume.so</basename>
|
<basename>libgstvolume.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>Vorbis plugin library</description>
|
<description>Vorbis plugin library</description>
|
||||||
<filename>../../ext/vorbis/.libs/libgstvorbis.so</filename>
|
<filename>../../ext/vorbis/.libs/libgstvorbis.so</filename>
|
||||||
<basename>libgstvorbis.so</basename>
|
<basename>libgstvorbis.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>X11 video output element based on standard Xlib calls</description>
|
<description>X11 video output element based on standard Xlib calls</description>
|
||||||
<filename>../../sys/ximage/.libs/libgstximagesink.so</filename>
|
<filename>../../sys/ximage/.libs/libgstximagesink.so</filename>
|
||||||
<basename>libgstximagesink.so</basename>
|
<basename>libgstximagesink.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
<description>XFree86 video output plugin using Xv extension</description>
|
<description>XFree86 video output plugin using Xv extension</description>
|
||||||
<filename>../../sys/xvimage/.libs/libgstxvimagesink.so</filename>
|
<filename>../../sys/xvimage/.libs/libgstxvimagesink.so</filename>
|
||||||
<basename>libgstxvimagesink.so</basename>
|
<basename>libgstxvimagesink.so</basename>
|
||||||
<version>1.9.0.1</version>
|
<version>1.9.1</version>
|
||||||
<license>LGPL</license>
|
<license>LGPL</license>
|
||||||
<source>gst-plugins-base</source>
|
<source>gst-plugins-base</source>
|
||||||
<package>GStreamer Base Plug-ins git</package>
|
<package>GStreamer Base Plug-ins source release</package>
|
||||||
<origin>Unknown package origin</origin>
|
<origin>Unknown package origin</origin>
|
||||||
<elements>
|
<elements>
|
||||||
<element>
|
<element>
|
||||||
|
|
|
@ -21915,15 +21915,15 @@ video_orc_convert_I420_BGRA (guint8 * ORC_RESTRICT d1,
|
||||||
1, 9, 27, 118, 105, 100, 101, 111, 95, 111, 114, 99, 95, 99, 111, 110,
|
1, 9, 27, 118, 105, 100, 101, 111, 95, 111, 114, 99, 95, 99, 111, 110,
|
||||||
118, 101, 114, 116, 95, 73, 52, 50, 48, 95, 66, 71, 82, 65, 11, 4,
|
118, 101, 114, 116, 95, 73, 52, 50, 48, 95, 66, 71, 82, 65, 11, 4,
|
||||||
4, 12, 1, 1, 12, 1, 1, 12, 1, 1, 14, 1, 128, 0, 0, 0,
|
4, 12, 1, 1, 12, 1, 1, 12, 1, 1, 14, 1, 128, 0, 0, 0,
|
||||||
14, 1, 127, 0, 0, 0, 16, 2, 16, 2, 16, 2, 16, 2, 16, 2,
|
14, 4, 128, 0, 0, 0, 14, 1, 127, 0, 0, 0, 16, 2, 16, 2,
|
||||||
20, 2, 20, 2, 20, 2, 20, 2, 20, 2, 20, 2, 20, 1, 20, 1,
|
16, 2, 16, 2, 16, 2, 20, 2, 20, 2, 20, 2, 20, 2, 20, 2,
|
||||||
20, 1, 20, 4, 65, 38, 4, 16, 151, 32, 38, 45, 38, 5, 65, 38,
|
20, 2, 20, 1, 20, 1, 20, 1, 20, 4, 65, 38, 4, 16, 151, 32,
|
||||||
38, 16, 151, 33, 38, 45, 38, 6, 65, 38, 38, 16, 151, 34, 38, 90,
|
38, 45, 38, 5, 65, 38, 38, 16, 151, 33, 38, 45, 38, 6, 65, 38,
|
||||||
32, 32, 24, 90, 35, 34, 25, 70, 35, 32, 35, 159, 38, 35, 196, 35,
|
38, 16, 151, 34, 38, 90, 32, 32, 24, 90, 35, 34, 25, 70, 35, 32,
|
||||||
38, 17, 90, 37, 33, 26, 70, 37, 32, 37, 159, 40, 37, 90, 36, 33,
|
35, 159, 38, 35, 196, 35, 38, 18, 90, 37, 33, 26, 70, 37, 32, 37,
|
||||||
27, 70, 36, 32, 36, 90, 32, 34, 28, 70, 36, 36, 32, 159, 39, 36,
|
159, 40, 37, 90, 36, 33, 27, 70, 36, 32, 36, 90, 32, 34, 28, 70,
|
||||||
196, 37, 40, 39, 195, 41, 37, 35, 21, 2, 33, 0, 41, 16, 2, 0,
|
36, 36, 32, 159, 39, 36, 196, 37, 40, 39, 195, 41, 37, 35, 21, 2,
|
||||||
|
33, 0, 41, 17, 2, 0,
|
||||||
};
|
};
|
||||||
p = orc_program_new_from_static_bytecode (bc);
|
p = orc_program_new_from_static_bytecode (bc);
|
||||||
orc_program_set_backup_function (p, _backup_video_orc_convert_I420_BGRA);
|
orc_program_set_backup_function (p, _backup_video_orc_convert_I420_BGRA);
|
||||||
|
@ -21936,7 +21936,8 @@ video_orc_convert_I420_BGRA (guint8 * ORC_RESTRICT d1,
|
||||||
orc_program_add_source (p, 1, "s2");
|
orc_program_add_source (p, 1, "s2");
|
||||||
orc_program_add_source (p, 1, "s3");
|
orc_program_add_source (p, 1, "s3");
|
||||||
orc_program_add_constant (p, 1, 0x00000080, "c1");
|
orc_program_add_constant (p, 1, 0x00000080, "c1");
|
||||||
orc_program_add_constant (p, 1, 0x0000007f, "c2");
|
orc_program_add_constant (p, 4, 0x00000080, "c2");
|
||||||
|
orc_program_add_constant (p, 1, 0x0000007f, "c3");
|
||||||
orc_program_add_parameter (p, 2, "p1");
|
orc_program_add_parameter (p, 2, "p1");
|
||||||
orc_program_add_parameter (p, 2, "p2");
|
orc_program_add_parameter (p, 2, "p2");
|
||||||
orc_program_add_parameter (p, 2, "p3");
|
orc_program_add_parameter (p, 2, "p3");
|
||||||
|
@ -21977,7 +21978,7 @@ video_orc_convert_I420_BGRA (guint8 * ORC_RESTRICT d1,
|
||||||
ORC_VAR_D1);
|
ORC_VAR_D1);
|
||||||
orc_program_append_2 (p, "convssswb", 0, ORC_VAR_T7, ORC_VAR_T4,
|
orc_program_append_2 (p, "convssswb", 0, ORC_VAR_T7, ORC_VAR_T4,
|
||||||
ORC_VAR_D1, ORC_VAR_D1);
|
ORC_VAR_D1, ORC_VAR_D1);
|
||||||
orc_program_append_2 (p, "mergebw", 0, ORC_VAR_T4, ORC_VAR_T7, ORC_VAR_C2,
|
orc_program_append_2 (p, "mergebw", 0, ORC_VAR_T4, ORC_VAR_T7, ORC_VAR_C3,
|
||||||
ORC_VAR_D1);
|
ORC_VAR_D1);
|
||||||
orc_program_append_2 (p, "mulhsw", 0, ORC_VAR_T6, ORC_VAR_T2, ORC_VAR_P3,
|
orc_program_append_2 (p, "mulhsw", 0, ORC_VAR_T6, ORC_VAR_T2, ORC_VAR_P3,
|
||||||
ORC_VAR_D1);
|
ORC_VAR_D1);
|
||||||
|
@ -21999,7 +22000,7 @@ video_orc_convert_I420_BGRA (guint8 * ORC_RESTRICT d1,
|
||||||
ORC_VAR_D1);
|
ORC_VAR_D1);
|
||||||
orc_program_append_2 (p, "mergewl", 0, ORC_VAR_T10, ORC_VAR_T6,
|
orc_program_append_2 (p, "mergewl", 0, ORC_VAR_T10, ORC_VAR_T6,
|
||||||
ORC_VAR_T4, ORC_VAR_D1);
|
ORC_VAR_T4, ORC_VAR_D1);
|
||||||
orc_program_append_2 (p, "addb", 2, ORC_VAR_D1, ORC_VAR_T10, ORC_VAR_C1,
|
orc_program_append_2 (p, "addb", 2, ORC_VAR_D1, ORC_VAR_T10, ORC_VAR_C2,
|
||||||
ORC_VAR_D1);
|
ORC_VAR_D1);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -22366,15 +22367,15 @@ video_orc_convert_I420_ARGB (guint8 * ORC_RESTRICT d1,
|
||||||
1, 9, 27, 118, 105, 100, 101, 111, 95, 111, 114, 99, 95, 99, 111, 110,
|
1, 9, 27, 118, 105, 100, 101, 111, 95, 111, 114, 99, 95, 99, 111, 110,
|
||||||
118, 101, 114, 116, 95, 73, 52, 50, 48, 95, 65, 82, 71, 66, 11, 4,
|
118, 101, 114, 116, 95, 73, 52, 50, 48, 95, 65, 82, 71, 66, 11, 4,
|
||||||
4, 12, 1, 1, 12, 1, 1, 12, 1, 1, 14, 1, 128, 0, 0, 0,
|
4, 12, 1, 1, 12, 1, 1, 12, 1, 1, 14, 1, 128, 0, 0, 0,
|
||||||
14, 1, 127, 0, 0, 0, 16, 2, 16, 2, 16, 2, 16, 2, 16, 2,
|
14, 4, 128, 0, 0, 0, 14, 1, 127, 0, 0, 0, 16, 2, 16, 2,
|
||||||
20, 2, 20, 2, 20, 2, 20, 2, 20, 2, 20, 2, 20, 1, 20, 1,
|
16, 2, 16, 2, 16, 2, 20, 2, 20, 2, 20, 2, 20, 2, 20, 2,
|
||||||
20, 1, 20, 4, 65, 38, 4, 16, 151, 32, 38, 45, 38, 5, 65, 38,
|
20, 2, 20, 1, 20, 1, 20, 1, 20, 4, 65, 38, 4, 16, 151, 32,
|
||||||
38, 16, 151, 33, 38, 45, 38, 6, 65, 38, 38, 16, 151, 34, 38, 90,
|
38, 45, 38, 5, 65, 38, 38, 16, 151, 33, 38, 45, 38, 6, 65, 38,
|
||||||
32, 32, 24, 90, 35, 34, 25, 70, 35, 32, 35, 159, 38, 35, 196, 35,
|
38, 16, 151, 34, 38, 90, 32, 32, 24, 90, 35, 34, 25, 70, 35, 32,
|
||||||
17, 38, 90, 37, 33, 26, 70, 37, 32, 37, 159, 40, 37, 90, 36, 33,
|
35, 159, 38, 35, 196, 35, 18, 38, 90, 37, 33, 26, 70, 37, 32, 37,
|
||||||
27, 70, 36, 32, 36, 90, 32, 34, 28, 70, 36, 36, 32, 159, 39, 36,
|
159, 40, 37, 90, 36, 33, 27, 70, 36, 32, 36, 90, 32, 34, 28, 70,
|
||||||
196, 37, 39, 40, 195, 41, 35, 37, 21, 2, 33, 0, 41, 16, 2, 0,
|
36, 36, 32, 159, 39, 36, 196, 37, 39, 40, 195, 41, 35, 37, 21, 2,
|
||||||
|
33, 0, 41, 17, 2, 0,
|
||||||
};
|
};
|
||||||
p = orc_program_new_from_static_bytecode (bc);
|
p = orc_program_new_from_static_bytecode (bc);
|
||||||
orc_program_set_backup_function (p, _backup_video_orc_convert_I420_ARGB);
|
orc_program_set_backup_function (p, _backup_video_orc_convert_I420_ARGB);
|
||||||
|
@ -22387,7 +22388,8 @@ video_orc_convert_I420_ARGB (guint8 * ORC_RESTRICT d1,
|
||||||
orc_program_add_source (p, 1, "s2");
|
orc_program_add_source (p, 1, "s2");
|
||||||
orc_program_add_source (p, 1, "s3");
|
orc_program_add_source (p, 1, "s3");
|
||||||
orc_program_add_constant (p, 1, 0x00000080, "c1");
|
orc_program_add_constant (p, 1, 0x00000080, "c1");
|
||||||
orc_program_add_constant (p, 1, 0x0000007f, "c2");
|
orc_program_add_constant (p, 4, 0x00000080, "c2");
|
||||||
|
orc_program_add_constant (p, 1, 0x0000007f, "c3");
|
||||||
orc_program_add_parameter (p, 2, "p1");
|
orc_program_add_parameter (p, 2, "p1");
|
||||||
orc_program_add_parameter (p, 2, "p2");
|
orc_program_add_parameter (p, 2, "p2");
|
||||||
orc_program_add_parameter (p, 2, "p3");
|
orc_program_add_parameter (p, 2, "p3");
|
||||||
|
@ -22428,7 +22430,7 @@ video_orc_convert_I420_ARGB (guint8 * ORC_RESTRICT d1,
|
||||||
ORC_VAR_D1);
|
ORC_VAR_D1);
|
||||||
orc_program_append_2 (p, "convssswb", 0, ORC_VAR_T7, ORC_VAR_T4,
|
orc_program_append_2 (p, "convssswb", 0, ORC_VAR_T7, ORC_VAR_T4,
|
||||||
ORC_VAR_D1, ORC_VAR_D1);
|
ORC_VAR_D1, ORC_VAR_D1);
|
||||||
orc_program_append_2 (p, "mergebw", 0, ORC_VAR_T4, ORC_VAR_C2, ORC_VAR_T7,
|
orc_program_append_2 (p, "mergebw", 0, ORC_VAR_T4, ORC_VAR_C3, ORC_VAR_T7,
|
||||||
ORC_VAR_D1);
|
ORC_VAR_D1);
|
||||||
orc_program_append_2 (p, "mulhsw", 0, ORC_VAR_T6, ORC_VAR_T2, ORC_VAR_P3,
|
orc_program_append_2 (p, "mulhsw", 0, ORC_VAR_T6, ORC_VAR_T2, ORC_VAR_P3,
|
||||||
ORC_VAR_D1);
|
ORC_VAR_D1);
|
||||||
|
@ -22450,7 +22452,7 @@ video_orc_convert_I420_ARGB (guint8 * ORC_RESTRICT d1,
|
||||||
ORC_VAR_D1);
|
ORC_VAR_D1);
|
||||||
orc_program_append_2 (p, "mergewl", 0, ORC_VAR_T10, ORC_VAR_T4,
|
orc_program_append_2 (p, "mergewl", 0, ORC_VAR_T10, ORC_VAR_T4,
|
||||||
ORC_VAR_T6, ORC_VAR_D1);
|
ORC_VAR_T6, ORC_VAR_D1);
|
||||||
orc_program_append_2 (p, "addb", 2, ORC_VAR_D1, ORC_VAR_T10, ORC_VAR_C1,
|
orc_program_append_2 (p, "addb", 2, ORC_VAR_D1, ORC_VAR_T10, ORC_VAR_C2,
|
||||||
ORC_VAR_D1);
|
ORC_VAR_D1);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -34,6 +34,16 @@ A wide range of video and audio decoders, encoders, and filters are included.
|
||||||
</GitRepository>
|
</GitRepository>
|
||||||
</repository>
|
</repository>
|
||||||
|
|
||||||
|
<release>
|
||||||
|
<Version>
|
||||||
|
<revision>1.9.1</revision>
|
||||||
|
<branch>master</branch>
|
||||||
|
<name></name>
|
||||||
|
<created>2016-06-06</created>
|
||||||
|
<file-release rdf:resource="http://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.9.1.tar.xz" />
|
||||||
|
</Version>
|
||||||
|
</release>
|
||||||
|
|
||||||
<release>
|
<release>
|
||||||
<Version>
|
<Version>
|
||||||
<revision>1.8.0</revision>
|
<revision>1.8.0</revision>
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
#ifndef _GST_PLUGINS_BASE__STDINT_H
|
#ifndef _GST_PLUGINS_BASE__STDINT_H
|
||||||
#define _GST_PLUGINS_BASE__STDINT_H 1
|
#define _GST_PLUGINS_BASE__STDINT_H 1
|
||||||
#ifndef _GENERATED_STDINT_H
|
#ifndef _GENERATED_STDINT_H
|
||||||
#define _GENERATED_STDINT_H "gst-plugins-base 1.8.0"
|
#define _GENERATED_STDINT_H "gst-plugins-base 1.9.1"
|
||||||
/* generated using gnu compiler gcc-6 (Debian 6-20160313-1) 6.0.0 20160313 (experimental) [trunk revision 234167] */
|
/* generated using gnu compiler gcc-6 (Debian 6.1.1-8) 6.1.1 20160630 */
|
||||||
#define _STDINT_HAVE_STDINT_H 1
|
#define _STDINT_HAVE_STDINT_H 1
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
#include "audio-converter.h"
|
#include "audio-converter.h"
|
||||||
#include "audio-info.h"
|
#include "audio-info.h"
|
||||||
#include "audio-quantize.h"
|
#include "audio-quantize.h"
|
||||||
|
#include "audio-resampler.h"
|
||||||
#include "gstaudioringbuffer.h"
|
#include "gstaudioringbuffer.h"
|
||||||
|
|
||||||
/* enumerations from "audio-format.h" */
|
/* enumerations from "audio-format.h" */
|
||||||
|
@ -343,6 +344,98 @@ gst_audio_quantize_flags_get_type (void)
|
||||||
return g_define_type_id__volatile;
|
return g_define_type_id__volatile;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* enumerations from "audio-resampler.h" */
|
||||||
|
GType
|
||||||
|
gst_audio_resampler_filter_mode_get_type (void)
|
||||||
|
{
|
||||||
|
static volatile gsize g_define_type_id__volatile = 0;
|
||||||
|
if (g_once_init_enter (&g_define_type_id__volatile)) {
|
||||||
|
static const GEnumValue values[] = {
|
||||||
|
{GST_AUDIO_RESAMPLER_FILTER_MODE_INTERPOLATED,
|
||||||
|
"GST_AUDIO_RESAMPLER_FILTER_MODE_INTERPOLATED", "interpolated"},
|
||||||
|
{GST_AUDIO_RESAMPLER_FILTER_MODE_FULL,
|
||||||
|
"GST_AUDIO_RESAMPLER_FILTER_MODE_FULL", "full"},
|
||||||
|
{GST_AUDIO_RESAMPLER_FILTER_MODE_AUTO,
|
||||||
|
"GST_AUDIO_RESAMPLER_FILTER_MODE_AUTO", "auto"},
|
||||||
|
{0, NULL, NULL}
|
||||||
|
};
|
||||||
|
GType g_define_type_id =
|
||||||
|
g_enum_register_static ("GstAudioResamplerFilterMode", values);
|
||||||
|
g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
|
||||||
|
}
|
||||||
|
return g_define_type_id__volatile;
|
||||||
|
}
|
||||||
|
|
||||||
|
GType
|
||||||
|
gst_audio_resampler_filter_interpolation_get_type (void)
|
||||||
|
{
|
||||||
|
static volatile gsize g_define_type_id__volatile = 0;
|
||||||
|
if (g_once_init_enter (&g_define_type_id__volatile)) {
|
||||||
|
static const GEnumValue values[] = {
|
||||||
|
{GST_AUDIO_RESAMPLER_FILTER_INTERPOLATION_NONE,
|
||||||
|
"GST_AUDIO_RESAMPLER_FILTER_INTERPOLATION_NONE", "none"},
|
||||||
|
{GST_AUDIO_RESAMPLER_FILTER_INTERPOLATION_LINEAR,
|
||||||
|
"GST_AUDIO_RESAMPLER_FILTER_INTERPOLATION_LINEAR", "linear"},
|
||||||
|
{GST_AUDIO_RESAMPLER_FILTER_INTERPOLATION_CUBIC,
|
||||||
|
"GST_AUDIO_RESAMPLER_FILTER_INTERPOLATION_CUBIC", "cubic"},
|
||||||
|
{0, NULL, NULL}
|
||||||
|
};
|
||||||
|
GType g_define_type_id =
|
||||||
|
g_enum_register_static ("GstAudioResamplerFilterInterpolation", values);
|
||||||
|
g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
|
||||||
|
}
|
||||||
|
return g_define_type_id__volatile;
|
||||||
|
}
|
||||||
|
|
||||||
|
GType
|
||||||
|
gst_audio_resampler_method_get_type (void)
|
||||||
|
{
|
||||||
|
static volatile gsize g_define_type_id__volatile = 0;
|
||||||
|
if (g_once_init_enter (&g_define_type_id__volatile)) {
|
||||||
|
static const GEnumValue values[] = {
|
||||||
|
{GST_AUDIO_RESAMPLER_METHOD_NEAREST, "GST_AUDIO_RESAMPLER_METHOD_NEAREST",
|
||||||
|
"nearest"},
|
||||||
|
{GST_AUDIO_RESAMPLER_METHOD_LINEAR, "GST_AUDIO_RESAMPLER_METHOD_LINEAR",
|
||||||
|
"linear"},
|
||||||
|
{GST_AUDIO_RESAMPLER_METHOD_CUBIC, "GST_AUDIO_RESAMPLER_METHOD_CUBIC",
|
||||||
|
"cubic"},
|
||||||
|
{GST_AUDIO_RESAMPLER_METHOD_BLACKMAN_NUTTALL,
|
||||||
|
"GST_AUDIO_RESAMPLER_METHOD_BLACKMAN_NUTTALL", "blackman-nuttall"},
|
||||||
|
{GST_AUDIO_RESAMPLER_METHOD_KAISER, "GST_AUDIO_RESAMPLER_METHOD_KAISER",
|
||||||
|
"kaiser"},
|
||||||
|
{0, NULL, NULL}
|
||||||
|
};
|
||||||
|
GType g_define_type_id =
|
||||||
|
g_enum_register_static ("GstAudioResamplerMethod", values);
|
||||||
|
g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
|
||||||
|
}
|
||||||
|
return g_define_type_id__volatile;
|
||||||
|
}
|
||||||
|
|
||||||
|
GType
|
||||||
|
gst_audio_resampler_flags_get_type (void)
|
||||||
|
{
|
||||||
|
static volatile gsize g_define_type_id__volatile = 0;
|
||||||
|
if (g_once_init_enter (&g_define_type_id__volatile)) {
|
||||||
|
static const GFlagsValue values[] = {
|
||||||
|
{GST_AUDIO_RESAMPLER_FLAG_NONE, "GST_AUDIO_RESAMPLER_FLAG_NONE", "none"},
|
||||||
|
{GST_AUDIO_RESAMPLER_FLAG_NON_INTERLEAVED_IN,
|
||||||
|
"GST_AUDIO_RESAMPLER_FLAG_NON_INTERLEAVED_IN",
|
||||||
|
"non-interleaved-in"},
|
||||||
|
{GST_AUDIO_RESAMPLER_FLAG_NON_INTERLEAVED_OUT,
|
||||||
|
"GST_AUDIO_RESAMPLER_FLAG_NON_INTERLEAVED_OUT",
|
||||||
|
"non-interleaved-out"},
|
||||||
|
{GST_AUDIO_RESAMPLER_FLAG_VARIABLE_RATE,
|
||||||
|
"GST_AUDIO_RESAMPLER_FLAG_VARIABLE_RATE", "variable-rate"},
|
||||||
|
{0, NULL, NULL}
|
||||||
|
};
|
||||||
|
GType g_define_type_id =
|
||||||
|
g_flags_register_static ("GstAudioResamplerFlags", values);
|
||||||
|
g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
|
||||||
|
}
|
||||||
|
return g_define_type_id__volatile;
|
||||||
|
}
|
||||||
|
|
||||||
/* enumerations from "gstaudioringbuffer.h" */
|
/* enumerations from "gstaudioringbuffer.h" */
|
||||||
GType
|
GType
|
||||||
gst_audio_ring_buffer_state_get_type (void)
|
gst_audio_ring_buffer_state_get_type (void)
|
||||||
|
|
|
@ -42,6 +42,16 @@ GType gst_audio_noise_shaping_method_get_type (void);
|
||||||
GType gst_audio_quantize_flags_get_type (void);
|
GType gst_audio_quantize_flags_get_type (void);
|
||||||
#define GST_TYPE_AUDIO_QUANTIZE_FLAGS (gst_audio_quantize_flags_get_type())
|
#define GST_TYPE_AUDIO_QUANTIZE_FLAGS (gst_audio_quantize_flags_get_type())
|
||||||
|
|
||||||
|
/* enumerations from "audio-resampler.h" */
|
||||||
|
GType gst_audio_resampler_filter_mode_get_type (void);
|
||||||
|
#define GST_TYPE_AUDIO_RESAMPLER_FILTER_MODE (gst_audio_resampler_filter_mode_get_type())
|
||||||
|
GType gst_audio_resampler_filter_interpolation_get_type (void);
|
||||||
|
#define GST_TYPE_AUDIO_RESAMPLER_FILTER_INTERPOLATION (gst_audio_resampler_filter_interpolation_get_type())
|
||||||
|
GType gst_audio_resampler_method_get_type (void);
|
||||||
|
#define GST_TYPE_AUDIO_RESAMPLER_METHOD (gst_audio_resampler_method_get_type())
|
||||||
|
GType gst_audio_resampler_flags_get_type (void);
|
||||||
|
#define GST_TYPE_AUDIO_RESAMPLER_FLAGS (gst_audio_resampler_flags_get_type())
|
||||||
|
|
||||||
/* enumerations from "gstaudioringbuffer.h" */
|
/* enumerations from "gstaudioringbuffer.h" */
|
||||||
GType gst_audio_ring_buffer_state_get_type (void);
|
GType gst_audio_ring_buffer_state_get_type (void);
|
||||||
#define GST_TYPE_AUDIO_RING_BUFFER_STATE (gst_audio_ring_buffer_state_get_type())
|
#define GST_TYPE_AUDIO_RING_BUFFER_STATE (gst_audio_ring_buffer_state_get_type())
|
||||||
|
|
|
@ -90,7 +90,7 @@
|
||||||
#define GST_PACKAGE_ORIGIN "Unknown package origin"
|
#define GST_PACKAGE_ORIGIN "Unknown package origin"
|
||||||
|
|
||||||
/* GStreamer package release date/time for plugins as YYYY-MM-DD */
|
/* GStreamer package release date/time for plugins as YYYY-MM-DD */
|
||||||
#define GST_PACKAGE_RELEASE_DATETIME "2016-03-24"
|
#define GST_PACKAGE_RELEASE_DATETIME "2016-06-06"
|
||||||
|
|
||||||
/* Define if static plugins should be built */
|
/* Define if static plugins should be built */
|
||||||
#undef GST_PLUGIN_BUILD_STATIC
|
#undef GST_PLUGIN_BUILD_STATIC
|
||||||
|
@ -251,6 +251,9 @@
|
||||||
/* Define if RDTSC is available */
|
/* Define if RDTSC is available */
|
||||||
#undef HAVE_RDTSC
|
#undef HAVE_RDTSC
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <smmintrin.h> header file. */
|
||||||
|
#undef HAVE_SMMINTRIN_H
|
||||||
|
|
||||||
/* Define to 1 if you have the <stdint.h> header file. */
|
/* Define to 1 if you have the <stdint.h> header file. */
|
||||||
#undef HAVE_STDINT_H
|
#undef HAVE_STDINT_H
|
||||||
|
|
||||||
|
@ -339,7 +342,7 @@
|
||||||
#define PACKAGE_NAME "GStreamer Base Plug-ins"
|
#define PACKAGE_NAME "GStreamer Base Plug-ins"
|
||||||
|
|
||||||
/* Define to the full name and version of this package. */
|
/* Define to the full name and version of this package. */
|
||||||
#define PACKAGE_STRING "GStreamer Base Plug-ins 1.8.0"
|
#define PACKAGE_STRING "GStreamer Base Plug-ins 1.9.1"
|
||||||
|
|
||||||
/* Define to the one symbol short name of this package. */
|
/* Define to the one symbol short name of this package. */
|
||||||
#define PACKAGE_TARNAME "gst-plugins-base"
|
#define PACKAGE_TARNAME "gst-plugins-base"
|
||||||
|
@ -348,7 +351,7 @@
|
||||||
#undef PACKAGE_URL
|
#undef PACKAGE_URL
|
||||||
|
|
||||||
/* Define to the version of this package. */
|
/* Define to the version of this package. */
|
||||||
#define PACKAGE_VERSION "1.8.0"
|
#define PACKAGE_VERSION "1.9.1"
|
||||||
|
|
||||||
/* directory where plugins are located */
|
/* directory where plugins are located */
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
|
@ -382,7 +385,7 @@
|
||||||
#undef USE_TREMOLO
|
#undef USE_TREMOLO
|
||||||
|
|
||||||
/* Version number of package */
|
/* Version number of package */
|
||||||
#define VERSION "1.8.0"
|
#define VERSION "1.9.1"
|
||||||
|
|
||||||
/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
|
/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
|
||||||
significant byte first (like Motorola and SPARC, unlike Intel). */
|
significant byte first (like Motorola and SPARC, unlike Intel). */
|
||||||
|
|
|
@ -88,6 +88,7 @@ gst_video_format_get_type (void)
|
||||||
{GST_VIDEO_FORMAT_NV61, "GST_VIDEO_FORMAT_NV61", "nv61"},
|
{GST_VIDEO_FORMAT_NV61, "GST_VIDEO_FORMAT_NV61", "nv61"},
|
||||||
{GST_VIDEO_FORMAT_P010_10BE, "GST_VIDEO_FORMAT_P010_10BE", "p010-10be"},
|
{GST_VIDEO_FORMAT_P010_10BE, "GST_VIDEO_FORMAT_P010_10BE", "p010-10be"},
|
||||||
{GST_VIDEO_FORMAT_P010_10LE, "GST_VIDEO_FORMAT_P010_10LE", "p010-10le"},
|
{GST_VIDEO_FORMAT_P010_10LE, "GST_VIDEO_FORMAT_P010_10LE", "p010-10le"},
|
||||||
|
{GST_VIDEO_FORMAT_IYU2, "GST_VIDEO_FORMAT_IYU2", "iyu2"},
|
||||||
{0, NULL, NULL}
|
{0, NULL, NULL}
|
||||||
};
|
};
|
||||||
GType g_define_type_id = g_enum_register_static ("GstVideoFormat", values);
|
GType g_define_type_id = g_enum_register_static ("GstVideoFormat", values);
|
||||||
|
@ -800,12 +801,14 @@ gst_video_resampler_flags_get_type (void)
|
||||||
{
|
{
|
||||||
static volatile gsize g_define_type_id__volatile = 0;
|
static volatile gsize g_define_type_id__volatile = 0;
|
||||||
if (g_once_init_enter (&g_define_type_id__volatile)) {
|
if (g_once_init_enter (&g_define_type_id__volatile)) {
|
||||||
static const GEnumValue values[] = {
|
static const GFlagsValue values[] = {
|
||||||
{GST_VIDEO_RESAMPLER_FLAG_NONE, "GST_VIDEO_RESAMPLER_FLAG_NONE", "none"},
|
{GST_VIDEO_RESAMPLER_FLAG_NONE, "GST_VIDEO_RESAMPLER_FLAG_NONE", "none"},
|
||||||
|
{GST_VIDEO_RESAMPLER_FLAG_HALF_TAPS, "GST_VIDEO_RESAMPLER_FLAG_HALF_TAPS",
|
||||||
|
"half-taps"},
|
||||||
{0, NULL, NULL}
|
{0, NULL, NULL}
|
||||||
};
|
};
|
||||||
GType g_define_type_id =
|
GType g_define_type_id =
|
||||||
g_enum_register_static ("GstVideoResamplerFlags", values);
|
g_flags_register_static ("GstVideoResamplerFlags", values);
|
||||||
g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
|
g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
|
||||||
}
|
}
|
||||||
return g_define_type_id__volatile;
|
return g_define_type_id__volatile;
|
||||||
|
|
Loading…
Reference in a new issue