debug
This commit is contained in:
parent
a4713448d7
commit
6e6e7f4337
|
@ -66,11 +66,32 @@ int16_t getDataCount() {
|
|||
PYBIND11_MODULE(rtc_plugins, m) {
|
||||
// 可选:暴露 RetAudioFrame 类(需额外绑定)
|
||||
py::class_<RetAudioFrame>(m, "RetAudioFrame")
|
||||
.def_readwrite("data", &RetAudioFrame::data)
|
||||
.def_readwrite("dataCount", &RetAudioFrame::dataCount)
|
||||
.def_readwrite("sampleRate", &RetAudioFrame::sampleRate)
|
||||
.def_readwrite("numChannels", &RetAudioFrame::numChannels)
|
||||
.def_readwrite("channelIndex", &RetAudioFrame::channelIndex);
|
||||
// 定义 data 属性(包含 getter 和 setter)
|
||||
.def_property("data",
|
||||
// Getter:返回 NumPy 数组
|
||||
[](RetAudioFrame& self) {
|
||||
return py::array_t<short>(
|
||||
{self.dataCount}, // 数组形状
|
||||
{sizeof(short)}, // 步长
|
||||
self.data.get() // 数据指针(原始内存)
|
||||
);
|
||||
},
|
||||
// Setter:从 NumPy 数组复制数据
|
||||
[](RetAudioFrame& self, py::array_t<short> arr) {
|
||||
auto buf = arr.request(); // 获取数组信息
|
||||
self.data.reset(new short[buf.size]); // 重新分配内存
|
||||
std::memcpy(
|
||||
self.data.get(), // 目标指针
|
||||
buf.ptr, // 源数据指针
|
||||
buf.size * sizeof(short) // 数据大小
|
||||
);
|
||||
self.dataCount = buf.size; // 更新数据长度
|
||||
}
|
||||
)
|
||||
.def_readwrite("dataCount", &RetAudioFrame::dataCount)
|
||||
.def_readwrite("sampleRate", &RetAudioFrame::sampleRate)
|
||||
.def_readwrite("numChannels", &RetAudioFrame::numChannels)
|
||||
.def_readwrite("channelIndex", &RetAudioFrame::channelIndex);
|
||||
m.def("init", &init);
|
||||
m.def("initRecv", &initRecv);
|
||||
m.def("initSend", &initSend);
|
||||
|
|
Loading…
Reference in New Issue