@mux/ai 0.13.1 → 0.14.0
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/README.md +2 -2
- package/dist/{index-BeX_4DL7.d.ts → index-yn3fUDgv.d.ts} +67 -16
- package/dist/index.d.ts +2 -2
- package/dist/index.js +533 -380
- package/dist/index.js.map +1 -1
- package/dist/primitives/index.js +18 -2
- package/dist/primitives/index.js.map +1 -1
- package/dist/workflows/index.d.ts +1 -1
- package/dist/workflows/index.js +482 -329
- package/dist/workflows/index.js.map +1 -1
- package/package.json +2 -1
package/dist/primitives/index.js
CHANGED
|
@@ -1087,6 +1087,13 @@ async function getThumbnailUrls(playbackId, duration, options = {}) {
|
|
|
1087
1087
|
return Promise.all(urlPromises);
|
|
1088
1088
|
}
|
|
1089
1089
|
|
|
1090
|
+
// src/lib/mux-assets.ts
|
|
1091
|
+
function isAudioOnlyAsset(asset) {
|
|
1092
|
+
const hasAudioTrack = asset.tracks?.some((track) => track.type === "audio") ?? false;
|
|
1093
|
+
const hasVideoTrack = asset.tracks?.some((track) => track.type === "video") ?? false;
|
|
1094
|
+
return hasAudioTrack && !hasVideoTrack;
|
|
1095
|
+
}
|
|
1096
|
+
|
|
1090
1097
|
// src/primitives/transcripts.ts
|
|
1091
1098
|
function getReadyTextTracks(asset) {
|
|
1092
1099
|
return (asset.tracks || []).filter(
|
|
@@ -1098,11 +1105,20 @@ function findCaptionTrack(asset, languageCode) {
|
|
|
1098
1105
|
if (!tracks.length)
|
|
1099
1106
|
return void 0;
|
|
1100
1107
|
if (!languageCode) {
|
|
1101
|
-
|
|
1108
|
+
const englishTrack = tracks.find(
|
|
1109
|
+
(track) => track.text_type === "subtitles" && track.language_code === "en"
|
|
1110
|
+
);
|
|
1111
|
+
return englishTrack ?? tracks[0];
|
|
1102
1112
|
}
|
|
1103
|
-
|
|
1113
|
+
const languageMatch = tracks.find(
|
|
1104
1114
|
(track) => track.text_type === "subtitles" && track.language_code === languageCode
|
|
1105
1115
|
);
|
|
1116
|
+
if (languageMatch)
|
|
1117
|
+
return languageMatch;
|
|
1118
|
+
if (isAudioOnlyAsset(asset) && tracks.length === 1) {
|
|
1119
|
+
return tracks[0];
|
|
1120
|
+
}
|
|
1121
|
+
return void 0;
|
|
1106
1122
|
}
|
|
1107
1123
|
function normalizeLineEndings(value) {
|
|
1108
1124
|
return value.replace(/\r\n/g, "\n");
|