Commit graph

155 commits

Author SHA1 Message Date
Sebastian Dröge
6e9deae749 ffmpegcolorspace: Use correct Y offset for YVYU -> RGB conversions
Fixes bug #623530.
2010-07-04 17:40:11 +02:00
Sebastian Dröge
d774b46077 ffmpegcolorspace: Use correct Y offset for the YUY2 -> RGB conversions
Fixes bug #623530.
2010-07-04 17:40:11 +02:00
Sebastian Dröge
263201d9e7 ffmpegcolorspace: Fix conversion of packed 4:2:2 YUV to 8 bit grayscale
The last pixel wasn't written before for odd widths.

Fixes bug #623418.
2010-07-02 20:09:58 +02:00
Sebastian Dröge
9c9f97251a ffmpegcolorspace: Fix conversion of packed 4:2:2 YUV to RGB
The last pixel wasn't written before.

Fixes bug #623384.
2010-07-02 14:58:37 +02:00
Sebastian Dröge
ef4165f08b ffmpegcolorspace: Fix invalid memory accesses with odd widths/heights during subsampling
Fixes bug #623375.
2010-07-02 13:59:55 +02:00
Edward Hervey
3a00a97fd2 ffmpegcolorspace: Use a more concise pad template
Speeds up caps nego 2 fold

https://bugzilla.gnome.org/show_bug.cgi?id=622696
2010-06-25 17:07:12 +02:00
Sebastian Dröge
cff70878b6 ffmpegcolorspace: Add YUY2/YVYU to all RGB formats conversions 2010-06-17 17:21:01 +02:00
Sebastian Dröge
21cb7fd0ff ffmpegcolorspace: Fix Y42B to YUY2/YVYU/UYVY conversion for odd widths 2010-06-17 17:21:01 +02:00
Sebastian Dröge
bd56c3c44f ffmpegcolorspace: Fix YUY2/YVYU/UYVY to Y42B conversion for odd widths 2010-06-17 17:21:00 +02:00
Edward Hervey
801cab604d ffmpegcolorspace: Use Quarks for structure name/field checking 2010-06-14 13:28:54 +02:00
Edward Hervey
3f1f8f66ed ffmpegcolorspace: Speed up _remove_format_info
Instead of copying full caps, use the fact that the provided caps only have
one structure and only copy around structures.
2010-06-14 13:28:54 +02:00
Edward Hervey
19f5fda87d ffmpegcolorspace: Transfer structures instead of copying them
Avoids many expensive structure copies
2010-06-14 13:28:50 +02:00
Sebastian Dröge
cef0bc9657 ffmpegcolorspace: Fix Y16 from/to GRAY8 conversion 2010-06-12 16:51:41 +02:00
Sebastian Dröge
398c1c5fc8 ffmpegcolorspace: Don't crash when doing gray YUV to GRAY conversion 2010-06-12 16:31:49 +02:00
Sebastian Dröge
39b68dc2a8 ffmpegcolorspace: Map "Y8 " and "GREY" to "Y800" and add it to the template caps 2010-06-07 08:31:53 +02:00
Martin Bisson
4c0b39b680 ffmpegcolorspace: Add support for Y800 and Y16
Fixes bug #620441.
2010-06-07 08:18:04 +02:00
Edward Hervey
37e975b8cc ffmpegcolorspace : whooops 2010-05-07 19:49:57 +02:00
Edward Hervey
516c824687 ffmpegcolorspace: more minor cleanups 2010-05-07 19:21:13 +02:00
Edward Hervey
0d451ad9cb ffmpegcolorspace: speedup caps transformation
* don't re-create our possible caps every single time, just use the
  template caps.
* don't intersect the caps against the template, basetransform has already
  done that for us.

62% speedup of _transform_caps() (instruction calls, measured with callgrind)
2010-05-07 17:38:46 +02:00
Sebastian Dröge
bd64568bf4 ffmpegcolorspace: Use GST_BOILERPLATE and use GstVideoFilter as base class
This gives automatic QoS handling.
2010-04-29 18:21:21 +02:00
Sebastian Dröge
b5853bf8ba ffmpegcolorspace: Fix Y41B->Y444 conversion
...which is the intermediate conversion for conversion to all
other formats.

