Charles Wei
Charles Wei
Looks like you packed **moment.js lodash.assign** into your **vue-chart** which make your distribution size extremely big. **lodash.min.js** official build size 72KB **moments.min.js** official build size 60KB vue-chart.min.js size 363KB >>...
Due to current framing strategy, xterm-player will refresh whole terminal if moving from a frame to next frame. https://github.com/JavaCS3/xterm-player/blob/2462cdbc378ffd47418d8772b365ed7c287c9877/src/Player.ts#L151-L161
looks like a webpack 4 bug https://medium.com/@JakeXiao/window-is-undefined-in-umd-library-output-for-webpack4-858af1b881df
Depending on https://github.com/xtermjs/xterm.js/pull/2713 Currently xterm-serialize-addon doesn't support alternate buffer serialization
用ffplay可以做跨平台音乐播放 `ffplay -nodisp -autoexit docs/assets/showoff-1.mp4`。可以在插件active的时候把预先静态编译好的ffplay下下来。目前在NPM上面只看到一个这个https://www.npmjs.com/package/ffbinaries 不过这个会把ff全家桶全下下来。目前来看只需要ffplay就可以了,可以参考https://github.com/eugeneware/ffmpeg-static ~~用Github Action把各个平台的ffplay静态编译出来~~。vscode的`tabnine.tabnine-vscode`AI代码补全就是这么干的,把预编译好的binary下下来直接执行。 经过调查发现已经有现成的FFmpeg各个平台静态编译版本,可以直接下载:https://ffmpeg.zeranoe.com/builds/ 不过静态编译的ffplay大约有60MB,进程启动速度会比动态编译的慢3% 目前调研发现vscode播放音乐的方案大致有以下几种: 1. 调用命令行工具(`afplay`, `mplayer`, `aplay`...):缺点是不同平台支持的命令行工具不太一样 2. 替换vscode的ffmpeg的动态链接库:[nondanee.vsc-netease-music](https://marketplace.visualstudio.com/items?itemName=nondanee.vsc-netease-music):缺点是每次升级vscode都需要手动修改动态链接库 3. 调用其他音乐播放器客户端的API:缺点就是必须安装相应的客户端程序 解决方案: 在插件初始化的时候,把相应的ffplay静态编译程序(静态编译的程序不依赖动态库,所以只需要一个文件即可执行)下下来,在需要播放音乐的时候直接调用该命令行程序。
## 自荐项目 项目地址:https://github.com/JavaCS3/xterm-player Demo:https://javacs3.github.io/xterm-player/ (由于国内访问Github很慢,第一个有声音的视频需要耐心等待才可以播放) 类别:Web 前端  ## 介绍 一个基于Web的终端录制回放工具,解决了开发人员在分享终端操作或教学过程中,传统视频内文字无法拷贝以及视频体积较大的问题 特点: - 视频体积小 - 拷贝终端视频中的文字 - 支持音频 - 支持 asciinema(v1/v2)、terminalizer录屏格式 未来可能会考虑面向程序员的终端直播工具 目前项目还处在早期阶段,希望大家能提供宝贵的意见和建议 暂时没有中文,因为考虑最好是国际化项目