Commit graph

13 commits

Author SHA1 Message Date
Víctor Manuel Jáquez Leal
db382cbc3d videocrop: handle non raw caps features
Currently, videocrop, only negotiates raw caps (system memory) because
it's the type of memory it can modify. Nonetheless, it's also possible
for the element to handle non-raw caps when only adding the crop meta
is possible, in other words, when downstream buffer pools expose the
crop API.

This patch enable non-raw caps negotiation. If downstream doesn't
expose crop API and negotiated caps are featured, the negotiation
fails.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/915>
2021-03-26 10:19:03 +00:00
Markus Ebner
b562235283 videocrop: Add support for Y444
- Refactored the planar transform method to support all video formats
  that are stored planar, independent of the used subsampling
- Added support for Y444
2020-03-10 08:24:56 +00:00
Nicolas Dufresne
36f1a9bce1 videocrop: Make sure new crop is applied
Since "basetransform: Fix caps equality check" commit a7f357,
set_info() will not be called anymore if crop didn't change
the caps. This is fixed by setting "need_update" boolean when
cropping properties has been changed, and then applying these
if they where not applied before rendering the next frame. This
patch also fixed the locking, dropping un-needed custom lock,
and no holding needless lock while doing the operation as we
already hold the streaming lock.

https://bugzilla.gnome.org/show_bug.cgi?id=740787
2014-12-15 18:27:09 -05:00
Nicolas Dufresne
e111068f7b videocrop: Add NV12/NV21 support
https://bugzilla.gnome.org/show_bug.cgi?id=687964
2012-11-10 01:52:44 +01:00
Nicolas Dufresne
1ad8ebac44 videocrop: Add support for automatic cropping
This change enable automatic cropping using -1 set to left, top, right or
bottom property. In the case both side are set to automatic cropping, the
croping will be done equally on both side (in the odd case, right and
bottom cropping will be 1 pixel more).

https://bugzilla.gnome.org/show_bug.cgi?id=687761
2012-11-07 11:20:24 +01:00
Tim-Philipp Müller
230cf41cc9 Fix FSF address
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:07:18 +00:00
Wim Taymans
5ec642d0c3 videocrop: port to videofilter 2012-10-17 10:20:12 +02:00
Wim Taymans
7749cd3f7b update for basetransform lock removal 2012-02-23 11:20:02 +01:00
Thiago Santos
04080866aa videocrop: Port to 0.11 2011-10-13 15:37:47 -03:00
Benjamin Otte
3342b1679e Add -Wmissing-declarations -Wmissing-prototypes warning flags
And fix all the warnings.
2010-03-17 18:23:28 +01:00
Wim Taymans
6ab4698b95 gst/videocrop/gstvideocrop.*: Fix renegotiation when changing properties using the new basetransform features. Fixes ...
Original commit message from CVS:
* gst/videocrop/gstvideocrop.c: (gst_video_crop_init),
(gst_video_crop_transform), (gst_video_crop_transform_caps),
(gst_video_crop_set_caps), (gst_video_crop_set_property):
* gst/videocrop/gstvideocrop.h:
Fix renegotiation when changing properties using the new basetransform
features. Fixes #561502.
* tests/icles/Makefile.am:
* tests/icles/videocrop2-test.c: (make_pipeline), (main):
Add crazy interactive test unit for dynamically changing properties.
2008-11-25 16:06:22 +00:00
Tim-Philipp Müller
a4221727de gst/videocrop/gstvideocrop.*: Handle packed YUV formats (UYVY, YUY2, YUYV) separately; also, fix passthrough mode; la...
Original commit message from CVS:
* gst/videocrop/gstvideocrop.c: (gst_video_crop_class_init),
(gst_video_crop_init),
(gst_video_crop_get_image_details_from_caps),
(gst_video_crop_transform_packed_complex),
(gst_video_crop_transform_packed_simple),
(gst_video_crop_transform), (gst_video_crop_transform_caps),
(gst_video_crop_set_caps),
(gst_videocrop_clear_negotiated_caps_locked),
(gst_video_crop_set_property):
* gst/videocrop/gstvideocrop.h:
Handle packed YUV formats (UYVY, YUY2, YUYV) separately; also, fix
passthrough mode; lastly, clear negotiated basetransform caps when
the cropping changes in order to force renegotiation.
2006-10-04 22:37:07 +00:00
Tim-Philipp Müller
02560091bf docs/plugins/: Add videocrop to docs.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-bad-plugins-docs.sgml:
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
* docs/plugins/gst-plugins-bad-plugins.hierarchy:
Add videocrop to docs.
* gst/videocrop/Makefile.am:
* gst/videocrop/gstvideocrop.c:
* gst/videocrop/gstvideocrop.h:
Move boilerplate stuff and structures into a header file.
* tests/check/Makefile.am:
* tests/check/elements/.cvsignore:
* tests/check/elements/videocrop.c: (video_crop_get_test_caps),
(test_unit_sizes), (videocrop_test_cropping_init_context),
(videocrop_test_cropping_deinit_context),
(videocrop_test_cropping), (test_cropping), (videocrop_suite):
Add unit tests for videocrop.
2006-09-02 18:49:01 +00:00