Commit graph

25 commits

Author SHA1 Message Date
Thibault Saunier
2fd28195ca Move files from gst-plugins-base into the "subprojects/gst-plugins-base/" subdir 2021-09-24 16:13:26 -03:00
Sebastian Dröge
0e74e190ad video-blend: Add support for blending on top of 16 bit per component formats
With this we can support every currently supported video format for
blending.
2020-03-27 08:55:45 +00:00
Niels De Graef
93daa1435a Use G_DEFINE_AUTOPTR_CLEANUP_FUNC unconditionally
Since we started depending on GLib 2.44, we can be sure this macro is
defined (it will be a no-op on compilers that don't support it). For
plugins we should just start using `G_DECLARE_FINAL_TYPE` which means we
no longer need the macro there, but for most types in base/gst-libs we
don't want to break ABI, which means it's better to just keep it like it
is (and use the `#ifdef` instead).
2019-06-04 20:31:09 -04:00
Sebastian Dröge
d09eccc06b video-overlay-composition: Correctly mark GstVideoOverlayFormatFlags as flags
And register a GType for it.
2018-10-04 11:36:36 +03:00
Tim-Philipp Müller
ae429de8f6 video: GST_EXPORT -> GST_VIDEO_API
We need different export decorators for the different libs.
For now no actual change though, just rename before the release,
and add prelude headers to define the new decorator to GST_EXPORT.
2018-03-13 12:16:42 +00:00
Tim-Philipp Müller
820c34740f video: mark symbols explicitly for export with GST_EXPORT 2017-05-16 15:23:12 +01:00
Tim-Philipp Müller
7ffd9ce291 docs: remove dummy function declarations with G_INLINE_FUNCTION for gtk-doc
gtk-doc can handle static inline functions just fine these days,
there's no need for this stuff any more.
2016-01-03 17:21:18 +00:00
Xavier Claessens
429860e51f base: Add g_autoptr() support to all types
https://bugzilla.gnome.org/show_bug.cgi?id=754464
2015-12-14 13:39:43 -05:00
Pavel Bludov
8051434c03 video: overlay-composition: fix rectangle and composition cast macros
Closing parenthesis was missing in two cases.

https://bugzilla.gnome.org/show_bug.cgi?id=756893
2015-10-22 09:24:01 +01:00
Matthieu Bouron
a8951c16da video-overlay-composition: add GST_CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION 2014-03-05 20:38:45 +01:00
Tim-Philipp Müller
0b329f2c22 video: add define for video formats supported by the overlay blending code
For use in template caps by overlay elements that use
video_overlay_composition_blend().

API: GST_VIDEO_OVERLAY_COMPOSITION_BLEND_FORMATS

https://bugzilla.gnome.org/show_bug.cgi?id=665751
2013-02-19 12:54:40 +00:00
Tim-Philipp Müller
5f59b4f7ee Fix FSF address
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-03 23:05:09 +00:00
Mark Nauwelaerts
cd2e795154 videooverlaycomposition: add some _get_argb and _get_ayuv functions
... that will handle automatic conversion to indicated format.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683180
2012-09-05 10:15:51 +02:00
Mark Nauwelaerts
89228e911c videooverlaycomposition: allow more formats for rectangle pixel data
... adding AYUV, and allowing for ARGB or RGBA endian-independent.
2012-08-30 12:12:39 +02:00
Mark Nauwelaerts
f89c7b605f videooverlaycomposition: replace API parameters with required video meta on pixel data 2012-07-17 18:08:11 +02:00
Edward Hervey
2817bdadc9 libs: Remove "Since" markers and minor doc fixups 2012-07-13 12:11:06 +02:00
Mark Nauwelaerts
bcc5a89a98 videooverlaycomposition: make API meta oriented
... and as such more consistent with other buffer meta components.
2012-07-03 14:27:35 +02:00
Mark Nauwelaerts
fa72c94a53 videooverlaycomposition: remove some post-port obsolete parts 2012-07-03 14:27:34 +02:00
Mark Nauwelaerts
e94022806f videooverlaycomposition: port to 0.11
... which also entails porting video-blend

Fixes #678384.
2012-06-28 18:16:20 +02:00
Holger Kaelberer
76c0881549 video: overlay-composition: add support for global alpha multiplicator
https://bugzilla.gnome.org/show_bug.cgi?id=668483
2012-03-25 11:27:24 +01:00
Vincent Penquerc'h
5cf87eedc4 video: overlays may now have premultiplied alpha
https://bugzilla.gnome.org/show_bug.cgi?id=666177
2012-01-06 10:19:19 +00:00
Tim-Philipp Müller
91bbfbd819 video: make composition_blend() return a boolean
Not that anyone will ever check that, and it's not clear what
they're supposed to do if it fails, but at least it's there.
2011-12-07 18:45:28 +00:00
Tim-Philipp Müller
6757afc0bc docs: add new API to docs 2011-12-07 18:38:06 +00:00
Tim-Philipp Müller
5037b39883 video: add seqnum getters for overlay compositions and rectangles
API: gst_video_overlay_composition_get_seqnum()
API: gst_video_overlay_rectangle_get_seqnum()
2011-12-07 17:57:08 +00:00
Tim-Philipp Müller
6630236af4 video: add video overlay composition API for subtitles
Basic API to attach overlay rectangles to buffers,
or blend them directly onto raw video buffers.

To be used primarily for things like subtitles or
logo overlays, not meant to replace videomixer.

Allows us to associate subtitle overlays with
non-raw video surface buffers, so that subtitles
are not lost and can instead be rendered later
when those surfaces are displayed or converted,
whilst re-using all the existing overlay plugins
and not having to teach them about our special
video surfaces. Could also have been made part
of the surface buffer abstraction of course, but
a secondary goal was to consolidate the blending
code for raw video into libgstvideo, and this
kind of API allows us to do both in a way that's
minimally invasive to existing elements, and at
the same time is fairly intuitive.

More features and extensions like the ability to
pass the source data or text/markup directly will
be added later.

https://bugzilla.gnome.org/show_bug.cgi?id=665080

API: gst_video_buffer_get_overlay_composition()
API: gst_video_buffer_set_overlay_composition()

API: gst_video_overlay_composition_new()
API: gst_video_overlay_composition_add_rectangle()
API: gst_video_overlay_composition_n_rectangles()
API: gst_video_overlay_composition_get_rectangle()
API: gst_video_overlay_composition_make_writable()
API: gst_video_overlay_composition_copy()
API: gst_video_overlay_composition_ref()
API: gst_video_overlay_composition_unref()

API: gst_video_overlay_composition_blend()

API: gst_video_overlay_rectangle_new_argb()
API: gst_video_overlay_rectangle_get_pixels_argb()
API: gst_video_overlay_rectangle_get_pixels_unscaled_argb()
API: gst_video_overlay_rectangle_get_render_rectangle()
API: gst_video_overlay_rectangle_set_render_rectangle()
API: gst_video_overlay_rectangle_copy()
API: gst_video_overlay_rectangle_ref()
API: gst_video_overlay_rectangle_unref()
2011-12-05 15:37:02 +00:00