Fix TTS for Unreal Engine (#2349)

Unreal Engine has its own memory management, so we cannot return a struct containing a std::vector object.
This commit is contained in:
Fangjun Kuang
2025-07-06 19:20:26 +08:00
committed by GitHub
parent 5ebb71909b
commit c1e9e5c87f
2 changed files with 21 additions and 0 deletions

View File

@@ -6,6 +6,7 @@
#ifndef SHERPA_ONNX_C_API_CXX_API_H_
#define SHERPA_ONNX_C_API_CXX_API_H_
#include <memory>
#include <string>
#include <vector>
@@ -433,6 +434,13 @@ class SHERPA_ONNX_API OfflineTts
OfflineTtsCallback callback = nullptr,
void *arg = nullptr) const;
// Like Generate, but return a smart pointer.
//
// See also https://github.com/k2-fsa/sherpa-onnx/issues/2347
std::shared_ptr<GeneratedAudio> Generate2(
const std::string &text, int32_t sid = 0, float speed = 1.0,
OfflineTtsCallback callback = nullptr, void *arg = nullptr) const;
private:
explicit OfflineTts(const SherpaOnnxOfflineTts *p);
};