@cartesia/cartesia-js 1.1.0 → 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-VCZESWYA.js → chunk-5SBAQNWQ.js} +1 -1
- package/dist/{chunk-MNOPO7G6.js → chunk-CSOXALSC.js} +7 -7
- package/dist/chunk-EYRYHK3X.js +43 -0
- package/dist/{chunk-6PWLZAMS.js → chunk-FLWYXP5Z.js} +1 -1
- package/dist/{chunk-L3OMQKWL.js → chunk-HQOC2S6C.js} +25 -25
- package/dist/{chunk-VVDJR3OA.js → chunk-I5YVYTNK.js} +16 -16
- package/dist/{chunk-3FL2SNIR.js → chunk-LKKWJLUG.js} +1 -1
- package/dist/{chunk-WIFMLPT5.js → chunk-NJDRWDQ3.js} +8 -22
- package/dist/{chunk-CWIJUBG6.js → chunk-RJICGVPL.js} +2 -2
- package/dist/chunk-WLEVU3HN.js +42 -0
- package/dist/{chunk-4GEDAGVY.js → chunk-YUGIYUMT.js} +8 -4
- package/dist/index.cjs +91 -57
- package/dist/index.d.cts +2 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +14 -13
- package/dist/lib/client.js +2 -2
- package/dist/lib/constants.js +1 -1
- package/dist/lib/index.cjs +86 -52
- package/dist/lib/index.d.cts +2 -0
- package/dist/lib/index.d.ts +2 -0
- package/dist/lib/index.js +9 -8
- package/dist/react/index.cjs +91 -57
- package/dist/react/index.js +13 -12
- package/dist/react/utils.js +2 -2
- package/dist/tts/index.cjs +53 -52
- package/dist/tts/index.d.cts +8 -1
- package/dist/tts/index.d.ts +8 -1
- package/dist/tts/index.js +6 -6
- package/dist/tts/player.cjs +13 -27
- package/dist/tts/player.js +4 -4
- package/dist/tts/source.cjs +23 -37
- package/dist/tts/source.js +2 -2
- package/dist/tts/utils.js +3 -3
- package/dist/tts/websocket.cjs +38 -52
- package/dist/tts/websocket.d.cts +6 -6
- package/dist/tts/websocket.d.ts +6 -6
- package/dist/tts/websocket.js +5 -5
- package/dist/types/index.d.cts +25 -1
- package/dist/types/index.d.ts +25 -1
- package/dist/voice-changer/index.cjs +143 -0
- package/dist/voice-changer/index.d.cts +9 -0
- package/dist/voice-changer/index.d.ts +9 -0
- package/dist/voice-changer/index.js +9 -0
- package/dist/voices/index.js +3 -3
- package/package.json +10 -17
- package/src/lib/index.ts +3 -0
- package/src/tts/index.ts +16 -1
- package/src/types/index.ts +31 -0
- package/src/voice-changer/index.ts +37 -0
- package/.turbo/turbo-build.log +0 -75
- package/dist/chunk-MUPVAEL7.js +0 -25
- package/tsconfig.json +0 -3
package/dist/tts/source.cjs
CHANGED
|
@@ -5,6 +5,9 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
6
|
var __getProtoOf = Object.getPrototypeOf;
|
|
7
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __typeError = (msg) => {
|
|
9
|
+
throw TypeError(msg);
|
|
10
|
+
};
|
|
8
11
|
var __export = (target, all) => {
|
|
9
12
|
for (var name in all)
|
|
10
13
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -26,28 +29,11 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
26
29
|
mod
|
|
27
30
|
));
|
|
28
31
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var __accessCheck = (obj, member, msg) =>
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
var
|
|
34
|
-
__accessCheck(obj, member, "read from private field");
|
|
35
|
-
return getter ? getter.call(obj) : member.get(obj);
|
|
36
|
-
};
|
|
37
|
-
var __privateAdd = (obj, member, value) => {
|
|
38
|
-
if (member.has(obj))
|
|
39
|
-
throw TypeError("Cannot add the same private member more than once");
|
|
40
|
-
member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
41
|
-
};
|
|
42
|
-
var __privateSet = (obj, member, value, setter) => {
|
|
43
|
-
__accessCheck(obj, member, "write to private field");
|
|
44
|
-
setter ? setter.call(obj, value) : member.set(obj, value);
|
|
45
|
-
return value;
|
|
46
|
-
};
|
|
47
|
-
var __privateMethod = (obj, member, method) => {
|
|
48
|
-
__accessCheck(obj, member, "access private method");
|
|
49
|
-
return method;
|
|
50
|
-
};
|
|
32
|
+
var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
|
|
33
|
+
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
34
|
+
var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
35
|
+
var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
|
|
36
|
+
var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
|
|
51
37
|
var __async = (__this, __arguments, generator) => {
|
|
52
38
|
return new Promise((resolve, reject) => {
|
|
53
39
|
var fulfilled = (value) => {
|
|
@@ -83,7 +69,7 @@ var ENCODING_MAP = {
|
|
|
83
69
|
pcm_alaw: { arrayType: Uint8Array, bytesPerElement: 1 },
|
|
84
70
|
pcm_mulaw: { arrayType: Uint8Array, bytesPerElement: 1 }
|
|
85
71
|
};
|
|
86
|
-
var _emitter, _buffer, _readIndex, _writeIndex, _closed, _sampleRate, _encoding, _container,
|
|
72
|
+
var _emitter, _buffer, _readIndex, _writeIndex, _closed, _sampleRate, _encoding, _container, _Source_instances, createBuffer_fn;
|
|
87
73
|
var Source = class {
|
|
88
74
|
/**
|
|
89
75
|
* Create a new Source.
|
|
@@ -96,21 +82,15 @@ var Source = class {
|
|
|
96
82
|
encoding,
|
|
97
83
|
container
|
|
98
84
|
}) {
|
|
99
|
-
|
|
100
|
-
* Create a new buffer for the source.
|
|
101
|
-
*
|
|
102
|
-
* @param size - The size of the buffer to create.
|
|
103
|
-
* @returns The new buffer as a TypedArray based on the encoding.
|
|
104
|
-
*/
|
|
105
|
-
__privateAdd(this, _createBuffer);
|
|
85
|
+
__privateAdd(this, _Source_instances);
|
|
106
86
|
__privateAdd(this, _emitter, new import_emittery.default());
|
|
107
|
-
__privateAdd(this, _buffer
|
|
87
|
+
__privateAdd(this, _buffer);
|
|
108
88
|
__privateAdd(this, _readIndex, 0);
|
|
109
89
|
__privateAdd(this, _writeIndex, 0);
|
|
110
90
|
__privateAdd(this, _closed, false);
|
|
111
|
-
__privateAdd(this, _sampleRate
|
|
112
|
-
__privateAdd(this, _encoding
|
|
113
|
-
__privateAdd(this, _container
|
|
91
|
+
__privateAdd(this, _sampleRate);
|
|
92
|
+
__privateAdd(this, _encoding);
|
|
93
|
+
__privateAdd(this, _container);
|
|
114
94
|
this.on = __privateGet(this, _emitter).on.bind(__privateGet(this, _emitter));
|
|
115
95
|
this.once = __privateGet(this, _emitter).once.bind(__privateGet(this, _emitter));
|
|
116
96
|
this.events = __privateGet(this, _emitter).events.bind(__privateGet(this, _emitter));
|
|
@@ -118,7 +98,7 @@ var Source = class {
|
|
|
118
98
|
__privateSet(this, _sampleRate, sampleRate);
|
|
119
99
|
__privateSet(this, _encoding, encoding);
|
|
120
100
|
__privateSet(this, _container, container);
|
|
121
|
-
__privateSet(this, _buffer, __privateMethod(this,
|
|
101
|
+
__privateSet(this, _buffer, __privateMethod(this, _Source_instances, createBuffer_fn).call(this, 1024));
|
|
122
102
|
}
|
|
123
103
|
get sampleRate() {
|
|
124
104
|
return __privateGet(this, _sampleRate);
|
|
@@ -142,7 +122,7 @@ var Source = class {
|
|
|
142
122
|
while (newCapacity < requiredCapacity) {
|
|
143
123
|
newCapacity *= 2;
|
|
144
124
|
}
|
|
145
|
-
const newBuffer = __privateMethod(this,
|
|
125
|
+
const newBuffer = __privateMethod(this, _Source_instances, createBuffer_fn).call(this, newCapacity);
|
|
146
126
|
newBuffer.set(__privateGet(this, _buffer));
|
|
147
127
|
__privateSet(this, _buffer, newBuffer);
|
|
148
128
|
}
|
|
@@ -247,7 +227,13 @@ _closed = new WeakMap();
|
|
|
247
227
|
_sampleRate = new WeakMap();
|
|
248
228
|
_encoding = new WeakMap();
|
|
249
229
|
_container = new WeakMap();
|
|
250
|
-
|
|
230
|
+
_Source_instances = new WeakSet();
|
|
231
|
+
/**
|
|
232
|
+
* Create a new buffer for the source.
|
|
233
|
+
*
|
|
234
|
+
* @param size - The size of the buffer to create.
|
|
235
|
+
* @returns The new buffer as a TypedArray based on the encoding.
|
|
236
|
+
*/
|
|
251
237
|
createBuffer_fn = function(size) {
|
|
252
238
|
const { arrayType: ArrayType } = ENCODING_MAP[__privateGet(this, _encoding)];
|
|
253
239
|
return new ArrayType(size);
|
package/dist/tts/source.js
CHANGED
package/dist/tts/utils.js
CHANGED
|
@@ -7,9 +7,9 @@ import {
|
|
|
7
7
|
isComplete,
|
|
8
8
|
isSentinel,
|
|
9
9
|
playAudioBuffer
|
|
10
|
-
} from "../chunk-
|
|
11
|
-
import "../chunk-
|
|
12
|
-
import "../chunk-
|
|
10
|
+
} from "../chunk-5SBAQNWQ.js";
|
|
11
|
+
import "../chunk-I5YVYTNK.js";
|
|
12
|
+
import "../chunk-NJDRWDQ3.js";
|
|
13
13
|
export {
|
|
14
14
|
base64ToArray,
|
|
15
15
|
createMessageHandlerForContextId,
|
package/dist/tts/websocket.cjs
CHANGED
|
@@ -9,6 +9,9 @@ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
|
9
9
|
var __getProtoOf = Object.getPrototypeOf;
|
|
10
10
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
11
11
|
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
12
|
+
var __typeError = (msg) => {
|
|
13
|
+
throw TypeError(msg);
|
|
14
|
+
};
|
|
12
15
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
13
16
|
var __spreadValues = (a, b) => {
|
|
14
17
|
for (var prop in b || (b = {}))
|
|
@@ -43,28 +46,11 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
43
46
|
mod
|
|
44
47
|
));
|
|
45
48
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
46
|
-
var __accessCheck = (obj, member, msg) =>
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
var
|
|
51
|
-
__accessCheck(obj, member, "read from private field");
|
|
52
|
-
return getter ? getter.call(obj) : member.get(obj);
|
|
53
|
-
};
|
|
54
|
-
var __privateAdd = (obj, member, value) => {
|
|
55
|
-
if (member.has(obj))
|
|
56
|
-
throw TypeError("Cannot add the same private member more than once");
|
|
57
|
-
member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
58
|
-
};
|
|
59
|
-
var __privateSet = (obj, member, value, setter) => {
|
|
60
|
-
__accessCheck(obj, member, "write to private field");
|
|
61
|
-
setter ? setter.call(obj, value) : member.set(obj, value);
|
|
62
|
-
return value;
|
|
63
|
-
};
|
|
64
|
-
var __privateMethod = (obj, member, method) => {
|
|
65
|
-
__accessCheck(obj, member, "access private method");
|
|
66
|
-
return method;
|
|
67
|
-
};
|
|
49
|
+
var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
|
|
50
|
+
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
51
|
+
var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
52
|
+
var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
|
|
53
|
+
var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
|
|
68
54
|
var __async = (__this, __arguments, generator) => {
|
|
69
55
|
return new Promise((resolve, reject) => {
|
|
70
56
|
var fulfilled = (value) => {
|
|
@@ -143,7 +129,7 @@ var ENCODING_MAP = {
|
|
|
143
129
|
pcm_alaw: { arrayType: Uint8Array, bytesPerElement: 1 },
|
|
144
130
|
pcm_mulaw: { arrayType: Uint8Array, bytesPerElement: 1 }
|
|
145
131
|
};
|
|
146
|
-
var _emitter, _buffer, _readIndex, _writeIndex, _closed, _sampleRate, _encoding, _container,
|
|
132
|
+
var _emitter, _buffer, _readIndex, _writeIndex, _closed, _sampleRate, _encoding, _container, _Source_instances, createBuffer_fn;
|
|
147
133
|
var Source = class {
|
|
148
134
|
/**
|
|
149
135
|
* Create a new Source.
|
|
@@ -156,21 +142,15 @@ var Source = class {
|
|
|
156
142
|
encoding,
|
|
157
143
|
container
|
|
158
144
|
}) {
|
|
159
|
-
|
|
160
|
-
* Create a new buffer for the source.
|
|
161
|
-
*
|
|
162
|
-
* @param size - The size of the buffer to create.
|
|
163
|
-
* @returns The new buffer as a TypedArray based on the encoding.
|
|
164
|
-
*/
|
|
165
|
-
__privateAdd(this, _createBuffer);
|
|
145
|
+
__privateAdd(this, _Source_instances);
|
|
166
146
|
__privateAdd(this, _emitter, new import_emittery.default());
|
|
167
|
-
__privateAdd(this, _buffer
|
|
147
|
+
__privateAdd(this, _buffer);
|
|
168
148
|
__privateAdd(this, _readIndex, 0);
|
|
169
149
|
__privateAdd(this, _writeIndex, 0);
|
|
170
150
|
__privateAdd(this, _closed, false);
|
|
171
|
-
__privateAdd(this, _sampleRate
|
|
172
|
-
__privateAdd(this, _encoding
|
|
173
|
-
__privateAdd(this, _container
|
|
151
|
+
__privateAdd(this, _sampleRate);
|
|
152
|
+
__privateAdd(this, _encoding);
|
|
153
|
+
__privateAdd(this, _container);
|
|
174
154
|
this.on = __privateGet(this, _emitter).on.bind(__privateGet(this, _emitter));
|
|
175
155
|
this.once = __privateGet(this, _emitter).once.bind(__privateGet(this, _emitter));
|
|
176
156
|
this.events = __privateGet(this, _emitter).events.bind(__privateGet(this, _emitter));
|
|
@@ -178,7 +158,7 @@ var Source = class {
|
|
|
178
158
|
__privateSet(this, _sampleRate, sampleRate);
|
|
179
159
|
__privateSet(this, _encoding, encoding);
|
|
180
160
|
__privateSet(this, _container, container);
|
|
181
|
-
__privateSet(this, _buffer, __privateMethod(this,
|
|
161
|
+
__privateSet(this, _buffer, __privateMethod(this, _Source_instances, createBuffer_fn).call(this, 1024));
|
|
182
162
|
}
|
|
183
163
|
get sampleRate() {
|
|
184
164
|
return __privateGet(this, _sampleRate);
|
|
@@ -202,7 +182,7 @@ var Source = class {
|
|
|
202
182
|
while (newCapacity < requiredCapacity) {
|
|
203
183
|
newCapacity *= 2;
|
|
204
184
|
}
|
|
205
|
-
const newBuffer = __privateMethod(this,
|
|
185
|
+
const newBuffer = __privateMethod(this, _Source_instances, createBuffer_fn).call(this, newCapacity);
|
|
206
186
|
newBuffer.set(__privateGet(this, _buffer));
|
|
207
187
|
__privateSet(this, _buffer, newBuffer);
|
|
208
188
|
}
|
|
@@ -307,7 +287,13 @@ _closed = new WeakMap();
|
|
|
307
287
|
_sampleRate = new WeakMap();
|
|
308
288
|
_encoding = new WeakMap();
|
|
309
289
|
_container = new WeakMap();
|
|
310
|
-
|
|
290
|
+
_Source_instances = new WeakSet();
|
|
291
|
+
/**
|
|
292
|
+
* Create a new buffer for the source.
|
|
293
|
+
*
|
|
294
|
+
* @param size - The size of the buffer to create.
|
|
295
|
+
* @returns The new buffer as a TypedArray based on the encoding.
|
|
296
|
+
*/
|
|
311
297
|
createBuffer_fn = function(size) {
|
|
312
298
|
const { arrayType: ArrayType } = ENCODING_MAP[__privateGet(this, _encoding)];
|
|
313
299
|
return new ArrayType(size);
|
|
@@ -370,7 +356,7 @@ function getEmitteryCallbacks(emitter) {
|
|
|
370
356
|
}
|
|
371
357
|
|
|
372
358
|
// src/tts/websocket.ts
|
|
373
|
-
var _isConnected, _sampleRate2, _container2, _encoding2,
|
|
359
|
+
var _isConnected, _sampleRate2, _container2, _encoding2, _WebSocket_instances, generateId_fn;
|
|
374
360
|
var WebSocket = class extends Client {
|
|
375
361
|
/**
|
|
376
362
|
* Create a new WebSocket client.
|
|
@@ -379,19 +365,11 @@ var WebSocket = class extends Client {
|
|
|
379
365
|
*/
|
|
380
366
|
constructor({ sampleRate, container, encoding }, ...args) {
|
|
381
367
|
super(...args);
|
|
382
|
-
|
|
383
|
-
* Generate a unique ID suitable for a streaming context.
|
|
384
|
-
*
|
|
385
|
-
* Not suitable for security purposes or as a primary key, since
|
|
386
|
-
* it lacks the amount of entropy required for those use cases.
|
|
387
|
-
*
|
|
388
|
-
* @returns A unique ID.
|
|
389
|
-
*/
|
|
390
|
-
__privateAdd(this, _generateId);
|
|
368
|
+
__privateAdd(this, _WebSocket_instances);
|
|
391
369
|
__privateAdd(this, _isConnected, false);
|
|
392
|
-
__privateAdd(this, _sampleRate2
|
|
393
|
-
__privateAdd(this, _container2
|
|
394
|
-
__privateAdd(this, _encoding2
|
|
370
|
+
__privateAdd(this, _sampleRate2);
|
|
371
|
+
__privateAdd(this, _container2);
|
|
372
|
+
__privateAdd(this, _encoding2);
|
|
395
373
|
__privateSet(this, _sampleRate2, sampleRate);
|
|
396
374
|
__privateSet(this, _container2, container != null ? container : "raw");
|
|
397
375
|
__privateSet(this, _encoding2, encoding != null ? encoding : "pcm_f32le");
|
|
@@ -413,7 +391,7 @@ var WebSocket = class extends Client {
|
|
|
413
391
|
throw new Error("Not connected to WebSocket. Call .connect() first.");
|
|
414
392
|
}
|
|
415
393
|
if (!inputs.context_id) {
|
|
416
|
-
inputs.context_id = __privateMethod(this,
|
|
394
|
+
inputs.context_id = __privateMethod(this, _WebSocket_instances, generateId_fn).call(this);
|
|
417
395
|
}
|
|
418
396
|
if (!inputs.output_format) {
|
|
419
397
|
inputs.output_format = {
|
|
@@ -593,7 +571,15 @@ _isConnected = new WeakMap();
|
|
|
593
571
|
_sampleRate2 = new WeakMap();
|
|
594
572
|
_container2 = new WeakMap();
|
|
595
573
|
_encoding2 = new WeakMap();
|
|
596
|
-
|
|
574
|
+
_WebSocket_instances = new WeakSet();
|
|
575
|
+
/**
|
|
576
|
+
* Generate a unique ID suitable for a streaming context.
|
|
577
|
+
*
|
|
578
|
+
* Not suitable for security purposes or as a primary key, since
|
|
579
|
+
* it lacks the amount of entropy required for those use cases.
|
|
580
|
+
*
|
|
581
|
+
* @returns A unique ID.
|
|
582
|
+
*/
|
|
597
583
|
generateId_fn = function() {
|
|
598
584
|
return (0, import_human_id.humanId)({
|
|
599
585
|
separator: "-",
|
package/dist/tts/websocket.d.cts
CHANGED
|
@@ -33,18 +33,18 @@ declare class WebSocket extends Client {
|
|
|
33
33
|
message: string;
|
|
34
34
|
timestamps: WordTimestamps;
|
|
35
35
|
} & emittery.OmnipresentEventData)[Name]) => void | Promise<void>) => emittery.UnsubscribeFunction;
|
|
36
|
-
off: <
|
|
36
|
+
off: <Name extends "timestamps" | keyof emittery.OmnipresentEventData | "message">(eventName: Name | readonly Name[], listener: (eventData: ({
|
|
37
37
|
message: string;
|
|
38
38
|
timestamps: WordTimestamps;
|
|
39
|
-
} & emittery.OmnipresentEventData)[
|
|
40
|
-
once: <
|
|
39
|
+
} & emittery.OmnipresentEventData)[Name]) => void | Promise<void>) => void;
|
|
40
|
+
once: <Name extends "timestamps" | keyof emittery.OmnipresentEventData | "message">(eventName: Name | readonly Name[]) => emittery.EmitteryOncePromise<({
|
|
41
41
|
message: string;
|
|
42
42
|
timestamps: WordTimestamps;
|
|
43
|
-
} & emittery.OmnipresentEventData)[
|
|
44
|
-
events: <
|
|
43
|
+
} & emittery.OmnipresentEventData)[Name]>;
|
|
44
|
+
events: <Name extends "timestamps" | "message">(eventName: Name | readonly Name[]) => AsyncIterableIterator<{
|
|
45
45
|
message: string;
|
|
46
46
|
timestamps: WordTimestamps;
|
|
47
|
-
}[
|
|
47
|
+
}[Name]>;
|
|
48
48
|
source: Source;
|
|
49
49
|
};
|
|
50
50
|
/**
|
package/dist/tts/websocket.d.ts
CHANGED
|
@@ -33,18 +33,18 @@ declare class WebSocket extends Client {
|
|
|
33
33
|
message: string;
|
|
34
34
|
timestamps: WordTimestamps;
|
|
35
35
|
} & emittery.OmnipresentEventData)[Name]) => void | Promise<void>) => emittery.UnsubscribeFunction;
|
|
36
|
-
off: <
|
|
36
|
+
off: <Name extends "timestamps" | keyof emittery.OmnipresentEventData | "message">(eventName: Name | readonly Name[], listener: (eventData: ({
|
|
37
37
|
message: string;
|
|
38
38
|
timestamps: WordTimestamps;
|
|
39
|
-
} & emittery.OmnipresentEventData)[
|
|
40
|
-
once: <
|
|
39
|
+
} & emittery.OmnipresentEventData)[Name]) => void | Promise<void>) => void;
|
|
40
|
+
once: <Name extends "timestamps" | keyof emittery.OmnipresentEventData | "message">(eventName: Name | readonly Name[]) => emittery.EmitteryOncePromise<({
|
|
41
41
|
message: string;
|
|
42
42
|
timestamps: WordTimestamps;
|
|
43
|
-
} & emittery.OmnipresentEventData)[
|
|
44
|
-
events: <
|
|
43
|
+
} & emittery.OmnipresentEventData)[Name]>;
|
|
44
|
+
events: <Name extends "timestamps" | "message">(eventName: Name | readonly Name[]) => AsyncIterableIterator<{
|
|
45
45
|
message: string;
|
|
46
46
|
timestamps: WordTimestamps;
|
|
47
|
-
}[
|
|
47
|
+
}[Name]>;
|
|
48
48
|
source: Source;
|
|
49
49
|
};
|
|
50
50
|
/**
|
package/dist/tts/websocket.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
WebSocket
|
|
3
|
-
} from "../chunk-
|
|
4
|
-
import "../chunk-
|
|
3
|
+
} from "../chunk-HQOC2S6C.js";
|
|
4
|
+
import "../chunk-5SBAQNWQ.js";
|
|
5
|
+
import "../chunk-I5YVYTNK.js";
|
|
6
|
+
import "../chunk-FLWYXP5Z.js";
|
|
5
7
|
import "../chunk-2BFEKY3F.js";
|
|
6
|
-
import "../chunk-
|
|
7
|
-
import "../chunk-VVDJR3OA.js";
|
|
8
|
-
import "../chunk-WIFMLPT5.js";
|
|
8
|
+
import "../chunk-NJDRWDQ3.js";
|
|
9
9
|
export {
|
|
10
10
|
WebSocket as default
|
|
11
11
|
};
|
package/dist/types/index.d.cts
CHANGED
|
@@ -41,6 +41,7 @@ type StreamRequest = {
|
|
|
41
41
|
language?: Language;
|
|
42
42
|
add_timestamps?: boolean;
|
|
43
43
|
};
|
|
44
|
+
type BytesRequest = Omit<StreamRequest, "continue" | "add_timestamps" | "context_id">;
|
|
44
45
|
type ContinueRequest = StreamRequest & {
|
|
45
46
|
context_id: string;
|
|
46
47
|
};
|
|
@@ -87,6 +88,26 @@ type CloneOptions = {
|
|
|
87
88
|
clip: Blob;
|
|
88
89
|
enhance?: boolean;
|
|
89
90
|
};
|
|
91
|
+
type VoiceChangerOptions = {
|
|
92
|
+
clip: File;
|
|
93
|
+
voice: {
|
|
94
|
+
id: string;
|
|
95
|
+
};
|
|
96
|
+
output_format: {
|
|
97
|
+
container: "mp3";
|
|
98
|
+
bit_rate: number;
|
|
99
|
+
sample_rate: number;
|
|
100
|
+
} | {
|
|
101
|
+
container: "wav";
|
|
102
|
+
encoding: Encoding;
|
|
103
|
+
sample_rate: number;
|
|
104
|
+
bit_rate: number;
|
|
105
|
+
} | {
|
|
106
|
+
container: "raw";
|
|
107
|
+
encoding: Encoding;
|
|
108
|
+
sample_rate: number;
|
|
109
|
+
};
|
|
110
|
+
};
|
|
90
111
|
type LocalizeOptions = {
|
|
91
112
|
mode: "embedding";
|
|
92
113
|
embedding: number[];
|
|
@@ -118,6 +139,9 @@ type UpdateVoice = Partial<Pick<Voice, "name" | "description" | "embedding">>;
|
|
|
118
139
|
type CloneResponse = {
|
|
119
140
|
embedding: number[];
|
|
120
141
|
};
|
|
142
|
+
type VoiceChangerBytesResponse = {
|
|
143
|
+
buffer: ArrayBuffer;
|
|
144
|
+
};
|
|
121
145
|
type LocalizeResponse = {
|
|
122
146
|
embedding: number[];
|
|
123
147
|
};
|
|
@@ -138,4 +162,4 @@ type SourceEventData = {
|
|
|
138
162
|
type TypedArray = Float32Array | Int16Array | Uint8Array;
|
|
139
163
|
type Encoding = "pcm_f32le" | "pcm_s16le" | "pcm_alaw" | "pcm_mulaw";
|
|
140
164
|
|
|
141
|
-
export type { Chunk, ClientOptions, CloneOptions, CloneResponse, ConnectionEventData, ContinueRequest, CreateVoice, EmitteryCallbacks, Emotion, EmotionControl, Encoding, Intensity, Language, LocalizeOptions, LocalizeResponse, MixVoicesOptions, MixVoicesResponse, Sentinel, SourceEventData, StreamOptions, StreamRequest, TypedArray, UpdateVoice, Voice, VoiceOptions, VoiceSpecifier, VoiceToMix, WebSocketBaseResponse, WebSocketChunkResponse, WebSocketErrorResponse, WebSocketOptions, WebSocketResponse, WebSocketTimestampsResponse, WordTimestamps };
|
|
165
|
+
export type { BytesRequest, Chunk, ClientOptions, CloneOptions, CloneResponse, ConnectionEventData, ContinueRequest, CreateVoice, EmitteryCallbacks, Emotion, EmotionControl, Encoding, Intensity, Language, LocalizeOptions, LocalizeResponse, MixVoicesOptions, MixVoicesResponse, Sentinel, SourceEventData, StreamOptions, StreamRequest, TypedArray, UpdateVoice, Voice, VoiceChangerBytesResponse, VoiceChangerOptions, VoiceOptions, VoiceSpecifier, VoiceToMix, WebSocketBaseResponse, WebSocketChunkResponse, WebSocketErrorResponse, WebSocketOptions, WebSocketResponse, WebSocketTimestampsResponse, WordTimestamps };
|
package/dist/types/index.d.ts
CHANGED
|
@@ -41,6 +41,7 @@ type StreamRequest = {
|
|
|
41
41
|
language?: Language;
|
|
42
42
|
add_timestamps?: boolean;
|
|
43
43
|
};
|
|
44
|
+
type BytesRequest = Omit<StreamRequest, "continue" | "add_timestamps" | "context_id">;
|
|
44
45
|
type ContinueRequest = StreamRequest & {
|
|
45
46
|
context_id: string;
|
|
46
47
|
};
|
|
@@ -87,6 +88,26 @@ type CloneOptions = {
|
|
|
87
88
|
clip: Blob;
|
|
88
89
|
enhance?: boolean;
|
|
89
90
|
};
|
|
91
|
+
type VoiceChangerOptions = {
|
|
92
|
+
clip: File;
|
|
93
|
+
voice: {
|
|
94
|
+
id: string;
|
|
95
|
+
};
|
|
96
|
+
output_format: {
|
|
97
|
+
container: "mp3";
|
|
98
|
+
bit_rate: number;
|
|
99
|
+
sample_rate: number;
|
|
100
|
+
} | {
|
|
101
|
+
container: "wav";
|
|
102
|
+
encoding: Encoding;
|
|
103
|
+
sample_rate: number;
|
|
104
|
+
bit_rate: number;
|
|
105
|
+
} | {
|
|
106
|
+
container: "raw";
|
|
107
|
+
encoding: Encoding;
|
|
108
|
+
sample_rate: number;
|
|
109
|
+
};
|
|
110
|
+
};
|
|
90
111
|
type LocalizeOptions = {
|
|
91
112
|
mode: "embedding";
|
|
92
113
|
embedding: number[];
|
|
@@ -118,6 +139,9 @@ type UpdateVoice = Partial<Pick<Voice, "name" | "description" | "embedding">>;
|
|
|
118
139
|
type CloneResponse = {
|
|
119
140
|
embedding: number[];
|
|
120
141
|
};
|
|
142
|
+
type VoiceChangerBytesResponse = {
|
|
143
|
+
buffer: ArrayBuffer;
|
|
144
|
+
};
|
|
121
145
|
type LocalizeResponse = {
|
|
122
146
|
embedding: number[];
|
|
123
147
|
};
|
|
@@ -138,4 +162,4 @@ type SourceEventData = {
|
|
|
138
162
|
type TypedArray = Float32Array | Int16Array | Uint8Array;
|
|
139
163
|
type Encoding = "pcm_f32le" | "pcm_s16le" | "pcm_alaw" | "pcm_mulaw";
|
|
140
164
|
|
|
141
|
-
export type { Chunk, ClientOptions, CloneOptions, CloneResponse, ConnectionEventData, ContinueRequest, CreateVoice, EmitteryCallbacks, Emotion, EmotionControl, Encoding, Intensity, Language, LocalizeOptions, LocalizeResponse, MixVoicesOptions, MixVoicesResponse, Sentinel, SourceEventData, StreamOptions, StreamRequest, TypedArray, UpdateVoice, Voice, VoiceOptions, VoiceSpecifier, VoiceToMix, WebSocketBaseResponse, WebSocketChunkResponse, WebSocketErrorResponse, WebSocketOptions, WebSocketResponse, WebSocketTimestampsResponse, WordTimestamps };
|
|
165
|
+
export type { BytesRequest, Chunk, ClientOptions, CloneOptions, CloneResponse, ConnectionEventData, ContinueRequest, CreateVoice, EmitteryCallbacks, Emotion, EmotionControl, Encoding, Intensity, Language, LocalizeOptions, LocalizeResponse, MixVoicesOptions, MixVoicesResponse, Sentinel, SourceEventData, StreamOptions, StreamRequest, TypedArray, UpdateVoice, Voice, VoiceChangerBytesResponse, VoiceChangerOptions, VoiceOptions, VoiceSpecifier, VoiceToMix, WebSocketBaseResponse, WebSocketChunkResponse, WebSocketErrorResponse, WebSocketOptions, WebSocketResponse, WebSocketTimestampsResponse, WordTimestamps };
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __defProps = Object.defineProperties;
|
|
5
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
7
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
8
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
9
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
10
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
11
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
12
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
13
|
+
var __spreadValues = (a, b) => {
|
|
14
|
+
for (var prop in b || (b = {}))
|
|
15
|
+
if (__hasOwnProp.call(b, prop))
|
|
16
|
+
__defNormalProp(a, prop, b[prop]);
|
|
17
|
+
if (__getOwnPropSymbols)
|
|
18
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
19
|
+
if (__propIsEnum.call(b, prop))
|
|
20
|
+
__defNormalProp(a, prop, b[prop]);
|
|
21
|
+
}
|
|
22
|
+
return a;
|
|
23
|
+
};
|
|
24
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
25
|
+
var __export = (target, all) => {
|
|
26
|
+
for (var name in all)
|
|
27
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
28
|
+
};
|
|
29
|
+
var __copyProps = (to, from, except, desc) => {
|
|
30
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
31
|
+
for (let key of __getOwnPropNames(from))
|
|
32
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
33
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
34
|
+
}
|
|
35
|
+
return to;
|
|
36
|
+
};
|
|
37
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
38
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
39
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
40
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
41
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
42
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
43
|
+
mod
|
|
44
|
+
));
|
|
45
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
46
|
+
var __async = (__this, __arguments, generator) => {
|
|
47
|
+
return new Promise((resolve, reject) => {
|
|
48
|
+
var fulfilled = (value) => {
|
|
49
|
+
try {
|
|
50
|
+
step(generator.next(value));
|
|
51
|
+
} catch (e) {
|
|
52
|
+
reject(e);
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
var rejected = (value) => {
|
|
56
|
+
try {
|
|
57
|
+
step(generator.throw(value));
|
|
58
|
+
} catch (e) {
|
|
59
|
+
reject(e);
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
|
63
|
+
step((generator = generator.apply(__this, __arguments)).next());
|
|
64
|
+
});
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
// src/voice-changer/index.ts
|
|
68
|
+
var voice_changer_exports = {};
|
|
69
|
+
__export(voice_changer_exports, {
|
|
70
|
+
default: () => VoiceChanger
|
|
71
|
+
});
|
|
72
|
+
module.exports = __toCommonJS(voice_changer_exports);
|
|
73
|
+
|
|
74
|
+
// src/lib/client.ts
|
|
75
|
+
var import_cross_fetch = __toESM(require("cross-fetch"), 1);
|
|
76
|
+
|
|
77
|
+
// src/lib/constants.ts
|
|
78
|
+
var BASE_URL = "https://api.cartesia.ai";
|
|
79
|
+
var CARTESIA_VERSION = "2024-06-10";
|
|
80
|
+
var constructApiUrl = (baseUrl, path, { websocket = false } = {}) => {
|
|
81
|
+
const url = new URL(path, baseUrl);
|
|
82
|
+
if (websocket) {
|
|
83
|
+
url.protocol = baseUrl.replace(/^http/, "ws");
|
|
84
|
+
}
|
|
85
|
+
return url;
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
// src/lib/client.ts
|
|
89
|
+
var Client = class {
|
|
90
|
+
constructor(options = {}) {
|
|
91
|
+
const apiKey = options.apiKey || process.env.CARTESIA_API_KEY;
|
|
92
|
+
if (!apiKey) {
|
|
93
|
+
throw new Error("Missing Cartesia API key.");
|
|
94
|
+
}
|
|
95
|
+
this.apiKey = typeof apiKey === "function" ? apiKey : () => __async(this, null, function* () {
|
|
96
|
+
return apiKey;
|
|
97
|
+
});
|
|
98
|
+
this.baseUrl = options.baseUrl || BASE_URL;
|
|
99
|
+
}
|
|
100
|
+
_fetch(_0) {
|
|
101
|
+
return __async(this, arguments, function* (path, options = {}) {
|
|
102
|
+
const url = constructApiUrl(this.baseUrl, path);
|
|
103
|
+
const headers = new Headers(options.headers);
|
|
104
|
+
headers.set("X-API-Key", yield this.apiKey());
|
|
105
|
+
headers.set("Cartesia-Version", CARTESIA_VERSION);
|
|
106
|
+
return (0, import_cross_fetch.default)(url.toString(), __spreadProps(__spreadValues({}, options), {
|
|
107
|
+
headers
|
|
108
|
+
}));
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
|
|
113
|
+
// src/voice-changer/index.ts
|
|
114
|
+
var VoiceChanger = class extends Client {
|
|
115
|
+
bytes(options) {
|
|
116
|
+
return __async(this, null, function* () {
|
|
117
|
+
const formData = new FormData();
|
|
118
|
+
formData.append("clip", options.clip);
|
|
119
|
+
formData.append("voice[id]", options.voice.id);
|
|
120
|
+
const fmt = options.output_format;
|
|
121
|
+
formData.append("output_format[container]", fmt.container);
|
|
122
|
+
if ("encoding" in fmt) {
|
|
123
|
+
formData.append("output_format[encoding]", fmt.encoding);
|
|
124
|
+
}
|
|
125
|
+
if ("bit_rate" in fmt) {
|
|
126
|
+
formData.append("output_format[bit_rate]", fmt.bit_rate.toString());
|
|
127
|
+
}
|
|
128
|
+
if ("sample_rate" in fmt) {
|
|
129
|
+
formData.append("output_format[sample_rate]", fmt.sample_rate.toString());
|
|
130
|
+
}
|
|
131
|
+
const response = yield this._fetch("/voice-changer/bytes", {
|
|
132
|
+
method: "POST",
|
|
133
|
+
body: formData
|
|
134
|
+
});
|
|
135
|
+
if (!response.ok) {
|
|
136
|
+
throw new Error(
|
|
137
|
+
`Voice changer error! status: ${response.status}, message: ${yield response.text()}`
|
|
138
|
+
);
|
|
139
|
+
}
|
|
140
|
+
return { buffer: yield response.arrayBuffer() };
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Client } from '../lib/client.cjs';
|
|
2
|
+
import { VoiceChangerOptions, VoiceChangerBytesResponse } from '../types/index.cjs';
|
|
3
|
+
import 'emittery';
|
|
4
|
+
|
|
5
|
+
declare class VoiceChanger extends Client {
|
|
6
|
+
bytes(options: VoiceChangerOptions): Promise<VoiceChangerBytesResponse>;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export { VoiceChanger as default };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Client } from '../lib/client.js';
|
|
2
|
+
import { VoiceChangerOptions, VoiceChangerBytesResponse } from '../types/index.js';
|
|
3
|
+
import 'emittery';
|
|
4
|
+
|
|
5
|
+
declare class VoiceChanger extends Client {
|
|
6
|
+
bytes(options: VoiceChangerOptions): Promise<VoiceChangerBytesResponse>;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export { VoiceChanger as default };
|
package/dist/voices/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Voices
|
|
3
|
-
} from "../chunk-
|
|
4
|
-
import "../chunk-
|
|
3
|
+
} from "../chunk-RJICGVPL.js";
|
|
4
|
+
import "../chunk-FLWYXP5Z.js";
|
|
5
5
|
import "../chunk-2BFEKY3F.js";
|
|
6
|
-
import "../chunk-
|
|
6
|
+
import "../chunk-NJDRWDQ3.js";
|
|
7
7
|
export {
|
|
8
8
|
Voices as default
|
|
9
9
|
};
|