问题标签 [audioclip]

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 回答
2202 浏览

unity3d - 为什么在 Unity 中尝试播放某些音频文件时无法正常工作?

我正在制作一个 2D 游戏,我想在其中将音频文件附加到按钮上。我能够成功地做到这一点。但后来我想改变那个声音。所以我只是用另一个音频文件替换了它。然后它停止工作!当我再次附加第一个音频文件而不是第二个时,它再次起作用。

我的设置如下:文件格式是wav。我创建了一个空的游戏对象并将一个音频源组件附加到它上面。为其分配了一个音频剪辑。未选中“唤醒时播放”。转到 UI 按钮的 OnClick() 部分。单击加号将项目添加到列表中。将音频源对象分配给对象字段。在下拉列表中选择 AudioSource.Play。

我想知道为什么我的第二个相同格式的音频文件不起作用。

我已将音频源组件附加到的 GameObject(称为 AudioManager)

UI 按钮检查器

0 投票
3 回答
5872 浏览

unity3d - 如何从脚本统一播放音频剪辑?

所以我试图让 sing 方法播放我在顶部创建的音频剪辑之一。我知道我需要一个 audioSource,我只是不知道它如何与 audioClips 相匹配。我目前没有为分配此脚本的对象分配音频源,因此这可能会影响事情。谢谢你的帮助。

0 投票
0 回答
864 浏览

c# - AudioClip.SetData(samples,0) 无法从 Unity 中的 json 文件加载样本数据

我正在尝试设置以前使用 json 文件中的 audioclip.GetData 保存的音频剪辑样本。音频数据存在于我的 json 文件中,但在加载此文件并使用 SetData 设置音频剪辑数据时似乎不起作用:

在我的加载函数中:我正在实例化一个包含组件 AudioSource:audioFB 的预制件。然后我想使用以下方法设置剪辑:

但是我确实有这个错误:这样做时对象引用未设置为对象的实例。

另一方面,如果我直接从 Resources 文件夹加载音频文件,它确实可以工作。

我没有正确使用 SetData 吗?

谢谢您的帮助。

0 投票
1 回答
98 浏览

unity3d - 在运行时加载用户定义的文件文件夹?定制收音机

我正在尝试在我的 Unity 游戏中创建自定义电台曲目,并且我希望用户能够将音频文件放置在 My Documents/My Games/Unity Game/Custom Sounds/ 之类的目录中。然后我希望 Unity 将此文件夹中的所有音频剪辑放入一个数组中,以供我在代码中使用。我已经搜索过,但找不到任何关于加载您不知道确切路径或将有多少文件的文件

0 投票
0 回答
613 浏览

java - JavaFX AudioClip MEDIA_UNSUPPORTED:无法识别的文件签名,更新不推荐使用的代码

基本上我正在尝试使用已弃用的 java applet 东西将一些旧代码更新到 javafx,我认为主要问题是由于某种原因 javafx 的 audioclip 不支持“.au”文件并且我收到了这个错误,我会想知道是否有办法修复它/使用其他方式在 javafx 中播放音频而不实际转换文件类型。

原始代码:

我更新的错误尝试:(基本上只是将其更改为 fx 语法并导入))

0 投票
0 回答
970 浏览

c# - 如何将 Unity AudioClip 转换为适合 Firebase 存储上传的字节数组

我在 Unity3D 上使用 Firebase 存储来存储用户的麦克风录音。如何将 AudioClip 转换为可以上传到 Firebase 存储的字节流?

当项目在适当的时间上传声音文件时,任何玩家都无法读取在 Firebase 中找到的文件。

我已经确定:

  • 我实际上正在获取我希望上传的正确未损坏的录音。
  • 我的上传音频剪辑方法适用于使用 PutFileAsync() 而不是 PutBytesAsync() 将文件从我的计算机硬盘上传到 Firebase(包括我打算上传的录音)
  • 我的项目还将图片上传到同一个 Firebase,这些图片上传没有问题

这使我得出结论,我的字节流格式不正确。

