tonychyi.wetofu.top
Drumstick
https://tonychyi.wetofu.top/tags/drumstick
把 LMMS 的 Midi 导入功能改用 drumstick 实现了. 啊,更好的方法就是,用他妈的什么 portsmf 用 drumstick 啦 [email protected]. 终于折腾好了 带着对 drumstick 的撞憧憬,我终于还是给自己挖了个大坑,把原来 LMMS 在 Midi 文件导入时用到的 portsmf 库换成了 drumstick。 Portsmf 是按顺序返回 Midi 事件,而 drumstick 是基于 Qt 的 Signal/Slot 机制。 然后对整个的 MidiImport 插件进行了大拆解 将混乱不堪的代码按照 class 分成了几个文件。 接着写了一个 midiReader 类,用来接收 Midi 事件,并添加到 LMMS 的轨道中。 那么接下来的工作就是实现 midiReader 的 Slot。
tonychyi.wetofu.top
链接交换
https://tonychyi.wetofu.top/1970/01/01/links
遵循 CC 协议、GNU 自由文档协议有额外加成,站点应以原创文章为主。
tonychyi.wetofu.top
修复了 LMMS Pitch Bend Bug
https://tonychyi.wetofu.top/2017/01/04/lmms-pitch-bend-fix
修复了 LMMS Pitch Bend Bug. Leo song 对我说,搞报表平台的代码不如研究 LMMS. 有一个存在了很长时间的 BUG 导入 Midi 文件的时候,对 Pitch Bend 不能很好的处理导致走音。 在 Cakewalk 中测试,如果是单纯调整 Pitch Bend,最大范围是 2 个半音,而我这里有个 文件. 经过一番测试,发现是 RPN(0, 12) 这个参数在起作用. 0, 0, Header, 1, 7, 960 1, 0, Start track 1, 0, Control c, 0, 101, 0 1, 0, Control c, 0, 100, 0 1, 0, Control c, 0, 6, 12 1, 0, Control c, 0, 38, 0. 再看 LMMS 的代码 plugins/MidiImport/MidiImport.cpp. 可以很清楚的看到,LMMS 很偷懒,根本没有处理 RPN 事件。 当读取到 100 和 101 控制器时,读取其中的值. 我和 @liushuyu [email protected]. 并在发送 100 和 101 之后将.
tonychyi.wetofu.top
用 Go 实现一个守护进程
https://tonychyi.wetofu.top/2016/10/25/daemonize-with-golang
Package main import ( fmt io/ioutil os os/exec path/filepath strconv time ) func main() { / 处理程序后的参数 if len(os.Args[1:]) 0 { switch os.Args[1] { / 停止守护进程,从 /tmp/pidfile 中获取进程 ID case stop: bpid, := ioutil.ReadFile(/tmp/pidfile) pid, := strconv.Atoi(string(bpid) proc, := os.FindProcess(pid) proc.Kill() fmt.Println(Killed.) os.Exit(0) } } / 启动守护进程,即当自身的父进程不为 1 时,就启动一个新的进程, / 并退出自己,直到父进程为 1 一般是 init 为止 if os.Getppid()!
tonychyi.wetofu.top
盘点
https://tonychyi.wetofu.top/tags/盘点
上网 Chromium 谷歌浏览器开源版 ThunderBird 邮件、IRC客户端 Telegram 聊天工具 Transmission 开车工具 Filezilla FTP 工具 办公 WPS Evince PDF 阅读 图像 GIMP 相当于 PS Inkscape 相当于 Ai SweetHome3D 家装设计软件 音频制作 Audacity 相当于 CoolEdit Ardour 多轨音频工作站 LMMS 相当于 FL Studio TuxGuitar 相当于 Guitar Pro 视频制作 Kdenlive 功能很强 HandBrake DVD 转换工具 音乐&视频 VLC 非常强大 RhythmBox 库管理很好 EasyTag 改 MP3 文件标签 网易云音乐 开发 VIM 最好的编辑器 Atom 当 IDE 用 VirtualBox 虚拟机 输入法 Fcitx 轻量,简单好用 终端模拟器 Terminator 可以分屏 Zsh 太强大了 其他 Steam 砍手利器 K3b 光盘刻录.
tonychyi.wetofu.top
Moduleab
https://tonychyi.wetofu.top/tags/moduleab
ModuleAB Module Archive and Backup 目前由三个部分组成 Server 端,Beego 框架 Agent 端,自己写的,运行在各机器上,使用 inotify 机制监控文件变化 Web 端,集成在 Server 端,Angular.JS 1.x 框架,Bootstrap 样式库 另外还支持服务端策略,可以根据一定的规则将 OSS 上的备份转存至 OAS 归档,或者定期删除旧的备份/归档 目前进入最后的调试和测试阶段,近期发布 项目地址 GitHub,以 GPL v3 发布,欢迎加星,欢迎 PR.
tonychyi.wetofu.top
我常用的软件盘点
https://tonychyi.wetofu.top/2016/10/13/my-software
LMMS 相当于 FL Studio. TuxGuitar 相当于 Guitar Pro. EasyTag 改 MP3 文件标签. Atom 当 IDE 用.
tonychyi.wetofu.top
阿里云
https://tonychyi.wetofu.top/tags/阿里云
ModuleAB Module Archive and Backup 目前由三个部分组成 Server 端,Beego 框架 Agent 端,自己写的,运行在各机器上,使用 inotify 机制监控文件变化 Web 端,集成在 Server 端,Angular.JS 1.x 框架,Bootstrap 样式库 另外还支持服务端策略,可以根据一定的规则将 OSS 上的备份转存至 OAS 归档,或者定期删除旧的备份/归档 目前进入最后的调试和测试阶段,近期发布 项目地址 GitHub,以 GPL v3 发布,欢迎加星,欢迎 PR.
tonychyi.wetofu.top
Tags
https://tonychyi.wetofu.top/tags
SOCIAL ENGAGEMENT