@speech-sdk/core 0.28.0 → 0.29.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.
Files changed (66) hide show
  1. package/README.md +22 -29
  2. package/dist/conversation/dispatch.d.ts +1 -4
  3. package/dist/conversation/dispatch.d.ts.map +1 -1
  4. package/dist/conversation/dispatch.js +1 -10
  5. package/dist/conversation/dispatch.js.map +1 -1
  6. package/dist/conversation/errors.d.ts +0 -3
  7. package/dist/conversation/errors.d.ts.map +1 -1
  8. package/dist/conversation/errors.js +0 -6
  9. package/dist/conversation/errors.js.map +1 -1
  10. package/dist/errors.d.ts +0 -3
  11. package/dist/errors.d.ts.map +1 -1
  12. package/dist/errors.js +1 -7
  13. package/dist/errors.js.map +1 -1
  14. package/dist/generate-conversation.d.ts +1 -1
  15. package/dist/generate-conversation.d.ts.map +1 -1
  16. package/dist/generate-conversation.js +2 -105
  17. package/dist/generate-conversation.js.map +1 -1
  18. package/dist/generate-speech.d.ts.map +1 -1
  19. package/dist/generate-speech.js +22 -60
  20. package/dist/generate-speech.js.map +1 -1
  21. package/dist/index.d.ts +2 -2
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +2 -2
  24. package/dist/index.js.map +1 -1
  25. package/dist/instructions.d.ts.map +1 -1
  26. package/dist/instructions.js +2 -2
  27. package/dist/instructions.js.map +1 -1
  28. package/dist/pronunciations/merge.js +1 -1
  29. package/dist/pronunciations/merge.js.map +1 -1
  30. package/dist/provider-utils.d.ts +0 -1
  31. package/dist/provider-utils.d.ts.map +1 -1
  32. package/dist/provider-utils.js +67 -20
  33. package/dist/provider-utils.js.map +1 -1
  34. package/dist/providers/smallest-ai/index.d.ts +2 -1
  35. package/dist/providers/smallest-ai/index.d.ts.map +1 -1
  36. package/dist/providers/smallest-ai/index.js +2 -1
  37. package/dist/providers/smallest-ai/index.js.map +1 -1
  38. package/dist/providers.d.ts +0 -2
  39. package/dist/providers.d.ts.map +1 -1
  40. package/dist/providers.js +0 -1
  41. package/dist/providers.js.map +1 -1
  42. package/dist/resolve-provider.d.ts +1 -0
  43. package/dist/resolve-provider.d.ts.map +1 -1
  44. package/dist/resolve-provider.js +50 -8
  45. package/dist/resolve-provider.js.map +1 -1
  46. package/dist/speech-provider.d.ts +0 -4
  47. package/dist/speech-provider.d.ts.map +1 -1
  48. package/dist/speech-provider.js +0 -4
  49. package/dist/speech-provider.js.map +1 -1
  50. package/dist/stream-speech.d.ts.map +1 -1
  51. package/dist/stream-speech.js +11 -27
  52. package/dist/stream-speech.js.map +1 -1
  53. package/dist/text-preprocessing.d.ts +1 -1
  54. package/dist/text-preprocessing.d.ts.map +1 -1
  55. package/dist/text-preprocessing.js +0 -9
  56. package/dist/text-preprocessing.js.map +1 -1
  57. package/dist/timestamp-alignment.d.ts.map +1 -1
  58. package/dist/timestamp-alignment.js +3 -12
  59. package/dist/timestamp-alignment.js.map +1 -1
  60. package/dist/types.d.ts +0 -1
  61. package/dist/types.d.ts.map +1 -1
  62. package/package.json +1 -1
  63. package/dist/providers/gateway/index.d.ts +0 -83
  64. package/dist/providers/gateway/index.d.ts.map +0 -1
  65. package/dist/providers/gateway/index.js +0 -299
  66. package/dist/providers/gateway/index.js.map +0 -1
@@ -4,7 +4,7 @@ import { deriveTimestampsViaSTT } from "./derive-timestamps.js";
4
4
  import { TimestampProviderRequiredError, TimestampValidationError, withProviderErrorStage, } from "./errors.js";
5
5
  import { debug } from "./logger.js";
6
6
  import { inverseAlignWithQuality, PRONUNCIATION_TIMESTAMP_ESTIMATE_WARNING, } from "./pronunciations/inverse-align.js";
