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

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


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 的代码,他将文件保存为 blob。网络录音机是类似的。


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


函数式编程
浏览 48回答 1
1回答

慕村225694

是的,通过 MediaRecorder 来自 getUserMedia 的 Blob 数据存储在用户计算机上的浏览器中,除非您编写的内容将其发送到服务器。用户要想获得这些 Blob,就必须下载它们。对于这些录音机风格的应用程序,它们不是从任何服务器下载的,而是从浏览器本身下载到用户的下载文件夹中(或用户放置它们的任何位置)。我从来没有让 MediaRecorder 运行几个小时,但我知道这样做可能会耗尽浏览器 RAM 配额。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript