Commit graph

86 commits

Author SHA1 Message Date
Sebastian Dröge ab3b4bc82f alpha: Add property to allow passthrough mode
This passthrough mode is used if the alpha method is "set"
and the alpha value is 1.0.

Fixes bug #617512.
2010-06-01 11:21:29 +02:00
Sebastian Dröge f71157fa06 alpha: Fix planar YUV->RGB processing 2010-04-29 19:28:22 +02:00
Sebastian Dröge 1897ab2928 alpha: Correctly clamp after YUV->RGB conversion 2010-04-29 19:28:22 +02:00
Sebastian Dröge 545b21c9bd alpha: Add support for YUY2, YVYU and UYVY 2010-04-29 19:28:22 +02:00
Sebastian Dröge 0294e1e48a alpha: Refactor processing and add support for other planar YUV formats
This reduces the generated code size by a factor of 2.5.
2010-04-29 19:28:22 +02:00
Sebastian Dröge ba72a058bb alpha: Add support for YV12 input 2010-04-29 19:28:22 +02:00
Stefan Kost 04d9490ca9 docs: fix doc blob syntax 2010-04-08 16:51:27 +03:00
Sebastian Dröge afed9b959c alpha: Add documentation 2010-04-08 13:14:23 +02:00
Sebastian Dröge 4d906b4a0a alphacolor: Improve docs a bit 2010-04-08 12:56:30 +02:00
André Dieb Martins 5a395846c6 alphacolor: Removing unused variable
Fixes bug #614843.
2010-04-05 10:31:45 +02:00
Sebastian Dröge 2e043908de alpha: Simplify caps transformation 2010-03-26 13:28:53 +01:00
Sebastian Dröge b78937aa6f alpha: Add support for RGB and xRGB input 2010-03-20 21:30:58 +01:00
Sebastian Dröge 5bbc7dd114 alpha: Add support for ARGB input 2010-03-20 21:13:23 +01:00
Sebastian Dröge 985ec0260c alpha: Add support for generating ARGB output 2010-03-20 20:46:19 +01:00
Sebastian Dröge 1fdbfb35ff alpha: Move chroma keying parameters into stack variables to prevent multiple pointer dereferences per pixel 2010-03-20 10:26:13 +01:00
Sebastian Dröge 9d9ba5b00e alpha: Move color conversion matrixes into stack variables to speed up processing 2010-03-20 10:20:53 +01:00
Sebastian Dröge eb7a146b51 alpha: Use correct matrixes to convert chroma keying color to YUV 2010-03-20 10:18:04 +01:00
Sebastian Dröge b64619dc4e alpha: Add support for different color matrixes 2010-03-19 19:30:32 +01:00
Sebastian Dröge 00b3eb1dfc alpha: Rename and move functions as further preparation for supporting more color formats 2010-03-19 19:30:32 +01:00
Sebastian Dröge 46025bbd8f alpha: Remove some unneeded calculations and instance struct fields
And document the instance struct fields a bit better
2010-03-19 19:30:32 +01:00
Sebastian Dröge 6b0c535e8d alpha: Some preparations for supporting more color formats 2010-03-19 19:30:32 +01:00
Sebastian Dröge e3584bf52c alphacolor: Implement color-matrix support and use integer arithmetic only
Alphacolor now uses the correct matrixes for SDTV and HDTV and can
convert between them.
2010-03-19 16:45:07 +01:00
Sebastian Dröge dad4e96672 alpha: Remove remaining floating point arithmetic when processing a pixel 2010-03-18 19:01:47 +01:00
Sebastian Dröge f7ba12513e alpha: Refactor chroma keying into a single function
This reduces code duplication once we add support for more color formats.
2010-03-18 19:01:47 +01:00
Sebastian Dröge f961f884b6 alphacolor: Fix RGBA<->AYUV conversion 2010-03-16 21:23:11 +01:00
Sebastian Dröge 117e7401c5 alpha: Remove redundant instance field 2010-03-16 21:16:26 +01:00
Sebastian Dröge 9e4ebba45e alpha: Protect property values from changes during frame processing 2010-03-16 21:10:08 +01:00
Sebastian Dröge 3197490c2f alphacolor: Add support for the remaining ARGB formats 2010-03-15 20:37:51 +01:00
Sebastian Dröge d6379362e5 alphacolor: Simplify ARGB<->AYUV conversions by code generation macros 2010-03-15 19:16:18 +01:00
Sebastian Dröge 322a8f5e6d alpha: Minor cleanups and move declarations into a separate header file 2010-03-15 19:07:28 +01:00
Sebastian Dröge 6f80d41c04 alpha: Use GstVideoFilter as base class for automatic QoS support 2010-03-15 18:58:51 +01:00
Sebastian Dröge c01cf035c1 alphacolor: Add support for inplace conversions from AYUV to ARGB 2010-03-15 18:52:39 +01:00
Sebastian Dröge 8cbb9608f9 alphacolor: Use libgstvideo for caps parsing 2010-03-15 18:22:21 +01:00
Sebastian Dröge 751b293df8 alphacolor: Use GstVideoFilter as base class for automatic QoS support 2010-03-15 18:09:55 +01:00
Sebastian Dröge e46f0261c8 alphacolor: Some minor cleanup 2010-03-15 18:07:29 +01:00
Wim Taymans 0620797a18 alpha: scale and clamp alpha to its full extend
Convert the alpha value to 0->255 when setting and to 0->256 when using as
a scaling factor. This makes sure we can reach the full opacity value of 0xff in
all cases.
2009-12-24 22:50:31 +01:00
Edward Hervey 0cb5b42d54 Remove trivial unused variables detected by CLang static analyzer. 2009-04-18 18:51:28 +02:00
Edward Hervey 4a9e80720a Remove unused variables in _class_init
Detected by LLVM's CLang static analyzer
2009-04-18 18:51:27 +02:00
Stefan Kost a99d3f8769 Update and add documentation for plugins with no deps (gst).
Link to properties. Correct titles for examples. Document a few trivial cases. Keep lists in section file and docs/plugins/Makefile.am alphabetically ordered.
2009-01-28 12:32:59 +02:00
Stefan Kost 084812bffd Don't install static libs for plugins. Fixes #550851 for -good.
Original commit message from CVS:
* ext/aalib/Makefile.am:
* ext/annodex/Makefile.am:
* ext/cairo/Makefile.am:
* ext/dv/Makefile.am:
* ext/esd/Makefile.am:
* ext/flac/Makefile.am:
* ext/gconf/Makefile.am:
* ext/gdk_pixbuf/Makefile.am:
* ext/hal/Makefile.am:
* ext/jpeg/Makefile.am:
* ext/ladspa/Makefile.am:
* ext/libcaca/Makefile.am:
* ext/libmng/Makefile.am:
* ext/libpng/Makefile.am:
* ext/mikmod/Makefile.am:
* ext/pulse/Makefile.am:
* ext/raw1394/Makefile.am:
* ext/shout2/Makefile.am:
* ext/soup/Makefile.am:
* ext/speex/Makefile.am:
* ext/taglib/Makefile.am:
* ext/wavpack/Makefile.am:
* gst/alpha/Makefile.am:
* gst/apetag/Makefile.am:
* gst/audiofx/Makefile.am:
* gst/auparse/Makefile.am:
* gst/autodetect/Makefile.am:
* gst/avi/Makefile.am:
* gst/cutter/Makefile.am:
* gst/debug/Makefile.am:
* gst/effectv/Makefile.am:
* gst/equalizer/Makefile.am:
* gst/flx/Makefile.am:
* gst/goom/Makefile.am:
* gst/goom2k1/Makefile.am:
* gst/icydemux/Makefile.am:
* gst/id3demux/Makefile.am:
* gst/interleave/Makefile.am:
* gst/law/Makefile.am:
* gst/level/Makefile.am:
* gst/matroska/Makefile.am:
* gst/median/Makefile.am:
* gst/monoscope/Makefile.am:
* gst/multifile/Makefile.am:
* gst/multipart/Makefile.am:
* gst/oldcore/Makefile.am:
* gst/qtdemux/Makefile.am:
* gst/replaygain/Makefile.am:
* gst/rtp/Makefile.am:
* gst/rtsp/Makefile.am:
* gst/smpte/Makefile.am:
* gst/spectrum/Makefile.am:
* gst/udp/Makefile.am:
* gst/videobox/Makefile.am:
* gst/videocrop/Makefile.am:
* gst/videofilter/Makefile.am:
* gst/videomixer/Makefile.am:
* gst/wavenc/Makefile.am:
* gst/wavparse/Makefile.am:
* sys/directdraw/Makefile.am:
* sys/directsound/Makefile.am:
* sys/oss/Makefile.am:
* sys/osxaudio/Makefile.am:
* sys/osxvideo/Makefile.am:
* sys/sunaudio/Makefile.am:
* sys/v4l2/Makefile.am:
* sys/waveform/Makefile.am:
* sys/ximage/Makefile.am:
Don't install static libs for plugins. Fixes #550851 for -good.
2008-11-04 12:28:34 +00:00
Tim-Philipp Müller 5c4b6ce079 Make stuff compile with GST_DISABLE_GST_DEBUG.
Original commit message from CVS:
* ext/raw1394/gsthdv1394src.c: (gst_hdv1394src_create):
* gst/alpha/gstalpha.c: (gst_alpha_get_unit_size):
* gst/audiofx/audiocheblimit.c: (generate_coefficients):
* gst/avi/gstavidemux.c: (gst_avi_demux_src_convert):
* gst/matroska/ebml-read.c: (gst_ebml_read_element_id),
(gst_ebml_read_element_length):
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_check_subtitle_buffer):
Make stuff compile with GST_DISABLE_GST_DEBUG.
2008-08-30 14:15:03 +00:00
Sebastian Keller 4ffab084be gst/alpha/gstalpha.c: Try to skip pixels or areas that are too dark or too bright for us to do meaningfull color dete...
Original commit message from CVS:
Based on patch by: Sebastian Keller <sebastian-keller at gmx dot de>
* gst/alpha/gstalpha.c: (gst_alpha_class_init), (gst_alpha_init),
(gst_alpha_set_property), (gst_alpha_get_property),
(gst_alpha_chroma_key_ayuv), (gst_alpha_chromakey_row_i420):
Try to skip pixels or areas that are too dark or too bright for us to do
meaningfull color detection.
Added properties to control the sensitivity to light and darkness.
Added some small cleanups. Fixes #512345.
2008-05-29 11:30:16 +00:00
Sebastian Dröge 2d91efa33d gst/alpha/Makefile.am: Link alpha plugin with libgstbase. Fixes bug #517386.
Original commit message from CVS:
* gst/alpha/Makefile.am:
Link alpha plugin with libgstbase. Fixes bug #517386.
2008-02-19 10:47:20 +00:00
Jan Schmidt e315541000 gst/alpha/: Re-write the 'alpha' plugin to be BaseTransform based, simplifying some stuff, and making buffer-alloc an...
Original commit message from CVS:
* gst/alpha/Makefile.am:
* gst/alpha/gstalpha.c:
Re-write the 'alpha' plugin to be BaseTransform based, simplifying
some stuff, and making buffer-alloc and resizing work automatically.
No longer crashes on odd frame widths and heights, although there
seems to be a disagreement with ffmpegcolorspace about what size
an AYUV frame with odd height should be.
2008-01-31 00:00:23 +00:00
Edward Hervey 7f27c4a065 gst/alpha/: Make the various properties of 'alpha' controllable. This allows doing niceties like fade-in/fade-out.
Original commit message from CVS:
* gst/alpha/Makefile.am:
* gst/alpha/gstalpha.c: (gst_alpha_class_init), (gst_alpha_init),
(gst_alpha_sink_event), (gst_alpha_chain),
(gst_alpha_change_state), (plugin_init):
Make the various properties of 'alpha' controllable. This allows doing
niceties like fade-in/fade-out.
2008-01-09 12:01:14 +00:00
Arek Korbik d04c0bb4c4 gst/alpha/gstalphacolor.c: Detect RGBA/BGRA correctly on little endian systems.
Original commit message from CVS:
Patch by: Arek Korbik <arkadini@gmail.com>

* gst/alpha/gstalphacolor.c: (gst_alpha_color_set_caps):
Detect RGBA/BGRA correctly on little endian systems.
2007-11-14 10:22:41 +00:00
Tim-Philipp Müller e53a24511b gst/alpha/gstalphacolor.c: Double-check that RGB input caps are really RGBA caps (apparently the core doesn't always ...
Original commit message from CVS:
* gst/alpha/gstalphacolor.c: (gst_alpha_color_base_init),
(gst_alpha_color_transform_caps), (gst_alpha_color_set_caps):
Double-check that RGB input caps are really RGBA caps (apparently
the core doesn't always catch it if those caps aren't a subset of
our template caps, also see #421543). Fixes #429319 in a way.
Also, don't leak the pad template in the transform_caps function.
* tests/check/Makefile.am:
* tests/check/elements/.cvsignore:
* tests/check/elements/alphacolor.c: (setup_alphacolor),
(cleanup_alphacolor), (create_caps_rgb24), (create_caps_rgba32),
(create_buffer_rgb24_3x4), (create_buffer_rgba32_3x4),
(GST_START_TEST), (alphacolor_suite):
Add some basic unit tests for alphacolor.
2007-04-25 15:31:53 +00:00
Tim-Philipp Müller 7002f0336b Add minimal docs blurb to alphacolor; split out headers into separate header file for gtk-doc.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-good-plugins-docs.sgml:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* docs/plugins/inspect/plugin-alphacolor.xml:
* gst/alpha/Makefile.am:
* gst/alpha/gstalphacolor.c:
* gst/alpha/gstalphacolor.h:
Add minimal docs blurb to alphacolor; split out headers into
separate header file for gtk-doc.
2007-04-24 09:12:42 +00:00
Loïc Minier 682312a296 Fix build with LDFLAGS='-Wl,-z,defs' (#410997)
Original commit message from CVS:
Patch by: Loïc Minier <lool+gnome at via ecp fr>
* configure.ac:
* ext/annodex/Makefile.am:
* ext/jpeg/Makefile.am:
* ext/speex/Makefile.am:
* gst/alpha/Makefile.am:
* gst/cutter/Makefile.am:
* gst/debug/Makefile.am:
* gst/effectv/Makefile.am:
* gst/goom/Makefile.am:
* gst/level/Makefile.am:
* gst/smpte/Makefile.am:
* gst/videofilter/Makefile.am:
Fix build with LDFLAGS='-Wl,-z,defs' (#410997)
2007-02-24 22:57:49 +00:00
Peter Kjellerstedt b234d9b0f9 gst/: Include stdlib.h in some more places, makes things compile with uClibc and -Werror (#357592).
Original commit message from CVS:
Patch by: Peter Kjellerstedt  <pkj at axis com>
* gst/alpha/gstalpha.c:
* gst/rtp/gstrtpamrdepay.c:
* gst/rtsp/gstrtspsrc.c:
* gst/udp/gstudpsrc.c:
* gst/videomixer/videomixer.c:
Include stdlib.h in some more places, makes things compile
with uClibc and -Werror (#357592).
2006-09-25 11:47:42 +00:00