现代浏览器提供的多媒体相关的API

1、showSaveFilePicker

showSaveFilePicker 是 WebAPI 中的一个方法,可用于显示本地文件保存框,让用户保存一个文件。该方法可以在不需要服务器干预的情况下,向本地系统写入文件,同时保留浏览器的独立性。

复制代码
async function writeFile() { 
  const options = { 
    suggestedName: 'myFile.txt', 
    types: [{ 
      description: 'Text Files', 
      accept: {'text/plain': ['.txt']}, 
    }], 
  }; 
  const fileHandle = await window.showSaveFilePicker(options); 
  const writable = await fileHandle.createWritable(); 
  await writable.write('Hello, world!'); 
  await writable.close(); 
  console.log('File written successfully!'); 
} 

在上述示例中,调用 showSaveFilePicker 弹出本地文件保存框,并显示默认的文件名 myFile.txt。定义 types 数组,其中包含一种类型描述,使用文本类型描述并确定使用"txt"作为后缀名。 方法返回一个 promise,该promise可以暂停代码执行,直到用户选择文件并执行操作。

最后,使用createWritable方法创建一个可写文件,并将" Hello,world!'写入该文件,最后关闭文件写入器并在控制台输出"File written successfully!"。

注意:该API需要在安全上下文中调用,例如HTTPS站点或 localhost上的站点。在非安全上下文中调用此方法会抛出SecurityError错误。

此外,showSaveFilePicker 方法也支持多种文件类型,以及在保存时附加元数据等更高级的用法,具体使用请参考 MDN 文档

2、MeidaStreamTrackProcessor

MediaStreamTrackProcessor 是 WebRTC API 中的一个接口,可用于对媒体流轨道数据进行处理。该接口可以在媒体轨道的数据传输过程中拦截数据流,进行操作,然后将修改后的媒体轨道数据传递给下一个事件。MediaStreamTrackProcessor 接口是 MediaStreamTrack API 的一个扩展,使用 MediaStreamTrackProcessor,可以轻松地对音视频流数据进行修改、过滤、处理等操作。

使用 MediaStreamTrackProcessorMediaStreamTrack 持续获取 VideoFrame

相关推荐
无羡仙3 小时前
Vue插槽
前端·vue.js
hqwest3 小时前
码上通QT实战12--监控页面04-绘制6个灯珠及开关
开发语言·qt·qpainter·qt事件·stackedwidget
i橡皮擦3 小时前
TheIsle恐龙岛读取游戏基址做插件(C#语言)
开发语言·游戏·c#·恐龙岛·theisle
哈__3 小时前
React Native 鸿蒙跨平台开发:PixelRatio 像素适配
javascript·react native·react.js
bing.shao4 小时前
golang 做AI任务执行
开发语言·人工智能·golang
用户6387994773054 小时前
每组件(Per-Component)与集中式(Centralized)i18n
前端·javascript
SsunmdayKT4 小时前
React + Ts eslint配置
前端
开始学java4 小时前
useEffect 空依赖 + 定时器 = 闭包陷阱?count 永远停在 1 的坑我踩透了
前端
zerosrat4 小时前
从零实现 React Native(2): 跨平台支持
前端·react native
狗哥哥4 小时前
🔥 Vue 3 项目深度优化之旅:从 787KB 到极致性能
前端·vue.js