MPMoviePlayer在Live Streaming上变黑了

时间:2012-08-23 09:21:27

标签: iphone cocoa-touch mpmovieplayercontroller http-live-streaming mpmovieplayer

我正在使用MPMoviePlayerController在我的应用程序中播放实时流媒体视频。在播放时,屏幕有时会变成黑色,但我能听到音频。为什么这样 ? 。我试图在屏幕变黑时收到通知,但我很不走运。

有谁能告诉我为什么屏幕会变黑以进行直播? 如何在MPMoviePlayer变黑时收到通知?

请帮助我!!

1 个答案:

答案 0 :(得分:2)

HTTP Live Streaming overview可以这么说。

  

内容提供商为流选择的数据速率最高   受目标客户端平台和预期网络的影响   拓扑结构。流媒体协议本身对此没有任何限制   可以使用的数据速率。目前的实施已经实现   使用音频视频流进行测试,数据速率低至64 Kbps   iPhone高达3 Mbps。 64 Kbps的纯音频流   建议作为交替使用缓慢的蜂窝连接。

基本上,如果网络太慢而无法流式传输视频,则将使用纯音频模式。我找不到使用MPMoviePlayerController获取备用更改通知的方法。但是,您可以注册MPMovieMediaTypesAvailableNotification,这样您就可以了解音频/视频/两者是否可用(通过movieMediaTypes属性)。

enum {
   MPMovieMediaTypeMaskNone  = 0,
   MPMovieMediaTypeMaskVideo = 1 << 0,
   MPMovieMediaTypeMaskAudio = 1 << 1
};
typedef NSInteger MPMovieMediaTypeMask;

我不完全确定它会在流媒体切换到音频时通知您,但您可以随时尝试。