首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >比特率JWplayer

比特率JWplayer
EN

Stack Overflow用户
提问于 2014-07-16 13:05:29
回答 1查看 3.6K关注 0票数 2

我很难让jwplayer使用不同的比特率。

对于每一个视频,我创建的新输出文件具有不同的后缀,具有较低的比特率:例如,输出1(高比特率):test-源.mp4输出2(中等比特率):test-medium.mp4输出2(低比特率):test-low.mp4

输出文件名是动态的,因为用户可以随心所欲地上传不同的视频文件。

jwplayer配置:

代码语言:javascript
复制
jwplayer('video-container').setup({
    'sources':[
       {'file': "rtmps://" + server + "/mp4:" + media + "-original.mp4?t=" + t}
    ],
    startparam: "start",
    'autostart':false,
    'controlbar':'bottom',
    'viral.onpause':false,
    'viral.oncomplete':false,
    'viral.allowmenu':false,
    'width':'470',
    'height':'320',
    'abouttext':''
});

我的问题是,我应该如何改变这一点,以便jwplayer根据用户的带宽自动播放具有适当比特率的视频。

由于我不能测试这一点(仅在生产中),这种更改是否足够或需要什么?

代码语言:javascript
复制
jwplayer('video-container').setup({
    'sources':[
       {'file': rtmps + "://" + server + "mp4:" + media + "-original.mp4?t=" + t},
       {'file': rtmps + "://" + server + "mp4:" + media + "-medium.mp4?t=" + t},
       {'file': rtmps + "://" + server + "mp4:" + media + "-low.mp4?t=" + t}
    ],
    startparam: "start",
    'autostart':false,
    'controlbar':'bottom',
    'viral.onpause':false,
    'viral.oncomplete':false,
    'viral.allowmenu':false,
    'width':'470',
    'height':'320',
    'abouttext':''
});

我使用的是最新版本的jwplayer。任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-16 14:51:49

对于RTMP,您需要使用SMIL清单。

http://support.jwplayer.com/customer/portal/articles/1430398-adaptive-rtmp-streaming

这是玩家代码:

代码语言:javascript
复制
jwplayer("myElement").setup({
    file: "/assets/myVideo.smil",
    image: "/assets/myVideo.jpg",
    height: 360,
    width: 640
});

这是SMIL:

代码语言:javascript
复制
<smil>
  <head>
    <meta base="rtmp://example.com/vod/" />
  </head>
  <body>
    <switch>
      <video src="myVideo-high.mp4" height="720" system-bitrate="2000000" width="1280" />
      <video src="myVideo-medium.mp4" height="360" system-bitrate="800000" width="640" />
      <video src="myVideo-low.mp4" height="180" system-bitrate="300000" width="320" />
    </switch>
  </body>
</smil>

不要使用HDS / F4M作为来源之一,因为播放器不支持它。

对于HLS,您也需要创建一个包含多个比特率的HLS清单。

http://support.jwplayer.com/customer/portal/articles/1430240-hls-adaptive-streaming

代码语言:javascript
复制
#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1600000,RESOLUTION=1280x720,NAME="720p HD"
1280/prog_index.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=832000,RESOLUTION=640x360,NAME="360p SD"
640/prog_index.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=320000,RESOLUTION=320x180,NAME="180p 3G"
320/prog_index.m3u8

希望这能有所帮助!

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24781580

复制
相关文章

相似问题

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