1
0
mirror of https://github.com/mpv-player/mpv synced 2024-12-22 23:02:37 +00:00
mpv/video
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
..
decode videotoolbox: support new libavcodec API 2017-05-24 15:25:48 +02:00
filter af, vf: improvements to libavfilter bridge 2017-05-31 17:42:55 +02:00
out vo_opengl: hwdec_cuda: Support separate decode and display devices 2017-06-03 16:41:03 +02:00
csputils.c csputils: code clarity 2017-05-13 17:25:24 +02:00
csputils.h
fmt-conversion.c Remove compatibility things 2016-12-07 19:53:11 +01:00
fmt-conversion.h
gpu_memcpy.c
gpu_memcpy.h
hwdec.c vd_lavc, vaapi: move hw device creation to generic code 2017-02-20 08:39:55 +01:00
hwdec.h hwdec: fix 2 comments 2017-05-24 14:32:23 +02:00
image_writer.c image_writer: make it work with libavcodec's jpg encoder 2017-04-02 17:21:42 +02:00
image_writer.h screenshot: change details of --screenshot-format handling 2017-03-18 15:03:05 +01:00
img_format.c img_format: stop setting some fields to dummy values for hwaccel formats 2017-02-21 10:35:38 +01:00
img_format.h vo_opengl: hwdec_cuda: Support P016 output surfaces 2016-11-22 20:19:58 +01:00
img_fourcc.h
mp_image_pool.c mp_image_tool: guard hw downloading against allocation failures 2017-02-07 17:06:20 +01:00
mp_image_pool.h vaapi: use libavutil functions for copying hw surfaces to memory 2017-01-12 13:58:28 +01:00
mp_image.c mp_image: for hwaccel, use underlying fmt in mp_image_params_guess_csp() 2017-02-21 10:34:26 +01:00
mp_image.h lavfi: use mp_image to store the filter pad format 2017-02-20 13:15:50 +01:00
sws_utils.c build: replace some FFmpeg API checks with version checks 2017-01-24 08:11:42 +01:00
sws_utils.h
vaapi.c vdpau, vaapi: unref libavutil device ref 2017-04-29 15:09:40 +02:00
vaapi.h vd_lavc, vaapi: move hw device creation to generic code 2017-02-20 08:39:55 +01:00
vdpau_functions.inc
vdpau_mixer.c
vdpau_mixer.h
vdpau.c vdpau: crappy hack to allow initializing hw decoding after preemption 2017-05-19 15:24:38 +02:00
vdpau.h vdpau: support new vdpau libavcodec decode API 2017-03-23 11:14:11 +01:00
vt.c vo_opengl: hwdec_osx: use new format setup function 2017-02-17 17:08:37 +01:00
vt.h videotoolbox: add reverse format mapping function 2017-02-17 13:51:03 +01:00