2

我想学习 CEF4Delphi 组件,但遇到了一个问题。CEF4Delphi 不会播放 YouTube 网站上的所有视频。普通视频正常播放,但没有直播。请我帮助解决这个问题。(使用:Delphi - Rad Studio 10.1 Berlin)。我为英语道歉。我用机器翻译谷歌。

program Project2;

uses
  Vcl.Forms,
  WinApi.Windows,
  uCEFApplication,
  Unit2 in 'Unit2.pas' {Form2};

{$R *.res}
{$SETPEFLAGS IMAGE_FILE_LARGE_ADDRESS_AWARE}

begin

GlobalCEFApp := TCefApplication.Create;

  if GlobalCEFApp.StartMainProcess then
  begin
    Application.Initialize;
    Application.MainFormOnTaskbar := True;
    Application.CreateForm(TForm2, Form2);
    Application.Run;
  end;



  GlobalCEFApp.Free;

end.

.

procedure TForm2.Button1Click(Sender: TObject);
begin
Chromium1.LoadURL('https://www.youtube.com/watch?v=dI4jr5HyuT0');
end;

procedure TForm2.FormCreate(Sender: TObject);
begin
Chromium1.CreateBrowser(CEFWindowParent1);

end;

附上截图

4

1 回答 1

1

某些 YouTube 视频使用专有编解码器,无法使用 Spotify 提供的 CEF 二进制文件播放它们。

这些 CEF 二进制文件只有开源编解码器,以避免与专利所有者发生法律问题。

如果您需要播放所有视频,您需要自己构建 CEF 二进制文件,并在 BAT 脚本中的 GN_DEFINES 行中添加几个参数,您可以在 此处找到。

您将需要一台功能非常强大的计算机,安装 Visual Studio 2019 并花费几个小时来构建它。考虑添加超过 32GB 的 RAM,因为该指南有点旧,官方 CEF 支持论坛中的一些用户报告说最新的 Chromium 源需要更多的内存才能链接。

于 2020-05-28T09:54:24.610 回答