SDL/src
Vicki Pfau 27439467ce camera: Don't try to fake entire range for FRMIVAL_TYPE_CONTINUOUS
V4L2 is able to advertise that a video device is able to display any frame
interval within a continuous range. SDL does not allow advertising this and
only exposes discrete frame intervals. To work around this, SDL attempted to
generate a subset of the range with a fixed interval. Unfortunately, the way
this was accomplish is inherently broken and led to attempting to allocate a
very large number of formats per resolution and colorspace. With the Magewell
Pro Capture HDMI, which can expose FRMSIZE_TYPE_CONTINUOUS as well, this can
expose a truly astronomical number of formats, exceeding 1 PB of RAM. This will
lead to an OOM kill for any process that tries to initialize the camera
subsystem.

This patch just tests to see if some common frame rates are within the
contiuous range and expose those. SDL still does not handle
FRMSIZE_TYPE_CONTINUOUS in a graceful way so it still uses over a gigabyte of
RAM for each possible combination of sizes, but with this patch it no longer
leads to an OOM kill. The API will need amending for proper support for both
continuous frame sizes and frame intervals.

(cherry picked from commit ab6dd970ac)
2026-02-24 06:55:10 -08:00
..
atomic Updated copyright for 2026 2026-01-01 09:48:19 -08:00
audio Use 20 ms as the default audio buffer size on Android 2026-02-13 14:35:25 -08:00
camera camera: Don't try to fake entire range for FRMIVAL_TYPE_CONTINUOUS 2026-02-24 06:55:10 -08:00
core Updated to version 3.4.3 for development 2026-02-20 15:59:20 -08:00
cpuinfo Updated copyright for 2026 2026-01-01 09:48:19 -08:00
dialog dialog_utils: fix NameTransform() function pointer type (#15002) 2026-02-08 09:32:18 -08:00
dynapi SDL_CreateGPURenderState() doesn't modify the createinfo parameter 2026-01-17 20:49:04 -08:00
events Guarantee that pens are in proximity before motion and button events 2026-02-05 14:09:07 -08:00
filesystem filesystem: Fix Android asset enumeration 2026-02-20 15:09:53 -08:00
gpu vulkan: Only enable KHR_portability_enumeration when available 2026-02-20 11:35:37 -05:00
haptic More prefer SDL_zero*() 2026-01-23 16:02:27 -08:00
hidapi Steam Controller report 0x45 is used for BLE mode 2026-02-12 15:46:19 -08:00
io asyncio: don't report failures on closing read-only files with Windows IoRing. 2026-01-31 16:06:54 -08:00
joystick Support SL/SR on Switch 2 controllers, but only in mini-controller mode 2026-02-24 06:53:41 -08:00
libm Updated copyright for 2026 2026-01-01 09:48:19 -08:00
loadso Updated copyright for 2026 2026-01-01 09:48:19 -08:00
locale emscripten: Move some EM_ASM blocks to MAIN_THREAD_EM_ASM. 2026-02-20 10:28:12 -05:00
main emscripten: drag-and-drop fixes. 2026-02-09 21:43:12 -05:00
misc Add and use libusb_set_auto_detach_kernel_driver for the Switch 2 driver 2026-02-05 14:59:10 -08:00
power More prefer SDL_zero*() 2026-01-23 16:02:27 -08:00
process Updated copyright for 2026 2026-01-01 09:48:19 -08:00
render render: opengl and opengles2 renderers try to disable GL_FRAMEBUFFER_SRGB. 2026-02-16 13:09:18 -05:00
sensor Updated copyright for 2026 2026-01-01 09:48:19 -08:00
stdlib Updated copyright for 2026 2026-01-01 09:48:19 -08:00
storage Updated copyright for 2026 2026-01-01 09:48:19 -08:00
test Updated copyright for 2026 2026-01-01 09:48:19 -08:00
thread n3ds: Don't put audio thread in system core on Old 3DS systems 2026-02-16 08:44:52 -08:00
time include: Added \threadsafety notes to about 60 more functions. 2026-02-18 19:51:25 -05:00
timer Updated copyright for 2026 2026-01-01 09:48:19 -08:00
tray Updated copyright for 2026 2026-01-01 09:48:19 -08:00
video x11: Don't send duplicate key down events when reconciling 2026-02-23 15:10:17 -05:00
SDL.c Fixed HIDAPI hotplug detection in applications that don't initialize video 2026-02-11 09:12:35 -08:00
SDL_assert.c Updated copyright for 2026 2026-01-01 09:48:19 -08:00
SDL_assert_c.h Updated copyright for 2026 2026-01-01 09:48:19 -08:00
SDL_error.c Updated copyright for 2026 2026-01-01 09:48:19 -08:00
SDL_error_c.h Updated copyright for 2026 2026-01-01 09:48:19 -08:00
SDL_guid.c Prefer SDL_zero()/SDL_zerop() 2026-01-23 11:23:55 -08:00
SDL_hashtable.c Updated copyright for 2026 2026-01-01 09:48:19 -08:00
SDL_hashtable.h Updated copyright for 2026 2026-01-01 09:48:19 -08:00
SDL_hints.c Updated copyright for 2026 2026-01-01 09:48:19 -08:00
SDL_hints_c.h Updated copyright for 2026 2026-01-01 09:48:19 -08:00
SDL_internal.h Fixed HIDAPI hotplug detection in applications that don't initialize video 2026-02-11 09:12:35 -08:00
SDL_list.c Updated copyright for 2026 2026-01-01 09:48:19 -08:00
SDL_list.h Updated copyright for 2026 2026-01-01 09:48:19 -08:00
SDL_log.c Updated copyright for 2026 2026-01-01 09:48:19 -08:00
SDL_log_c.h Updated copyright for 2026 2026-01-01 09:48:19 -08:00
SDL_properties.c Updated copyright for 2026 2026-01-01 09:48:19 -08:00
SDL_properties_c.h Updated copyright for 2026 2026-01-01 09:48:19 -08:00
SDL_utils.c emscripten: drag-and-drop fixes. 2026-02-09 21:43:12 -05:00
SDL_utils_c.h emscripten: drag-and-drop fixes. 2026-02-09 21:43:12 -05:00