|
|
西瓜demo:
https://h5player.bytedance.com/examples/
ts文件转MP4:FFmpeg官方网站:https://ffmpeg.org/download.html
- 3. 在Windows上安装FFmpeg
- 1. 下载FFmpeg:
- 访问FFmpeg官方网站,下载Windows版本的FFmpeg。
- 2. 解压缩:
- 将下载的压缩包解压到您选择的目录(例如C:\ffmpeg)。
- 3. 配置环境变量:
- 将FFmpeg的bin目录添加到系统的环境变量中:
- 右键点击“此电脑”或“计算机”,选择“属性”。
- 点击“高级系统设置”,然后点击“环境变量”。
- 在“系统变量”中找到Path变量,选择并点击“编辑”。
- 添加FFmpeg的bin目录路径(例如C:\ffmpeg\bin),然后点击“确定”。
- 4. 验证安装:
- 打开命令提示符,输入以下命令检查FFmpeg是否安装成功:
复制代码 在PHP中使用FFmpeg
- <?php
- $inputFile = 'input.mp4';
- $outputFile = 'output.mp4';
- $command = "ffmpeg -i $inputFile -c:v libx264 -preset fast -crf 22 $outputFile";
- exec($command, $output, $return_var);
- if ($return_var === 0) {
- echo "转换成功!";
- } else {
- echo "转换失败!";
- }
- ?>
复制代码 怎么判断当前php环境是否已安装FFmpeg
- <?php
- // 检查FFmpeg是否安装
- $command = 'ffmpeg -version';
- exec($command, $output, $return_var);
- if ($return_var === 0) {
- echo "FFmpeg已安装。版本信息:<br>";
- echo implode("<br>", $output); // 输出FFmpeg版本信息
- } else {
- echo "FFmpeg未安装。";
- }
- ?>
复制代码 MP4,再转DASH清单文件(.mpd)
- 在 Windows 上安装 MP4Box(GPAC)并在 PHP 集成环境中使用的步骤如下:
- 步骤 1: 下载 GPAC
- 1. 访问 GPAC 官方网站:
- 前往 GPAC 下载页面。
- 2. 选择 Windows 版本:
- 找到适合 Windows 的版本,通常是一个压缩文件(如 gpac-xxx-win64.zip 或 gpac-xxx-win32.zip)。
- 3. 下载并解压缩:
- 下载后,将压缩文件解压到您选择的目录,例如 C:\gpac。
- 步骤 2: 配置环境变量
- 1. 打开系统环境变量设置:
- 右键点击“此电脑”或“计算机”,选择“属性”。
- 点击“高级系统设置”,然后点击“环境变量”。
- 2. 编辑 Path 变量:
- 在“系统变量”部分,找到 Path 变量,选择并点击“编辑”。
- 点击“新建”,然后添加 MP4Box 的 bin 目录路径(例如 C:\gpac\bin)。
- 3. 保存设置:
- 点击“确定”保存更改,关闭所有对话框。
- 步骤 3: 验证 MP4Box 安装
- 1. 打开命令提示符:
- 按下 Win + R,输入 cmd,然后按回车。
- 2. 检查 MP4Box 版本:
- 在命令提示符中输入以下命令:
复制代码 步骤 4: 在 PHP 中使用 MP4Box
- <?php
- $inputFile = 'path/to/your/video.mp4'; // 替换为您的 MP4 文件路径
- $manifestFile = 'manifest.mpd'; // 输出的 DASH 清单文件
- // 使用 MP4Box 生成 DASH 清单文件
- $mp4boxCommand = "MP4Box -dash 4000 -rap -profile live -out $manifestFile $inputFile";
- exec($mp4boxCommand, $output, $returnVar);
- // 检查 MP4Box 生成清单文件是否成功
- if ($returnVar !== 0) {
- echo "MP4Box 生成清单文件失败:<br>";
- echo implode("<br>", $output); // 输出错误信息
- exit;
- }
- // 成功生成清单文件
- echo "成功生成 DASH 清单文件:$manifestFile";
- ?>
复制代码 HTML西瓜运行mpd
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8">
- <meta name=viewport content="width=device-width,initial-scale=1,maximum-scale=1,minimum-scale=1,user-scalable=no,minimal-ui">
- <meta name="referrer" content="no-referrer">
- <title>播放器</title>
- <style type="text/css">
- html, body {width:100%;height:100%;margin:auto;overflow: hidden;}
- body {display:flex;}
- #mse {flex:auto;}
- </style>
- <script type="text/javascript">
- window.addEventListener('resize',function(){document.getElementById('mse').style.height=window.innerHeight+'px';});
- </script>
- </head>
- <body>
- <div id="mse"></div>
- <script src="//unpkg.byted-static.com/xgplayer/2.31.2/browser/index.js" charset="utf-8"></script>
- <script src="//unpkg.byted-static.com/xgplayer-shaka/1.1.5/browser/index.js" charset="utf-8"></script>
- <script type="text/javascript">
- new window.ShakaJsPlayer({
- id: 'mse',
- url: 'manifest.mpd',
- ignores: ['error'],
- playsinline: true,
- height: window.innerHeight,
- width: window.innerWidth
- });
- </script>
- </body>
- </html>
复制代码
|
|