vo: make opengl-cb first in the autoprobing order

This should be helpful for the new OSX Cocoa backend, which uses
opengl-cb internally. Since it comes with a behavior change that could
possibly interfere with libmpv/opengl_cb users, we mark it as explicit
API change.
This commit is contained in:
wm4 2018-02-13 00:49:13 +01:00 committed by Kevin Mitchell
parent 706bb1d0c7
commit 7b5a2588bd
4 changed files with 12 additions and 5 deletions

View File

@ -32,6 +32,12 @@ API changes
::
--- mpv 0.29.0 ---
1.27 - make opengl-cb the default VO. This causes a subtle behavior change
if the API user called mpv_opengl_cb_init_gl(), but does not set
the "vo" option. Before, it would still have used another VO (like
on the CLI, e.g. vo=gpu). Now it'll behave as if vo=opengl-cb was
used.
--- mpv 0.28.0 ---
1.26 - remove glMPGetNativeDisplay("drm") support
- add mpv_opengl_cb_window_pos and mpv_opengl_cb_drm_params and

View File

@ -209,7 +209,7 @@ extern "C" {
* relational operators (<, >, <=, >=).
*/
#define MPV_MAKE_VERSION(major, minor) (((major) << 16) | (minor) | 0UL)
#define MPV_CLIENT_API_VERSION MPV_MAKE_VERSION(1, 26)
#define MPV_CLIENT_API_VERSION MPV_MAKE_VERSION(1, 27)
/**
* The API user is allowed to "#define MPV_ENABLE_DEPRECATED 0" before

View File

@ -66,6 +66,9 @@ extern const struct vo_driver video_out_tct;
const struct vo_driver *const video_out_drivers[] =
{
#if HAVE_GL
&video_out_opengl_cb,
#endif
#if HAVE_ANDROID
&video_out_mediacodec_embed,
#endif
@ -103,9 +106,6 @@ const struct vo_driver *const video_out_drivers[] =
#endif
#if HAVE_ENCODING
&video_out_lavc,
#endif
#if HAVE_GL
&video_out_opengl_cb,
#endif
NULL
};

View File

@ -554,7 +554,8 @@ static int preinit(struct vo *vo)
struct vo_priv *p = vo->priv;
p->ctx = vo->extra.opengl_cb_context;
if (!p->ctx) {
MP_FATAL(vo, "No context set.\n");
if (!vo->probing)
MP_FATAL(vo, "No context set.\n");
return -1;
}