我当前将当前录制转换为字节数组以进行上传的方法。这段代码本质上是从(https://github.com/steelejay/LowkeySpeech/blob/master/Code/SavWav.cs)复制的,但不是让它将 bytesData 写入文件,而是发送返回 bytesData 为上传到 Firebase。

我的方法从前一个方法中获取字节数组并将其上传到 Firebase。

我希望这会将可播放的 mp3 上传到 FirebaseStorage。但是,任何媒体播放器都无法读取使用此方法上传的声音文件。

一如既往,感谢您抽出宝贵时间。

0 投票
0 回答
901 浏览

c# - 将 Byte[] 转换为 AudioClip 后统一音频中的一些噪音

我正在尝试将 base64 转换为 byte[] 并在 audioClip 中,但我的声音中有一些噪音。

我正在使用此类将 byte[] 转换为 AudioClip。

}

}

而这个播放audioClip

我正在尝试转换以下类型之一。https://docs.microsoft.com/pt-br/azure/cognitive-services/speech-service/rest-text-to-speech#audio-outputs

有了这个 riff-16khz-16bit-mono-pcm,我的音频会有些噪音。我正在尝试转换这种格式 riff-24khz-16bit-mono-pcm。

如果我使用 riff-24khz-16bit-mono-pcm,我会得到 IndexOutOfRangeException,如果使用 riff-16khz-16bit-mono-pcm 音频是噪音

这是错误。

IndexOutOfRangeException:索引超出了数组的范围。WWUtils.Audio.WAV..ctor (System.Byte[] wav) (在 Assets/Scripts/WAV.cs:68)

如果我使用麦克风录制的 wav 文件进行此操作,则脚本可以正常工作。我该如何纠正这个?

0 投票
1 回答
62 浏览

authorization - Sonos audioclip api 减少了身份验证参数的长度

Sonos audioclip api https://developer.sonos.com/reference/control-api/audioclip/loadaudioclip/允许传入httpAuthorization参数,然后作为授权标头传递。不知道为什么,但是 auth 参数被减少到前 128 个字符,而不是与流 url 请求一起传递。

0 投票
2 回答
1830 浏览

c# - Unity 2019 - 如何在运行时将混音器音频输出保存到音频剪辑或将新保存的 .wav 加载到音频剪辑?

我正在用游戏中的乐器和录音设备制作游戏。我希望用户能够演奏乐器并将它们录制到音频剪辑和 wav 文件中,然后他们可以将其作为自己演奏另一种乐器的伴奏进行播放,再次记录输出,允许他们制作音轨组合仪器。到目前为止,我一切正常,除了我无法弄清楚如何获取音频剪辑 - 我将 .wav 文件保存到资产文件夹中,但我对代码的理解不足以找出将音频剪辑的数据设置到的位置正在写入的数据。

我在这里使用 Olkor 的代码将录音保存为 wav,效果很好: https ://unitylist.com/p/za/Output-Audio-Recorder

我从中保存音频剪辑的两个选项似乎是a)在保存到磁盘的同时保存到音频剪辑(我无法弄清楚)或将其保存到磁盘然后将其作为音频剪辑加载到游戏中- 使用我尝试过的 Unity Web 请求,但我得到一个错误,要么无法访问已中止的 DownloadHandlerAudioClip 的 .audioclip 属性,要么如果我延迟调用该函数来加载文件,则解码音频时出错。无论哪种方式,我的资产文件夹中都有一个保存的 .wav 音频文件,但没有音频剪辑。

我正在使用的下面的脚本附加到 audiolistener 上,因此它会从游戏中获取所有音频输出。我已经研究过使用 audioListener GetOutputData 做一些事情并将其传递给 audioClip SetData 但我无法弄清楚,我承认这超出了我目前的能力 - 我真的很感激对如何解决这个问题的一些见解以任何可能的方式。

0 投票
1 回答
2149 浏览

c# - 统一播放多个音频片段

可能有与此类似的问题,但我找不到任何有用的问题。

我有一个简单的脚本,其中包含一个类列表,其中包含每个元素的音频剪辑、ID 和事件系统。

我需要将该音频剪辑字段列出并按顺序播放,直到最后一个然后停止并触发事件。

这是我只有一个音频剪辑插槽的代码:(我也尝试了音频剪辑数组,但它只是播放音频剪辑数组上的第一个)

}