首页 > 其他分享 >如何搭建一个dash播放器

如何搭建一个dash播放器

时间:2023-10-07 18:57:30浏览次数:26  
标签:播放器 mpd 30fps bbb js dash error 搭建

1.安装宝塔面板

为什么安装宝塔面板,因为宝塔面板的图形化界面使操作更加方便简洁,不需要手动去终端输入路径一个一个打开文件内容查看。

安装入口:https://www.bt.cn/new/index.html

这里我使用了自己购买的云服务器,直接在云服务器上安装即可。

查看面板是否安装成功:(输入14,进入面板)

 

2.在宝塔面板中添加站点信息

将云服务的ip地址填写进去,端口可变可不变,默认80,想用别的端口记得去云服务器操作台开放安全组。

提交后,访问ip地址,可以看见站点搭建成功的页面。

 

3.导入代码

站点搭建完毕后,进入网站根目录下的对应目录,将播放器的代码导入该目录下。

这里我导入了自己的几个代码文件,包括index.html(将原始代码删除,粘贴为自己编写后的代码)、yourScript.js(用来加载.mpd文件)、manifest.mpd(使用ffmpeg制作的.mpd文件)、以及三个output.mp4(制作.mpd文件结束后,生成的不同码率的视频文件),其中,需要确保manifest.mpd文件符合dash视频传输标准,即DASH-AVC/264。

 

index.html

<!DOCTYPE html>
<html>
<head>
  <title>DASH.js Test</title>
  <style>
    /* 你也可以使用CSS来设置视频播放器的大小 */
    #videoPlayer {
      width: 640px;
      height: 360px;
    }
  </style>
</head>
<body>
  <video id="videoPlayer" controls></video>
  <script src="./dash.js-4.7.2/dist/dash.all.min.js"></script>
  <script>
    var url = 'https://dash.akamaized.net/akamai/bbb_30fps/bbb_30fps.mpd';
    var player = dashjs.MediaPlayer().create();
    player.initialize(document.querySelector('#videoPlayer'), url, true);
  </script>
</body>
</html>

 

yourScript.js

document.addEventListener('DOMContentLoaded', function() {
    const video = document.getElementById('video');
    const player = new shaka.Player(video);

    player.addEventListener('error', function(event) {
        console.error('Player error:', event.detail);
    });

    player.load('https://dash.akamaized.net/akamai/bbb_30fps/bbb_30fps.mpd').catch(function(error) {
        console.error('Error loading the manifest:', error);
    });
});

 

如果播放失败,应该是.mpd文件编码的问题,解决方法是:使用ffmpeg、MP4Box,将音频和视频分离,并在dash封装的时候为它们单独加工。

不过由于我的.mpd文件也有问题,所以推荐一个可用的链接:https://dash.akamaized.net/akamai/bbb_30fps/bbb_30fps.mpd

 

4.云服务器导入dash.js文件

由于之前想导入在/home/ubuntu下,方便后续使用,但是控制台总是报错,找不到http://43.135.*.*/dash.js-4.7.2/dist/dash.all.min.js,我就直接导入index.html同一目录下了,有时间再思考绝对路径的问题吧。

导入方法,先下载,后解压:

wget https://github.com/Dash-Industry-Forum/dash.js/archive/refs/tags/v4.7.2.zip
unzip v4.7.2.zip

如果没有安装unzip:

sudo apt-get install unzip

 

5.进入网页,播放视频

很简易的一个播放器:

 

标签:播放器,mpd,30fps,bbb,js,dash,error,搭建
From: https://www.cnblogs.com/eisenshu/p/17747083.html

相关文章

  • 搭建SVN步骤
    目录如何在linux上搭建SVNCV战士教程个人搭建流程服务端搭建客户端管理查看主库的内容拉取主库当前svn内容提交内容如何删除svnSVN是什么SVN的一些概念SVN的主要功能第1章SVN介绍及应用场景1.1什么是SVN(Subversion)1.2SVN与Git的区别1.2.1SVN集中式版本控制系统1.2.2Git分布式......
  • 量化交易系统搭建步骤
    量化交易系统搭建步骤:1.明确投资策略:在搭建量化交易软件之前先确定好投资者的策略,交易参数,还有明确交易品种,投资策略类型,风险把控,控制方法等。2.选择量化交易的开发语言:选择编程的语言,实现量化交易策略,常用的有Python、C++、php等语言。3.开发交易算法:基于投资者的设置策略,开始......
  • 利用LNMP实现wordpress站点搭建
     #环境准备:nginx+php+wordpress10.0.0.152mysql+redis10.0.0.162#在10.0.0.162编写脚本实现mysqk数据库一键安装[root@localhost~]#catinstall_mysql.sh#!/bin/bash##********************************************************......
  • 简述DNS服务器原理,并搭建主-辅服务器
    1)DNS简介:DNS是计算机域名系统(DomainNameSystem或DomainNameService)的缩写。域名便于人们记忆,但机器之间只认IP地址,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析服务器来完成,DNS就是进行域名解析的服务器。上网时输入的网址通过域名解析系统解析找到了......
  • 搭建项目 虚拟环境的使用
       ......
  • 部署k8s dashboard
    一、Kubernetesdashboard作用通过dashboard能够直观了解Kubernetes集群中运行的资源对象通过dashboard可以直接管理(创建、删除、重启等操作)资源对象二、获取Kubernetesdashboard资源清单文件kubectl部署https://github.com/kubernetes/dashboard/releaseskubectlapply......
  • qemu搭建riscv的可调试环境
    qemu搭建riscv的可调试环境riscv工具链(网上大多数用Github直连的工具链,但是因为太大,download的时候老是出问题)选择使用Cross-compilationtoolchainsforLinux-Home(bootlin.com)进行下载,之后解压。bin目录下为可执行的工具链,将其添加到PATH中。qemuqemu压缩包下载......
  • Redis项目搭建
    Redis项目搭建Redis下载搭建redis首先需要下载Redis,可是Redis官方并没有Windows安装,好在网上从不缺大牛,Github上可以找到Redis的Windows版下载地址:https://github.com/tporadowski/redis/releases(网速很慢)打开上述链接如下图:解压后如下图,我们只需要关注3个部分redis.win......
  • 音乐播放器 Foobar2000 / Foobox 安装使用
    1、安装可以参考Foobox作者项目地址教程安装:https://gitee.com/dream7180/foobox-cn2、配置MusicTag作者博客:https://www.cnblogs.com/vinlxc/p/11347744.html......
  • Minecraft个人服务器搭建自己的皮肤站并实现外置登录更换自定义皮肤组件
    Minecraft个人服务器搭建自己的皮肤站并实现外置登录更换自定义皮肤组件大家好,我是艾西有不少小伙伴非常喜欢我的世界Minecraft游戏,今天小编跟大家分享下Minecraft个人服务器怎么设置皮肤站。Minecraft皮肤站是什么?其实官网就有皮肤站,在正版用户选择正版的登录后,MC客户端就会到官方......