@kaciras-blog/media
TypeScript icon, indicating that this package has built-in type declarations

2.6.1 • Public • Published

@kaciras-blog/media

Kaciras Blog 的媒体处理库,支持图片、视频等资源的存储。

主要功能:

  • 图片处理,包括裁剪、缩放、压缩等。

  • 优化图片,并转码为多种新格式。

  • 根据 Accept-* 头部自动选择最佳格式下载。

  • 上传同一视频的多种编码版本,同样下载时返回最佳格式。

渐进升级策略

有两种策略可以用来对资源进行渐进升级:

  • 前端选择:通过<source>指定多个 URL,浏览器自动忽略不支持的;还可以用 ServiceWorker 将请求重定向到优化版本。
  • 后端选择:服务端通过请求信息比如 Accept 判断客户端支持哪些,然后选出最佳的。

后端选择通常具有更好的兼容性,例如构建图床服务,无需更改第三方网站的代码即可发送优化版本。但目前并非所有特性支持都能从请求中获取到,比如视频编码(hevc、av1)就不行。

这两种策略并不矛盾,可以同时使用,本项目设计时就以支持后端选择为目标。

Readme

Keywords

none

Package Sidebar

Install

npm i @kaciras-blog/media

Weekly Downloads

1

Version

2.6.1

License

MIT

Unpacked Size

97 kB

Total Files

51

Last publish

Collaborators

  • kaciras