【问题标题】:Convert video Input Stream to RTMP将视频输入流转换为 RTMP
【发布时间】:2012-04-24 19:04:08
【问题描述】:

我想将视频录制从我的 android 手机流式传输到网络媒体服务器。

第一个问题是当设置MediaRecorder 输出到套接字时,流缺少一些mdat 大小的标头。这可以通过在本地预处理该流并将丢失的数据添加到流中以生成有效的输出流来解决。

问题是如何从那里着手。

如何将该流输出为 RTMP 流?

【问题讨论】:

  • 我假设您已经查看了当前的解决方案,例如 this one 并确定它们不能满足您的需求?当然,常见的替代方法是使用 Android 原生支持的RTSP。看来您已经这样做了(说明需要更新数据包结构,例如 mdat 大小标头)。 Red5 和 Wowza 似乎没有完整的 RTSP 支持,但如果你走这条路,this 可能会工作。
  • @MrGomez 如果您找到了如何使用 RTMP 从 android 流式传输到服务器的解决方案 - 请提供。谢谢
  • 我觉得PLDroidCameraStreaming是个不错的选择。

标签: android video streaming rtp rtmp


【解决方案1】:

如果您在 Android 设备上使用网络浏览器,则可以使用 WebRTC 进行视频捕获和服务器端录制,即使用 Web Call Server 4

因此完整路径为:

Android Chrome [WebRTC] > WCS4 > 录制

所以这里不需要RTMP协议。

如果您使用的是独立的 RTMP 应用程序,则可以使用任何 RTMP 服务器进行视频录制。据我所知,Wowza 支持 H.264+Speex 录制。

【讨论】:

    【解决方案2】:

    首先,让我们解开你的问题。正如您所推测的,Android 目前不支持RTMP。您可以使用few side libraries 来添加支持,但这些可能不是完整的实现,或者有其他不良副作用和错误导致它们无法满足您的需求。

    The common alternative 在这种情况下是使用RTSP。它提供了与has its own RFC 类似的会话格式,并且当与 RTP 结合使用时,它的数据包结构与您所需的协议非常相似(没有一些细节)。您可以在此处执行必要的修复以将 RTP/RTSP 转换为 RTMP,但如前所述,目前此类工作超出了您的应用程序的开发范围。

    所以,假设您想使用 RTMP (invalidating this thread),而 the above-linked library 不能满足您的需求。

    例如,您可以通过 follow this tutorial 使用 Livu、Wowza 和 Adob​​e Flash Player 进行录制和播放,并与 the Livu developer(s) 讨论他们的客户端许可事宜。或者,您可以使用this client library 及其完整的Android recorder example 来构建您的客户端。

    总结一下:

    RTSP

    RTMP

    祝您申请顺利。我承认我对所有这些库的理解不够全面,但在撰写本文时,这些似乎是该领域的标准解决方案。

    编辑:

    根据OP,走RTMP库集:

    简而言之:需要做更多的工作。此处需要其他答案以及对这些示例的改进。

    【讨论】:

    • AFAIR,RSSP 不是一个选项,因为它需要设备来提供视频。我希望设备可以将视频发布到服务器。
    • @MarkoKocić 根据我的理解和阅读,Android 的发布功能在此协议下是合理的。但是,让我们暂时忽略它。您能否详细说明为什么这套 RTMP 解决方案不适合您?接受或反驳它们将极大地帮助我和其他回答者更好地了解您的需求。
    • @MarkoKocić 明白了。当我有机会看看我是否能让这些更好地满足您的需求时,我会进行更多的研究。将来,请将您的回复作为评论或问题更新进行处理; updating an answer directly 除了社区 wiki 帖子之外,根据 SO 的风格指南,除了其他内容之外,这不是理想的编辑。 :)
    • @MarkoKocić 在半赏金解雇之前未能完全回答这个问题我并不特别自豪(公平地说,我上周忙得不可开交)。我仍在寻找更好的解决方案,但如果其他人用简洁而正确的答案来解决这个问题,我肯定不会抱怨!
    • 你能谈谈如何从rtmp服务器here is my post获取流视频
    猜你喜欢
    • 2021-10-06
    • 1970-01-01
    • 2011-04-29
    • 2014-04-26
    • 2019-10-09
    • 1970-01-01
    • 1970-01-01
    • 2018-08-20
    • 1970-01-01
    相关资源
    最近更新 更多