gstreamer/subprojects/gst-plugins-base/gst/videoconvertscale
Thibault Saunier aa78649635 videoconvertscale: Handle large pixel aspect ratios
Some pixel aspect ratios found in dash streams have very large numerators and
denominators (while being close to 1:1). These values can cause integer overflow
during multiplication, leading to negotiation failures.

Add fallback path using gdouble when integer multiplication would overflow,
trading some precision for reliability instead of failing outright.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8262>
2025-01-17 15:13:14 +00:00
..
gstvideoconvert.c videoconvertscale: Remove the restriction on ANY memory 2023-06-27 08:17:33 +00:00
gstvideoconvert.h Introduce the videocolorscale element 2022-04-20 17:03:21 -04:00
gstvideoconvertscale.c videoconvertscale: Handle large pixel aspect ratios 2025-01-17 15:13:14 +00:00
gstvideoconvertscale.h videoconvertscale: Remove the restriction on ANY memory 2023-06-27 08:17:33 +00:00
gstvideoconvertscaleplugin.c Introduce the videocolorscale element 2022-04-20 17:03:21 -04:00
gstvideoscale.c videoscale: correct classification error 2024-07-25 05:42:25 +00:00
gstvideoscale.h Introduce the videocolorscale element 2022-04-20 17:03:21 -04:00
meson.build docs: port plugins to explicit sources 2025-01-13 19:17:13 +01:00
README Introduce the videocolorscale element 2022-04-20 17:03:21 -04:00

- test different strides using
gst-launch -v videotestsrc ! video/x-raw,width=320,height=240,format=UYVY ! videoconvertscale ! video/x-raw,width=328,height=240 ! xvimagesink
gst-launch -v videotestsrc ! video/x-raw,width=320,height=240,format=UYVY ! videoconvertscale ! video/x-raw,width=324,height=240 ! xvimagesink
gst-launch -v videotestsrc ! video/x-raw,width=320,height=240,format=UYVY ! videoconvertscale ! video/x-raw,width=322,height=240 ! xvimagesink
gst-launch -v videotestsrc ! video/x-raw,width=320,height=240,format=UYVY ! videoconvertscale ! video/x-raw,width=321,height=240 ! xvimagesink