将数据从一个AudioSampleBuffer复制到其他类中的另一个
Copying data from one AudioSampleBuffer to another in a different class
我在两个不同的类中有两个独立的AudioSampleBuffer对象。这是第一类的私有部分,称为TransportBar.h:
private:
Atomic<int> playState;
Atomic<int> soloState;
Atomic<int> muteState;
unsigned int bufferPosition;
AudioSampleBuffer masterBuffer;
static const int bufferSize = 352800; //constant
这是区段类的私有区段,称为Looper.h:
private:
//Shared data
Atomic<int> recordState;
Atomic<int> playState;
//Audio data
static const int bufferSize = 352800; //constant
unsigned int bufferPosition;
AudioSampleBuffer audioSampleBuffer;
我正在创建的应用程序有4首曲目,它们记录到audioSampleBuffer中。然后我想要一个"主"播放按钮,它可以播放所有这些数据。因此,我需要做的是将数据从audioSampleBuffer复制到masterBuffer。有办法做到这一点吗?
AudioSampleBuffer
只是AudioBuffer<float>
的typedef
,其文档可在此处找到。在那里,您将看到copyFrom
成员功能。此函数有几个重载,其中一个重载将AudioBuffer<T>
作为其源缓冲区。
要访问AudioSampleBuffer
以便复制它,您必须执行以下操作之一:
- 将其公开(如果您是派生类型,则受保护)
- 创建getter函数
- 让其他班级成为朋友
- 使用同一类的另一个实例访问成员
值得问问自己,这是否也是一个架构问题;如果有更好的设计,这个问题能完全避免吗?
相关文章:
- 有没有办法使用 strcpy 将字符串数组复制到另一个字符串或其他数组中?
- 将 Vector<String > 元素复制到其他 Vector<String>* (1 作为
- 如何将几个变量复制到其他变量
- 我的 c 字符串复制函数正在损坏其他变量的堆栈
- 是否有其他方法将.dll文件从一个项目复制到我的启动项目中的可执行文件旁边
- 如何复制包含指向其他几个成员之一的指针的对象?
- 为什么删除的复制构造函数不允许使用其他具有多态类型的构造函数?
- 将图像文件(.BMP)复制到其他位置
- 您可以将链接器/其他依赖项等复制到其他项目吗?
- 在C++中将一个二维数组复制到其他未知大小的二维数组
- 将二维数组元素复制到另一个具有其他大小的二维数组中
- 模板嵌套类的构造函数问题(复制 ctor 似乎覆盖了其他 ctor)
- 如何使用指针将数组复制到内存中的其他位置
- 将零复制到 char 数组中也会清除其他 char 数组
- 将证书文件复制到其他位置
- 我想复制 (wchar_t *) 缓冲区中的数据,但我无法这样做 bcz 还有其他不兼容的类型,类型转换但没有得到结果
- C++将流操纵器复制到其他流
- 在其他构造函数中调用复制构造函数
- 将数据从一个AudioSampleBuffer复制到其他类中的另一个
- 正在使用标准流将文件复制到其他位置