如何指定与MediaRecorder API一起使用的编解码器?我看到的唯一选项是mimeType,这还不够。在 mimeType 选项中塞入编解码器似乎不起作用。
var mediaRecorder = new MediaRecorder(
outputMediaStream
),
{
mimeType: 'video/webm; codecs="opus,vp8"'
}
);
这会产生一个带有 Vorbis 和 VP8 的 WebM 流:
FFMPEG STDERR: Input #0, matroska,webm, from 'pipe:':
Metadata:
encoder : QTmuxingAppLibWebM-0.0.1
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0:0(eng): Video: vp8, yuv420p, 640x360, SAR 1:1 DAR 16:9, 30 fps, 30 tbr, 1k tbn, 1k tbc (default)
Stream #0:1(eng): Audio: vorbis, 44100 Hz, stereo, fltp (default)
如果我制作了一个只有音轨(没有视频)的 MediaStream,那么 MediaRecorder 在 Ogg 容器中输出 Opus 音频:
FFMPEG STDERR: Input #0, ogg, from 'pipe:':
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0:0: Audio: opus, 48000 Hz, stereo, fltp
Metadata:
ENCODER : Mozilla44.0.2
如何使用 MediaRecorder API 在 WebM 容器中获取带有 VP8 视频的 Opus 音频?
火狐 v44.0.2