Add on-device tex-to-speech (TTS) demo for HarmonyOS (#1590)
This commit is contained in:
@@ -22,8 +22,14 @@ CircularBuffer::CircularBuffer(int32_t capacity) {
|
||||
void CircularBuffer::Resize(int32_t new_capacity) {
|
||||
int32_t capacity = static_cast<int32_t>(buffer_.size());
|
||||
if (new_capacity <= capacity) {
|
||||
#if __OHOS__
|
||||
SHERPA_ONNX_LOGE(
|
||||
"new_capacity (%{public}d) <= original capacity (%{public}d). Skip it.",
|
||||
new_capacity, capacity);
|
||||
#else
|
||||
SHERPA_ONNX_LOGE("new_capacity (%d) <= original capacity (%d). Skip it.",
|
||||
new_capacity, capacity);
|
||||
#endif
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -90,10 +96,18 @@ void CircularBuffer::Push(const float *p, int32_t n) {
|
||||
int32_t size = Size();
|
||||
if (n + size > capacity) {
|
||||
int32_t new_capacity = std::max(capacity * 2, n + size);
|
||||
#if __OHOS__
|
||||
SHERPA_ONNX_LOGE(
|
||||
"Overflow! n: %{public}d, size: %{public}d, n+size: %{public}d, "
|
||||
"capacity: %{public}d. Increase "
|
||||
"capacity to: %{public}d. (Original data is copied. No data loss!)",
|
||||
n, size, n + size, capacity, new_capacity);
|
||||
#else
|
||||
SHERPA_ONNX_LOGE(
|
||||
"Overflow! n: %d, size: %d, n+size: %d, capacity: %d. Increase "
|
||||
"capacity to: %d",
|
||||
"capacity to: %d. (Original data is copied. No data loss!)",
|
||||
n, size, n + size, capacity, new_capacity);
|
||||
#endif
|
||||
Resize(new_capacity);
|
||||
|
||||
capacity = new_capacity;
|
||||
|
||||
Reference in New Issue
Block a user