Articles of audio

我如何创建一个健全的经理?

我有一个基本的实体系统。 现在我想添加audio。 我想创建一个监视实体的数据库类,从中提取数据,并在必要时创建audiostream。 我正在使用C ++和SDL2。 什么是这个简单的方法?

我如何将NSF(任天堂声音格式)数据解释为audio?

首先,我没有询问有关NSF文件的布局和格式的细节。 原始规格( 请参阅此处 )涵盖了我需要的关于查找与每个轨道关联的数据的大部分信息。 我的问题是,一旦我已经加载了一个NSF,并消耗头,我怎么能有意义的解释数据的audio播放? 我发现有多个网站讨论N​​SF格式,但我还没有find一个网站,解释如何将文件分解到所有组件后使用的数据。 如何阅读和准备播放audio信息? 我不想模仿NES设备,但我想提取原始audio信息(或计算/转换信息为原始audio数据)。 对于那些有兴趣的人来说,这是一个个人有趣的项目。 我想剖析一些这些声音字节,并将其转换为我可以在自己的应用程序中操作的audio。 我完全不熟悉audio处理,但我已经完成了我的低层次工作。 这似乎是一个有趣的项目,我会在脑海中跳跃,但我会很乐意试图找出我想要完成的一切。 首先,我需要从我感兴趣的来源获取audio数据。 在这种情况下,它是NES车。 由于盒式磁带数据已经在NSF文件中可用,我想我会剖析NSF而不是audio内容的ROM文件。 道歉,如果这个问题是很大的数据布局的简单规范。 任何可以指引我正确的方向的答案都是我正在寻找的。

AudioClip为空,保存来自麦克风的录音

编辑:我更新了我目前的代码。 我不知道为什么,但编辑和我的平台抱怨,当我把WWW放在一个共同的例程中时,似乎把audio片段加载到对象上,但是我不能播放它们。 在附加到该对象的脚本中,我等待直到audio剪辑被加载,然后再尝试播放它。 所以我试图通过麦克风录制一些audio,然后将一个AudioClip保存为一个.wav文件的磁盘,并保存为一个playerpref文件path,然后我可以回来加载到一个url的string,但对于一些因为audio剪辑没有得到正确的加载,因为我可以看到,我的audio源在运行时有一个audio剪辑,但它没有名称,它没有声音。 但是,当我在检查员按播放,我可以听到我的声音 我正在使用SavWav.cs将我的audio剪辑保存为.wav文件。 这是我发送到我的加载方法的URL(文件path): string filename = string.Format(@"CapturedAudio{0}_n.wav", Time.time); string filepath = Path.Combine(Application.dataPath, filename); 这里是我用来获取AudioClip的方法: private void SpawnObject(string savedNames, Vector3 savedPositions, Quaternion savedRotations) { GameObject cubeToSpawn = Instantiate(cube, savedPositions, savedRotations); WWW www = new WWW("file:///"+savedNames); cubeToSpawn.GetComponent<AudioSource>().clip = www.GetAudioClip(false, false, AudioType.WAV); } obj只是一个附有AudioSource的立方体,我在上面调用这个方法之前就实例化了。 文件path工作正常保存,但由于某种原因,它不想加载audio剪辑。 任何帮助将不胜感激。

我在哪里可以findaudio乐器样本?

可能重复: 我在哪里可以为我的游戏find免费的声音? 我需要一些示例audio(对于我的情况,我需要做的,重新的,我的,最好的,最好的钢琴)。 哪里是下载这种types的声音和一般游戏的最佳来源?

Unity 5.1audio问题(回声道中没有声音)

我试图将环绕声audio引入到我的项目中。 我已经把电脑设置为运行在5.1,当我通过Windows媒体播放器(这是一个testingaudio,左扬声器,右扬声器等)播放6声道audio,它工作正常。 但是,当我通过Unity运行它时,我所得到的只是前3个通道。 我已经在编辑 – >项目设置 – >audio设置5.1在那里。 我甚至用下面的代码来设置它: void Start(){AudioSettings.speakerMode = AudioSpeakerMode.Mode5point1; }如何,当我运行一个debugging行: 打印(AudioSettings.driverCaps); 它告诉我,Unity只是在立体声播放。 有什么我还没有做? 我也应该添加我已经跑了10个不同的testing使用3Daudio平底锅和传播选项。 我已经设定要么完全closures,一半完整。 还是一样的结果。

