使用 Apple mediastreamsegmenter 的 HTTP 实时流式传输

Posted

技术标签:

【中文标题】使用 Apple mediastreamsegmenter 的 HTTP 实时流式传输【英文标题】:HTTP Live Streaming using Apple mediastreamsegmenter 【发布时间】:2010-07-02 10:00:47 【问题描述】:

我想为 iPhone/iPad 实现 HTTP 直播。我正在遵循苹果的标准和工具。

到目前为止,我的视频源是来自 rtsp://123.123.123.123:554/mpeg4(示例 IP)的实时视频。但是由于 HTTP 实时流和 mediastreamsegmenter 需要通过 UDP 网络传递源,所以我有点扭曲。

所以我使用了 VLC 播放器并首先将 RTSP 流式传输到 UDP。

例如,我有来自 rtsp://123.123.123.554/mpeg4 的流视频源并将其重定向到 udp://@123.123.123.17:1234(示例 ip)。我已经在同一台机器上使用两个 VLC 实例对此进行了测试,以检查是否播放了实时流媒体。它在 VLC 上运行良好。

现在我是用户 MAC OS 10.6.x (Snow leopard)。并使用 HTTP Live Streaming 的最新工具(从 Apple 下载)

我正在从终端执行以下命令

mediastreamsegmenter -b http://demo.dummy.com/stream -s 3 -D -f /Desktop/StreamParts 123.123.123.17:1234

这里 http://demo.dummy.com/stream - 服务器 /Desktop/StreamParts - 用于保存 .ts 文件的本地文件夹 123.123.123.17:1234 - UDP url(从那里完成直播)

但问题是当我执行此命令时。它给了我类似

的错误

无启动访问单元 pid 44(video) 中的错误 -- cc 值应该是 9 是 10,1 是 2,5 是 6,等等。

有什么想法吗?这里出了什么问题?以及此错误消息显示的是什么?

【问题讨论】:

【参考方案1】:

我的直觉是传输不兼容。 Apple 的工具(即 mediastreamsegmenter)期望通过 UDP 传输 MPEG2 传输流,而不仅仅是通过 UDP 发送的 RTSP。我遇到的问题,恐怕是您的下一个问题,是如何正确生成 MPEG2 传输流。

【讨论】:

以上是关于使用 Apple mediastreamsegmenter 的 HTTP 实时流式传输的主要内容,如果未能解决你的问题,请参考以下文章

使用 Apple 登录按钮标题始终显示“SIGN_IN_WITH_APPLE”

为啥编译我的 XCode 项目可以使用 Apple-(B)uild 并且无法使用 Apple-(U)nit 测试编译?

为啥 Apple 使用权利?

Apple 开发者推送通知 APN 证书因过度使用而被吊销(被 Apple 禁止)?

如何使用 Xcode 在 iOS 中添加“使用 Apple 登录”功能

如何配置 Mailgun 以与 Sign in with Apple 和 Apple 的中继服务一起使用?