diff --git a/netlify.toml b/netlify.toml index df9f053..87a7877 100644 --- a/netlify.toml +++ b/netlify.toml @@ -6,3 +6,10 @@ from = "/*" to = "/index.html" status = 200 + +[[headers]] + for = "/*" + [headers.values] + Cross-Origin-Opener-Policy = "same-origin" + Cross-Origin-Embedder-Policy = "require-corp" + Cross-Origin-Resource-Policy = "same-origin" diff --git a/src/App.jsx b/src/App.jsx index 88132bf..c9a54b6 100644 --- a/src/App.jsx +++ b/src/App.jsx @@ -50,6 +50,7 @@ import { exportBrowserVideo, extractAudioFromVideo, getAudioRecordingFormat, + getSupportedRecordingFormat, transcodeWebmToMp4, } from "./lib/media.js"; diff --git a/src/lib/media.js b/src/lib/media.js index 800583e..302d5f9 100644 --- a/src/lib/media.js +++ b/src/lib/media.js @@ -202,7 +202,15 @@ function drawPreviewFrame(context, visual, canvas, options) { context.fillRect(110, height - 24, (width - 220) * progress, 6); } -function getSupportedRecordingFormat() { +export function getSupportedRecordingFormat() { + if (typeof MediaRecorder === "undefined") { + return { + mimeType: "", + extension: "webm", + label: "默认视频", + }; + } + const supportedFormat = EXPORT_RECORDING_FORMATS.find((format) => MediaRecorder.isTypeSupported(format.mimeType), );