mirror of https://github.com/mpv-player/mpv
e125da2096
The osd support was originally written with the requirement that we have actual frames getting delivered to the VO. This isn't always the case though. If you force a window on a blank audio file for example, then there will be no frame thus draw_frame did nothing. Since the previous commit allows us to reliably detect this, we can rearrange the code around a little bit to make this possible. A key change is to make the osd_subsurface have wl->surface as the parent. This is seemingly required otherwise the osd_surface buffers are never visible above the empty video_surface when we have a black window. Also nuke the desync call since it's completely pointless. Fixes #12429. |
||
---|---|---|
.. | ||
cocoa | ||
d3d11 | ||
gpu | ||
gpu_next | ||
hwdec | ||
mac | ||
opengl | ||
placebo | ||
vulkan | ||
win32 | ||
wldmabuf | ||
android_common.c | ||
android_common.h | ||
aspect.c | ||
aspect.h | ||
bitmap_packer.c | ||
bitmap_packer.h | ||
cocoa_cb_common.swift | ||
cocoa_common.h | ||
cocoa_common.m | ||
dither.c | ||
dither.h | ||
dr_helper.c | ||
dr_helper.h | ||
drm_atomic.c | ||
drm_atomic.h | ||
drm_common.c | ||
drm_common.h | ||
drm_prime.c | ||
drm_prime.h | ||
filter_kernels.c | ||
filter_kernels.h | ||
libmpv.h | ||
libmpv_sw.c | ||
meson.build | ||
present_sync.c | ||
present_sync.h | ||
vo.c | ||
vo.h | ||
vo_caca.c | ||
vo_direct3d.c | ||
vo_dmabuf_wayland.c | ||
vo_drm.c | ||
vo_gpu.c | ||
vo_gpu_next.c | ||
vo_image.c | ||
vo_kitty.c | ||
vo_lavc.c | ||
vo_libmpv.c | ||
vo_mediacodec_embed.c | ||
vo_null.c | ||
vo_rpi.c | ||
vo_sdl.c | ||
vo_sixel.c | ||
vo_tct.c | ||
vo_vaapi.c | ||
vo_vdpau.c | ||
vo_wlshm.c | ||
vo_x11.c | ||
vo_xv.c | ||
w32_common.c | ||
w32_common.h | ||
wayland_common.c | ||
wayland_common.h | ||
win_state.c | ||
win_state.h | ||
x11_common.c | ||
x11_common.h |