直播推流

阿里云视频直播支持多种方式推流,您可以根据业务使用场景,通过不同设备实现标准直播推流和超低延时直播推流。

前提条件

  • 对于标准直播:您已完成视频直播基本流程中,开通服务生成推流地址和播放地址及之间的所有操作。详细信息,请参见视频直播基本流程

  • 对于超低延时直播:您已完成超低延时直播基本流程中,开通直播服务生成推流地址和播放地址及之间的所有操作。详细信息,请参见超低延时直播基本流程

说明

通过自定义拼接推流地址和播放地址时,请参见推流地址和播放地址。推流代码示例,请参见如何通过PHP或Java代码生成推流地址和播放地址?

标准直播推流

场景一:PC端推流

在 PC(Windows/Mac)端推流时候,您可根据实际情况选择安装OBS进行推流。OBS推流工具支持Windows、Mac和Linux平台,是一个免费的开源的视频录制和视频实时流软件。

本文以Windows端OBS v27.2.3版本为例介绍使用OBS推流,其他平台及版本操作类似。关于OBS更多使用信息,请参见OBS推流工具的使用方法

  1. 下载并安装OBS推流工具。下载地址,请参见OBS Studio

  2. 运行OBS推流工具。

  3. 在菜单栏中选择文件 > 设置

  4. 在设置页面选择推流,配置信息如下所示:

    001

    参数

    描述

    服务

    选择自定义

    服务器

    输入已经生成的鉴权推流地址,例如:rtmp://demo.aliyundoc.com/app/stream?auth_key=1543302081-0-0-9c6e7c8190c10bdfb3c0************

    串流密钥

    串流密钥为空。

  5. 在OBS主界面来源区域添加推流源,然后单击开始推流

    002
  6. (可选)安装阿里云OBS美颜特效插件,调试美颜特效效果。详情请参见OBS美颜插件使用教程

场景二:移动端推流

  1. 使用移动端扫描并安装阿里云直播Demo。

    推流SDK4.1.0demo
    说明

    iOS端扫码安装时如果提示未受信任的企业级开发者,需要在设置 > 通用 > 设备管理中找到Taobao对应的信任描述,并选择信任。

  2. 运行阿里云直播Demo。

  3. 选择摄像头推流录屏推流

    说明

    移动端进行本地视频推流时仅支持视频图像原有yuv格式。

  4. 输入已经生成的鉴权推流地址(例如:rtmp://demo.aliyundoc.com/app/stream?auth_key=1543302081-0-0-9c6e7c8190c10bdfb3c0************),并按照实际需求完成其他参数的配置。

  5. 单击开始推流,开始移动端推流。

场景三:使用直播推流SDK推流

iOS推流SDK

  1. 集成iOS端推流SDK。具体操作,请参见SDK集成

  2. 根据实际需求配置推流参数并推流。具体操作,请参见功能使用

    在配置推流参数或推流时可能会出现异常情况,请参见错误异常及特殊场景处理

Android推流SDK

  1. 集成Android端推流SDK。具体操作,请参见SDK集成

  2. 根据实际需求配置推流参数并推流。具体操作,请参见功能使用

    在配置推流参数或推流时可能会出现异常情况,请参见错误异常及特殊场景处理

超低延时直播推流

超低延时直播推流时,不同场景对直播推流格式有要求。请严格按照您的推流格式和推流端,选择对应的场景指导。

场景一:PC端推流(OBS推RTMP格式流)

  1. 打开OBS推流工具。

  2. 在菜单栏中选择文件 > 设置

  3. 在设置页面选择推流服务器输入已生成的RTMP格式推流地址,例如:rtmp://example.aliyundoc.com/liveApp****/liveStream****?auth_key=1543302081-0-0-9c6e7c8190c10bdfb3c0****

    001
    说明
    • 推流地址由推流域名、AppName、StreamName和鉴权串组成,您需要根据实际情况输入自己的推流地址。

    • 您可以根据实际情况输入串流密钥或者为空。

  4. 在左侧导航栏选择输出关键帧间隔设置不超过3秒,配置设置为baseline

    002
  5. 在左侧导航栏选择高级,在网络配置区域选中动态调整比特率以应对网络拥堵

场景二:PC端推流(OBS推RTS格式流)

OBS插件SDK是为OBS量身打造,无需改动OBS原生框架,接入之后即可实现OBS OutPut功能,可以将OBS采集的音视频画面进行编码并实时推送RTS流至阿里云GRTN网络。详细信息,请参见OBS插件SDK简介

场景:Web端推流(浏览器推RTS格式流)

  1. 进入RTS Web播放器

  2. 单击推流页签。

  3. 展开none下拉框,根据您的实际需求,选择camera(摄像头)或者screen(屏幕共享)。

    如果您选择camera,需要依次单击下方的获取设备按钮,在弹窗中授权访问麦克风和摄像头,授权成功后,再展开选择麦克风和选择摄像头下拉框,选择对应的设备。

    image.png
  4. 单击创建本地流

  5. 输入已生成的RTS格式推流地址。例如:artc://example.aliyundoc.com/liveApp****/liveStream****?auth_key=1543302081-0-0-9c6e7c8190c10bdfb3c0****

  6. 单击开始推流

场景:推流SDK(使用推流SDK推RTS格式流)

使用推流SDK进行RTS推流时,和使用推流SDK进行RTMP推流的方法相同,只需要在调用startPush接口的时候将RTS格式的推流地址传递给推流SDK即可,其他的不需要做改动。

iOS推流SDK

  1. 集成iOS端推流SDK。具体操作,请参见SDK集成

  2. 根据实际需求配置推流参数并推流。具体操作,请参见功能使用

    在配置推流参数或推流时可能会出现异常情况,请参见错误异常及特殊场景处理

Android推流SDK

  1. 集成Android端推流SDK。具体操作,请参见SDK集成

  2. 根据实际需求配置推流参数并推流。具体操作,请参见功能使用

    在配置推流参数或推流时可能会出现异常情况,请参见错误异常及特殊场景处理