首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如果我试图将HLS流嵌入到与流位于同一服务器上的网页中,那么正确的URL是什么?

如果我试图将HLS流嵌入到与流位于同一服务器上的网页中,那么正确的URL是什么?
EN

Stack Overflow用户
提问于 2021-12-20 01:06:02
回答 1查看 1K关注 0票数 0

我正在使用内置到NGINX中的RTMP模块来生成一个HLS流。我想将该流嵌入到同一台服务器上的HTML页面中。

当我在VLC上打开它时,这个流运行得很好,但是当我将页面发布到我的活动web服务器时,它就被阻塞了。

这是我的html页面,它是非常基本的,当我在本地查看它时,它会正确运行。

代码语言:javascript
运行
复制
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
  <title>Camera</title>
  <link href="https://vjs.zencdn.net/7.17.0/video-js.css" rel="stylesheet" />
  <style>
    body {
      font-family: 'Avenir Next Var','Lucida Grande',Helvetica,sans-serif;
    }
    .container {
      margin: 0 auto;
      width:960px;
    }
  </style>

</head>
<body>
  <div class="container">

    <h3>Journalism Camera</h3>
    <h4>Emerson College - Boston, MA.</h4>

    <video
    id="my-video"
    class="video-js"
    controls
    autoplay="true"
    muted="true"
    preload="auto"
    width="960"
    height="540"
    data-setup="{}"
  >
    <source src="http://localhost:8080/hls/livestream1.m3u8" type="application/x-mpegURL" />
    <source src="http://localhost:8080/dash/livestream1.mpd" type="application/dash+xml" />
   
    <p class="vjs-no-js">
      To view this video please enable JavaScript, and consider upgrading to a
      web browser that
      <a href="https://videojs.com/html5-video-support/" target="_blank">supports HTML5 video</a>
    </p>
  </video>

</div>

<script src="https://vjs.zencdn.net/7.17.0/video.min.js"></script>

</body>
</html>

当我将这个html页面上传到我的实时生产服务器时,我会收到以下错误消息。

代码语言:javascript
运行
复制
video.min.js:12 VIDEOJS: ERROR: (CODE:2 MEDIA_ERR_NETWORK) HLS playlist request error at URL: http://localhost:8080/hls/livestream1.m3u8. 
_t {code: 2, status: 0, message: 'HLS playlist request error at URL: http://localhost:8080/hls/livestream1.m3u8.', responseText: ''}
VM578:1 GET http://localhost:8080/hls/livestream1.m3u8 net::ERR_BLOCKED_BY_CLIENT

​```
EN

回答 1

Stack Overflow用户

发布于 2021-12-20 20:09:04

假设您的页面位于http://localhost:8080/,您只需为您的流使用相对路径:

代码语言:javascript
运行
复制
<source src="/hls/livestream1.m3u8" type="application/x-mpegURL" />
<source src="/dash/livestream1.mpd" type="application/dash+xml" />
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70416517

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档