Android + LibVLC - 请求 X 未实现 + 无法获取字幕表面 - 如何解决这些问题?

Android + LibVLC - request X not implemented + can't get Subtitles Surface - How to fix these?

警告,android 新手开发者...所以我的术语可能有点不对 ;)

我有一个为 android 编写的小应用程序,它使用 LibVLC(最新,3.0.XX)。

每当我初始化我的视频播放器时,我都会得到以下信息:

10-22 04:20:03.365 22293 22601 E VLC     : [d27d4630/5849] libvlc window: request 1 not implemented
10-22 04:20:03.366 22293 22601 E VLC     : [d2855430/5849] libvlc vout display: can't get Subtitles Surface
10-22 04:20:03.371 22293 22601 E VLC     : [d27d4630/5849] libvlc window: request 0 not implemented
10-22 04:20:03.371 22293 22601 E VLC     : [d27d4630/5849] libvlc window: request 0 not implemented
10-22 04:20:03.371 22293 22601 E VLC     : [d27d4630/5849] libvlc window: request 1 not implemented

我所说的初始化是指通过 setMedia(...) 加载新媒体。尽管它可能发生在 play() 函数中。

这些接缝相当无害,因为一切正常,但如果可能的话,我想禁用任何 libvlc 试图做的导致它们弹出的事情。

A) window 请求似乎与 android 不支持的鼠标相关事件有关,因此它们失败了。我尝试将 --no-mouse 作为 libvlc 的选项传递,但没有骰子......它没有帮助。

B) vout 显示似乎与应该显示字幕的位置有关。我不使用它们,我也永远不会使用它们,所以我尝试将一些不同的选项传递给我的 libvlc init 来一起禁用字幕,但 none 有帮助。

有什么想法可以清理 libvlc/mediaplayer/vout/media init 以免它们污染我的日志吗?

谢谢!

A) The window request ones appear to be related to mouse related events that android does not support, and thus they fail. I tried passing --no-mouse as an option to libvlc, but no dice... It did not help.

除了禁用日志,恐怕你无法抑制这些。

static int Control(vout_window_t *wnd, int cmd, va_list ap)
{
    (void) ap;
    msg_Err (wnd, "request %d not implemented", cmd);
    return VLC_EGENERIC;
}

B) The vout display appears to be related to where subtitles should be shown. I do not use them, nor will I ever, so I tried passing a few various options to my libvlc init to disable subtitles all together but none of it helped.

您没有分享您是如何实现 surfaces/awindow/videoviews 的,但为潜艇提供了一个表面,即使您不打算使用它们。那会使日志消失。

if (AndroidWindow_ConnectSurface(sys, p_window) != 0)
{
    if (id == AWindow_Video)
        msg_Err(vd, "can't get Video Surface");
    else if (id == AWindow_Subtitles)
        msg_Err(vd, "can't get Subtitles Surface");
    goto error;
}

https://github.com/videolan/vlc-3.0/blob/738da6c2737d2da93b24b7cce47944d45d10d8d3/modules/video_output/android/display.c#L402