如何给你的代码祝寿?

简介: 前段时间 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 日志,所以不仅仅是开源项目,其实你的工作代码也是支持的,可以试试。

相关文章
|
4月前
|
安全
神秘代码
这是针对IDEA 2023.2.4的破解码,允许用户免费激活软件。该破解码包含详细的授权信息,能绕过付费使用限制,实现全面功能解锁。注意,使用此类破解码可能违反相关软件使用协议,并存在安全风险。建议通过官方渠道获取正版软件。
|
7月前
|
前端开发 Java C++
一行代码就能完成的事情,为什么要写两行?
一行代码就能完成的事情,为什么要写两行?
|
存储 设计模式 缓存
这45个小技巧,让你的代码突然又优雅了2
这45个小技巧,让你的代码突然又优雅了2
这45个小技巧,让你的代码突然又优雅了2
x11获得窗口名的代码
x11获得窗口名的代码
131 0
不要傻乎乎的去找不同了,一起来用代码完成“找不同”游戏吧
不要傻乎乎的去找不同了,一起来用代码完成“找不同”游戏吧
607 0
不要傻乎乎的去找不同了,一起来用代码完成“找不同”游戏吧
|
Web App开发 安全 编译器
如何保护你的代码 - Ollvm(一)
如何保护你的代码 - Ollvm(一)
如何保护你的代码 - Ollvm(一)
|
前端开发 C++
这几行代码,真的骚!
这几行代码,真的骚!
这几行代码,真的骚!
|
设计模式 前端开发 Java
握草,你竟然在代码里下毒!
Java程序员👨‍💻‍,10个编码小技巧,用好了升职加薪,用不好开除走人!
908 0
握草,你竟然在代码里下毒!
这一团糟的代码,真的是我写的?!
阿里妹导读:你有没有遇到过这种情况:过几周或者几个月之后,再看到自己写的代码,感觉一团糟,不禁怀疑人生?我们每天都与代码打交道,但当被问道什么是好的代码时,很多人可能会先愣一下,然后给出的回答要么比较空泛,要么比较散,没办法简单明了地概括出来。今天,我们就来说什么是好的代码?
28878 0