我收到错误消息:VIDEOJS:错误:(CODE:0 MEDIA_ERR_CUSTOM)当我使用video.js播放视频时

时间:2019-02-12 06:55:32

标签: javascript video.js

我以前可以使用video.js播放rtmp视频流,但是今天突然我不能播放了。控制台抛出错误:

VIDEOJS: ERROR: (CODE: 0 MEDIA_ERR_CUSTOM) MediaError {code: 0, message: ""}. 

是什么引起了MEDIA_ERR_CUSTOM?如何解决?

播放源没有问题,VLC媒体播放器可以正常播放。

src: "rtmp://192.168.135.217:10064/live/res=37.10000000001311000004.IV.0.0"
type: "rtmp/flv"

            <video
              id="my-video"
              ref={this.video}
              width="800px"
              height="500px"
            >
              <track kind="captions" />
              <source src={url} type={type} />
            </video>

2 个答案:

答案 0 :(得分:0)

检查“开发工具”的“网络”标签以查看是否正在请求并返回媒体?需要解决的几件事:

  1. 确保视频URL正确并且文件可公开访问
  2. 确保您的CORS政策允许您请求的域
  3. 如果使用Flash后备,则需要一个crossdomain.xml文件以允许域(类似于CORS)-请确保在更正此错误后清除缓存,因为即使硬刷新也可能无法重新加载

答案 1 :(得分:0)

如果您使用Flash作为后备广告,或者只是使用Flash并出现此特定错误:

VIDEOJS: ERROR: (CODE:0 MEDIA_ERR_CUSTOM)  MediaError {type: "FLASHLS_ERR_CROSS_DOMAIN", origin: "flash", message: ""}

然后,您需要在此文件中添加或配置 crossdomain.xml 文件:

<?xml version="1.0"?>
<cross-domain-policy>
    <allow-access-from domain="*.mycompany.com" />
    <allow-access-from domain="*.speedtest.net" />
</cross-domain-policy>

如果是第一次将其添加到您的应用程序,则该文件将进入您要允许访问的服务器上文档文件夹的根目录。 例如: http://speedtest.mycompany.com/crossdomain.xml

,并且应将其添加到您的路由中:

@web('/crossdomain.xml', 'template/crossdomain.xml')
def index(request): pass

有关 crossdomain.xml 的更多信息,请点击此处: https://support.ookla.com/hc/en-us/articles/234575708-What-is-crossdomain-xml-and-why-do-I-need-it-