【问题标题】:RTSP Streaming on iOS 6 with Xcode 4.6.1带有 Xcode 4.6.1 的 iOS 6 上的 RTSP 流式传输
【发布时间】:2013-06-25 07:50:28
【问题描述】:

我需要开发一个能够接收 RTSP 流的应用。 我一整天都试图在互联网上寻找解决方案/教程,但没有任何成功。 我读了很多关于使用 FFMPEG 或 Live555 的内容(更多 FFMPEG,我还读到使用最新版本的 FFMPEG 时不需要 Live555),但是当我发现关于 stackoverflow 的问题时,我没有看到它以我能理解的形式描述答案真的很短,我无法弄清楚他们试图解释什么。 所以现在我需要问自己。 我使用“Homebrew”下载并安装 FFMPEG,现在当我查看我的目录 /usr/local/ 我可以看到,安装的文件包含在“地窖”的子文件夹中

我也尝试看看这些项目:RTSPPlay by Mooncatventureskxmovie by kolyvan

我并没有真正弄清楚如何处理这些项目,文档是不确定的并且“模糊不清”。 好吧,当我尝试编译这些项目时,kxmovie 失败并出现类似“缺少 avformat.h”的错误, 我将 usr/local/cellar/ffmpeg/1.2.1/lib 中的 dylib 添加到项目中,但似乎这不是正确的方法。 与 RTSPPlay xcodeprj 几乎相同的问题,它返回了“Entitlements.plist”丢失的错误,在完全删除该文件的链接后,我收到 99 多个 Apple Mach-O 链接器错误,老实说,我不明白为什么.

我也想尝试Live555,但我无法看透所有这些晦涩难懂的文件,我再次无法监督文档以及如何为 iphoneos 构建库(我读到这是接收 RTSP 的最简单方法流,但它与其他项目具有相同的混乱文件堆栈)

也许如果有人尝试使用这些项目或自己开发了一个应用程序可以帮助我使用他/她的源代码,或者如果有人正在查看 FFMPEG / Homebrew made dir 的所有内容,他/她可以解释我如何使用它,这可能会帮助我和所有其他正在寻找解决方案的绝望开发人员。

稍作修改:我正在尝试接收 RTSP H.264 解码的视频流。

提前致谢,莫里斯·阿里科格鲁。 (如果您需要任何类型的源代码、链接、屏幕截图等,请告诉我)

【问题讨论】:

  • 可能不会像我应该的那样检查这些论坛,在 rtspplay 我们的小演示中,您不需要 entitlement.plist,在旧 Xcode 版本中需要它还删除 arm7s 架构并编译对于 iPhone 版本,这不适用于模拟器,仅适用于 iPhone。我们也通过 Facebook 应用开发组提供支持
  • 我们这里也有一些教程 www.streammore.tv

标签: iphone ios xcode ffmpeg rtsp


【解决方案1】:

对于正在寻找有效 RTSP 播放器库的任何人,请查看我在网上找到的 Durfu's Mooncat Fork,它在 iOS 8 上运行良好。如果您在实现时遇到困难,我会提供示例代码可以帮到你。

【讨论】:

    【解决方案2】:

    我已经检查了您提到的许多项目,并且在这些项目上经验丰富..

    您可以使用 ffmpeg 库来制作 rtsp 流媒体客户端,因为 ffmpeg 支持 rtsp 协议...但是我在测试中看到一个重要问题,即 ffmpeg 的 rtsp 协议在使用 UDP 传输层时存在一些重要问题用于流式传输...即使使用最新版本(2.01),许多 RTP 数据包在流式传输过程中也会丢失,因此图像有时会出现故障...如果您使用 TCP 或 http 传输层,那么它运行良好...

    对于 live555 项目,当流式传输 rtsp 流时,该库可以很好地与 UDP 和 TCP 传输配合使用。但是 ffmpeg 比 live555 强大得多/具有许多功能。

    如果您决定使用 ffmpeg,那么基本上,您应该按照以下步骤操作,

    1. 建立连接 - avformat_open_input
    2. 查找音频/视频编解码器 - avcodec_find_decoder
    3. 打开音频/视频编解码器 - avcodec_open2
    4. 在循环中从文件/网络流中读取编码数据包 - av_read_frame 一种。 一种。解码音频包 - avcodec_decode_audio4 湾。使用 audiounit/audioqueue 框架填充音频缓冲区 一个。解码视频包 - avcodec_decode_video2 湾。将 yuv 图片转换为 rgb 图片 - sws_scale 或 opengles 着色器

    祝你好运……

    【讨论】:

    • 您能否深入解释一下?如果您能通过分步指南向我解释这一点,那就太好了!
    猜你喜欢
    • 2020-06-05
    • 1970-01-01
    • 1970-01-01
    • 2013-11-16
    • 1970-01-01
    • 2011-11-30
    • 1970-01-01
    • 2014-11-17
    • 1970-01-01
    相关资源
    最近更新 更多