diff --git a/DOCS/client-api-changes.rst b/DOCS/client-api-changes.rst index f0926471f3..1d121eb2a8 100644 --- a/DOCS/client-api-changes.rst +++ b/DOCS/client-api-changes.rst @@ -31,7 +31,11 @@ API changes =========== :: - + --- mpv 0.38.0 --- + 2.3 - partially revert the changes from API version 1.27, remove libmpv as the default VO and + move it to the bottom of the auto-probing order. this restores the behaviour prior API + version 1.27 on all platforms other than macOS, but still auto selects libmpv/cocoa-cb + on macOS if it was built with support for cocoa-cb. --- mpv 0.37.0 --- 2.2 - add mpv_time_ns() --- mpv 0.36.0 --- diff --git a/libmpv/client.h b/libmpv/client.h index 0a548a58eb..56235e1120 100644 --- a/libmpv/client.h +++ b/libmpv/client.h @@ -248,7 +248,7 @@ extern "C" { * relational operators (<, >, <=, >=). */ #define MPV_MAKE_VERSION(major, minor) (((major) << 16) | (minor) | 0UL) -#define MPV_CLIENT_API_VERSION MPV_MAKE_VERSION(2, 2) +#define MPV_CLIENT_API_VERSION MPV_MAKE_VERSION(2, 3) /** * The API user is allowed to "#define MPV_ENABLE_DEPRECATED 0" before diff --git a/video/out/vo.c b/video/out/vo.c index 2400f8de61..08a0a9f88b 100644 --- a/video/out/vo.c +++ b/video/out/vo.c @@ -69,7 +69,6 @@ extern const struct vo_driver video_out_kitty; static const struct vo_driver *const video_out_drivers[] = { - &video_out_libmpv, #if HAVE_ANDROID &video_out_mediacodec_embed, #endif @@ -99,6 +98,7 @@ static const struct vo_driver *const video_out_drivers[] = #if HAVE_X11 &video_out_x11, #endif + &video_out_libmpv, &video_out_null, // should not be auto-selected &video_out_image, diff --git a/video/out/vo_libmpv.c b/video/out/vo_libmpv.c index 8a686022a1..942882ca9c 100644 --- a/video/out/vo_libmpv.c +++ b/video/out/vo_libmpv.c @@ -705,6 +705,11 @@ static void uninit(struct vo *vo) static int preinit(struct vo *vo) { +#if !HAVE_MACOS_COCOA_CB + if (vo->probing) + return -1; +#endif + struct vo_priv *p = vo->priv; struct mpv_render_context *ctx =