- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试生成一个正弦波,它以 1 秒的间隔在立体声 wav 文件的左右声道之间切换,但我找不到任何方法来写入一个声道,同时保持另一个声道静音。这是我必须写入一个 channel 的代码:
for (int f = 0; f < numFrames; f++) {
double time = f * duration / numFrames;
buffer[f] = sin(2.0 * pi * time * freq);
short* mixdown = new short[2 * sizeof(short) * 800000];
for (int t = 0; t < 800000 * 2; ++t) {
mixdown[t] = (buffer1[t] + buffer2[t]) / 2;
}
FILE* process2 = _popen("ffmpeg -y -f s16le -acodec pcm_s16le -ar 44100 -ac 2 -i - -f vob -ac 2 D:\\audioMixdown.wav", "wb");
fwrite(mixdown, 2 * sizeof(short) * 800000, 1, process2);
最佳答案
您可以通过将零样本写入“静音” channel 来实现这一点,例如(使右侧 channel 静音):
for (int f = 0; f < numFrames; f++)
{
double time = f * duration / numFrames;
buffer[f * 2] = sin(2.0 * pi * time * freq);
buffer[f * 2 + 1] = 0;
}
libsndfile
需要交错格式的 channel 数据(我相信这是真的,但不确定)。
关于c++ - 在 libsndfile 中一次写入一个 channel ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61858805/
作为我学习 C++ 的一部分,我正在自学如何将 wav 文件读入 C++。我在网上找到了很多推荐以下库的资源:libsnfile library因此,我按照下面的一些教程来测试该库的基本功能,但我无法
作为我学习 C++ 的一部分,我正在自学如何将 wav 文件读入 C++。我在网上找到了许多推荐以下库的资源:libsnfile library所以我按照下面的一些教程测试了库的基本功能,但是我无法让
我正在编写一个处理音频文件的软件。我正在使用 libsndfile 库来读取 wave 文件数据,我遇到了一个他们的文档没有解决的疑问:读取项目的函数和读取帧的函数有什么区别?或者,换句话说,如果我交
Cmake 似乎没有找到 lib libsndfile。但是,它安装在我的机器上。 find_library(sndfile REQUIRED) 并安装: yum list installed | g
我正在使用 libsndfile 做一些简单的程序,目前正在尝试找到一种在音频文件中打印静音的方法 - 除了将另一个文件静音之外。表面上,我正在制作一台鼓机。在给定时刻,我只能写入输入音频文件的长度,
现在我在 iOS 上尝试使用 libsndfile 时遇到了一个奇怪的链接问题: 我已经在 MACOSX 10.6.8 上编译了 libsndfile 并通过了所有检查。但是当我将它添加到 Xcode
我正在尝试使用 MinGW 在 Windows 7 机器上用 C 语言编译程序。现在我不得不承认,我一开始并没有太多的 C 经验,而且我不是一个非常熟练的 Windows 用户,这使情况更加复杂。 程
我使用 libsndfile 和 wasapi 创建了一个应用程序,它允许使用 QSlider 使用光标手动缓慢播放音频文件。 我看到 libsndfile 使用帧,我想知道如何获取此音频文件的持续时
目前,我已经根据可用的“libsndfile”示例代码编写了一个程序(在 Visual Studio C++ 中),其中我刚刚添加了一个减法函数,用于将一个( channel )WAV 文件与另一个相
我正在尝试开发一个简单的c应用程序,它可以在wav文件中给定时间戳的特定频率范围内给出0-100之间的值。 示例:我的频率范围为44.1kHz(典型的MP3文件),我想将该范围拆分为n个范围(从0开始
我正在尝试生成一个正弦波,它以 1 秒的间隔在立体声 wav 文件的左右声道之间切换,但我找不到任何方法来写入一个声道,同时保持另一个声道静音。这是我必须写入一个 channel 的代码: for (
我需要帮助开始使用 libsndfile。 我有四个 .wav 文件(都具有相同的采样率)。 我想把前两个连在一起,然后再把下两个连在一起, 然后将生成的 2 个 .wav 文件混合为一个。 最佳答案
我正在制作一个程序,从麦克风录音,然后使用 libsndfile 将其编码为 OGG 文件。 大约一个月前,我制作了这个程序的控制台版本,只是为了确保录制和编码功能良好。现在,当我开始将此程序作为窗口
我使用 libsndfile 库打开了 wav 文件,想要读取该文件并获取 FFT 中的 N 个点,并获取时域样本并计算 FFT。 有什么想法可以用 libsndfile 库中的函数替换 fscanf
因此,我一直在尝试使用 RtAudio 和 libsndfile。 任务看起来很简单: 1.) 使用 libsndfile 将一些样本读入缓冲区(使用 SndfileHandle 类和 readf()
谁能告诉我 portaudio 回调函数变量 framesperbuffer 是什么?如果我想通过 PA_WriteStream() 每次迭代以 64 字节数据播放音频流,那么我应该在 framesp
我正在尝试交叉编译 libsndfile 以便在具有 flac 功能的 intel edison 上使用。我已经成功地将 FLAC、OGG 和 VORBIS 编译到我的交叉工具链中,但是当我运行 ./
我正在尝试安装“libsndfile-dev”。我执行以下操作: sudo apt-get install libsndfile-dev 结果我得到以下内容: Reading package list
我刚从 Windows 切换到 Mac,我正尝试使用 brew 为我的一个 C 项目安装 libsndfile。但是安装之后还是在终端报错找不到,我好像也想不通是什么原因。 brew 安装 libsn
我刚从 Windows 切换到 Mac,我正尝试使用 brew 为我的一个 C 项目安装 libsndfile。但是安装之后还是在终端报错找不到,我好像也想不通是什么原因。 brew 安装 libsn
我是一名优秀的程序员,十分优秀!