7
- import { isSpeechGatewayModel, modelDeclaresNativeTimestamps, } from "./speech-provider.js";
7
+ import { modelDeclaresNativeTimestamps, } from "./speech-provider.js";
8
8
  import { estimateTimestamps } from "./timestamp-estimation.js";
9
9
  import { finalizeTimestamps, tokenizeTimestampSource, } from "./timestamp-finalization.js";
10
10
  import { concatTimestampsWithOffsets, } from "./timestamps.js";
@@ -220,11 +220,10 @@ async function resolveDirectTimestamps(context, resolutionArgs) {
220
220
  return { timestamps: estimated, source: "estimated" };
221
221
  }
222
222
  export function prepareTimestampAlignment(args) {
223
- const isGateway = isSpeechGatewayModel(args.resolved);
224
223
  const hasNative = modelDeclaresNativeTimestamps(args.resolved);
225
- const includeNative = args.request && (isGateway || hasNative);
224
+ const includeNative = args.request && hasNative;
226
225
  const aligner = resolveAligner(args);
227
- if (args.request && !(isGateway || hasNative || aligner)) {
226
+ if (args.request && !(hasNative || aligner)) {
228
227
  throw new TimestampProviderRequiredError(args.modelIdentifier);
229
228
  }
230
229
  if (!args.request) {
@@ -245,14 +244,6 @@ export function prepareTimestampAlignment(args) {
245
244
  if (!args.request) {
246
245
  return {};
247
246
  }
248
- // Gateway invariant: the SDK is a transport; the gateway server owns the timestamp contract, so its failures surface unchanged.
249
- if (isGateway) {
250
- return finalizeAndProject({
251
- resolutionArgs,
252
- timestamps: resolutionArgs.providerTimestamps ?? [],
253
- validationSource: args.modelIdentifier,
254
- });
255
- }
256
247
  return await resolveDirectTimestamps({ aligner, includeNative, modelIdentifier: args.modelIdentifier }, resolutionArgs);
257
248
  },
258
249
  };
@@ -1 +1 @@
1
- {"version":3,"file":"timestamp-alignment.js","sourceRoot":"","sources":["../src/timestamp-alignment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EACL,8BAA8B,EAC9B,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EACL,uBAAuB,EACvB,wCAAwC,GACzC,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EACL,oBAAoB,EACpB,6BAA6B,GAE9B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EACL,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,2BAA2B,GAG5B,MAAM,iBAAiB,CAAC;AAEzB,6JAA6J;AAC7J,MAAM,wBAAwB,GAAG,CAAC,CAAC;AAmCnC,SAAS,eAAe,CACtB,UAAoC,EACpC,KAAyB;IAEzB,OAAO,aAAa,CAAC,KAAK,CAAC;QACzB,CAAC,CAAC,CAAC,eAAe,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;QAC5C,CAAC,CAAC,UAAU,CAAC;AACjB,CAAC;AAED,SAAS,iBAAiB,CAAC,IAK1B;IACC,MAAM,SAAS,GAAG,kBAAkB,CAAC;QACnC,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,eAAe,EAAE,IAAI,CAAC,eAAe;KACtC,CAAC,CAAC;IACH,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;QAClB,MAAM,IAAI,wBAAwB,CAAC;YACjC,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,eAAe,SAAS,CAAC,UAAU,CAAC,MAAM,cAAc,CAAC,CAAC;IAC9E,OAAO,SAAS,CAAC,UAAU,CAAC;AAC9B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,IAMjD;IACC,IAAI,CAAC;QACH,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC/B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,sBAAsB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IACnD,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,IAM1B;IACC,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;IACzC,CAAC;IAED,MAAM,MAAM,GAAG,uBAAuB,CACpC,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,kBAAkB,CACxB,CAAC;IACF,OAAO;QACL,UAAU,EAAE,iBAAiB,CAAC;YAC5B,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,IAAI,EAAE,IAAI,CAAC,YAAY;YACvB,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,MAAM,EAAE,0BAA0B;SACnC,CAAC;QACF,GAAG,CAAC,MAAM,CAAC,mBAAmB,IAAI;YAChC,QAAQ,EAAE,CAAC,wCAAwC,CAAC;SACrD,CAAC;KACH,CAAC;AACJ,CAAC;AAMD,SAAS,cAAc,CAAC,IAIvB;IACC,MAAM,EAAE,iBAAiB,EAAE,GAAG,IAAI,CAAC;IACnC,IAAI,iBAAiB,EAAE,CAAC;QACtB,OAAO;YACL,MAAM,EAAE,mBAAmB;YAC3B,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,2BAA2B,CAAC,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC;SACzE,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;IAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IACD,OAAO;QACL,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,QAAQ,CAAC,OAAO,EAAE;QACrD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,sBAAsB,CAAC;YACrB,QAAQ,EAAE,IAAI,CAAC,eAAe;YAC9B,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,iBAAiB,EAAE,QAAQ;YAC3B,WAAW,EAAE,KAAK,CAAC,WAAW;SAC/B,CAAC;KACL,CAAC;AACJ,CAAC;AAED,0JAA0J;AAC1J,KAAK,UAAU,aAAa,CAAC,IAK5B;IACC,MAAM,aAAa,GAAG,MAAM,kBAAkB,CAC5C,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,cAAc,EACnB,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAC1B,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;QACvB,WAAW,EAAE,MAAM;QACnB,KAAK,EAAE,MAAM,KAAK,CAAC,KAAK,EAAE;QAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,IAAI,EAAE,KAAK,CAAC,IAAI;KACjB,CAAC,EACJ,EAAE,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,CAC7B,CAAC;IACF,OAAO,2BAA2B,CAChC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACjC,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE;KAClC,CAAC,CAAC,CACJ,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,uBAAuB,CAAC,IAGtC;IACC,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;IACzC,IAAI,cAAc,CAAC,eAAe,EAAE,MAAM,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC;YAClC,WAAW,EAAE,cAAc,CAAC,WAAW;YACvC,OAAO;YACP,MAAM,EAAE,cAAc,CAAC,eAAe;YACtC,cAAc,EAAE,cAAc,CAAC,cAAc,IAAI,CAAC;SACnD,CAAC,CAAC;QACH,+FAA+F;QAC/F,OAAO,eAAe,CAAC,OAAO,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,MAAM,OAAO,CAAC,KAAK,CAAC;QACzB,WAAW,EAAE,cAAc,CAAC,WAAW;QACvC,KAAK,EAAE,cAAc,CAAC,KAAK;QAC3B,SAAS,EAAE,cAAc,CAAC,SAAS;QACnC,IAAI,EAAE,cAAc,CAAC,eAAe;KACrC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,kBAAkB,CAAC,IAK3B;IACC,MAAM,SAAS,GAAG,iBAAiB,CAAC;QAClC,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,eAAe;QACzC,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,eAAe;QACpD,MAAM,EAAE,IAAI,CAAC,gBAAgB;KAC9B,CAAC,CAAC;IACH,OAAO;QACL,GAAG,iBAAiB,CAAC;YACnB,UAAU,EAAE,SAAS;YACrB,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,eAAe;YACpD,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,YAAY;YAC9C,kBAAkB,EAAE,IAAI,CAAC,cAAc,CAAC,kBAAkB;YAC1D,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,eAAe;SACrD,CAAC;QACF,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;KAC5C,CAAC;AACJ,CAAC;AAQD,SAAS,gBAAgB,CACvB,eAAuB,EACvB,cAAuC;IAEvC,IAAI,CAAC;QACH,OAAO;YACL,MAAM,EAAE,kBAAkB,CAAC;gBACzB,cAAc;gBACd,MAAM,EAAE,QAAQ;gBAChB,UAAU,EAAE,eAAe,CACzB,cAAc,CAAC,kBAAkB,IAAI,EAAE,EACvC,cAAc,CAAC,KAAK,CACrB;gBACD,gBAAgB,EAAE,eAAe;aAClC,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,CAAC,KAAK,YAAY,wBAAwB,CAAC,EAAE,CAAC;YACjD,MAAM,KAAK,CAAC;QACd,CAAC;QACD,KAAK,CACH,GAAG,eAAe,0CAA0C,KAAK,CAAC,MAAM,IAAI,CAC7E,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,eAAuB,EACvB,OAAgB,EAChB,cAAuC;IAEvC,IAAI,CAAC;QACH,OAAO;YACL,MAAM,EAAE,kBAAkB,CAAC;gBACzB,cAAc;gBACd,MAAM,EAAE,SAAS;gBACjB,UAAU,EAAE,MAAM,uBAAuB,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC;gBACtE,gBAAgB,EAAE,OAAO,CAAC,MAAM;aACjC,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,cAAc,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;YACxC,MAAM,KAAK,CAAC;QACd,CAAC;QACD,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC;QACpE,KAAK,CACH,GAAG,eAAe,mBAAmB,OAAO,CAAC,MAAM,YAAY,OAAO,IAAI,CAC3E,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,eAAuB,EACvB,cAAuC;IAEvC,4GAA4G;IAC5G,MAAM,aAAa,GACjB,cAAc,CAAC,eAAe,IAAI,IAAI;QACtC,cAAc,CAAC,eAAe,GAAG,CAAC,CAAC;IACrC,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,SAAS,GAAG,uBAAuB,CACvC,cAAc,CAAC,eAAe,CAC/B,CAAC,MAAM,CAAC;IACT,IAAI,SAAS,IAAI,wBAAwB,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IACD,KAAK,CACH,GAAG,eAAe,4BAA4B,SAAS,uCAAuC,CAC/F,CAAC;IACF,OAAO,KAAK,CAAC;AACf,CAAC;AAED,KAAK,UAAU,uBAAuB,CACpC,OAA6B,EAC7B,cAAuC;IAEvC,IAAI,SAAkB,CAAC;IAEvB,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;QACzE,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,OAAO,MAAM,CAAC,MAAM,CAAC;QACvB,CAAC;QACD,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,CAAC;IAED,IACE,OAAO,CAAC,OAAO;QACf,sBAAsB,CAAC,OAAO,CAAC,eAAe,EAAE,cAAc,CAAC,EAC/D,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,iBAAiB,CACrC,OAAO,CAAC,eAAe,EACvB,OAAO,CAAC,OAAO,EACf,cAAc,CACf,CAAC;QACF,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,OAAO,OAAO,CAAC,MAAM,CAAC;QACxB,CAAC;QACD,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC;IAC5B,CAAC;IAED,6EAA6E;IAC7E,MAAM,SAAS,GAAG,kBAAkB,CAAC;QACnC,eAAe,EAAE,cAAc,CAAC,eAAe;QAC/C,IAAI,EAAE,cAAc,CAAC,YAAY;KAClC,CAAC,CAAC;IACH,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;QACtB,MAAM,CACJ,SAAS;YACT,IAAI,wBAAwB,CAAC;gBAC3B,MAAM,EAAE,OAAO;gBACf,MAAM,EAAE,OAAO,CAAC,eAAe;aAChC,CAAC,CACH,CAAC;IACJ,CAAC;IACD,KAAK,CACH,GAAG,OAAO,CAAC,eAAe,kBAAkB,SAAS,CAAC,MAAM,0CAA0C,CACvG,CAAC;IACF,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,IAKzC;IACC,MAAM,SAAS,GAAG,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtD,MAAM,SAAS,GAAG,6BAA6B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/D,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IAErC,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,SAAS,IAAI,SAAS,IAAI,OAAO,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,8BAA8B,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACjE,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAClB,KAAK,CAAC,GAAG,IAAI,CAAC,eAAe,wBAAwB,CAAC,CAAC;IACzD,CAAC;SAAM,IAAI,aAAa,EAAE,CAAC;QACzB,KAAK,CAAC,GAAG,IAAI,CAAC,eAAe,iCAAiC,CAAC,CAAC;IAClE,CAAC;SAAM,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAClC,KAAK,CAAC,GAAG,IAAI,CAAC,eAAe,0CAA0C,CAAC,CAAC;IAC3E,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,GAAG,IAAI,CAAC,eAAe,6CAA6C,CAAC,CAAC;IAC9E,CAAC;IAED,OAAO;QACL,aAAa;QACb,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;YAChC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClB,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,gIAAgI;YAChI,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,kBAAkB,CAAC;oBACxB,cAAc;oBACd,UAAU,EAAE,cAAc,CAAC,kBAAkB,IAAI,EAAE;oBACnD,gBAAgB,EAAE,IAAI,CAAC,eAAe;iBACvC,CAAC,CAAC;YACL,CAAC;YAED,OAAO,MAAM,uBAAuB,CAClC,EAAE,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE,EACjE,cAAc,CACf,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"timestamp-alignment.js","sourceRoot":"","sources":["../src/timestamp-alignment.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -14,7 +14,6 @@ export type { DeepgramSpeechProviderConfig } from "./providers/deepgram/index.js
14
14
  export type { ElevenLabsSpeechProviderConfig } from "./providers/elevenlabs/index.js";
15
15
  export type { FalSpeechProviderConfig } from "./providers/fal/index.js";
16
16
  export type { FishAudioSpeechProviderConfig } from "./providers/fish-audio/index.js";
17
- export type { SpeechGatewayProviderConfig } from "./providers/gateway/index.js";
18
17
  export type { GoogleSpeechProviderConfig } from "./providers/google/index.js";
19
18
  export type { GradiumSpeechProviderConfig } from "./providers/gradium/index.js";
20
19
  export type { HumeSpeechProviderConfig } from "./providers/hume/index.js";
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@speech-sdk/core",
3
- "version": "0.28.0",
3
+ "version": "0.29.1",
4
4
  "description": "Universal, cross-platform text-to-speech SDK with multi-provider support.",
5
5
  "type": "module",
6
6
  "packageManager": "pnpm@10.11.1",
@@ -1,83 +0,0 @@
1
- import type { AudioOutput } from "../../audio-output.js";
2
- import type { PronunciationsInput } from "../../pronunciations/types.js";
3
- import type { ModelInfo, ResolvedModel, SpeechProvider } from "../../speech-provider.js";
4
- import type { ConversationWordTimestamp, WordTimestamp } from "../../timestamps.js";
5
- export declare const SPEECH_GATEWAY_PROVIDER_ID: "speech-gateway";
6
- export interface SpeechGatewayProviderConfig {
7
- apiKey?: string;
8
- baseURL?: string;
9
- fetch?: typeof globalThis.fetch;
10
- }
11
- export declare class SpeechGatewayProvider implements SpeechProvider<string, string> {
12
- readonly id: "speech-gateway";
13
- readonly defaultModel = "";
14
- readonly models: readonly ModelInfo[];
15
- private readonly apiKey;
16
- private readonly baseURL;
17
- private readonly fetchFn;
18
- constructor(config: SpeechGatewayProviderConfig);
19
- private resolveKey;
20
- generate(options: {
21
- modelId: string;
22
- text: string;
23
- instructions?: string;
24
- voice?: string;
25
- providerOptions?: Record<string, unknown>;
26
- abortSignal?: AbortSignal;
27
- headers?: Record<string, string>;
28
- includeTimestamps?: boolean;
29
- volumeDbfs?: number;
30
- output?: AudioOutput;
31
- pronunciations?: PronunciationsInput;
32
- speed?: number;
33
- }): Promise<{
34
- audio: Uint8Array;
35
- mediaType: string;
36
- timestamps?: WordTimestamp[];
37
- warnings?: string[];
38
- }>;
39
- stream(options: {
40
- modelId: string;
41
- text: string;
42
- instructions?: string;
43
- voice?: string;
44
- providerOptions?: Record<string, unknown>;
45
- abortSignal?: AbortSignal;
46
- headers?: Record<string, string>;
47
- pronunciations?: PronunciationsInput;
48
- }): Promise<{
49
- audioDurationMs?: number;
50
- stream: ReadableStream<Uint8Array>;
51
- mediaType: string;
52
- providerMetadata?: Record<string, unknown>;
53
- }>;
54
- generateConversation(options: {
55
- modelId?: string;
56
- turns: readonly {
57
- model?: string;
58
- voice: string;
59
- text: string;
60
- instructions?: string;
61
- providerOptions?: Record<string, unknown>;
62
- speed?: number;
63
- }[];
64
- gapMs?: number;
65
- volumeDbfs?: number;
66
- providerOptions?: Record<string, unknown>;
67
- instructions?: string;
68
- abortSignal?: AbortSignal;
69
- headers?: Record<string, string>;
70
- includeTimestamps?: boolean;
71
- output?: AudioOutput;
72
- pronunciations?: PronunciationsInput;
73
- speed?: number;
74
- }): Promise<{
75
- audio: Uint8Array;
76
- mediaType: string;
77
- timestamps?: ConversationWordTimestamp[];
78
- warnings?: string[];
79
- providerMetadata?: Record<string, unknown>;
80
- }>;
81
- }
82
- export declare function createSpeechGateway(config?: SpeechGatewayProviderConfig): (modelId: string) => ResolvedModel<string>;
83
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/gateway/index.ts"],"names":[],"mappings":"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"}
@@ -1,299 +0,0 @@
1
- import { z } from "zod";
2
- import { GatewayInputError, MissingApiKeyError } from "../../errors.js";
3
- import { handleErrorResponse, SDK_USER_AGENT } from "../../provider-utils.js";
4
- export const SPEECH_GATEWAY_PROVIDER_ID = "speech-gateway";
5
- // audioDurationMs computed client-side via mediabunny for path consistency across gateway + direct providers.
6
- const wordTimestampSchema = z.object({
7
- text: z.string(),
8
- start: z.number(),
9
- end: z.number(),
10
- });
11
- const conversationWordTimestampSchema = wordTimestampSchema.extend({
12
- turnIndex: z.number(),
13
- });
14
- const gatewayJsonResponseSchema = z.object({
15
- audio: z.string(),
16
- mediaType: z.string(),
17
- timestamps: z.array(wordTimestampSchema).default([]),
18
- warnings: z.array(z.string()).default([]),
19
- });
20
- const gatewayConversationJsonResponseSchema = z.object({
21
- audio: z.string(),
22
- mediaType: z.string(),
23
- timestamps: z.array(conversationWordTimestampSchema).default([]),
24
- warnings: z.array(z.string()).default([]),
25
- providerMetadata: z.record(z.string(), z.unknown()).optional(),
26
- });
27
- const GATEWAY_401_MESSAGE = "Speech Gateway rejected your API key (401). Get a key at https://speechbase.ai/ or verify your SPEECHBASE_API_KEY environment variable.";
28
- function gatewayErrorTarget(modelId) {
29
- const separator = modelId.indexOf("/");
30
- if (separator <= 0 || separator === modelId.length - 1) {
31
- return { provider: SPEECH_GATEWAY_PROVIDER_ID, model: modelId };
32
- }
33
- return {
34
- provider: modelId.slice(0, separator),
35
- model: modelId.slice(separator + 1),
36
- };
37
- }
38
- export class SpeechGatewayProvider {
39
- id = SPEECH_GATEWAY_PROVIDER_ID;
40
- defaultModel = "";
41
- // Gateway server is the source of truth for model capabilities; feature checks deferred to the wire.
42
- models = [];
43
- apiKey;
44
- baseURL;
45
- fetchFn;
46
- constructor(config) {
47
- this.apiKey = config.apiKey;
48
- this.baseURL = config.baseURL ?? "https://api.speechbase.ai/v1";
49
- this.fetchFn = config.fetch ?? globalThis.fetch.bind(globalThis);
50
- }
51
- resolveKey() {
52
- // SPEECHBASE_API_KEY is the current name; SPEECH_GATEWAY_API_KEY stays as a legacy fallback.
53
- // `||` (not `??`) so an empty-string value also falls through to the legacy var.
54
- const envKey = typeof process === "undefined"
55
- ? undefined
56
- : process.env?.SPEECHBASE_API_KEY ||
57
- process.env?.SPEECH_GATEWAY_API_KEY;
58
- const key = this.apiKey ?? envKey;
59
- if (!key) {
60
- const err = new MissingApiKeyError({
61
- providerName: "Speech Gateway",
62
- envVar: "SPEECHBASE_API_KEY",
63
- });
64
- err.message =
65
- "To use the Speech Gateway, a Speechbase API key is required. Sign up at https://speechbase.ai/ to get a key, then pass it via the `apiKey` option or set the SPEECHBASE_API_KEY environment variable (the legacy SPEECH_GATEWAY_API_KEY is still honored).";
66
- throw err;
67
- }
68
- return key;
69
- }
70
- async generate(options) {
71
- if (!options.voice) {
72
- throw new GatewayInputError(`speech-gateway/${options.modelId}: "voice" is required when routing through the speech gateway in inline mode.`);
73
- }
74
- const body = {
75
- model: options.modelId,
76
- voice: options.voice,
77
- text: options.text,
78
- };
79
- if (options.instructions) {
80
- body.instructions = options.instructions;
81
- }
82
- if (options.volumeDbfs != null) {
83
- body.volumeDbfs = options.volumeDbfs;
84
- }
85
- if (options.providerOptions) {
86
- body.providerOptions = options.providerOptions;
87
- }
88
- if (options.output) {
89
- body.output = options.output;
90
- }
91
- if (options.pronunciations) {
92
- body.pronunciations = options.pronunciations;
93
- }
94
- if (options.speed != null) {
95
- body.speed = options.speed;
96
- }
97
- // Binary vs JSON-with-timestamps lives at separate URLs; no Accept-header content negotiation.
98
- const url = options.includeTimestamps
99
- ? `${this.baseURL}/audio/speech/with-timestamps`
100
- : `${this.baseURL}/audio/speech`;
101
- const response = await this.fetchFn(url, {
102
- method: "POST",
103
- headers: {
104
- ...options.headers,
105
- "Content-Type": "application/json",
106
- Authorization: `Bearer ${this.resolveKey()}`,
107
- "X-User-Agent": SDK_USER_AGENT,
108
- },
109
- body: JSON.stringify(body),
110
- signal: options.abortSignal,
111
- });
112
- await handleErrorResponse(response, {
113
- ...(response.status === 401
114
- ? {
115
- provider: SPEECH_GATEWAY_PROVIDER_ID,
116
- model: options.modelId,
117
- message: GATEWAY_401_MESSAGE,
118
- }
119
- : gatewayErrorTarget(options.modelId)),
120
- });
121
- if (options.includeTimestamps) {
122
- const payload = gatewayJsonResponseSchema.parse(await response.json());
123
- return {
124
- audio: decodeBase64(payload.audio),
125
- mediaType: payload.mediaType,
126
- timestamps: payload.timestamps,
127
- warnings: payload.warnings,
128
- };
129
- }
130
- const arrayBuffer = await response.arrayBuffer();
131
- return {
132
- audio: new Uint8Array(arrayBuffer),
133
- mediaType: mediaTypeFromHeaders(response.headers),
134
- };
135
- }
136
- async stream(options) {
137
- if (!options.voice) {
138
- throw new GatewayInputError(`speech-gateway/${options.modelId}: "voice" is required when routing through the speech gateway in inline mode.`);
139
- }
140
- const body = {
141
- model: options.modelId,
142
- voice: options.voice,
143
- text: options.text,
144
- };
145
- if (options.instructions) {
146
- body.instructions = options.instructions;
147
- }
148
- if (options.providerOptions) {
149
- body.providerOptions = options.providerOptions;
150
- }
151
- if (options.pronunciations) {
152
- body.pronunciations = options.pronunciations;
153
- }
154
- // Streaming has its own endpoint; /audio/speech is the buffered path (whole-clip).
155
- const url = `${this.baseURL}/audio/speech/stream`;
156
- const response = await this.fetchFn(url, {
157
- method: "POST",
158
- headers: {
159
- ...options.headers,
160
- "Content-Type": "application/json",
161
- Authorization: `Bearer ${this.resolveKey()}`,
162
- "X-User-Agent": SDK_USER_AGENT,
163
- },
164
- body: JSON.stringify(body),
165
- signal: options.abortSignal,
166
- });
167
- await handleErrorResponse(response, {
168
- ...(response.status === 401
169
- ? {
170
- provider: SPEECH_GATEWAY_PROVIDER_ID,
171
- model: options.modelId,
172
- message: GATEWAY_401_MESSAGE,
173
- }
174
- : gatewayErrorTarget(options.modelId)),
175
- });
176
- if (!response.body) {
177
- throw new Error(`speech-gateway/${options.modelId}: response has no body`);
178
- }
179
- return {
180
- stream: response.body,
181
- mediaType: mediaTypeFromHeaders(response.headers),
182
- };
183
- }
184
- // Server handles stitching/normalization/alignment so callers never need their own STT key.
185
- // Pick one of two wire shapes — mutually exclusive at the request level:
186
- // 1. shared model — `modelId` set, every turn omits `model`
187
- // 2. per-turn model — every turn declares its own `model`, `modelId` omitted (one conversation across providers)
188
- async generateConversation(options) {
189
- if (options.turns.length === 0) {
190
- throw new GatewayInputError("speech-gateway/conversation: at least one turn is required.");
191
- }
192
- if (!options.turns.every((t) => t.voice)) {
193
- throw new GatewayInputError('speech-gateway/conversation: every turn must specify a "voice" when routing through the speech gateway.');
194
- }
195
- const sharedModel = options.modelId;
196
- const anyTurnModel = options.turns.some((t) => t.model != null);
197
- if (sharedModel != null && anyTurnModel) {
198
- throw new GatewayInputError("speech-gateway/conversation: pass either a shared `modelId` or per-turn `model` on every turn — not both.");
199
- }
200
- if (sharedModel == null && !options.turns.every((t) => t.model)) {
201
- throw new GatewayInputError('speech-gateway/conversation: when no shared `modelId` is set, every turn must declare its own "model".');
202
- }
203
- // gapMs/volumeDbfs sent explicitly each call (don't rely on server defaults).
204
- const body = {
205
- ...(sharedModel != null && { model: sharedModel }),
206
- turns: options.turns.map((t) => ({
207
- ...(t.model != null && { model: t.model }),
208
- voice: t.voice,
209
- text: t.text,
210
- ...(t.instructions && { instructions: t.instructions }),
211
- ...(t.providerOptions && { providerOptions: t.providerOptions }),
212
- ...(t.speed != null && { speed: t.speed }),
213
- })),
214
- gapMs: options.gapMs ?? 300,
215
- volumeDbfs: options.volumeDbfs ?? -20,
216
- };
217
- if (options.providerOptions) {
218
- body.providerOptions = options.providerOptions;
219
- }
220
- if (options.instructions) {
221
- body.instructions = options.instructions;
222
- }
223
- if (options.output) {
224
- body.output = options.output;
225
- }
226
- if (options.pronunciations) {
227
- body.pronunciations = options.pronunciations;
228
- }
229
- if (options.speed != null) {
230
- body.speed = options.speed;
231
- }
232
- const url = options.includeTimestamps
233
- ? `${this.baseURL}/audio/conversation/with-timestamps`
234
- : `${this.baseURL}/audio/conversation`;
235
- const response = await this.fetchFn(url, {
236
- method: "POST",
237
- headers: {
238
- ...options.headers,
239
- "Content-Type": "application/json",
240
- Authorization: `Bearer ${this.resolveKey()}`,
241
- "X-User-Agent": SDK_USER_AGENT,
242
- },
243
- body: JSON.stringify(body),
244
- signal: options.abortSignal,
245
- });
246
- const conversationErrorTarget = sharedModel
247
- ? gatewayErrorTarget(sharedModel)
248
- : {
249
- provider: SPEECH_GATEWAY_PROVIDER_ID,
250
- model: "conversation",
251
- };
252
- const conversationErrorContext = response.status === 401
253
- ? {
254
- provider: SPEECH_GATEWAY_PROVIDER_ID,
255
- model: sharedModel ?? "conversation",
256
- message: GATEWAY_401_MESSAGE,
257
- }
258
- : conversationErrorTarget;
259
- await handleErrorResponse(response, conversationErrorContext);
260
- if (options.includeTimestamps) {
261
- const payload = gatewayConversationJsonResponseSchema.parse(await response.json());
262
- return {
263
- audio: decodeBase64(payload.audio),
264
- mediaType: payload.mediaType,
265
- timestamps: payload.timestamps,
266
- warnings: payload.warnings,
267
- ...(payload.providerMetadata !== undefined && {
268
- providerMetadata: payload.providerMetadata,
269
- }),
270
- };
271
- }
272
- const arrayBuffer = await response.arrayBuffer();
273
- return {
274
- audio: new Uint8Array(arrayBuffer),
275
- mediaType: mediaTypeFromHeaders(response.headers),
276
- };
277
- }
278
- }
279
- export function createSpeechGateway(config = {}) {
280
- const provider = new SpeechGatewayProvider(config);
281
- return function speechGateway(modelId) {
282
- if (!modelId) {
283
- throw new GatewayInputError('Speech Gateway requires a model ID (e.g., "openai/gpt-4o-mini-tts"). The gateway routes to upstream providers and has no default model.');
284
- }
285
- return { provider, modelId };
286
- };
287
- }
288
- function mediaTypeFromHeaders(headers) {
289
- return headers.get("content-type") ?? "audio/mpeg";
290
- }
291
- function decodeBase64(value) {
292
- const binaryString = atob(value);
293
- const bytes = new Uint8Array(binaryString.length);
294
- for (let i = 0; i < binaryString.length; i++) {
295
- bytes[i] = binaryString.charCodeAt(i);
296
- }
297
- return bytes;
298
- }
299
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/gateway/index.ts"],"names":[],"mappings":"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"}