如何使用 apache 设置 mpeg dash 服务器?

Posted

技术标签:

【中文标题】如何使用 apache 设置 mpeg dash 服务器?【英文标题】:how to setup mpeg dash server using apache? 【发布时间】:2013-06-18 14:28:10 【问题描述】:

我想在 ubuntu 10.04 上设置一个本地 mpeg dash 服务器。那么分别安装apache和mpeg dash编码器后应该怎么做呢?

谢谢

【问题讨论】:

【参考方案1】:

只需将 MPD 和破折号段放入 apache htdocs 文件夹即可。如果您的 MPD 有 BaseURL,请将其修改为公共域/目录,仅此而已。

您可以在此数据集中查看结构(FTP 和 HTTP 访问):http://www-itec.uni-klu.ac.at/dash/?page_id=207

【讨论】:

好的,谢谢,我在客户端做什么?我安装了 VLC 播放器,但它无法播放 MPD 文件。 你可以使用dash.js,它只支持html5/JS,或者你选择bitdash播放器,它是HTML5/JS和Flash。【参考方案2】:

除了将 MPD 文件和 DASH 视频片段放入 Web 文件夹之外,您可能还必须在 Web 服务器上启用 Cross-Origin Resource Sharing (CORS) 机制。这是因为 DASH 播放器将使用遵循同源策略的 XMLHTTPRequests 请求 MPD 文件和视频片段。这意味着如果您的 DASH 播放器从不同的 vanilla 网络服务器请求文件,您可能会收到类似的错误

XMLHttpRequest cannot load http://remoteserver.com/resource. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localsite.dev' is therefore not allowed access. 

对于 apache2,我的 confs-available 文件夹中的以下配置设置启用了 CORS 并完成了工作:

Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Methods "POST, GET, OPTIONS, DELETE, PUT"
Header set Access-Control-Max-Age "1000"
Header set Access-Control-Expose-Headers: "Server,range,Content-Length,Content-Range"
Header set Access-Control-Allow-Headers "range,x-requested-with, Content-Type, origin, authorization, accept, client-security-token"

请注意,并非所有这些标志对于 DASH 服务都是必需的。我重新使用了此博客页面中的代码开始,但尚未调查所需的最少标志。

【讨论】:

以上是关于如何使用 apache 设置 mpeg dash 服务器?的主要内容,如果未能解决你的问题,请参考以下文章

为 android 模拟 MPEG-DASH

如何在 Google Chrome 中加载 mpeg-dash 视频

MPEG-DASH如何实现授权?

使用 FFMPEG 播放 MPEG-dash 流[关闭]

如何使用 MPEG DASH 流式传输和捕获 MP4 文件?

如何使用 Python3 opencv 捕获 mpeg-dash 流?