- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有 5 AVPlayerItems
在我的AVQueuePlayer
,设置为 AVPlayerActionAtItemEndAdvance
.我在我的 UI 上点击播放,播放第一个,第二个,然后开始播放第三个。然后我按下倒带按钮。我想要发生的是第三个视频倒回到它的开头,然后我收到一个允许我停止的通知。我看到的是我的状态为准备好播放第 4 个项目,然后是当前项目更改为第 4 个项目 - 然后第 4 个项目播放。
为什么第 3 项倒回到起点后第 4 项变为当前项
是我可以阻止它以将播放器设置为不自动前进( AVPlayerActionAtItemEndPause
)的唯一方法,观察每个项目的结尾,并希望我收到关于倒带第三个项目的“播放结束”通知以及当它自然地播放到结尾时。然后在我的最终观察者代码中,我可以检查播放器的速率,如果倒带,则不前进到下一个项目。
最佳答案
我处理这个问题的方法是在开始寻找代码中,设置 actionAtItemEnd
至AVPlayerActionAtItemEndNone
,然后将其重置回 AVPlayerActionAtItemEndAdvance
当寻求结束时。在 iOS6 上,似乎可以在轨道的开头进行搜索。在“结束搜索”代码中,我在开始正常播放之前重置了速率和当前时间。
以下方法由长按手势识别器调用。
- (IBAction)fastRewind:(id)sender
{
UIGestureRecognizer *recog = (UIGestureRecognizer*)sender;
if (recog.state == UIGestureRecognizerStateBegan) {
if (_player.rate == 1) {
NSLog(@"fastRewind begin\n%@", sender);
_player.actionAtItemEnd = AVPlayerActionAtItemEndNone;
_player.rate = -2;
}
} else if (recog.state != UIGestureRecognizerStateChanged) {
// Ended/Canceled
NSLog(@"fastRewind end\n%@", sender);
if (_player.rate < 0) {
_player.rate = 0;
if (CMTimeGetSeconds(_player.currentTime) < 0) {
[_player seekToTime:CMTimeMake(0, 1)];
}
_player.actionAtItemEnd = AVPlayerActionAtItemEndAdvance;
_player.rate = 1;
}
}
}
关于ios - AVQueuePlayer 回退到项目开头时的通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7282360/
我有一个 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 一个接一个地播放记录,没有间隙。为了实现无间隙黑白播
我是一名优秀的程序员,十分优秀!