@mux/ai 0.28.0 → 0.28.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/index.d.ts +1 -1
- package/dist/index.js +18 -45
- package/dist/index.js.map +1 -1
- package/dist/workflows/index.js +17 -44
- package/dist/workflows/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -5,7 +5,7 @@ var __export = (target, all) => {
|
|
|
5
5
|
};
|
|
6
6
|
|
|
7
7
|
// package.json
|
|
8
|
-
var version = "0.28.
|
|
8
|
+
var version = "0.28.1";
|
|
9
9
|
|
|
10
10
|
// src/lib/language-codes.ts
|
|
11
11
|
var ISO639_1_TO_3 = {
|
|
@@ -6729,9 +6729,16 @@ async function checkElevenLabsDubbingStatus({
|
|
|
6729
6729
|
targetLanguages: statusData.target_languages ?? []
|
|
6730
6730
|
};
|
|
6731
6731
|
}
|
|
6732
|
-
async function
|
|
6732
|
+
async function downloadAndUploadDubbedAudio({
|
|
6733
6733
|
dubbingId,
|
|
6734
6734
|
languageCode,
|
|
6735
|
+
assetId,
|
|
6736
|
+
toLanguageCode,
|
|
6737
|
+
s3Endpoint,
|
|
6738
|
+
s3Region,
|
|
6739
|
+
s3Bucket,
|
|
6740
|
+
storageAdapter,
|
|
6741
|
+
s3SignedUrlExpirySeconds,
|
|
6735
6742
|
credentials
|
|
6736
6743
|
}) {
|
|
6737
6744
|
"use step";
|
|
@@ -6745,19 +6752,7 @@ async function downloadDubbedAudioFromElevenLabs({
|
|
|
6745
6752
|
if (!audioResponse.ok) {
|
|
6746
6753
|
throw new Error(`Failed to fetch dubbed audio: ${audioResponse.statusText}`);
|
|
6747
6754
|
}
|
|
6748
|
-
|
|
6749
|
-
}
|
|
6750
|
-
async function uploadDubbedAudioToS3({
|
|
6751
|
-
dubbedAudioBuffer,
|
|
6752
|
-
assetId,
|
|
6753
|
-
toLanguageCode,
|
|
6754
|
-
s3Endpoint,
|
|
6755
|
-
s3Region,
|
|
6756
|
-
s3Bucket,
|
|
6757
|
-
storageAdapter,
|
|
6758
|
-
s3SignedUrlExpirySeconds
|
|
6759
|
-
}) {
|
|
6760
|
-
"use step";
|
|
6755
|
+
const dubbedAudio = new Uint8Array(await audioResponse.arrayBuffer());
|
|
6761
6756
|
const s3AccessKeyId = env_default.S3_ACCESS_KEY_ID;
|
|
6762
6757
|
const s3SecretAccessKey = env_default.S3_SECRET_ACCESS_KEY;
|
|
6763
6758
|
const audioKey = `audio-translations/${assetId}/auto-to-${toLanguageCode}-${Date.now()}.m4a`;
|
|
@@ -6768,7 +6763,7 @@ async function uploadDubbedAudioToS3({
|
|
|
6768
6763
|
region: s3Region,
|
|
6769
6764
|
bucket: s3Bucket,
|
|
6770
6765
|
key: audioKey,
|
|
6771
|
-
body:
|
|
6766
|
+
body: dubbedAudio,
|
|
6772
6767
|
contentType: "audio/mp4"
|
|
6773
6768
|
}, storageAdapter);
|
|
6774
6769
|
const presignedUrl = await createPresignedGetUrlWithStorageAdapter({
|
|
@@ -6902,46 +6897,24 @@ async function translateAudio(assetId, toLanguageCode, options = {}) {
|
|
|
6902
6897
|
let presignedUrl;
|
|
6903
6898
|
let uploadedTrackId;
|
|
6904
6899
|
if (uploadToS3) {
|
|
6905
|
-
console.warn("\u{1F4E5} Downloading dubbed audio from ElevenLabs...");
|
|
6906
|
-
let dubbedAudioBuffer;
|
|
6900
|
+
console.warn("\u{1F4E5} Downloading dubbed audio from ElevenLabs and staging to S3...");
|
|
6907
6901
|
try {
|
|
6908
|
-
const
|
|
6909
|
-
|
|
6910
|
-
(lang) => lang === requestedLangCode
|
|
6911
|
-
) ?? targetLanguages.find(
|
|
6912
|
-
(lang) => lang.toLowerCase() === requestedLangCode.toLowerCase()
|
|
6913
|
-
);
|
|
6914
|
-
if (!downloadLangCode && targetLanguages.length > 0) {
|
|
6915
|
-
downloadLangCode = targetLanguages[0];
|
|
6916
|
-
console.warn(`\u26A0\uFE0F Requested language "${requestedLangCode}" not found in target_languages. Using "${downloadLangCode}" instead.`);
|
|
6917
|
-
}
|
|
6918
|
-
if (!downloadLangCode) {
|
|
6919
|
-
downloadLangCode = requestedLangCode;
|
|
6920
|
-
console.warn(`\u26A0\uFE0F No target_languages available from ElevenLabs status. Using requested language code: ${requestedLangCode}`);
|
|
6921
|
-
}
|
|
6922
|
-
dubbedAudioBuffer = await downloadDubbedAudioFromElevenLabs({
|
|
6902
|
+
const downloadLangCode = targetLanguages[0] ?? toISO639_1(toLanguageCode);
|
|
6903
|
+
presignedUrl = await downloadAndUploadDubbedAudio({
|
|
6923
6904
|
dubbingId,
|
|
6924
6905
|
languageCode: downloadLangCode,
|
|
6925
|
-
credentials
|
|
6926
|
-
});
|
|
6927
|
-
console.warn("\u2705 Dubbed audio downloaded successfully!");
|
|
6928
|
-
} catch (error) {
|
|
6929
|
-
wrapError(error, "Failed to download dubbed audio");
|
|
6930
|
-
}
|
|
6931
|
-
console.warn("\u{1F4E4} Uploading dubbed audio to S3-compatible storage...");
|
|
6932
|
-
try {
|
|
6933
|
-
presignedUrl = await uploadDubbedAudioToS3({
|
|
6934
|
-
dubbedAudioBuffer,
|
|
6935
6906
|
assetId,
|
|
6936
6907
|
toLanguageCode,
|
|
6937
6908
|
s3Endpoint,
|
|
6938
6909
|
s3Region,
|
|
6939
6910
|
s3Bucket,
|
|
6940
6911
|
storageAdapter: effectiveStorageAdapter,
|
|
6941
|
-
s3SignedUrlExpirySeconds: options.s3SignedUrlExpirySeconds
|
|
6912
|
+
s3SignedUrlExpirySeconds: options.s3SignedUrlExpirySeconds,
|
|
6913
|
+
credentials
|
|
6942
6914
|
});
|
|
6915
|
+
console.warn("\u2705 Dubbed audio staged to S3 successfully!");
|
|
6943
6916
|
} catch (error) {
|
|
6944
|
-
wrapError(error, "Failed to upload audio
|
|
6917
|
+
wrapError(error, "Failed to download and upload dubbed audio");
|
|
6945
6918
|
}
|
|
6946
6919
|
if (uploadToMux) {
|
|
6947
6920
|
console.warn("\u{1F4F9} Adding dubbed audio track to Mux asset...");
|