FMOD中的dynamic音乐作品

我想通过添加/删除乐器图层在我的游戏中dynamic地“建立”一首歌曲。 这通常可能导出每个乐器层作为一个单独的轨道,但这种方法是不是很有效的内存(就像有多首歌曲)。 我最近开始使用FMOD,所以我想知道是否有一种方法可以用多个乐器轨道来保存歌曲,例如,以内部格式,以便我可以通过代码来操作要演奏的乐器。 编辑:我的游戏的一个例子:我有一个角色,可以转换为不同的forms。 想象一下,玩家有一个积极的近战forms:我希望主要的主题随着当前的玩家forms相应改变。 在我的例子中,当玩家处于混战状态时,我想要添加一把电吉他。 如果我改变成“鸟”forms,那么有一个马林巴琴而不是吉他是很好的。 请注意,主题的其余部分保持完全相同。 我知道我可以导出不同的歌曲,每个歌曲都是为每个玩家而devise的,但是我想知道是否有可能做更好的事情。 当您将歌曲保存为项目文件时,您将获得比实际音乐更多的信息。 以FMODdevise师为例: 在这里,我们拥有关于图层,乐器等的所有信息,例如,可以使乐器静音。 我想要做的是制作一首包含所有乐器的歌曲(例如吉他,马林巴琴),这样我就可以通过代码来静音/取消静音。 有没有办法通过FMOD c ++ API加载这样的格式?

XNA SoundEffect不会停止播放

对于我的HND,我必须重新创建Frogger,并且一切都在膨胀,直到我尝试添加一些碰撞检测和声音。 每当我的玩家与车辆相交时,声音文件就开始玩每次游戏更新而不是一次。 这里是我的代码从更新方法: if (vehicles[count].bbox.Intersects(playerSprites[lives].bbox)) playerSprites[lives].isDead = true; } if (playerSprites[lives].isDead) { deathSound.Play(); } 声音被声明为SoundEffect,加载为SoundEffect,内容处理器设置为Sound Effect,据我所知,XNA中的Sound Effects只能播放一次。 我究竟做错了什么??

Unity 5 – 代码错误,根据距离改变音高

我真的需要帮助。 现在是凌晨2点,我的大脑已经死了一半,所以我不能在我的生活中发现这个代码有什么问题了。 它应该find它所连接的游戏对象(目标)和另一个游戏对象(玩家)之间的距离。 然后,根据这个距离,它应该改变一个孩子(在玩家)内的audio源的音高。 然而,当我实际上超过了游戏对象时,音调才会改变。 所以,约9/10的方式,没有什么变化的球场,但是当我在那里球场突然改变(但不是最大值的钳制function)。 这是怎么回事? 我首先要让球场停留在0.但是当你朝正确的方向走了一些步伐之后,球场必须逐渐地(以均匀的方式)改变,随着(球员)靠近(目标)。 = | ps .:脚本在一个实例化的预制件中,这就是为什么我使用FindGameObjectWithTag和FindChild。 另外,我正在使用Unity 5。 <!– language: lang-cs –> [four blanks]using System.Windows.Controls; [more indented code] using UnityEngine; using System.Collections; public class ProximitySensor : MonoBehaviour { public GameObject player; private Transform playerTrans; private Transform targetTrans; public Transform beepTrans; public AudioSource beepSound; private float distanceCurrent; void Start () […]

如何让一个UI滑块控制所有的游戏audio?

我使用ui滑块来控制游戏有多大,我想知道的是如何使一个UI滑块控制所有的游戏audio?

将OpenSceneGraph从属于一个外部时基?

我正在使用OpenSceneGraphanimation,我希望animation中的事件与我的audio播放器(BASS或FMod)提供的时间参考同步。 是的,这是一个演示:)。 我哪个时间设置,在哪里? 同步比帧速率或连续性更重要 – 如果audio倒带,我也希望视觉倒带。 (支持GNU Rocket。) 我已经看了论坛post和谷歌的结果,但没有看到这个用例的明确答案。 帧标记具有帧号,日历时间,模拟时间和参考时间。 我认为模拟时间是我应该改变的 – 是这样吗? 是指定一个新的模拟时间作为参数frame()或advance()正确的方式来指定时间? 即使时间倒退,这样做还能工作吗?