边转边播是面向视频在线播放需求的实时转码功能。通过阅读本文,您可以了解边转边播功能的优势以及如何使用边转边播。
功能简介
不同于媒体转码需要在视频上传完成后等待整个视频转码完成才能播放,边转边播作为实时转码功能,可以实现原视频文件上传完成后立即开始播放,并在播放时仅对需要播放的视频片段进行转码。边转边播主要能为您带来:
-
边播放边转码,播放无需等待。
-
转码优化,秒级开播跳播,接近本地的播放体验。
-
不播放不转码,即使转码文件删除了也能重新转,显著节省转码和存储成本。
-
支持几十种转码参数,转码参数可高度自定义。
-
兼容性高,支持300+种音视频格式。
边转边播不支持匿名播放。
使用流程
-
将视频文件上传到对象存储OSS。
-
通过GenerateVideoPlaylist接口快速生成媒体播放列表文件,并使用OSS的签名功能对播放列表进行签名,最终获取签名后的播放列表。
-
播放器获取播放列表进行播放,播放过程中自动触发边转边播功能。
使用场景
-
网盘:用户上传视频到网盘,各种网盘客户端立即能根据网络情况选择不同的分辨率进行播放。既保证了播放的实时性,又能确保视频在不同设备上的兼容性。且网盘中大部分视频都是冷视频,使用边转边播功能,没有被用户播放的视频内容不会触发转码,极大节省了转码和存储成本。
-
聊天软件视频预览:在即时通讯或社交媒体平台中,发送方把视频发送完毕(服务端接收完成),接收方立刻可以开始播放视频,提高交流的实时性。历史聊天记录中长期不被观看的视频,转码生成的视频文件可以定期清理以降低存储成本,再次播放时亦可立刻播放。
-
网络论坛与博客交流:使用边转边播功能,用户在要分享的原视频上传完成后,其他用户可以立即播放转码后的视频,同时保证视频播放的流畅性、清晰度和兼容性。
功能特性
边转边播的更多功能特性如下表所示。
|
特性 |
说明 |
|
标准化 |
|
|
低成本 |
|
|
高效率 |
|
支持音视频格式列表
边转边播支持的音视频格式有300多种,几乎包含了所有常见的音视频格式。下面是边转边播支持的部分常见音视频格式。
|
输入视频格式 |
avi、mov、flv、mkv、webm、mpeg、wmv、rm、vob、ts等所有主流格式 |
|
输入音频格式 |
mp3、wav、aac、flac、wma等所有主流格式 |
|
输出容器格式 |
ts |
前提条件
-
已开通OSS服务、创建存储空间并上传文件到存储空间。具体操作,请参见控制台快速入门。
-
已开通智能媒体管理服务并创建项目。具体操作,请参见开通产品和创建项目。
说明您也可以调用CreateProject接口创建项目。
您可以调用ListProjects - 列出所有项目信息的列表接口列出指定地域下已创建的所有项目信息。
-
使用边转边播功能时,您需要为RAM用户授予IMM处理所需的相关权限。
-
如您对源视频或输出目标视频所在Bucket启用了防盗链,请确保您设置“允许空Referer”的防盗链策略。
-
如您的播放器需跨域访问OSS,请务必为目标视频所在的Bucket启用OSS跨域访问,请参见:跨域设置。
使用方法
使用Media Playlist示例
转码信息
-
源视频信息
-
视频格式:AVI
-
视频源地址:oss://your-oss-bucket-name/test.avi
-
-
目标视频信息
-
转码分片大小:10秒
-
预转视频长度:36秒
-
视频流格式:H.264
-
视频分辨率:1280x720
-
视频帧率:25 fps
-
视频码率:2 Mbps
-
音频流格式:AAC
-
音频码率:128 Kbps
-
目标文件存储路径前缀:oss://your-oss-bucket-name/output/media
-
步骤一:生成播放列表
步骤二:对播放列表签名
步骤三:播放视频
使用Master Playlist示例
转码信息
-
源视频信息
-
视频格式:AVI
-
视频源地址:oss://your-oss-bucket-name/test.avi
-
-
Master playlist地址:oss://your-oss-bucket-name/output/master.m3u8
-
目标视频信息1
-
转码分片大小:10秒
-
预转视频长度:36秒
-
视频流格式:H.264
-
视频分辨率:1920x1080
-
视频帧率:25 fps
-
音频流格式:AAC
-
音频码率:128 Kbps
-
目标文件存储路径前缀:oss://your-oss-bucket-name/output/1080p/1080p
-
-
目标视频信息2
-
转码分片大小:10秒
-
预转视频长度:36秒
-
视频流格式:H.264
-
视频分辨率:1280x720
-
视频帧率:25 fps
-
音频流格式:AAC
-
音频码率:96 Kbps
-
目标文件存储路径前缀:oss://your-oss-bucket-name/output/720p/720p
-
-
目标视频信息3
-
转码分片大小:10秒
-
预转视频长度:36秒
-
视频流格式:H.264
-
视频分辨率:720x540
-
视频帧率:25 fps
-
音频流格式:AAC
-
音频码率:64 Kbps
-
目标文件存储路径前缀:oss://your-oss-bucket-name/output/540p/540p
-
步骤一:生成播放列表
步骤二:对播放列表签名
步骤三:播放视频
常见问题
需要使用定制的播放器吗?
不需要。边转边播功能支持标准的HLS协议,您使用支持标准HLS协议的播放器(例如:阿里云Aliplayer播放器,Safari浏览器)即可使用边转边播功能。
输出文件包括有哪些?
我们会根据您指定的输入路径前缀生成m3u8文件和ts文件,m3u8文件立刻生成。
如果您指定了预转时长,系统将异步生成与该预转时长相对应的TS文件。未指定预转的部分将在视频播放时按需触发异步转码。如果视频从未播放,则不会为未指定预转的部分生成TS文件。例如,如果视频从15分钟的位置开始播放,系统仅会从该位置开始进行转码。相应生成的文件目录树如下:
.
├── outobjprefix.m3u8
├── outobjprefix-c280f054328fcde47c1732a8f2915009-0.ts
├── outobjprefix-c280f054328fcde47c1732a8f2915009-1.ts
├── outobjprefix-c280f054328fcde47c1732a8f2915009-2.ts
├── outobjprefix-c280f054328fcde47c1732a8f2915009-3.ts
已经生成的ts文件手动删除后能正常播放吗?
可以。只要视频源文件和m3u8播放列表未被删除,手动删除部分或全部ts文件后,视频仍能正常播放。这是因为当m3u8播放列表再次被请求时,会触发ts文件的重新生成。这种方法允许对之前已播放但长时间未被观看的视频的ts文件进行清理,从而减少存储成本,而不影响视频未来的重新播放。
能使用非边转边播的m3u8文件做边转边播吗?
不允许使用非边转边播生成的m3u8文件来实现边转边播功能。
能使用CDN为边转边播加速吗?
可以。详情参见使用CDN为边转边播加速。