【问题标题】:Youtube encoder won't start for live streamsYoutube 编码器无法启动直播
【发布时间】:2017-12-19 11:20:27
【问题描述】:

我正在尝试在 youtube 上进行直播。我想用 H264 视频和 AAC 音频流式传输 360° 内容。流从我的移动应用程序中的 youtube live api 开始,librtmp 用于传递视频和音频数据包。我很容易达到直播健康状况良好并且我的直播和直播绑定成功的地步。

但是,当我尝试像这样转换到“testing”时:

YoutubeManager.this.youtube.liveBroadcasts().transition("testing", liveBroadcast.getId(), "status").execute();

我每次都卡在“startTesting”状态(100% 可重现),而我希望它在几秒钟后变为测试状态,以便我将其更改为实时状态。

我不知道发生了什么,因为在 youtube 直播控制室中一切似乎都很好,但编码器无法启动。

这是一个常见问题吗?有没有办法访问编码器日志?如果您需要更多信息,请随时问我。

问候。

【问题讨论】:

  • 您可以测试this thread提供的解决方案。 YouTube 流式传输选项会创建一个新的直播活动,但如果您希望直播在您的主 youtube 频道上开始,请使用自定义 RTMP URL,即 rtmp://a.rtmp.youtube.com/live2/YOUR_KEY。工作更加无缝!
  • “现在直播”中我频道上的直播有效!它帮助我了解了如何修复事件中的流!仅在我的频道上流式传输对我来说不是一个解决方案,因为我发送的 360° 视频流并未以相应的格式显示。

标签: youtube youtube-api youtube-livestreaming-api


【解决方案1】:

我找到了一个临时修复方法!

我注意到两件事:

  • 启用自动启动选项后,只要我停止发送数据,流就会将其状态更改为 startLive。它表明编码器正在尝试启动,但在收到其他一些数据包之前它太慢了(我猜)
  • 当我按照@noogui 的建议尝试流式传输到“立即流式传输”URL 时,它成功了!所以我检查了现在的流和事件配置有什么不同。

事实证明,我只需要激活低延迟选项,因为它在流现在配置中默认完成。

我认为这是一个临时修复,因为我真的不知道为什么编码器没有启动,而且它不能与自动启动选项一起使用......所以我希望如果 Youtube 再做一次,它不会再次中断改变他们的编码器。

所以,如果您必须使用 Youtube api,祝大家好运!

【讨论】:

    猜你喜欢
    • 2016-01-23
    • 2020-12-07
    • 2016-02-23
    • 1970-01-01
    • 2021-11-21
    • 1970-01-01
    • 1970-01-01
    • 2016-05-02
    • 2019-01-17
    相关资源
    最近更新 更多