如何给你的代码祝寿?

简介: 前段时间 alibaba/x-render 突破 3K Star,一直寻思着怎么给开源社区贡献的同学做一个小礼物来“祝寿”,然后就想到了之前玩过的 gource 和 avconv 这两个库(参数不熟悉可查文档,此外不多加解释),前者用于处理提交日志可视化,后者用于视频处理。

**Talk is cheap,Show me the code
**

前段时间 alibaba/x-render 突破 3K Star,一直寻思着怎么给开源社区贡献的同学做一个小礼物来“祝寿”,然后就想到了之前玩过的 gource 和 avconv 这两个库(参数不熟悉可查文档,此外不多加解释),前者用于处理提交日志可视化,后者用于视频处理。

https://github.com/alibaba/x-render

https://github.com/acaudwell/Gource

https://libav.org/avconv.html

1、准备工作,安装 gource、avconv 这两个库,需要让 gource 支持中文字体,同时 Homebrew 安装可能很慢,国内镜像提速试试这个加速地址 (https://zhuanlan.zhihu.com/p/111014448)

// 安装库
brew install gource
brew install libav //avconv是一个和 ffmeg 类似的库,不过我更喜欢 avconv 这个

// 让 gource 支持中文字体
rm /usr/local/var/homebrew/linked/gource/share/gource/fonts/FreeSans.ttf
ln -s /System/Library/Fonts/Hiragino\ Sans\ GB.ttc /usr/local/var/homebrew/linked/gource/share/gource/fonts/FreeSans.ttf

2、找一个你最喜欢的带 git 管理项目,命令行进入本地文件夹根目录,复制如下命令回车,就可以看到效果和生成视频了。

gource \
--title "写个标题" \
--seconds-per-day 0.15 \
-1920x1080 \
--multi-sampling \
--background-colour 000000 \
--dir-colour 62C454 \
--file-font-size 12 \
--font-size 24 \
--dir-font-size 14 \
--user-font-size 18 \
--auto-skip-seconds 0.2 \
--stop-at-end \
--hide mouse \
--highlight-users \
--highlight-dirs \
--file-extension-fallback \
--file-idle-time 0 \
--max-user-speed 200 \
--filename-time 2 \
--highlight-colour F5BE4F \
--date-format "%Y-%m-%d" \
--output-framerate 60 \
--output-ppm-stream - \
| avconv -y -r 60 -f image2pipe -vcodec ppm -i - -b 65536K movie.mp4

3、潮流的视频是需要配上一个带感的背景音乐的,如文中的视频 sound.mp3 这样的,下载到项目根目录下,可以通过 avconv 将音频轨道加到视频上面,就达到上面效果了。

avconv -i movie.mp4 -i sound.mp3 -map 0 -map 1:a -c:v copy -shortest output.mp4

4、只要是 git 日志,所以不仅仅是开源项目,其实你的工作代码也是支持的,可以试试。

相关文章
|
5月前
你写过的最蠢的代码是?
你写过的最蠢的代码是?
16 0
|
12月前
|
Java Python
长见识,让大家看看什么是垃圾代码
长见识,让大家看看什么是垃圾代码
80 0
记一次代码评鉴
前言 近期公司组织了一次代码评鉴,在这边记录下学习到的一些规范吧
|
定位技术 数据处理 开发工具
如何优雅地统计代码(一)
*精美排版详见钉钉文档其实这个事情要从一个下午讲起,对我来说是个尤里卡时刻;其实一开始让我直接从数据里统计大家提交代码是有点无从下手的,前几天开始调研了一波代码统计方案后发现大部分都是基于文件来统计代码的各种行数并没有这种基于前后版本的变更代码统计,大家更多的使用Git自带的统计方法但显然我这里没有这样的环境(下面背景会详细展开),快要放弃今天的技术调研遂下楼散步刷新思维,我又回溯了我在这个项目中
|
存储 分布式计算 并行计算
聊聊什么代码是好代码
聊聊什么代码是好代码
|
设计模式 IDE Java
如何将代码写的更加优雅
如何将代码写的更加优雅
|
前端开发 C++
这几行代码,真的骚!
这几行代码,真的骚!
这几行代码,真的骚!
|
测试技术 UED 开发者
被劣质代码“残害”的这些年
都已经 2020 年了,但我们仍然在生产劣质软件。自从计算机诞生以来,已经过去了近 70 年,但我们似乎还没有吸取所有的教训,仍然在犯着重复的错误。
这一团糟的代码,真的是我写的?!
阿里妹导读:你有没有遇到过这种情况:过几周或者几个月之后,再看到自己写的代码,感觉一团糟,不禁怀疑人生?我们每天都与代码打交道,但当被问道什么是好的代码时,很多人可能会先愣一下,然后给出的回答要么比较空泛,要么比较散,没办法简单明了地概括出来。今天,我们就来说什么是好的代码?
28833 0