我在我的MediaRecorder实现中指定了以下内容:
const getMediaRecorderOptions = function () {
var options = { mimeType: "video/webm;codecs=vp8" }; // 9 was lagggy, cpu-intensive
if (!MediaRecorder.isTypeSupported(options.mimeType)) {
logger.recorderLog(options.mimeType + " is not Supported");
options = { mimeType: "video/webm;codecs=vp8" };
if (!MediaRecorder.isTypeSupported(options.mimeType)) {
logger.recorderLog(options.mimeType + " is not Supported");
options = { mimeType: "video/webm" };
if (!MediaRecorder.isTypeSupported(options.mimeType)) {
logger.recorderLog(options.mimeType + " is not Supported");
options = { mimeType: "" };
}
}
}
return options;
}
很显然,这只是针对不支持iOS Safari或MacOS的webm格式而言。我试图避免双倍存储和引入编码复杂性。是否有任何方法让Chrome上的MediaRecorder可以直接记录到跨平台容器格式,无论平台如何?