1
0
mirror of https://github.com/mpv-player/mpv synced 2024-12-22 23:02:37 +00:00
mpv/video/out
Philip Langdale 7424651b96 vo_opengl: hwdec_cuda: Support separate decode and display devices
In a multi GPU scenario, it may be desirable to use different GPUs
for decode and display responsibilities. For example, if a secondary
GPU has better video decoding capabilities.

In such a scenario, we need to initialise a separate context for each
GPU, and use the display context in hwdec_cuda, while passing the
decode context to avcodec.

Once that's done, the actually hand-off between the two GPUs is
transparent to us (It happens during the cuMemcpy2D operation which
copies the decoded frame from a cuda buffer to the OpenGL texture).

In the end, the bulk of the work is around introducing a new
configuration option to specify the decode device.
2017-06-03 16:41:03 +02:00
..
cocoa cocoa: properly unhide Dock when quitting during System fs animation 2017-05-19 19:19:29 +02:00
opengl vo_opengl: hwdec_cuda: Support separate decode and display devices 2017-06-03 16:41:03 +02:00
wayland video/out/wayland/buffer.c: Add missing free() 2017-05-26 08:52:12 +01:00
win32 droptarget: fix style and refactor 2017-03-26 00:41:16 +11:00
aspect.c
aspect.h
bitmap_packer.c
bitmap_packer.h
cocoa_common.h
cocoa_common.m cocoa: properly unhide Dock when quitting during System fs animation 2017-05-19 19:19:29 +02:00
d3d_shader_420p.h
d3d_shader_nv12.h
d3d_shader_yuv.hlsl
dither.c
dither.h
drm_common.c drm: include <poll.h> instead of <sys/poll.h> 2017-01-09 16:21:28 +01:00
drm_common.h
filter_kernels.c filter_kernels: Keep f.radius in terms of dest/filter coords. 2017-03-06 03:31:40 +00:00
filter_kernels.h filter_kernels: Keep f.radius in terms of dest/filter coords. 2017-03-06 03:31:40 +00:00
vo_caca.c
vo_direct3d.c
vo_drm.c vo_drm: remove 2 redundant include statements 2017-01-09 16:23:27 +01:00
vo_image.c options: add M_OPT_FILE to some more file options 2017-03-06 15:41:06 +01:00
vo_lavc.c Remove compatibility things 2016-12-07 19:53:11 +01:00
vo_null.c vo.c, vo.h, vo_null.c: change license to LGPL 2017-05-10 15:06:20 +02:00
vo_opengl_cb.c vo: fix subtleties in the redrawing logic 2017-02-21 15:39:44 +01:00
vo_opengl.c vo_opengl: add a backend start_frame callback for context_vdpau 2017-03-20 13:37:47 +01:00
vo_rpi.c vo_rpi: partially undeprecate 2016-12-08 11:00:14 +01:00
vo_sdl.c
vo_tct.c vo_tct: check ioctl result 2017-02-20 14:19:57 +01:00
vo_vaapi.c vaapi: remove central lock around vaapi API calls 2017-01-28 18:27:30 +01:00
vo_vdpau.c
vo_wayland.c
vo_x11.c build: make various x11 protocol extension libs mandatory 2017-04-21 07:30:03 +02:00
vo_xv.c build: make various x11 protocol extension libs mandatory 2017-04-21 07:30:03 +02:00
vo.c vo.c, vo.h, vo_null.c: change license to LGPL 2017-05-10 15:06:20 +02:00
vo.h vo.c, vo.h, vo_null.c: change license to LGPL 2017-05-10 15:06:20 +02:00
w32_common.c w32_common: drop TLS usage 2017-05-16 20:13:09 +10:00
w32_common.h
wayland_common.c wayland_common: organize and correctly map mouse buttons 2017-03-17 06:25:32 +00:00
wayland_common.h
win_state.c x11: pseudo HiDPI scaling 2017-01-19 16:31:54 +01:00
win_state.h x11: pseudo HiDPI scaling 2017-01-19 16:31:54 +01:00
x11_common.c build: make various x11 protocol extension libs mandatory 2017-04-21 07:30:03 +02:00
x11_common.h x11: pseudo HiDPI scaling 2017-01-19 16:31:54 +01:00
x11_icon.bin