当前位置: 首页 > news >正文

做了个 chrome 插件实现 B 站视频截图功能,直接从当前视频帧无损复制

起因是看 B 站视频想截个图很麻烦,右下角暂停按钮无法去除,于是写了一行代码把暂停按钮隐藏。

后经提醒,发现可以通过 canvas 获取视频帧来截取图片,于是写了如下代码完美获取视频帧。

  var v = document.querySelector(".bpx-player-video-wrap video");var myCanvas = new OffscreenCanvas(v.videoWidth,v.videoHeight);var ctx = myCanvas.getContext('2d');ctx.drawImage(v, 0, 0, v.videoWidth, v.videoHeight)myCanvas.convertToBlob().then(blob => {const fileName = 'screenshot.png';const d = document.createElement('a')d.href = window.URL.createObjectURL(blob)d.download = fileNamed.style.display = 'none'document.body.appendChild(d)d.click()document.body.removeChild(d)window.URL.revokeObjectURL(d.href)})

用法:f12 打开 console 把这段代码粘贴回车执行即可下载视频帧。

完成后又稍作改进,把这段代码转成 chrome 插件,可以通过右键来下载视频帧,也可以用快捷键下载。 GitHub - Vant1032/BilibiliVideoCaptureImage: 截取B站当前视频帧保存为图片

各位可以去体验下这款插件,厚脸皮要个 star ,有什么问题也可以通过 issue 反馈。

以下是我使用这款插件对 B 站不同分辨率视频在 HEVC 编码下最终插件保存的图片大小测试:

分辨率png
4k7MB
1080p 高码率2.8MB
1080p2.1MB
720p700KB

对于用 1080p 、2k 显示器的人,看 4k 视频截屏无法截出 4k 的分辨率,受到了显示器分辨率限制,而使用我的插件就可以完美截取视频原始的分辨率的图片,画质党福音。

http://www.lryc.cn/news/188321.html

相关文章:

  • Docker linux 安装
  • windows部署django服务器
  • ChatGPT prompt汇总-个人使用-持续更新....
  • Vue实现简单的接口封装
  • 软件测试工具有什么作用?有哪些好用的测试工具推荐?
  • 写爬虫?前端er何必用python
  • 交通物流模型 | 基于交通图卷积长短时记忆网络的网络级交通流预测
  • web 基础和http 协议
  • Java常量与变量
  • 神经网络中卷积和池化的区别
  • RK3568平台开发系列讲解(驱动篇)RK3568 PWM详解
  • 禾匠商城系统 企业转账到零钱 修改成 商家转账到零钱
  • 点云从入门到精通技术详解100篇-基于激光点云的道路目标检测
  • 【Hello Algorithm】暴力递归到动态规划(一)
  • 凉鞋的 Godot 笔记 107. 脚本窗口文件系统窗口
  • 数据源作用以及spring配置数据源
  • Javaweb中的servlet中的消息体是什么?
  • 饥荒服务器阿里云租用价格表一年和一个月收费报价表
  • 前端 JS 经典:Math 常用方法汇总
  • MongoDB 笔记
  • Maven 项目文档
  • 浏览器中XPath的使用
  • js录制屏幕并输出视频
  • 华为OD机试 - 数组组成的最小数字(Java 2023 B卷 100分)
  • 数据结构-顺序存储二叉树
  • mysql学习实践
  • 键盘控制应用--通过键盘发送控制指令
  • python中pytorch的广播机制——Broadcasting
  • 基于BES平台音乐信号处理之DRC算法实现
  • 如何加快香山处理器Chisel->Verilog编译速度