Fixes bug #616545.
2010-04-22 20:58:29 +02:00
Tim-Philipp Müller
58a92964c6 build: Makefile.am fixes
Mostly just add missing $(GST_BASE_CFLAGS), but also fix up order
of flags (see docs/random/moving-plugins).
2010-03-19 01:00:36 +00:00
Benjamin Otte
5e21fa5e0e gst_element_class_set_details => gst_element_class_set_details_simple
Also change my email from the old university one to the current one.
2010-03-16 17:41:50 +01:00
Benjamin Otte
43b1683421 Add -Wmissing-declarations -Wmissing-prototypes to warning flags
Includes all the fixes necessary to make stuff compile again.
2010-03-11 13:50:31 +01:00
Sebastian Dröge
8b1e42f272 ffmpegcolorspace: Add conversions from all ARGB formats to AYUV and back 2010-02-12 11:00:08 +01:00
Thijs Vermeir
48aa1959c8 ffmpegcolorspace: rename performance category
rename the performance category to ffmpegcolorspace_performance
as there is already a global GST_CAT_PERFORMANCE in core
2010-01-21 19:34:33 +01:00
Sebastian Dröge
1fe9f49691 ffmpegcolorspace: Prefer transforming alpha formats to alpha formats and the other way around
Fixes bug #602834 and #350748.
2009-11-25 16:18:37 +01:00
Tim-Philipp Müller
6f4c1ac583 Remove GST_DEBUG_FUNCPTR where they're pointless
There's not much point in using GST_DEBUG_FUNCPTR with GObject
virtual functions such as get_property, set_propery, finalize and
dispose, since they'll never be used by anyone anyway. Saves a
few bytes and possibly a sixteenth of a polar bear.
2009-10-28 00:59:35 +00:00
Stefan Kost
e81303b733 ffmpegcolorspace: chwck formats just once per _chain() 2009-10-08 18:10:08 +03:00
Stefan Kost
f2d1c9b0b7 ffmpegcolorspace: add perf-log-category and log suboptimal operation
Log if we use an intermediate colorspace for conversion.
2009-10-08 18:09:52 +03:00
Benjamin Otte
9d6eb19453 [ffmpegcolorspace] Fix NV12 and NV21 with odd width and height 2009-10-07 09:54:08 +02:00
Jan Schmidt
f58a2b71b5 ffmpegcolorspace: Use the ffmpegcolorspace debug category
Move gstffmpegcodecmap debug to the ffmpegcolorspace category
2009-10-06 20:37:42 +01:00
Benjamin Otte
8939bc6c82 ffmpegcolorspace: Handle YVU9/YUV9 conversion with odd widths
A green border could be visible when converting to Y444 or RGB, because
the last chroma samples weren't copied correctly
2009-09-10 10:56:29 +02:00
David Schleef
0e9bc5125a Remove Ronald Bultje from Authors field
Replaced with "GStreamer maintainers
<gstreamer-devel@lists.sourceforge.net>" or just removed,
depending on the number of other authors.
2009-08-24 11:37:01 -07:00
Edward Hervey
8cd1b5209b gst: Remove dead assignments and resulting unused variables 2009-08-08 15:54:02 +02:00
Siarhei Siamashka
720a927f38 ffmpegcolorspace: support for direct conversion from uyvy422 to rgb formats 2009-08-06 15:09:44 +03:00
Sebastian Dröge
6b63053be1 ffmpegcolorspace: Fix indention of template header 2009-08-06 06:43:34 +02:00
Sebastian Dröge
164b90f9d0 ffmpegcolorspace: Include interlacing information in the AVPicture
This later allows to handle interlaced AVPicture different than
progressive ones which is needed for horizontally subsampled YUV
formats, see bug #589242.
2009-08-06 06:43:32 +02:00
Jan Schmidt
0ed6ec3902 ffmpegcolorspace: Fix NV12 and NV21 transformations
Fix some stride problems, fix the nv12 to nv21 direct transformation,
and implement a direct conversion to yuv444 to save CPU.
2009-06-20 23:48:22 +01:00
Sebastian Dröge
a9c405f5fa ffmpegcolorspace: Add a lot more conversions from/to 16 bit grayscale 2009-05-30 14:18:56 +02:00
Sebastian Dröge
9d02d1d8ab ffmpegcolorspace: Add support for 16 bit grayscale in little/big endian 2009-05-26 15:26:30 +02:00
Sebastian Dröge
77bc4ff763 ffmpegcolorspace: video/x-raw-gray is the same as the YUV Y800 format 2009-03-28 09:43:23 +01:00
Stefan Kost
60847e48d7 ffmpegcolorspace: remove unused code/variables 2009-02-26 18:01:04 +02:00
Sebastian Dröge
77a56d5975 ffmpegcolorspace: Add conversion from/to YVYU colorspace
Fixes bug #572872.
2009-02-24 14:06:38 +01:00
Jonas Danielsson
0842dd1c6f ffmpegcolorspace: Add direct UYVY->GRAY8 conversion
The conversion from UYVY to RGB24 and then to GRAY8
is quite slow. Fixes bug #569655.
2009-02-24 13:42:01 +01:00
Sebastian Dröge
c080bfae6d ffmpegcolorspace/videotestsrc: Use v308 instead of V308 2009-02-13 10:10:25 +01:00
Sebastian Dröge
65c322edf2 ffmpegcolorspace: Add support for packed 4:4:4 YUV (format=V308)
Only conversions from/to are implemented, which
gives (indirect) support for all possible conversions.

