This commit is contained in:
wangjiyu 2025-04-16 19:38:34 +08:00
parent af0a29f3dc
commit f00ed230a0
3 changed files with 9 additions and 6 deletions

View File

@ -56,7 +56,7 @@ namespace np = boost::python::numpy;
np::ndarray getNumpyData() {
return RTCContext::instance().getNumpyData();
}
std::vector<int16_t> getListData() {
bp::list getListData() {
return RTCContext::instance().getListData();
}
int16_t getDataCount() {

View File

@ -728,7 +728,7 @@ np::ndarray RTCContext::getNumpyData() {
return result;
}
std::vector<int16_t> RTCContext::getListData() {
bp::list RTCContext::getListData() {
std::cout << "step1" << std::endl;
std::lock_guard<std::mutex> lock(dataMutex_);
RetAudioFrame frame = getData();
@ -737,10 +737,13 @@ std::vector<int16_t> RTCContext::getListData() {
std::cout << "step3" << std::endl;
size_t length = frame.dataCount; // 数据长度
std::cout << "step4" << std::endl;
if (!dataPtr || length == 0) {
return {}; // 返回空 vector
bp::list result;
if (dataPtr && length > 0) {
for (size_t i = 0; i < length; ++i) {
result.append(dataPtr[i]); // 逐个元素添加(值传递)
}
}
return std::vector<int16_t>(dataPtr, dataPtr + length); // 深拷贝
return result;
}
int16_t RTCContext::getDataCount() {
std::lock_guard<std::mutex> lock(dataMutex_);

View File

@ -101,7 +101,7 @@ public:
void setData(const mrtc::MRTCAudioFrame& frame);
RetAudioFrame getData();
np::ndarray getNumpyData();
std::vector<int16_t> getListData();
bp::list getListData();
int16_t getDataCount();
void* getpData() const;