0

如果 RTSP 流密码是“pass@word”,我只能将密码添加到 url 中,如下所示:

rtsp://username:pass%40word@domain:port

将 @ 更改为 %40 对 URL 有效

但是当我尝试使用时: media.AddOption(":rtsp-pwd=pass@word");

身份验证失败。

使用 media.AddOption(":rtsp-pwd=pass%40word"); 也失败了。

4

1 回答 1

0

尝试对话回调

var libVLC = new LibVLC();

libVLC.SetDialogHandlers((title, text) => Task.CompletedTask,
    (dialog, title, text, username, store, token) =>
    {
        dialog.PostLogin(Username, Password, false);
        tcs.SetResult(true);
        return Task.CompletedTask;
    },
    (dialog, title, text, type, cancelText, actionText, secondActionText, token) => Task.CompletedTask,
    (dialog, title, text, indeterminate, position, cancelText, token) => Task.CompletedTask,
    (dialog, position, text) => Task.CompletedTask);

var mp = new MediaPlayer(libVLC)
{
    Media = new Media(libVLC, UrlRequireAuth, Media.FromType.FromLocation)
};

mp.Play();
于 2021-01-12T03:45:30.047 回答