【问题标题】:Record HTTP Live Streaming Video To File While Watching?观看时将 HTTP 实时流视频录制到文件?
【发布时间】:2011-10-04 01:01:43
【问题描述】:

我正在尝试在我正在开发的应用程序中创建类似流视频 DVR 的功能。我有一个已成功在 iPad 上播放的 HTTP Live Stream。我希望用户能够按下“录制”按钮,并开始录制当前正在播放的视频。可以从应用程序或相机胶卷访问此视频文件。目前,我正在使用 MPMoviePlayerController 对象来播放视频流。在 Apple 的文档中,我没有看到任何从对象访问数据的方法。以下是我对解决此问题的一些想法。

1) 以某种方式从 MPMoviePlayerController 访问视频数据,并将其写入文件。或者使用其他类型的播放器对象,让我可以播​​放视频并访问当前正在播放的数据。

2) 实现某种截屏记录,获取 iPad 屏幕的视频截屏。这将允许我以“屏幕截图”的方式录制视频。

3) 找到由 MPMoviePlayerController 存储的 HTTP Live Streaming 视频片段。据推测,它们需要存储在 iPad 上的某个地方进行播放。有没有办法访问这些文件?

4) 在流式传输文件时通过 http 手动下载流式视频片段。这似乎并不理想,因为流必须下载两次。

5) 这可以工作。定期将视频片段下载到 iPhone。在 iPhone 上设置本地 http 服务器并将视频服务器发送到 MPMoviePlayerController。这样,可以将视频片段标记为录制并组合成视频。

6) 我确实可以控制流媒体服务器。我可以编写一些服务器端代码来在服务器端录制视频,然后将视频发送到 iPad。我宁愿不这样做。

有没有人做过这些事情?理想情况下,iPhone 将能够以某种方式访问​​视频数据并轻松记录它。如果没有必要,我宁愿不使用选项 4、5 或 6(上文)。

提前致谢。

【问题讨论】:

  • 你有什么关于这个的吗?
  • @David 你完成了这个功能吗?如果是这样,您能否发布一些相关代码或为我们指明正确的方向?

标签: iphone cocoa-touch ipad streaming mpmovieplayercontroller


【解决方案1】:

由于可用空间有限以及电池寿命、处理能力、用户停止 dvr 后的清理程序等其他因素,不鼓励在设备上安装 DVR。

如果你想在 iOS 设备(或其他使用 HLS 的设备)上实现 DVR 播放,我建议你保留视频服务器端。直播流已经在服务器端捕获和分段,您所要做的就是将分段保留更长的时间,而不是删除它们。通过使用EXT-X-PLAYLIST-TYPEEXT-X-MEDIA-SEQUENCE 标签,您可以向播放器建议他正在打开一个有可用DVR(早期)视频的直播。

或者,您可以使用开箱即用的服务器,例如 Wowza。 Here's an article on how to achieve this with Wowza

【讨论】:

  • 嘿,可以在数码单反相机或任何相机上捕捉视频,并在我们的网站上进行直播并在我们的服务器上录制视频吗?
  • 这个问题有点跑题了。此外,在 cmets 中发布问题可能不是最好的方法。否则,是的,这是可能的,但你几乎没有提供你正在使用服务器端的细节。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-03
  • 2011-03-24
  • 1970-01-01
相关资源
最近更新 更多