path: root/
diff options
authorwm4 <wm4@nowhere>2020-07-08 21:55:24 +0200
committerwm4 <wm4@nowhere>2020-07-08 22:42:05 +0200
commitb93f142011381a9ad753a246ea112115f262e7a1 (patch)
tree0b5ed52a08599240f0d4f4ffad815dc7be33ee22 /
parent688251bc662c50bc7fe56bb1ec8fef4e1407cdf0 (diff)
client API: add software rendering API
This can be used to make vo_libmpv render video to a memory buffer. It only adds a new backend API that takes memory surfaces. All the render API (such as frame rendering control and so on) is reused. I'm not quite convinced of the usefulness of this, and until now I always resisted providing something like this. It only seems to facilitate inefficient implementation. But whatever. Unfortunately, this duplicates the software rendering glue code yet again (like it exists in vo_x11, vo_wlshm, vo_drm, and probably more). But in theory, these could reuse this backend in the future, just like vo_gpu could reuse the render_gl API. Fixes: #7852
Diffstat (limited to '')
1 files changed, 1 insertions, 0 deletions
diff --git a/ b/
index 635bd117bc..525d744bfb 100644
--- a/
+++ b/
@@ -452,6 +452,7 @@ def build(ctx):
( "video/out/hwdec/hwdec_vaapi.c", "vaapi-egl || vaapi-vulkan" ),
( "video/out/hwdec/hwdec_vaapi_gl.c", "vaapi-egl" ),
( "video/out/hwdec/hwdec_vaapi_vk.c", "vaapi-vulkan" ),
+ ( "video/out/libmpv_sw.c" ),
( "video/out/placebo/ra_pl.c", "libplacebo" ),
( "video/out/placebo/utils.c", "libplacebo" ),
( "video/out/opengl/angle_dynamic.c", "egl-angle" ),