首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用iPhone作为mediastreamsegmenter的输入- HTTP Live Streaming

使用iPhone作为mediastreamsegmenter的输入- HTTP Live Streaming
EN

Stack Overflow用户
提问于 2011-03-09 19:23:24
回答 2查看 2.9K关注 0票数 4

我开始研究HTTP直播流媒体协议,感觉非常有趣。已阅读由Apple提供的完整文档。

我尝试了Vedio On Demand和Live Streaming,使用VLC player作为流媒体服务器,遵循其中一个开发人员论坛中提到的步骤,我能够成功地流媒体它。

现在,我希望我的iPhone作为流媒体的来源,并希望使用另一个iPhone来查看该内容。

如上所述,mediastreamsegmenter是通过UDP网络连接或从sdtin接收MPEG-2传输流的工具。

有人可以提出一些光,如何开始使用我的iPhone作为流服务器,并能够流的内容。据我所知,我认为必须有一个客户端(IPhone)应用程序,它将内容发送到服务器,服务器再将流转换为MPEG-2传输流,并将其发送到媒体流分段器。我希望剩下的部分与我为VLC播放器流式播放时所做的相同。

如果有人能帮我解决这个问题,那就太好了。

EN

回答 2

Stack Overflow用户

发布于 2011-03-14 13:03:16

这只是我的猜测。如果有一个肯定的答案,我尽量不发表这篇文章。然而,直到现在,仍然没有答案。所以我写这篇文章只是为了分享我的观点。但是,很抱歉,这不是积极的。

如果你只想从iOS设备上传输视频,这很简单。只需发送视频文件本身。所以我假设你想要的是实时视频流媒体。播放我目前正在录制的内容。

几周前我确实想过这个问题,但是我不能成功。问题不在介质分段器。MPEG2 TS只是一个容器,分割只是分割视频,很容易实现(?)规格准确。

真正的问题是视频编码。iOS不提供来自摄像头输入的压缩直播流。(也许还没有?)压缩后的流只能存储到磁盘中。应该有一个内部获取压缩视频流的方法。因为没有它,FaceTime是不可能的。然而,它不提供给第三方。

可以连续存储短视频并将其上传到服务器。但是启动/完成视频会话需要太长的时间。所以我放弃了这个方法。

作为另一种方式,iOS提供未压缩的视频流,因此您可以自己压缩原始视频流。使用ffmpeg或类似的东西。然而,苹果的视频编码利用硬件特性来提高性能(这可以在较小的尺寸下使视频质量更好)并节省能源。ffmpeg只在软件中做所有的事情。当然,您可以自己制作硬件加速编码器,也可以从某些供应商那里购买。

市场上有一些以视频直播为特色的应用。我没有用过它们。但也许是其中的一个。

  • 传输原始帧。(无压缩或快速但弱的compression)
  • ffmpeg编码器based.
  • independent硬件加速编码器implementation.

第一个需要太大的带宽,也消耗很大的能量。

第二个绝对慢并且消耗大量的能量。然而,这可能就足够了。

第三,对于小规模的应用程序来说,开发成本太高。但如果你有足够的预算,这是最好的。我不知道市面上有为iOS预先实现的库。

我希望苹果能发布这种压缩的视频流。使用苹果的硬件加速编码器进行压缩。但是,除非苹果公司决定放弃保护设备之间的高质量视频直播功能作为杀手级功能,否则这种情况可能不会发生。FaceTime。

然而,苹果也有可能在某个时候发布这个API。我不确定我搜索了所有的API。有可能我没能检查到一些重要的东西。

更新

我发现了AVAssetWriter类,它可以将视频数据以压缩方式写入文件。这可能是制作这类应用程序的关键。

票数 2
EN

Stack Overflow用户

发布于 2011-12-30 16:42:48

Video Encoding using AVAssetWriter - CRASHES上有一个很好的AVAssetWriter和AVAssetReader的例子。您可以通过读卡器将收集到的数据发送到网络上。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5245071

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档