Skip to content

Commit e8453cf

Browse files
authored
Dev/1.5.0 (#98)
v1.5.0
1 parent 67592a3 commit e8453cf

25 files changed

+3712
-3761
lines changed

demo-album/lib/cos-wx-sdk-v5.js

Lines changed: 96 additions & 273 deletions
Large diffs are not rendered by default.

demo-album/lib/cos-wx-sdk-v5.min.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

demo/ciDemo/asr.js

Lines changed: 255 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,255 @@
1+
const COS = require('../lib/cos-wx-sdk-v5');
2+
const config = require('../config');
3+
const { cos, requestCallback } = require('../tools');
4+
5+
const asrDao = {
6+
'提交音频降噪任务 postNoiseReduction': postNoiseReduction,
7+
'提交人声分离任务 postVoiceSeparate': postVoiceSeparate,
8+
'提交语音合成任务 postTts': postTts,
9+
'提交语音识别任务 postSpeechRecognition': postSpeechRecognition,
10+
'查询语音识别队列 getAsrQueue': getAsrQueue,
11+
'更新语音识别队列 putAsrQueue': putAsrQueue,
12+
'查询语音识别开通状态 getAsrBucket': getAsrBucket,
13+
};
14+
15+
function postNoiseReduction() {
16+
var host = config.Bucket + '.ci.' + config.Region + '.myqcloud.com/jobs';
17+
var url = 'https://' + host;
18+
var body = COS.util.json2xml({
19+
Request: {
20+
Tag: 'NoiseReduction',
21+
Input: {
22+
Object: 'ci/music.mp3', // 文件名,取值为文件在当前存储桶中的完整名称
23+
},
24+
Operation: {
25+
Output: {
26+
Bucket: config.Bucket, // 输出的存储桶
27+
Region: config.Region, // 输出的存储桶的地域
28+
Object: 'ci/out.mp3', // 输出的文件Key
29+
},
30+
},
31+
// QueueId: '', // 任务所在的队列 ID,非必须
32+
// CallBackFormat: '', // 任务回调格式,JSON 或 XML,默认 XML,优先级高于队列的回调格式,非必须
33+
// CallBackType: '', // 任务回调类型,Url 或 TDMQ,默认 Url,优先级高于队列的回调类型,非必须
34+
// CallBack: '', // 任务回调地址,优先级高于队列的回调地址。设置为 no 时,表示队列的回调地址不产生回调,非必须
35+
// CallBackMqConfig: '', // 任务回调 TDMQ 配置,当 CallBackType 为 TDMQ 时必填,非必须
36+
},
37+
});
38+
cos.request(
39+
{
40+
Method: 'POST',
41+
Key: 'jobs',
42+
Url: url,
43+
Body: body,
44+
ContentType: 'application/xml',
45+
},
46+
function (err, data) {
47+
console.log(err || data);
48+
}
49+
);
50+
}
51+
52+
function postVoiceSeparate() {
53+
var host = config.Bucket + '.ci.' + config.Region + '.myqcloud.com/jobs';
54+
var url = 'https://' + host;
55+
var body = COS.util.json2xml({
56+
Request: {
57+
Tag: 'VoiceSeparate',
58+
Input: {
59+
Object: 'ci/music.mp3', // 文件名,取值为文件在当前存储桶中的完整名称
60+
},
61+
Operation: {
62+
// VoiceSeparate: {}, // 指定转码模板参数,非必须
63+
TemplateId: 't13fca82ad97e84878a22cd81bd2e5652c', // 指定的模板 ID,必须
64+
// JobLevel: 0, // 任务优先级,级别限制:0 、1 、2。级别越大任务优先级越高,默认为0,非必须
65+
Output: {
66+
Bucket: config.Bucket, // 输出的存储桶
67+
Region: config.Region, // 输出的存储桶的地域
68+
Object: 'ci/out/background.mp3', // 输出的文件Key,背景音结果文件名,不能与 AuObject 同时为空
69+
AuObject: 'ci/out/audio.mp3',
70+
},
71+
},
72+
// QueueId: '', // 任务所在的队列 ID,非必须
73+
// CallBackFormat: '', // 任务回调格式,JSON 或 XML,默认 XML,优先级高于队列的回调格式,非必须
74+
// CallBackType: '', // 任务回调类型,Url 或 TDMQ,默认 Url,优先级高于队列的回调类型,非必须
75+
// CallBack: '', // 任务回调地址,优先级高于队列的回调地址。设置为 no 时,表示队列的回调地址不产生回调,非必须
76+
// CallBackMqConfig: '', // 任务回调 TDMQ 配置,当 CallBackType 为 TDMQ 时必填,非必须
77+
},
78+
});
79+
cos.request(
80+
{
81+
Method: 'POST',
82+
Key: 'jobs',
83+
Url: url,
84+
Body: body,
85+
ContentType: 'application/xml',
86+
},
87+
function (err, data) {
88+
console.log(err || data);
89+
}
90+
);
91+
}
92+
93+
function postTts() {
94+
var host = config.Bucket + '.ci.' + config.Region + '.myqcloud.com/jobs';
95+
var url = 'https://' + host;
96+
var body = COS.util.json2xml({
97+
Request: {
98+
Tag: 'Tts',
99+
Operation: {
100+
// VoiceSeparate: {}, // 指定转码模板参数,非必须
101+
TemplateId: 't192931b3564084168a3f50ebfea59acb3', // 指定的模板 ID,必须
102+
// JobLevel: 0, // 任务优先级,级别限制:0 、1 、2。级别越大任务优先级越高,默认为0,非必须
103+
TtsConfig: {
104+
InputType: 'Text',
105+
Input: '床前明月光,疑是地上霜',
106+
},
107+
Output: {
108+
Bucket: config.Bucket, // 输出的存储桶
109+
Region: config.Region, // 输出的存储桶的地域
110+
Object: 'ci/out/tts.mp3', // 输出的文件Key
111+
},
112+
},
113+
// QueueId: '', // 任务所在的队列 ID,非必须
114+
// CallBackFormat: '', // 任务回调格式,JSON 或 XML,默认 XML,优先级高于队列的回调格式,非必须
115+
// CallBackType: '', // 任务回调类型,Url 或 TDMQ,默认 Url,优先级高于队列的回调类型,非必须
116+
// CallBack: '', // 任务回调地址,优先级高于队列的回调地址。设置为 no 时,表示队列的回调地址不产生回调,非必须
117+
// CallBackMqConfig: '', // 任务回调 TDMQ 配置,当 CallBackType 为 TDMQ 时必填,非必须
118+
},
119+
});
120+
cos.request(
121+
{
122+
Method: 'POST',
123+
Key: 'jobs',
124+
Url: url,
125+
Body: body,
126+
ContentType: 'application/xml',
127+
},
128+
function (err, data) {
129+
console.log(err || data);
130+
}
131+
);
132+
}
133+
134+
function postSpeechRecognition() {
135+
var host = config.Bucket + '.ci.' + config.Region + '.myqcloud.com/asr_jobs';
136+
var url = 'https://' + host;
137+
var body = COS.util.json2xml({
138+
Request: {
139+
Tag: 'SpeechRecognition',
140+
Input: {
141+
Object: 'ci/music.mp3', // 文件名,取值为文件在当前存储桶中的完整名称,与Url参数二选一
142+
// Url: 'http://examplebucket-1250000000.cos.ap-shanghai.myqcloud.com/music.mp3', // 病毒文件的链接地址,与Object参数二选一
143+
},
144+
Operation: {
145+
SpeechRecognition: {
146+
EngineModelType: '16k_zh_video', // 引擎模型类型
147+
ChannelNum: 1, // 语音声道数
148+
ResTextFormat: 0, // 识别结果返回形式
149+
FilterDirty: 1, // 是否过滤脏词(目前支持中文普通话引擎)
150+
FilterModal: 1, // 是否过语气词(目前支持中文普通话引擎)
151+
ConvertNumMode: 0, // 是否进行阿拉伯数字智能转换(目前支持中文普通话引擎)
152+
},
153+
Output: {
154+
Bucket: config.Bucket, // 输出的存储桶
155+
Region: config.Region, // 输出的存储桶的地域
156+
Object: 'ci/out/SpeechRecognition.mp3', // 输出的文件Key
157+
},
158+
},
159+
// QueueId: '', // 任务所在的队列 ID,非必须
160+
// CallBackFormat: '', // 任务回调格式,JSON 或 XML,默认 XML,优先级高于队列的回调格式,非必须
161+
// CallBackType: '', // 任务回调类型,Url 或 TDMQ,默认 Url,优先级高于队列的回调类型,非必须
162+
// CallBack: '', // 任务回调地址,优先级高于队列的回调地址。设置为 no 时,表示队列的回调地址不产生回调,非必须
163+
// CallBackMqConfig: '', // 任务回调 TDMQ 配置,当 CallBackType 为 TDMQ 时必填,非必须
164+
},
165+
});
166+
cos.request(
167+
{
168+
Method: 'POST',
169+
Key: 'asr_jobs',
170+
Url: url,
171+
Body: body,
172+
ContentType: 'application/xml',
173+
},
174+
function (err, data) {
175+
console.log(err || data);
176+
}
177+
);
178+
}
179+
180+
function getAsrQueue() {
181+
var host = config.Bucket + '.ci.' + config.Region + '.myqcloud.com/asrqueue';
182+
var url = 'https://' + host;
183+
cos.request(
184+
{
185+
Method: 'GET',
186+
Key: 'asrqueue',
187+
Url: url,
188+
Query: {
189+
// queueIds: '', /* 非必须,队列 ID,以“,”符号分割字符串 */
190+
// state: '', /* 非必须,1=Active,2=Paused */
191+
// pageNumber: 1, /* 非必须,第几页 */
192+
// pageSize: 2, /* 非必须,每页个数 */
193+
},
194+
},
195+
function (err, data) {
196+
console.log(err || data);
197+
}
198+
);
199+
}
200+
201+
function putAsrQueue() {
202+
// 任务所在的队列 ID,请使用查询队列(https://cloud.tencent.com/document/product/460/46946)获取或前往万象控制台(https://cloud.tencent.com/document/product/460/46487)在存储桶中查询
203+
var queueId = 'pcc77499e85c311edb9865254008618d9';
204+
var host = config.Bucket + '.ci.' + config.Region + '.myqcloud.com/asrqueue/' + queueId;
205+
var url = 'https://' + host;
206+
var body = COS.util.json2xml({
207+
Request: {
208+
Name: 'queue-doc-process-1',
209+
QueueID: queueId,
210+
State: 'Paused',
211+
NotifyConfig: {
212+
// Url: '',
213+
// Type: 'Url',
214+
// Event: '',
215+
State: 'Off',
216+
},
217+
},
218+
});
219+
cos.request(
220+
{
221+
Method: 'PUT',
222+
Key: 'asrqueue/' + queueId,
223+
Url: url,
224+
Body: body,
225+
ContentType: 'application/xml',
226+
},
227+
function (err, data) {
228+
console.log(err || data);
229+
}
230+
);
231+
}
232+
233+
function getAsrBucket() {
234+
var host = 'ci.' + config.Region + '.myqcloud.com/asrbucket';
235+
var url = 'https://' + host;
236+
cos.request(
237+
{
238+
Method: 'GET',
239+
Key: 'asrbucket',
240+
Url: url,
241+
Query: {
242+
// regions: '', /* 非必须,地域信息,以“,”分隔字符串,支持 All、ap-shanghai、ap-beijing */
243+
// bucketNames: '', /* 非必须,存储桶名称,以“,”分隔,支持多个存储桶,精确搜索 */
244+
// bucketName: '', /* 非必须,存储桶名称前缀,前缀搜索 */
245+
// pageNumber: 1, /* 非必须,第几页 */
246+
// pageSize: 10, /* 非必须,每页个数 */
247+
},
248+
},
249+
function (err, data) {
250+
console.log(err || data);
251+
}
252+
);
253+
}
254+
255+
module.exports = asrDao;

0 commit comments

Comments
 (0)