From 2868fe3df4e92a6ae3e327faf6e57ea492e04124 Mon Sep 17 00:00:00 2001
From: 志浩 <neo.dzh@alibaba-inc.com>
Date: 星期四, 16 三月 2023 19:24:21 +0800
Subject: [PATCH] Merge branch 'main' into dev_dzh
---
funasr/runtime/onnxruntime/include/Audio.h | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 59 insertions(+), 0 deletions(-)
diff --git a/funasr/runtime/onnxruntime/include/Audio.h b/funasr/runtime/onnxruntime/include/Audio.h
new file mode 100644
index 0000000..da5e82c
--- /dev/null
+++ b/funasr/runtime/onnxruntime/include/Audio.h
@@ -0,0 +1,59 @@
+
+#ifndef AUDIO_H
+#define AUDIO_H
+
+#include <ComDefine.h>
+#include <queue>
+#include <stdint.h>
+
+using namespace std;
+
+class AudioFrame {
+ private:
+ int start;
+ int end;
+ int len;
+
+ public:
+ AudioFrame();
+ AudioFrame(int len);
+
+ ~AudioFrame();
+ int set_start(int val);
+ int set_end(int val, int max_len);
+ int get_start();
+ int get_len();
+ int disp();
+};
+
+class Audio {
+ private:
+ float *speech_data;
+ int16_t *speech_buff;
+ int speech_len;
+ int speech_align_len;
+ int16_t sample_rate;
+ int offset;
+ float align_size;
+ int data_type;
+ queue<AudioFrame *> frame_queue;
+
+ public:
+ Audio(int data_type);
+ Audio(int data_type, int size);
+ ~Audio();
+ void disp();
+ bool loadwav(const char* filename);
+ bool loadwav(const char* buf, int nLen);
+ bool loadpcmwav(const char* buf, int nFileLen);
+ bool loadpcmwav(const char* filename);
+ int fetch_chunck(float *&dout, int len);
+ int fetch(float *&dout, int &len, int &flag);
+ void padding();
+ void split();
+ float get_time_len();
+
+ int get_queue_size() { return (int)frame_queue.size(); }
+};
+
+#endif
--
Gitblit v1.9.1