问题标签 [avqueueplayer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
908 浏览

iphone - 在 iphone 的 AVQueuePlayer 中设置寻道时间

我正在开发一个应用程序,我想同时播放两个视频,这是不可能的MPMoviePlayer。所以我习惯AVQueuePlayer了播放视频。由于我成功播放视频,但问题在于跳到特定时间。为此,我们有方法调用seekToTime,我们需要CMTime datatype.

我能够在 1、2、3 秒等时间跳转,我的问题是我想在 1.2、1.3、1.4 秒等时间跳转,但当时我无法移动视频。

谁能知道这个问题的解决方案,而不是请帮我解决这个问题。

0 投票
2 回答
1456 浏览

iphone - 在 AVQueuePlayer 中寻找时间

任何人都可以帮助我在特定时间寻找AVQueuePlayer吗?

我已经使用这个控制器在 iPhone 中播放视频,因为我需要同时播放两个视频。但我的问题是在视频中导航并跳转到特定时间,我无法做到这一点。

我知道这种方法,[controller seekToTime:(CMTime)]但它没有将视频移动到视频的确切位置。

有谁知道解决方案?

0 投票
0 回答
1150 浏览

iphone - 使用 AVQueuePlayer 循环单个 playerItem

我正在使用下面的代码循环playerItem一个AVQueuePlayer

它在模拟器上工作正常,即使仪器表明泄漏类似于AudioToolbox SimAggregateDevice::SimAggregateDevice(__CFString const*, __CFString const*, long&),人们说这只是一些“帧泄漏”,在设备上会很好,但是当我在设备上运行它时,仪器没有显示泄漏,而是崩溃......我想念什么吗?感谢是否有人可以帮助我。

有时 playerItem 会在线流文件,所以不能使用AVAudioPlayer


最后,我发现是因为_playerItemFilePath. 已经不存在了,需要保留NSStringreturn by NSBundle'smethod 。pathForResource但我仍然想知道为什么它可以在模拟器上运行。毕竟泄漏audioToolbox也是固定的,所以任何人遇到有人提到的“框架泄漏”可能需要再次查看代码。它会因为一些小错误而出现。

0 投票
2 回答
721 浏览

iphone - 设置 AVQueuePlayer 的音量

我已经使用 AVQueuePlayer 同时播放两个视频,现在我的应用程序出现了一些问题。我想在播放视频时将其静音。但是没有找到设置音量的方法。

谁能帮我在 AVQueuePlayer 中设置音量。

提前致谢

0 投票
1 回答
348 浏览

iphone - 使用 AVQueuePlayer 强制/尊重 PlayItem 之间的所需间隙

大家好,我AVQueuePlayer用来播放一系列媒体文件(音频、视频)。我有时会PlayItems比我需要的持续时间短,即我希望某些项目之间保持沉默。我一直在考虑尝试使用某种组合addPeriodicTimeObserverForInterval addBoundaryTimeObserverForTimes或运行我自己的NSTimer.

它不需要非常准确 + 或 - 1 秒是可以接受的。我想知道是否有任何关于使用这些 API 调用来实现这种功能的集体智慧?

0 投票
2 回答
1946 浏览

ios - 控制 avqueueplayer 中项目的预缓冲

请有人告诉我是否有一种方法可以选择性地预缓冲AVQueuePlayer数组中的 avplayeritems,而不是将其保留AVQueuePlayer为仅在第一个项目完成播放时才加载下一个项目的自动方式。 

我正在加载一系列 4 个短片剪辑,我想在告诉AVQueuePlayer播放数组之前预先缓存它们。实际上有没有一种方法可以深入 avqueueplayer 并根据需要控制预缓冲?

现在,凭借其默认的延迟加载行为,我在播放中遇到了一些问题,剪辑甚至无法正常播放,因为它AVQueuePlayer正在尝试在播放时加载下一个剪辑。我在部署到实际设备的 iPad 上执行此操作,而不是使用模拟器。

您可以通过调用 mpmovieplayer 来执行此操作,[player prepareToPlay];它基本上手动启动您想要的每个视频文件的加载,然后您可以通过观察mpmovieplayerLoadstateDidChange通知并测试loadState值以查看它是否已完全加载来检查加载是否完成,然后告诉mpmovieplayer 播放。你怎么能有效地做类似的事情AVQueuePlayer呢?

这甚至是可能的还是我发现了它的主要缺点之一AVQueuePlayer


斯蒂芬的好建议playerObserver,但需要的是你需要能够明确地将单个项目加载到内存中,然后告诉AVQueuePlayer'不要播放数组中的第一个项目,直到数组中的所有项目都加载到memory' 目前似乎没有办法开始加载数组中的第二个项目,直到第一个项目即将结束!

作为一个稍微独立的问题,我还注意到AVQueuePlayer,如果AVPlayerItems在播放数组一直播放,剪辑第一次播放正常,但是当再次播放同一剪辑(作为单独的AVPlayerItem)时,它会非常快速地播放,直到视频中的某个点最后开始以正常速度播放从那里。

有没有其他人注意到这种行为?

0 投票
1 回答
1651 浏览

iphone - 使用 AVPlayer 播放时如何开始下一首歌曲或识别歌曲已完成?

如何使用 AVPlayer 立即开始下一首歌曲?我有从 iPod 库中选择的歌曲集MPMediaItemCollection

现在我如何使用 AVPlayer 来一一播放歌曲列表?

0 投票
3 回答
19843 浏览

ios - AVPlayer 在缓冲音频流开始时“冻结”应用程序

我正在使用一个子类,AVQueuePlayer当我添加新AVPlayerItem的流式 URL 时,应用程序会冻结大约一两秒。冻结我的意思是它不响应用户界面上的触摸。此外,如果我已经播放了一首歌曲,然后将另一首歌曲添加到队列中,AVQueuePlayer则会在歌曲仍在播放第一首歌曲时自动开始预加载歌曲。这使得应用程序在两秒钟内不会响应 UI 上的触摸,就像添加第一首歌曲但歌曲仍在播放时一样。所以这意味着AVQueuePlayer在主线程中做一些导致明显“冻结”的事情。

insertItem:afterItem:用来添加我的AVPlayerItem. 我测试并确保这是导致延迟的方法。也许它可能是在将其添加到队列AVPlayerItem时被激活时所做的事情。AVQueuePlayer

必须指出,我正在使用 Dropbox API v1 beta 通过使用此方法调用来获取流 URL:

然后,当我收到流 URL 时,我将其发送到AVQueuePlayer如下:

所以我的问题是:我该如何避免这种情况?我应该在没有帮助的情况下自行预加载音频流AVPlayer吗?如果是这样,我该怎么做?

谢谢。

0 投票
2 回答
12014 浏览

ios - 从音频流中获取元数据

我想从我正在使用 AVQueuePlayer 播放的 AVPlayerItem 中的流 URL 中获取文件名和专辑图像,但我不知道该怎么做。

此外,如果事实证明我的流式 URL 没有任何元数据,我可以在将元数据NSURL*传递给 AVPlayerItem 之前将元数据放入其中吗?

谢谢。

0 投票
1 回答
2318 浏览

objective-c - AVQueuePlayer 在 iOS5 后台播放多个音轨

我使用 AVQueuePlayer 在后台播放多个项目。并且代码在 iOS4 中运行完美。并且在 iOS5 中 AVQueuePlayer 改变了它的行为,所以播放器在第一个项目结束后停止播放。

Matt Gallagher 在这篇文章中写了一个提示。“从 iOS 5 开始,AVQueuePlayer 似乎不再预缓冲。它确实预缓冲了 iOS 4 中的下一个曲目。”

所以我的问题是如何在 iOS5 中使用 AVPlayer 或 AVQueuePlayer 在后台播放多个项目。