nginx 中的 Mpeg-dash 支持
Posted
技术标签:
【中文标题】nginx 中的 Mpeg-dash 支持【英文标题】:Mpeg-dash support in nginx 【发布时间】:2015-10-21 08:20:06 【问题描述】:我搜索得够多,但无法弄清楚如何使用 nginx_vod_module 在 nginx 中配置 mpeg-dash vod。
http 服务器块内用于启用破折号的配置是
location /voddash
vod dash;
vod_mode local;
root /usr/share/nginx/html;
gzip on;
gzip_types application/dash+xml mpd;
add_header Access-Control-Allow-Headers "origin,range,accept-encoding,referer";
add_header Access-Control-Expose-Headers "Server,range,Content-Length,Content-Range";
add_header Access-Control-Allow-Methods "GET, HEAD, OPTIONS";
add_header Access-Control-Allow-Origin "*";
expires 100d;
add_header Last-Modified "Sun, 19 Nov 2000 08:52:00 GMT";
请求 url 是 http://localhost/voddash/Input.mp4/manifest.mpd 。 我只在破折号位置放置了 Input.mp4。我如何流式传输破折号内容。还有像 nginx 中用于 mpeg 破折号的预先创建的清单和块的流式传输?
【问题讨论】:
【参考方案1】:我的服务器上也有同样的配置,使用下面的html+js代码来播放动态生成的manifest.mpd文件:
<!doctype html>
<html>
<head>
<title>Dash.js Rocks</title>
<style>
video
width: 640px;
height: 360px;
</style>
</head>
<body>
<div>
<video id="videoPlayer" controls></video>
</div>
<script src="http://dashif.org/reference/players/javascript/nightly/dash.js/dist/dash.all.min.js"></script>
<script>
(function()
var url = "http://localhost/voddash/Input.mp4/manifest.mpd";
var player = dashjs.MediaPlayer().create();
player.initialize(document.querySelector("#videoPlayer"), url, true);
)();
</script>
</body>
</html>
【讨论】:
以上是关于nginx 中的 Mpeg-dash 支持的主要内容,如果未能解决你的问题,请参考以下文章