什么是 RTMP 地址?

RTMP 地址 是一个用于将您的直播视频和音频内容推流到服务器的专用网络地址,它不是观众用来观看直播的链接,而是您在直播软件(如 OBS、Streamlabs)中设置的“上传”地址。

直播 rtmp地址
(图片来源网络,侵删)
  • RTMP (Real-Time Messaging Protocol):是一种专为实时数据传输设计的协议,最初由 Adobe 开发,它以其低延迟和高稳定性而闻名,是专业直播推流的事实标准。
  • 它不是观看地址:观众观看直播通常使用 HLS (HTTP Live Streaming) 协议的地址(https://.../playlist.m3u8),因为它能在各种设备和浏览器上良好播放,而 RTMP 主要用于推流环节。

一个完整的 RTMP 地址通常包含三部分: rtmp://[服务器地址]:[端口号]/[直播流名称]

  • 服务器地址:您要连接的服务器的域名或 IP 地址。
  • 端口号:服务器上用于 RTMP 通信的端口,常见的是 1935,但也可能是其他端口。
  • 直播流名称:一个唯一的标识符,用于区分不同的直播流,服务器会根据这个名称来存储和分发您的直播内容。

如何获取 RTMP 地址?

获取 RTMP 地址的途径取决于您的直播目的,主要有以下几种情况:

使用第三方直播平台(最常见)

对于绝大多数个人主播、游戏主播和企业用户来说,这是最简单的方式,平台已经搭建好了强大的服务器和全球 CDN 网络,您只需要注册账号即可。

主流平台及获取步骤:

直播 rtmp地址
(图片来源网络,侵删)
  • Bilibili (B站)

    • 获取步骤
      1. 登录 B站直播中心:https://link.bilibili.com/p/center/index#/live
      2. 点击“开始直播”或“开播设置”。
      3. 在弹出的窗口中,找到 “推流地址”“RTMP地址” 标签页。
      4. 您会看到一个完整的地址,格式类似:rtmp://txy.live-play.acgvideo.com/live/
      5. 下面还有一个 “串流码” (Stream Key),这是地址的一部分,也是验证您身份的关键。
    • 示例地址rtmp://txy.live-play.acgvideo.com/live/BILIVE_xxxxxx (BILIVE_xxxxxx 就是您的串流码)
  • 抖音 / 快手

    • 获取步骤
      1. 使用创作者账号登录抖音或快手的直播伴侣 PC 客户端。
      2. 点击“开始直播”或进入“直播管理”页面。
      3. 系统会自动生成一个推流地址和串流码,您可以直接复制。
    • 注意:这些平台通常对推流地址和串流码有严格的绑定,每次开播都可能不同,务必使用客户端提供的最新信息。
  • YouTube

    • 获取步骤
      1. 登录 YouTube Studio。
      2. 在左侧菜单栏选择“创建” > “进行直播”。
      3. 点击“获取开始直播”。
      4. 在“流密钥和设置”部分,您会找到 “服务器信息”,里面包含了完整的 RTMP 地址和您的 “流密钥” (Stream Key)。
    • 示例地址rtmp://a.rtmp.youtube.com/live2/
  • Twitch

    直播 rtmp地址
    (图片来源网络,侵删)
    • 获取步骤
      1. 登录 Twitch 的 Creator Dashboard。
      2. 在左侧菜单栏选择“Stream Manager”。
      3. 在“Stream Key”部分,点击“Show Key”即可看到您的 RTMP 地址和流密钥。
    • 示例地址rtmp://live.twitch.tv/app/

自建直播服务器 (适合高级用户或企业)

如果您有技术能力,不希望依赖第三方平台,可以自己搭建直播服务器,这需要服务器管理知识。

  • 常用开源软件
    • Nginx-RTMP Module:基于 Nginx 的一个模块,功能强大,配置灵活,是自建服务器的首选。
    • SRS (Simple RTMP Server):一个功能完善的国产开源流媒体服务器,专为直播场景优化,有详细的文档和社区支持。
  • 获取地址
    • 在您自己配置的 Nginx 或 SRS 服务器配置文件中,您会定义 application,这个 application 的名字就是您的 “直播流名称”
    • 您服务器的公网 IP 或域名就是 “服务器地址”
    • 您在配置文件中指定的端口(默认为 1935“端口号”
    • 示例地址:如果您服务器 IP 是 45.67.89,应用名为 live,那么地址就是 rtmp://123.45.67.89:1935/live,然后您需要一个独立的、安全的 “串流码” (Stream Key) 来推流。

如何使用 RTMP 地址进行直播?(以 OBS 为例)

获取到 RTMP 地址和串流码后,您就可以使用直播软件开始推流了,这里以最流行的 OBS Studio 为例。

第一步:准备

  1. 下载并安装 OBS Studio:https://obsproject.com/
  2. 获取您的 RTMP 地址和串流码(来自 B站、抖音等平台或您的自建服务器)。

第二步:配置 OBS

  1. 打开 OBS,进入“文件” > “设置”。
  2. 设置视频
    • 在“视频”选项卡中,设置您的“基础分辨率”(通常是您的显示器分辨率或游戏分辨率)和“输出分辨率”(直播推荐的分辨率,如 1920x1080, 1280x720)。
    • 设置“常见 FPS 值”(帧率,如 30, 60)。
  3. 设置推流(最关键的一步)
    • 切换到 “推流” 选项卡。
    • 在“服务”下拉菜单中,选择 “自定义”
    • “服务器” 输入框中,粘贴您完整的 RTMP 地址rtmp://txy.live-play.acgvideo.com/live/)。
    • “推流密钥” 输入框中,粘贴您的 串流码BILIVE_xxxxxx)。
    • 注意:串流码是您的“钥匙”,请务必保密,不要泄露给他人,否则别人可以用您的账号进行恶意直播。
  4. 设置输出
    • 切换到 “输出” 选项卡。
    • 在“输出模式”中选择 “高级”
    • 在“输出”标签页下,确保“音频”和“视频”轨道都已勾选,并根据您的需求选择编码器(如 x264 或 NVENC)。
  5. 设置来源
    • 在 OBS 主界面的“来源”框中,点击 号。
    • 添加您要直播的内容,采集窗口”(捕获游戏窗口)、“视频采集设备”(摄像头)、“图像”等。

第三步:开始直播

  1. 点击 OBS 主界面右下角的 “开始推流” 按钮。
  2. OBS 会开始将您的画面和声音通过您设置的 RTMP 地址发送到服务器。
  3. 您可以打开您的直播平台(如 B站直播页面),如果一切正常,您就能看到直播画面了。

常见问题与注意事项

  • Q: 为什么我的 RTMP 地址无法连接?

    • A:
      1. 检查地址和密钥:确保 RTMP 地址和串流码完全正确,没有多余的空格或字符。
      2. 检查网络:确保您的网络稳定,并且没有防火墙阻止 OBS 连接到服务器的端口(通常是 1935)。
      3. 检查服务器状态:如果是自建服务器,检查服务是否正在运行,如果是平台,可能是平台服务器暂时故障。
      4. 检查端口:确认您使用的端口是否正确,有些平台可能使用非标准的 1935 端口。
  • Q: 观众用什么链接看直播?

    • A: 观众使用的是平台生成的 HLS 链接,这个链接通常可以在您直播平台的“直播管理”或“分享”页面找到,它通常以 .m3u8 通过 CDN 分发给全球的观众。
  • Q: RTMP 和 HLS 有什么区别?

    • A:
      • RTMP:主要用于推流,优点是延迟极低(1-3秒),缺点是跨平台性差,不适合在普通浏览器中直接播放。
      • HLS:主要用于播放,优点是兼容性极好(所有浏览器、手机、智能电视都支持),通过 CDN 分发,抗网络抖动能力强,缺点是延迟相对较高(通常在 5-15 秒,甚至更长)。
    • 工作流程OBS (推流) -> RTMP地址 -> 服务器 -> 转码成HLS -> 观众 (通过HLS链接播放)

希望这份详细的指南能帮助您完全理解和使用直播 RTMP 地址!