您绝对可以拥有一个始终保持不变的 YouTube 直播链接,即使您开始新的直播。关键概念是:
- 使用 YouTube 的**“直播”** / “串流”设置,并配合一个可重复使用的直播密钥
- 使用您频道的直播网址,该网址始终指向您当前或下一个的直播流
- 可选地将该永久直播网址嵌入到您的 Laravel 应用中
下面是分步指南。
1. “永久性”YouTube 直播链接的两种类型
有两种主要方法可以获得一个稳定的链接:
A. 频道自动更新的直播网址 (推荐)
每个频道都有一个特殊的网址,该网址始终指向当前或即将进行的直播流:
https://www.youtube.com/channel/CHANNEL_ID/live
或者有时是:
https://www.youtube.com/c/YourCustomName/live
https://www.youtube.com/@YourHandle/live
替换:
CHANNEL_ID为您的频道 ID,或者YourCustomName/@YourHandle为您的自定义频道网址 / 用户名。
此网址保持不变。每次您开始直播(使用任何直播密钥),YouTube 都会将此网址重定向到活动的直播视频。
如何获取您的频道直播链接:
- 前往 YouTube 上的频道主页。
- 复制浏览器中的网址,通常看起来像:
https://www.youtube.com/@YourHandle - 在末尾添加
/live:https://www.youtube.com/@YourHandle/live
将此作为您唯一、永久的链接。
B. 使用可重复使用的直播密钥 (适用于您的编码器/OBS)
如果您通过 OBS、Streamlabs、硬件编码器等进行直播,您可以创建一个可重复使用的直播密钥,这样您的编码器设置就不需要更改。
在 YouTube 上:
- 前往 YouTube 工作室 → https://studio.youtube.com
- 点击 创建 → 直播
- 在左侧边栏中,选择 串流 (而不是摄像头,也不是管理)。
- 在 串流设置 下,找到 串流密钥。
- 选择 创建新的串流密钥 (如果您还没有的话),并确保它是可重复使用的,而不是“为每次活动自动生成”。
- 将此直播密钥输入 OBS 或您的编码器一次。
从现在开始:
- 您始终使用相同的直播密钥进行直播。
- YouTube 会创建一个新的直播视频,但您的频道直播网址 (例如,
@YourHandle/live) 将始终指向当前正在直播的内容。
2. 为什么您的直播网址会改变,以及如何避免
默认情况下,每个直播流都有一个唯一的网址,例如:
https://www.youtube.com/watch?v=VIDEO_ID
这个 VIDEO_ID 对于每个新流都会改变,这就是为什么:
- 您无法依赖特定的观看网址保持不变。
- 但您可以依赖频道直播网址保持不变并自动重定向观众。
所以:
- 如果您想要一个永久链接,不要分享
https://www.youtube.com/watch?v=VIDEO_ID。 - 请分享
https://www.youtube.com/@YourHandle/live(或/channel/CHANNEL_ID/live)。
3. 在 Laravel 应用中嵌入永久性 YouTube 直播播放器
如果您想在您的 Laravel 网站上拥有一个始终显示最新直播的 YouTube 直播播放器,您可以在 <iframe> 中嵌入频道直播网址。
简单的静态 Blade 示例
{{-- resources/views/live.blade.php --}}
<div class="ratio ratio-16x9">
<iframe
src="https://www.youtube.com/embed/live_stream?channel=YOUR_CHANNEL_ID"
title="YouTube Live Stream"
frameborder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowfullscreen
></iframe>
</div>
将 YOUR_CHANNEL_ID 替换为您的实际频道 ID。
这个特殊的嵌入网址:
https://www.youtube.com/embed/live_stream?channel=YOUR_CHANNEL_ID
- 始终显示该频道的当前直播流。
- 如果当前没有直播流,它可能会显示最后一个完成的直播或“未直播”的消息。
获取您的频道 ID
- 前往 YouTube 工作室:https://studio.youtube.com
- 点击 设置 → 频道 → 高级设置
- 点击 查看高级设置
- 复制您的频道 ID
然后您可以将其存储在 .env 文件中:
YOUTUBE_CHANNEL_ID=UCxxxxxxxxxxxxxxxxxx
并在您的 Blade 视图中:
<iframe
src="https://www.youtube.com/embed/live_stream?channel={{ config('services.youtube.channel_id') }}"
title="YouTube Live Stream"
frameborder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowfullscreen
></iframe>
并在 config/services.php 中:
'youtube' => [
'channel_id' => env('YOUTUBE_CHANNEL_ID'),
],
4. 总结:一个 URL 用于所有未来的直播
要创建一个始终保持不变的 YouTube 直播链接,请遵循此模式:
-
在 YouTube 工作室中为您的编码器 (OBS 等) 设置一个可重复使用的直播密钥。
-
始终使用该可重复使用的密钥进行直播。
-
向您的观众分发以下永久链接之一:
-
观看链接 (自动重定向):
https://www.youtube.com/@YourHandle/live或https://www.youtube.com/channel/CHANNEL_ID/live -
嵌入链接 (用于网站/Laravel 应用):
https://www.youtube.com/embed/live_stream?channel=YOUR_CHANNEL_ID
-
通过此设置,您可以开始和停止任意数量的新直播,而您的观众 (或您的 Laravel 应用) 将永远使用相同的 URL。
5. 有用的官方资源
-
YouTube 帮助:开始直播 https://support.google.com/youtube/answer/2474026
-
YouTube 帮助:直播设置、功能和技巧 https://support.google.com/youtube/answer/2853700
这些文档更详细地解释了 YouTube 直播基础知识、可重复使用的密钥和推荐设置。