diff --git a/shared/api/c_api_feature_extraction.cc b/shared/api/c_api_feature_extraction.cc index 2d0c3ba02..5b5e6fa36 100644 --- a/shared/api/c_api_feature_extraction.cc +++ b/shared/api/c_api_feature_extraction.cc @@ -16,8 +16,8 @@ class RawAudiosObject : public OrtxObjectImpl { size_t num_audios_{}; }; -extError_t ORTX_API_CALL -OrtxCreateRawAudios(OrtxRawAudios** audios, const void* data[], const int64_t sizes[], size_t num_audios) { +extError_t ORTX_API_CALL OrtxCreateRawAudios(OrtxRawAudios** audios, const void* data[], const int64_t sizes[], + size_t num_audios) { if (audios == nullptr || data == nullptr || sizes == nullptr) { ReturnableStatus::last_error_message_ = "Invalid argument"; return kOrtxErrorInvalidArgument; @@ -25,12 +25,14 @@ OrtxCreateRawAudios(OrtxRawAudios** audios, const void* data[], const int64_t si auto audios_obj = std::make_unique(); audios_obj->audios_ = std::make_unique(num_audios); + audios_obj->num_audios_ = num_audios; for (size_t i = 0; i < num_audios; ++i) { audios_obj->audios_[i].resize(sizes[i]); std::copy_n(static_cast(data[i]), sizes[i], audios_obj->audios_[i].data()); } - return {}; + *audios = static_cast(audios_obj.release()); + return extError_t(); } extError_t ORTX_API_CALL OrtxLoadAudios(OrtxRawAudios** raw_audios, const char* const* audio_paths, size_t num_audios) {