- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 AVQueuePlayer,我在运行时向其中添加了一些项目。
NSArray *queue = [self.queuePlayer items];
if ([self.queuePlayer canInsertItem:sound afterItem:[queue lastObject]]) [self.queuePlayer insertItem:sound afterItem:[queue lastObject]];
初始化 AVQueuePlayer 时没有添加任何项目。我所做的只是一个分配初始化。我还会在他们查看加载时立即发送播放消息,这样一来添加新项目时它会立即开始播放。
我正在尝试让手机在新项目开始播放时立即振动。
我正在查看在线文档,我发现的唯一有趣的事情是当项目播放结束时发送的通知。
AVPlayerItemDidPlayToEndTimeNotification
有什么解决方法吗?
最佳答案
You can observe the status of a player using key-value observing.
一些额外的细节:
So that you can add and remove observers safely, AVPlayer serializes notifications of changes that occur dynamically during playback on a dispatch queue. By default, this queue is the main queue (see dispatch_get_main_queue). To ensure safe access to a player’s nonatomic properties while dynamic changes in playback state may be reported, you must serialize access with the receiver’s notification queue. In the common case, such serialization is naturally achieved by invoking AVPlayer’s various methods on the main thread or queue.
这是一个简单的例子。创建播放器时,注册以接收状态更改通知:
[self.queuePlayer addObserver:self forKeyPath:@"status" options:kNilOptions context:nil];
然后,添加这个方法,当 queuePlayer
的 status
改变时调用该方法:
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object
change:(NSDictionary *)change context:(void *)context {
if (object == self.queuePlayer && [keyPath isEqualToString:@"status"]) {
if (self.queuePlayer.status == AVPlayerStatusReadyToPlay) {
AudioServicesPlayAlertSound(kSystemSoundID_Vibrate);
}
}
}
(我不确定您想要的确切振动行为,但希望这能为您指明正确的方向。)
关于iphone - 当项目开始播放时振动 AVQueuePlayer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16969275/
我有一个 AVQueuePlayer 可以播放来自互联网的音频文件。它可以在后台与应用程序一起执行,并且效果很好(在后台播放并在后台异步获取新文件)。 当我允许 AVQueuePlayer 在将应用程
我有 5 AVPlayerItems在我的AVQueuePlayer ,设置为 AVPlayerActionAtItemEndAdvance .我在我的 UI 上点击播放,播放第一个,第二个,然后开始
缓冲远程AVPlayerItem时是否可以保持AVQueuePlayer处于 Activity 状态? 当前,当项目进入缓冲状态时,播放停止,并且 MPNowPlayingInfoCenter 设置的
下面是我用一些网址播放 AVQueueplayer 的代码,但播放第一首歌曲几乎需要 10-20 秒。我有 10 首歌曲,但为了引用和精简,我在这里只保留了一首歌。 arrSongs = ["
我有一个 AVQueuePlayer,我在运行时向其中添加了一些项目。 NSArray *queue = [self.queuePlayer items]; if ([self.queuePlayer
对 ios 编程有点陌生。尝试使用 AVQueuePlayer 并播放列表中的多个视频。我已经搜索过,但没有看到与我想要实现的目标相关的示例。如果能指出正确的方向,这个问题可能很容易回答。 我想做的是
我有一个 AVQueuePlayer 属性,其设置如下。 NSLog 语句报告音频应该正常播放(应用程序运行时),但是在模拟器和 iOS 设备本身(iPhone 5s iOS 8.1.1)上进行测试时
我有如下的 QueuePlayer 数组, Print Queue Player array : ( "", "", "" ) 点击按钮我正在播放上面数组中的音频, -(IBA
我使用 avqueueplayer 播放一些非常短的音频。一个项目完成后,将暂停 2 秒,然后播放下一个项目。 问题是,如果播放器暂停,同时按下主页按钮,它不会播放下一个项目,除非我重新进入应用程序。
我用这个视频播放时没有卡顿。但是如何循环播放 secondVideoItem..那是在视频播放后我想将这个视频添加到 10-15time。只有 secondVideoItem 而不是 firstVid
我在 viewDidLoad 方法中设置了一个名为 AVQueuePlayer 的播放器。我还有一个播放该序列的 UIbutton 方法。 这是我的 View 加载方法 AVPlayerItem *f
我正在尝试将采访列表添加到 Xamarin.iOS 中的 AVQueuePlayer,这对我有用。但是,我确实需要能够从我用来创建 AVPlayerItems 的类中获取一些属性 我的面试课: pub
将新项目添加到 AVQueuePlayer 不播放 我有从服务器流式传输 HLS 音频的场景。最初我制作了一个 AVPlayerItem 数组。并初始化 AVQueuePlayer,并在单击按钮时播放
我正在使用 QueuePlayer 播放歌曲列表并且正在播放歌曲。我的问题是我试图在当前项目发生变化时进行跟踪。我尝试向 QueuePlayer 添加观察者,但这不起作用。观察功能没有被调用。任何帮助
我有一个 AVQueuePlayer ,并且在特定情况下,它会在上一首歌曲播放完毕之前开始播放下一首歌曲。它不会同时播放它们,它只是提前切出第一首轨道并开始下一首轨道。当两个轨道都是 http 流时肯
有谁知道 AVQueuePlayer 是否在当前项目即将完成播放时开始缓冲下一个 AVPlayerItem? 我知道文档中没有任何建议,我主要是问是否有人观察到这种行为。 最佳答案 好的,我再次查看了
我使用 AVQueuePlayer 播放一系列从 URL 加载的电影。 我尝试使用我需要播放的所有 AVPlayerItems 数组来初始化播放器实例。 player = [[AVQueuePlaye
我正在尝试开发多文件音频播放器,所以我使用了 AVQueuePlayer,我需要检查播放器何时播放声音或暂停? 对于 AvAudioPlayer,我有属性“isPlaying”,但是对于 AVQueu
我正在使用 AVQueuePlayer用于播放本地保存的多个音频。 供引用,请检查以下代码, for (int j = 0; j < arrPlayData.count; j++) {
我在使用 avqueueplayer 时遇到一些问题,例如当每个项目在队列中结束时,应用程序会卡住 2-3 秒。我正在使用 queueplayer 一个接一个地播放记录,没有间隙。为了实现无间隙黑白播
我是一名优秀的程序员,十分优秀!