From 646eda72e3f495b33b48e73949f4a54909bb0de4 Mon Sep 17 00:00:00 2001
From: 雾聪 <wucong.lyb@alibaba-inc.com>
Date: 星期五, 26 一月 2024 10:04:19 +0800
Subject: [PATCH] update clients for 2pass
---
runtime/websocket/bin/funasr-wss-client-2pass.cpp | 5 ++++-
runtime/python/websocket/funasr_wss_client.py | 7 +++++++
2 files changed, 11 insertions(+), 1 deletions(-)
diff --git a/runtime/python/websocket/funasr_wss_client.py b/runtime/python/websocket/funasr_wss_client.py
index 92dc548..a2d8889 100644
--- a/runtime/python/websocket/funasr_wss_client.py
+++ b/runtime/python/websocket/funasr_wss_client.py
@@ -186,6 +186,13 @@
if wav_path.endswith(".pcm"):
with open(wav_path, "rb") as f:
audio_bytes = f.read()
+ elif wav_path.endswith(".wav"):
+ import wave
+ with wave.open(wav_path, "rb") as wav_file:
+ params = wav_file.getparams()
+ sample_rate = wav_file.getframerate()
+ frames = wav_file.readframes(wav_file.getnframes())
+ audio_bytes = bytes(frames)
else:
wav_format = "others"
with open(wav_path, "rb") as f:
diff --git a/runtime/websocket/bin/funasr-wss-client-2pass.cpp b/runtime/websocket/bin/funasr-wss-client-2pass.cpp
index 6533dd5..0cbd10e 100644
--- a/runtime/websocket/bin/funasr-wss-client-2pass.cpp
+++ b/runtime/websocket/bin/funasr-wss-client-2pass.cpp
@@ -192,7 +192,10 @@
funasr::Audio audio(1);
int32_t sampling_rate = audio_fs;
std::string wav_format = "pcm";
- if (funasr::IsTargetFile(wav_path.c_str(), "pcm")) {
+ if (funasr::IsTargetFile(wav_path.c_str(), "wav")) {
+ if (!audio.LoadWav(wav_path.c_str(), &sampling_rate, false))
+ return;
+ } else if (funasr::IsTargetFile(wav_path.c_str(), "pcm")) {
if (!audio.LoadPcmwav(wav_path.c_str(), &sampling_rate, false)) return;
} else {
wav_format = "others";
--
Gitblit v1.9.1