首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用不同音量同时播放两首受DRM保护的歌曲

使用不同音量同时播放两首受DRM保护的歌曲
EN

Stack Overflow用户
提问于 2017-08-07 06:30:09
回答 1查看 565关注 0票数 1

我正在尝试用两个不同的MPMusicPlayerControllers在不同的音量上创建一个效果。我可以创建一个MPMusicPlayerController并设置其音量

代码语言:javascript
复制
let musicPlayerController = MPMusicPlayerController.systemMusicPlayer

let volumeController = MPVolumeView(frame: CGRect(x: 0, y: 0, width: 1, height: 1))
self.view.addSubview(volumeController)

// get the UISlider for the MPVolumeView
let volumeSlider = volumeController.volumeSlider
volumeSlider.value = 0.5

musicPlayerController.play()

然而,现在有了MPMusicPlayerController.volume is deprecated,我似乎想不出一种方法来创建两个不同卷的MPMusicPlayerControllers……我在找这样的东西

代码语言:javascript
复制
let musicPlayerController = MPMusicPlayerController()
musicPlayerController.volume = 0.5
//set the song
musicPlayerController.play()

let otherPlayerController = MPMusicPlayerController()
otherPlayerController = 0.5
//set the song
otherPlayerController.play()

我无法使用AVAudioPlayer,因为它对受DRM保护的文件有限制。本质上,我试图同时播放两个不同音量级别的受DRM保护的音乐文件。

有没有办法在iOS 10或11中以不同的音量创建两个不同的MPMusicPlayerControllers (或具有相同的效果)(就像在同一个MPMusicPlayerController上以不同的音量播放两首歌曲一样)?欢迎使用老套的变通方法。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-24 14:31:37

我已经联系了苹果,他们确认目前没有办法做到这一点。我提交了一个功能建议,所以希望我们将来能看到这一点。

我的特性建议使用全局处理程序和委托,允许应用程序向处理程序发出命令(类似于MPDRMMusicHandler.shared),然后通过分配给音乐处理程序会话MPDRMMusicHandler的委托MPDRMMusicDelegate接收对这些命令的响应。

在任何情况下,应用程序都无法访问未加密的原始音乐数据,因为应用程序只能发送播放音乐的请求并设置其特征。然后,将在对这些命令的响应中调用委托函数-指示命令是否成功或在失败时提供错误。受数字版权管理保护的音乐的解密将全部由iOS处理,与应用程序分开(或者,至少在一个私人库中,开发者“不能”访问)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45537224

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档