Unpin SDL version 2 - SDL 3 can be now considered idempotent.
Issues mentioned in sdl3:
- sdl_mixer -> replaced with fluidsynth
- Vulkan issues - Vulkan is currently (SDL 3.20) not implicit in either
of platforms; if so, trigger a warning. Also it is unavailable in SDL2.
- p010 corruption in Direct3D 11 or 12 - there is already a workaround
to disable
To replace sdl3_mixer that does no longer support MIDI playback, thus
unusable for our use case.
- song1 needs to be static included potentially from 2 compilation units -
this and sdl_mixer
- rename some symbols (state bs->bt), callbacks prefix with libbt
- assemble the line with strappend-like functions and write() just the
result
- flush the output after backtrace_symbols_fd() in case that the later
calls fail to have at least something output
- write_number->append_number for point 2 + tid write
crashes since the commit ab5d2a5ca (2025-06-17)
That commit started to enforce existence of control socket, which is
not true in case of the reflector.
fixes ab5d2a5ca
closes GH-461
The actual count should be returned **without** duplicites.
The fixed fix fixed just the content of the array but not the count.
This would trigger assertion in
video_decoder_order_output_codecs()->get_pixfmt_desc(VIDEO_CODEC_NONE).
same meaning and behavior as for vo_pp/temporal-deint:
1. both frames will be output in a burst
2. in order not to be dropped immediately, set the display blocking
behavior (may or may not work correctly)
- try to get the mode from PP with the new VO_PP_VIDEO_MODE
- if false returned, then PP should support all and ask display
- deprecate/don't use VO_PP_DOES_CHANGE_TILING_MODE, see below
See the commits 5197a11c (2016-07-22) and 97454acc (2012-08-20) where
added.
The tiling mode is set to true for pp/split only, for that it won't do
anything. Otherwise, for all other PPs the desc will be converted to
single tile, which doesn't seem to be legit (the actual input desc is
given by the `desc` argument to display_reconfigure).
fixes the commit 69024468 (from 2022-08-18) that has broken:
`uv -F split:2:1 -t testcard:fps=30p -c lavc`
The problem is that the `tile_cnt` was set _prior_ to the vcompress
state reconfigure, which will yield 2 states. But prior that, the count
was 1. The task was started for tile_cnt (== 1) but waited upon for
separate_tiles.size() (== 2)!
tiled video compress actually seems to pass invalid ponter as for:
uv -F split:2:1 -t testcard:fps=30p -c lavc
(not the problem of lavc itself, however)
note that module_data is now not first so returning `s` from _init
no need to iterate further if match found
If display misbehaves (outputs one codec multiple times), it causes
that codec to be elimited later (if the count != 1 for 2 devices) or
more in case of eg. 3 devices and the codec being listed 2-times for one
and no for another, it will be falsely accepted.
At least gdb prints VIDEO_CODEC_FIRST for value `(codec_t) 1`, which
is unfortunate. So assuming that the first identifier is taken as a
"primary" if more have the same value.
CL headers issue warning when not set and default to eg. 300 (3.0).
Not sure if this influences just this code but it seems that this may just
limit API availability provided by hdrs? So we can get along with !.2 (for
CL_DEVICE_TYPE_CUSTOM).
We currently only do device listing to pass further (Cmpto J2K codec) so
AFAIK we don't have initialization of the device so this shouldn't matter
(at most we'll allow device with unsupported OpenCL version but perhaps
cmpto codec could catch this)
If the value of pitch is "default", it ti actually a bit tricky to set
the value explicitly.
Also the value was set incorrectly in HEAD^^ - pitch equals width only
for single channel + 8-bit.
added doxy