通过 MediaDevices.getUserMedia() 创建的文件是否保存在用户的浏览器中?

Is a file created through MediaDevices.getUserMedia() saved on the user’s browser?

我正在使用 navigator.mediaDevices.getUserMedia 录制音频剪辑。用户可以在停止录制后播放音频片段and/or下载。这些信息是否存储在用户的浏览器中?

if ( navigator.mediaDevices.getUserMedia === undefined ) {
navigator.mediaDevices.getUserMedia = function ( constrains ) {
    var getUserMedia = navigator.webkitGetUserMedia || navigator.mozGetUserMedia
    if ( !getUserMedia )  {
        return Promise.reject( new Error( 'getUserMedia is not implemented in this browser' ) );
    }

我用过Robert Bakiev’s code, who is saving the file as a blob. Web Dictaphone类似

我不想将用户录制的文件存储在我的服务器上。如果他们让它录音几个小时,它会占用太多内存。另外,这似乎侵犯了隐私。

是的,通过 MediaRecorder 来自 getUserMedia 的 Blob 数据存储在用户计算机上的浏览器中,除非您编写的内容将其发送到服务器。

要让用户接触到这些 Blob,有必要下载它们。对于这些录音机风格的应用程序,它们不是从任何服务器下载的,而是从浏览器本身下载到用户的下载文件夹(或用户放置它们的任何地方)。

我从来没有离开 MediaRecorder 运行 几个小时,但我知道这样做可能会耗尽浏览器 RAM 配额。