问题标签 [fmod]

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

iphone - 录制音频,添加效果,然后将结果保存到音频文件

我在做标题所说的事情时遇到了麻烦。我的目标是能够为您的录音添加任何所需的效果,保存修改后的音频,然后将其发送到服务器。

我搜索了四个并遇到了这些线程: viewtopic.php?f=7&t=13029&p=45362&hilit=saving#p45362 viewtopic.php?f=7&t=12660&p=44586&hilit=saving#p44586 viewtopic.php?f=7&t=13178&p =45746&hilit=保存#p45746

读完之后,我发现可以保存修改后的音频,但只能保存为 wav 吗?就像我说的那样,保存后它会被发送到服务器,所以大小很重要,与其他格式相比,wavs 相对较大。忽略这个事实,我试图实现 FMOD_OUTPUTTYPE_WAVWRITER 但我无法让它工作;有没有使用它的好例子?我查看了图书馆中的示例,但我没有看到任何..

但是该应用程序的基本结构是记录,关闭和打开一些开关以查看您想要的过滤器,预览它,然后按“保存”按钮将其保存。这个保存功能包括什么?

任何帮助表示赞赏,谢谢。

0 投票
1 回答
2158 浏览

c++ - 使用 FMOD 将输出保存到磁盘

我正在使用 FMOD 播放一些声音,我想将生成的混音保存到磁盘。

我一直在尝试 system->recordStart(0, sound, true) 路径,但这会保存设备的麦克风输入。

在某种程度上,我想将扬声器输出重定向到磁盘

谢谢

马克

0 投票
1 回答
3776 浏览

c# - readData 用于 24 位 FLAC 和 WAV 文件

我使用 readData 成功读取了 16 位音频文件并生成了用于波形显示的峰值文件。但是,我在解释 24 位 FLAC 和 WAV 文件的 PCM 值时遇到了一些问题。

首先,24 位的块大小是多少?

16 位有符号值范围从 -32768 到 +32768,24 位范围从 -8388607 到 +8388607。

我对 16 位文件 (65536 / 16 = 4096) 使用了 4096 字节的块大小。它适用于检测峰值。

如果我用 24 位做同样的计算,16777215 / 24 = 699050.625 字节。我弄错了吗?我想我必须使用 32 位变量来存储 24 位值。但是读取文件时我应该使用什么块大小?699051? 如何调整转换为浮点数组?

这是我用来为 16 位 PCM 数据生成峰值文件的完整 C# 代码。我故意将 24 位代码留空,因为它不起作用。一些代码引用了我自己的 FMOD 包装器,但它应该很容易理解。

这是从浮点数组中提取最小值/最大值的方法:

有人可以给我一个提示吗?我希望我的代码不会太糟糕,并且可以用作 16 位文件的示例。谢谢你的帮助!

编辑:

这是使用 32 位变量转换代码的 3x8 位到 24 位:

0 投票
3 回答
2006 浏览

iphone - FMOD 用完了频道,FMOD_CHANNEL_FREE 似乎不起作用

我正在使用 32 个通道初始化 FMOD,并使用以下代码播放短样本(1 秒):

它按预期工作,声音重叠,但现在我意识到,当我播放 32 个样本(不是同时)时,一次只能播放一个声音。看起来 FMOD_CHANNEL_FREE 的行为就像一个增量计数器,当它达到 32 时,它会停留在那里,在它仍在播放时停止最后一个声音以播放新的声音。

当声音停止播放时,我是否必须删除它们?如何?我觉得我缺少一些基本的东西

谢谢!

马克

0 投票
1 回答
295 浏览

iphone - 在多个类中使用 FMOD (iOS)

我正在开发一个 iOS 应用程序,我正在从设备麦克风录制声音,将其保存为 wav,然后需要从不同的视图控制器访问和播放它。据我了解,FMOD::System 对象只能在一个视图控制器中定义。

在多个视图控制器中访问 FMOD 的最佳方法是什么?

我曾尝试使用 Singleton 类,但是由于 Objective-c 缺少类(非实例)变量,我不确定如何声明 FMOD::System 变量。

有没有人成功地实现了我想要做的事情?任何帮助表示赞赏!

谢谢

0 投票
1 回答
250 浏览

objective-c - KeyOff 无效果

我是第一次使用 FMod,但我不明白为什么我的代码不会触发 Sound Designer 的 keyoff。

工作环境

已验证

这里的代码按时间顺序处理

与 _musicGame 关联的音乐不会播放其 KeyOff 并继续播放。_musicGame 仅在 onMusicGameStart() 中设置。

我不知道从这一点上测试什么。

顺便说一句,我无法启动 fmod_profiler(启动时崩溃)。

感谢您的回复。

0 投票
1 回答
241 浏览

iphone - 如何在 iPhone 上将声音名称传递给 Fmod

有没有办法让 fmod 根据声音名称播放声音?我可以使用以下代码循环出声音名称:

但是要播放它,我想知道在哪里注入声音名称,如下所示:

0 投票
1 回答
420 浏览

iphone - Fmod 距离参数

有没有办法只在 Fmod 中为 iPhone 开发设置距离参数?我可以在 Fmod Designer 中设置 3D Max och Min Distance。我只想在 Fmod 中使用距离特征而不是角度特征。

在下面的代码中,我将听者的位置添加到声音中,但我只想添加听者和声音之间的距离:

0 投票
2 回答
1758 浏览

iphone - Fmod 监听器位置

是否可以在 Fmod 的 3D 声音世界的不同位置有多个声音?我想绘制这个 3D 世界中的所有声音并在玩家周围移动。

我正在为 iPhone 开发。

0 投票
1 回答
877 浏览

c - MiniFMOD 编译

我正在开始开发,但是从我试图越界的那一刻起就出现了很多问题。我通常使用 CodeBlocks,并且只尝试过一次使用 MinGW 进行编译。我刚开始用 GTK 库做程序,我的其他程序是控制台应用程序。所以我在http://www.fmod.org/index.php/download上下载了 MiniFMOD 1.70 和 1.60 。

当我在 C++ 控制台应用程序项目上编译 main.cpp 时,我收到此消息(对于两个 MiniFMOD 版本)。

||=== tryfmod170, 调试 ===|

C:\Documents and Settings\Vincent\Bureau\minifmod170\lib\music.h|266|错误:重新定义 typedef 'FMUSIC_MODULE'|

C:\Documents and Settings\Vincent\Bureau\minifmod170\lib\minifmod.h|26|注意:'FMUSIC_MODULE' 的先前声明在这里|

C:\Documents and Settings\Vincent\Bureau\minifmod170\lib\Fmusic.c|117|错误:“FMUSIC_LoadSong”的类型冲突|

C:\Documents and Settings\Vincent\Bureau\minifmod170\lib\minifmod.h|56|注意:'FMUSIC_LoadSong' 的先前声明在这里|

||=== 构建完成:2 个错误,0 个警告 ===|

我确定这是一个非常简单的错误,但我想我很快就会对所有文件类型、变量、结构和平台感到困惑……如果有人可以帮助我,我将不胜感激