gstreamer/subprojects/gst-plugins-bad/ext
Nirbheek Chauhan e7598ed521 rsvg: Disable deprecations instead of porting to new librsvg API
`rsvg_handle_get_dimensions()` and `rsvg_handle_render_cairo()` are
deprecated, and the replacement librsvg functions as specified in the
migration guide are `rsvg_handle_get_intrinsic_size_in_pixels()` and
`rsvg_handle_render_document()`.

However, those are not drop-in replacements, and actually have
breaking semantics for our use-case:

1. `intrinsic_size_in_pixels()` requires SVGs to have width+height or
   the viewBox attribute, but `get_dimensions()` does not. It will
   calculate the geometry based on element extents recursively.
2. `render_cairo()` simply renders the SVG at its intrinsic size on
   the specified surface starting at the top-left, maintaining
   whatever transformations have been applied to the cairo surface,
   including distorted aspect ratio.
   However, `render_document()` does not do that, it is specifically
   for rendering at the specified aspect ratio inside the specified
   viewport, and if you specify a viewPort that does not match the
   aspect ratio of the SVG, librsvg will center it.

Matching the old behaviour with the new APIs is a lot of work for no
benefit. We'd be duplicating code that is already there in librsvg in
one case and undoing work that librsvg is doing in the other case.

The aspect ratio handling in this element is also kinda atrocious.
There is no option to scale the SVG while maintaining the aspect
ratio. Overall, element needs a rewrite.

Let's just disable deprecations. The API is not going anywhere.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6726>
2024-04-25 12:43:07 +00:00
..
aes aesenc: Fix IV length addition to output buffer length 2023-08-21 18:10:12 +00:00
analyticsoverlay analyticsoverlay: fix gst-launch exemple 2024-02-07 22:39:57 +00:00
aom av1enc: Use correct enum type with libaom >= 3 2023-03-25 07:12:53 +00:00
assrender video-filters: Fix passthrough with ANY caps feature 2023-10-03 21:13:00 +00:00
avtp gst-plugins-bad: re-indent with GNU indent 2.2.12 2023-03-17 03:18:54 +00:00
bs2b bs2b: Add missing space in plugin description 2023-10-13 09:04:14 +00:00
bz2 meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
chromaprint meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
closedcaption ccconverter: Fix caps leak and remove unnecessary code 2024-04-09 18:26:18 +00:00
codec2json h2652json: Fix mix-up of different enum types 2024-01-03 09:03:30 +00:00
colormanagement colormanagement: Fix typo in pipeline example 2023-10-13 10:04:39 +03:00
curl curlbasesink: error codes in transfer error details 2023-03-29 10:03:36 +00:00
dash dash: sink references of all MDP objects 2024-04-03 08:48:25 +00:00
dc1394 meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
directfb dfbvideosink: Fix compile error 2023-01-08 03:49:03 +00:00
dtls docs: Use Discourse and Matrix as prefered communication channels 2024-02-27 09:35:47 +01:00
dts meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
faac meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
faad meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
fdkaac fdkaac: Mark the dependency include_type as 'system' 2024-04-12 13:18:40 +03:00
flite meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
fluidsynth fluidsynth: correctly version guard methods 2022-09-05 17:48:27 +00:00
gme meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
gs gssink: add 'content-type' property 2022-11-10 09:53:29 +00:00
gsm meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
gtk gtk: sink reference of internal wayland pool 2024-04-03 08:48:25 +00:00
hls hlssink2: Always use forward slash separator 2023-08-08 08:30:44 +00:00
iqa meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
isac meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
ladspa ladspa: Make RDF parsing truely optional 2023-12-11 14:49:42 +00:00
lc3 lc3: fix pkg-config file lookup 2023-08-08 22:12:29 +00:00
ldac meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
libde265 libde265dec: Only decode the main profile 2023-11-03 12:41:59 +00:00
lv2 gst-plugins-bad: re-indent with GNU indent 2.2.12 2023-03-17 03:18:54 +00:00
mdns mdns: Fix a crash on context error 2023-08-18 10:40:50 +00:00
modplug meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
mpeg2enc doc: Fix newline char between authors 2023-05-20 05:48:23 +00:00
mplex doc: Fix newline char between authors 2023-05-20 05:48:23 +00:00
musepack musepack: Prefer using FFmpeg musepack decoder/demuxer 2024-02-09 12:15:14 +00:00
neon neon: Allow building against neon 0.33.x 2024-02-02 00:22:39 +01:00
onnx onnx: fix, update tensor producer and consumers 2024-02-05 22:27:59 -05:00
openal plugins: Fix various trivial clang compiler warnings 2023-03-18 16:16:55 +02:00
openaptx meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
opencv opencv: move the dependency check to a single place 2023-10-26 00:01:23 +00:00
openexr meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
openh264 openh264: Drop runtime version checks 2023-12-11 13:53:09 +00:00
openjpeg meson: Fix several warnings in the build 2024-02-06 23:57:17 +00:00
openmpt meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
openni2 meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
opus meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
qroverlay video-filters: Fix passthrough with ANY caps feature 2023-10-03 21:13:00 +00:00
qt6d3d11 qt6d3d11: Add plugin docs 2023-08-30 15:45:12 +00:00
resindvd gst-plugins-bad: re-indent with GNU indent 2.2.12 2023-03-17 03:18:54 +00:00
rsvg rsvg: Disable deprecations instead of porting to new librsvg API 2024-04-25 12:43:07 +00:00
rtmp meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
sbc meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
sctp meson: Add a top-level option to enable webrtc 2023-10-19 06:38:45 +00:00
smoothstreaming meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
sndfile meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
soundtouch soundtouch: Fix build failure with Apple Clang caused by missing cpp_std 2024-03-18 14:28:38 +00:00
spandsp meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
srt meson: srt: make sure srt_dep is defined 2024-02-09 17:45:29 +00:00
srtp srtpenc: Fix potential leak 2024-01-31 18:46:59 +00:00
svtav1 svtav1enc: Don't segfault on not-negotiated 2023-10-20 12:54:44 +05:30
svthevcenc svthevcenc: Fix potential use of unitialized variable 2023-10-21 20:08:59 +00:00
teletextdec taglist, plugins: fix compiler warnings with GLib >= 2.76 2023-03-27 07:37:11 +00:00
ttml subparsers: Give proper category to subtitle "decoders" 2024-02-22 14:39:54 +00:00
voaacenc meson: Don't confuse voaacenc plugin with bz2 one in meson variable names 2024-04-01 00:52:16 +03:00
voamrwbenc voamrwbenc: Fix truncation of audio data at end-of-stream when audio data 2022-09-16 00:14:58 +00:00
vulkan vkh265dec: add missing VPS parameter 2024-04-03 16:46:14 +00:00
wayland waylandsink: config buffer pool with query size when propose_allocation 2024-04-18 18:34:30 +00:00
webp webpenc: add animation properties 2024-02-02 17:23:08 +00:00
webrtc webrtc: add all SSRC attributes getting CAPS for a PT 2024-03-08 10:28:15 +00:00
webrtcdsp webrtcdsp: Deal with echo probe info not being available 2023-06-14 20:08:52 +00:00
wildmidi meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
wpe wpe: avoid crash with G_DEBUG=fatal_criticals and static build 2024-03-30 07:55:40 +00:00
x265 gst-plugins-bad: re-indent with GNU indent 2.2.12 2023-03-17 03:18:54 +00:00
zbar meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
zxing zxing: add support for zxing-c++ 2.0 2023-03-10 09:33:35 +00:00
meson.build analyticsoverlay: add object-detection overlay 2024-01-31 16:15:06 +00:00