Partially fixes bug #571147.
2009-02-12 19:09:40 +01:00
Wim Taymans
d9ae8db094 gst/ffmpegcolorspace/gstffmpegcodecmap.c: Only convert caps to string when debug is enabled.
Original commit message from CVS:
* gst/ffmpegcolorspace/gstffmpegcodecmap.c:
(gst_ffmpeg_pixfmt_to_caps):
Only convert caps to string when debug is enabled.
2008-11-05 12:20:21 +00:00
Stefan Kost
2cd4c7e2b9 Don't install static libs for plugins. Fixes #550851 for base.
Original commit message from CVS:
* ext/alsa/Makefile.am:
* ext/cdparanoia/Makefile.am:
* ext/gio/Makefile.am:
* ext/gnomevfs/Makefile.am:
* ext/libvisual/Makefile.am:
* ext/ogg/Makefile.am:
* ext/pango/Makefile.am:
* ext/theora/Makefile.am:
* ext/vorbis/Makefile.am:
* gst/adder/Makefile.am:
* gst/audioconvert/Makefile.am:
* gst/audiorate/Makefile.am:
* gst/audioresample/Makefile.am:
* gst/audiotestsrc/Makefile.am:
* gst/ffmpegcolorspace/Makefile.am:
* gst/gdp/Makefile.am:
* gst/playback/Makefile.am:
* gst/subparse/Makefile.am:
* gst/tcp/Makefile.am:
* gst/typefind/Makefile.am:
* gst/videorate/Makefile.am:
* gst/videoscale/Makefile.am:
* gst/videotestsrc/Makefile.am:
* gst/volume/Makefile.am:
* sys/v4l/Makefile.am:
* sys/ximage/Makefile.am:
* sys/xvimage/Makefile.am:
Don't install static libs for plugins. Fixes #550851 for base.
2008-10-16 15:07:00 +00:00
Stefan Kost
2b33c755b6 Cleanup Plugin docs. Link to signals and properties. Fix sub-section titles. Drop mentining that all our example pipe...
Original commit message from CVS:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-overrides.txt:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* docs/plugins/gst-plugins-base-plugins.args:
* docs/plugins/gst-plugins-base-plugins.hierarchy:
* docs/plugins/gst-plugins-base-plugins.interfaces:
* docs/plugins/gst-plugins-base-plugins.prerequisites:
* docs/plugins/gst-plugins-base-plugins.signals:
* docs/plugins/inspect/plugin-adder.xml:
* docs/plugins/inspect/plugin-alsa.xml:
* docs/plugins/inspect/plugin-audioconvert.xml:
* docs/plugins/inspect/plugin-audiorate.xml:
* docs/plugins/inspect/plugin-audioresample.xml:
* docs/plugins/inspect/plugin-audiotestsrc.xml:
* docs/plugins/inspect/plugin-cdparanoia.xml:
* docs/plugins/inspect/plugin-decodebin.xml:
* docs/plugins/inspect/plugin-ffmpegcolorspace.xml:
* docs/plugins/inspect/plugin-gdp.xml:
* docs/plugins/inspect/plugin-gnomevfs.xml:
* docs/plugins/inspect/plugin-libvisual.xml:
* docs/plugins/inspect/plugin-ogg.xml:
* docs/plugins/inspect/plugin-pango.xml:
* docs/plugins/inspect/plugin-playback.xml:
* docs/plugins/inspect/plugin-queue2.xml:
* docs/plugins/inspect/plugin-subparse.xml:
* docs/plugins/inspect/plugin-tcp.xml:
* docs/plugins/inspect/plugin-theora.xml:
* docs/plugins/inspect/plugin-typefindfunctions.xml:
* docs/plugins/inspect/plugin-uridecodebin.xml:
* docs/plugins/inspect/plugin-video4linux.xml:
* docs/plugins/inspect/plugin-videorate.xml:
* docs/plugins/inspect/plugin-videoscale.xml:
* docs/plugins/inspect/plugin-videotestsrc.xml:
* docs/plugins/inspect/plugin-volume.xml:
* docs/plugins/inspect/plugin-vorbis.xml:
* docs/plugins/inspect/plugin-ximagesink.xml:
* docs/plugins/inspect/plugin-xvimagesink.xml:
* ext/alsa/gstalsamixer.c:
* ext/alsa/gstalsasink.c:
* ext/alsa/gstalsasrc.c:
* ext/gio/gstgiosink.c:
* ext/gio/gstgiosrc.c:
* ext/gio/gstgiostreamsink.c:
* ext/gio/gstgiostreamsrc.c:
* ext/gnomevfs/gstgnomevfssink.c:
* ext/gnomevfs/gstgnomevfssrc.c:
* ext/ogg/gstoggdemux.c:
* ext/ogg/gstoggmux.c:
* ext/pango/gstclockoverlay.c:
* ext/pango/gsttextoverlay.c:
* ext/pango/gsttextrender.c:
* ext/pango/gsttimeoverlay.c:
* ext/theora/theoradec.c:
* ext/theora/theoraenc.c:
* ext/theora/theoraparse.c:
* ext/vorbis/vorbisdec.c:
* ext/vorbis/vorbisenc.c:
* ext/vorbis/vorbisparse.c:
* ext/vorbis/vorbistag.c:
* gst/adder/gstadder.c:
* gst/audioconvert/gstaudioconvert.c:
* gst/audioresample/gstaudioresample.c:
* gst/audiotestsrc/gstaudiotestsrc.c:
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
* gst/gdp/gstgdpdepay.c:
* gst/gdp/gstgdppay.c:
* gst/playback/gstdecodebin2.c:
* gst/playback/gstplaybin.c:
* gst/playback/gstplaybin2.c:
* gst/playback/gstqueue2.c:
* gst/playback/gsturidecodebin.c:
* gst/tcp/gstmultifdsink.c:
* gst/tcp/gsttcpserversink.c:
* gst/videorate/gstvideorate.c:
* gst/videoscale/gstvideoscale.c:
* gst/videotestsrc/gstvideotestsrc.c:
* gst/volume/gstvolume.c:
* sys/ximage/ximagesink.c:
* sys/xvimage/xvimagesink.c:
Cleanup Plugin docs. Link to signals and properties. Fix sub-section
titles. Drop mentining that all our example pipelines are "simple"
pipelines.
2008-07-10 21:06:06 +00:00