- suppress the output for unit_evaluate
- improve debug printout codec_conversion_test_testcard_uyvy_to_i420
- improve C variant of ASSERT_EQUAL_MESSAGE macro (prints num values
also in hex)
- remove VLA from codec_conversions_test.cpp (not valid in C++)
fix test codec_conversion_test_testcard_uyvy_to_i420 fail caused by the
merge of testcard_common toI420 to to_lavc uyvy_to_yuv420p
Last line was incorrectly checked in case of odd number of lines.
Workaround for SDL3 mixer, that doesn't respect selected ch_count=1 now.
Reduced the channel count later in audio stack (this will work for other
acaps as well).
On mac, we can link either to MoltenVK or the vulkan-loader. The MoltenVK
variant is default, because the bundler then bundles the library as the
compat layer. If linked to vulkan-loader, Vulkan will likely not work if
the MoltenVK is not installed on the host computer.
But it is useful for debugging (the behavior is slightly different if
loaded via vulkan-loader even if the backend is MoltenVK - the KHR
portability bit/enumeration stuff).
1. to SDL3 nv12 (not supported before)
2. to_lavc - use rgba_to_bgra - the vc_copyline version was not keeping alpha
(if ever used - this may cause regressions, unfortunately, if alpha is
assumed to be 100%, because the orig version set it always)
3. uyvy_to_i420 use by testcard and to_lavc
uyvy_to_i420: do not write out of bounds
If width % 2 = 1, 1 extra luma on first line of pair will override the
first luma on the second.
but not if sdl2 is SDL3 sdl2_compat - this won't bring any advantage
There is still some issues with 3 that was not with v2 - see sdl3.c and
sdl_mixer.c heading. Also, there is still no stable SDL_ttf release,
and even not a preview v3 build of SDL_mixer.
fixed log_level shadowing
The vulkan_sdl mapped log_level shadows the global log_level variable,
so that automatic variable log_level is compared to itself (always true).
make it work when linked with both vulkan-loader:
- set VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR
(vk::InstanceCreateFlagBits::eEnumeratePortabilityKHR) when creating
the instance
and MoltenVK:
- erase VK_KHR_portability_enumeration from required extensions that
reports SDL3 SDL_Vulkan_GetInstanceExtension() on macOS
Also now the ENUMERATE_PORTABILITY_BIT is always set whenever
VK_KHR_portability_enumeration supported.
use the new API for conversions
Doesn't seem to be usable, anyways - not supported by opengl/opengles2/gpu
render nor vulkan (but this has SDL_PIXELFORMAT_ABGR2101010).
Since the UYVY pixel format is no longer handled if the renderer doesn't
support it, handle the conversion manually (gl_renderer doesn't handle
UYVY except of macOS neigher for SDL3 nor SDL2 - but there obviously
some convertion occured implicitly).
Both SDL1 and SDL2 use just "[SDL] ".
But SDL2 may remain default for quite a while so that I'd rather use
"[SDL3] " to discriminate the "flavor" explicitly.