当前位置: 首页 > 知识库问答 >
问题:

沙卡播放器全屏启动视频

赖俊
2023-03-14

我有基本的沙卡玩家代码。我想开始全屏播放视频。如果可能的话,请告诉我。

HTML

<!DOCTYPE html>
<html style="height:100%">
  <head>
    <!-- Shaka Player compiled library: -->
    <script src="dist/shaka-player.compiled.js"></script>
    <!-- Your application source: -->
    <script src="myapp.js"></script>
  </head>
  <body style="height:100%">
    <video id="video"
           width="100%"
           height="100%"
           poster="//shaka-player-demo.appspot.com/assets/poster.jpg"
           controls autoplay></video>
  </body>
</html>

我的应用。js

// myapp.js

var manifestUri =
    './asd.mp4';

function initApp() {
  // Install built-in polyfills to patch browser incompatibilities.
  shaka.polyfill.installAll();

  // Check to see if the browser supports the basic APIs Shaka needs.
  if (shaka.Player.isBrowserSupported()) {
    // Everything looks good!
    initPlayer();
  } else {
    // This browser does not have the minimum set of APIs we need.
    console.error('Browser not supported!');
  }
}

function initPlayer() {
  // Create a Player instance.
  var video = document.getElementById('video');
  var player = new shaka.Player(video);

  // Attach player to the window to make it easy to access in the JS console.
  window.player = player;

  // Listen for error events.
  player.addEventListener('error', onErrorEvent);

  // Try to load a manifest.
  // This is an asynchronous process.
  player.load(manifestUri).then(function() {
    // This runs if the asynchronous load is successful.
    console.log('The video has now been loaded!');
  }).catch(onError);  // onError is executed if the asynchronous load fails.
}

function onErrorEvent(event) {
  // Extract the shaka.util.Error object from the event.
  onError(event.detail);
}

function onError(error) {
  // Log the error.
  console.error('Error code', error.code, 'object', error);
}

document.addEventListener('DOMContentLoaded', initApp);

共有1个答案

宋昊然
2023-03-14

我是用下面的代码做的

player.load(manifestUri).then(function() {
    // This runs if the asynchronous load is successful.
    console.log('The video has now been loaded!');
    video.requestFullscreen().catch(err => {
      console.log(err)
    });
  }).catch(onError);  // onError is executed if the asynchronous load fails.

如果有更好的解决方案,请告诉我

 类似资料:
  • 背景:目前我正在做一个演示项目,目的是了解沙卡玩家是否是我们未来可行的选择。就项目而言,我无法使用标准控件,因为我们使用自定义控件。该项目正在开发中。 问:如果不使用标准的“控件-全屏”方式,我该如何让沙卡播放器从全屏开始? 提前谢谢!

  • 嗨,我为我的视频网站创建了一个WebView应用程序。网站的设计是为移动用户加载的混合体。只有与移动设备兼容的视频才会加载到混合动力上。玩家来自Vk,DailyMotion,YouTube和QuickTime。 (WebViewActivity.java) (main.xml) (Manifest.xml)

  • 我设法在我的WebView上播放HTML5视频。以全屏模式显示视频时会出现问题。 我发现,android有两种方式处理 标记: > 在android版本<=2.3.3上,onShowCustomView方法被激发,我可以拥有VideoView实例,并在视频完成时设置监听器,设置控制器等。 这让我想到了一个大问题:当以全屏模式显示视频时,会调用onShowCustomView,但在ICS上,“vie

  • 我是否可以通过任何配置,使Shaka播放器在视频中的某个持续时间/点暂停,例如,我想让播放器暂停300秒。 一种方法是更改配置,但这会破坏用户体验还有其他选择吗?

  • 在h5中用视频播放器DPlayer 监听竖屏和横屏(webfullscreen、fullscreen),更改水印范围,在竖屏的时候没问题,在横屏的时候看不到水印

  • 我正在流式播放和循环播放一个视频曲目,我希望在第一个循环播放时只完整下载一次,而不是从存储中播放其余的循环。 如何做到这一点?