问题标签 [skaudionode]

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 投票
2 回答
1049 浏览

swift - 插入/拔出耳机时 SKAudioNode() 崩溃

我正在使用 aSKAudioNode()在我的游戏中播放背景音乐。我有播放/暂停功能,在插入耳机之前一切正常。根本没有声音,当我调用暂停/播放功能时出现此错误

AVAudioPlayerNode.mm:333:开始:所需条件为假:_engine->IsRunning() com.apple.coreaudio.avfaudio',原因:'所需条件为假:_engine->IsRunning()

有谁知道这意味着什么?

代码:

0 投票
1 回答
154 浏览

swift - SKAudioNode else/if off/on 案例

我是 Swift 编码的新手,并试图弄清楚如何在触摸 Node.js 时使用开/关功能制作循环音频。我认为实现它的最佳方法是通过 SKAudioNode,但我不确定我在以下代码中做错了什么。在节点上按下时 - SKAudioNode 开始播放,然后在按下关闭声音后 - 声音不会停止。再次按下时 - 声音与前一次重叠。把整个重要的部分放在这里。先感谢您。

我在这里创建一个布尔值来触发声音是打开还是关闭:

接下来设置场景。

创建火开/关功能:

0 投票
1 回答
3666 浏览

ios - How to use SKAudioNode

I found out SKAction playSoundFileNamed does memory leak in IOS 9: https://forums.developer.apple.com/thread/20014

They recommend to use SKAudioNode, but the example is swift and i use objective-c in my project.

Example:

What i have tried:

It will crash to:

So how i would get it work, what is good technique for play sounds with SKAudioNode only in IOS 9> and with SKAction in older versions?

Thanks!

0 投票
0 回答
151 浏览

ios - 使用 SKAudioNode 和 Swift 返回时,我的 mp3 无法在 SpriteKit 场景上正常播放

所以基本上,我在第一个场景中播放音乐,一切正常。我过渡到场景 2,音乐自动停止,这正是我想要的。但后来我转回来,音乐开始了半秒钟……然后就无缘无故地被切断了。只是为了让事情变得更奇怪,只有当我将我的物理设备置于睡眠模式然后解锁它时,它才会再次完美地继续。

我做了一个过度简化的代码,只是为了直接解决我在实际项目中遇到的问题。这是我的第一个场景,它只是在启动时播放音乐并在触摸时转换到场景 2:

这是场景 2,音乐在过渡前自动停止。除了在触摸时过渡回场景 1 之外,这里没有其他内容,我希望音乐再次开始播放(但它会在半秒后停止播放):

不知道为什么会这样。我已经尝试了几种与 SKAudioNode 的组合以及其他声明变量并实现它的方法。我试过不使用 autoplayLooped 和位置选项,几乎所有东西。当我转换回我的第一个场景时,我希望音乐能够再次正常播放。

0 投票
4 回答
1451 浏览

ios - 使用 fileNamed 初始化 SKAudioNode 返回 nil

这是我第一次使用 SKAudioNode。首先,我在GameScene班级顶部声明了一个属性:

现在我添加了一个辅助方法:

现在我这样调用这个方法:

它在这一行抛出一个致命错误:

说:在展开可选值时意外发现 nil。

我确实确保了以下内容

  • ABC.caf 在我的项目中,并在复制包资源中列出。
  • 它拼写正确。

现在我还应该在哪里检查错误?

编辑:

这是我的配置信息:

  • Xcode 7.3
  • 装有 iOS 9.3.2 的 iPhone
  • iOS 9.3 模拟器

设备和模拟器都不起作用。

编辑2:

我将代码更改为以下内容:

现在我的应用程序不再崩溃,但没有声音。有任何想法吗?

PS 在我上次编辑该问题后几分钟,我尝试将该方法中的所有内容替换为:

还是没有声音。也许声音文件有问题?

0 投票
1 回答
23 浏览

ios - 首先加载gameScene时有效,但播放半秒并在被另一个场景加载时立即停止(无错误),为什么?

在 gameScene.swift:
声明中:

在 didMoveToView 中:

0 投票
0 回答
490 浏览

ios - SKAudioNode 不会随着持续时间衰减音量

我试图用持续时间将 SKAudioNode 的音量淡化为 0,但持续时间似乎没有影响,音频立即停止:

有什么建议吗?谢谢

0 投票
1 回答
770 浏览

ios - SKAudioNode 崩溃:AVAudioPlayerNode.mm:333:开始:所需条件为假:_engine->IsRunning()

我有一个简单的 SKAudioNode:

let backgroundSound = SKAudioNode(fileNamed: "backgroundSound.mp3")

我用来玩backgroundSound.runAction(SKAction.play())backgroundSound.runAction(SKAction.stop())停止。

一切正常,直到应用程序确实进入后台模式,我将恢复超过 3 分钟。如果我进入后台模式并在 10 - 20 秒后恢复,音频不会崩溃。

所有崩溃日志:

我还使用此通知来暂停所有场景广告停止 SKAudioNode 操作:

你有什么主意吗?

多谢你们

0 投票
2 回答
105 浏览

ios - 当我转换到 secondScene 时,我的 SKAudioNode 停止

我知道这很简单,但我就是想不通!我的歌曲在 sceneOne 的背景中播放。然后我切换到sceneTwo,音乐完全停止。如何让背景音乐继续播放?下面是我的代码。

上面的代码显示在sceneOne中。请告诉我如何继续进入sceneTwo。感谢大家。:)

0 投票
2 回答
589 浏览

ios - SKAudioNode 不从 url 加载声音

我想从 url 下载声音并播放一次:

我也尝试过.mp3音乐。它不会下载或流式传输并返回:nil

但是这段代码会导致错误:

由于未捕获的异常“com.apple.coreaudio.avfaudio”而终止应用程序,原因:“所需条件为假:文件!= nil”***第一次抛出调用堆栈:....

libc++abi.dylib:以 NSException 类型的未捕获异常终止