Qt Lmms 优秀的开源软件学习

2 篇文章 0 订阅
2 篇文章 0 订阅

其实学习优秀或者加入开源项目对于一个开发者能力成长是有很大帮助。

目的:

lmms里面有很多优秀的开源控件是学习Qt的一个错的资源。lmms的控件中自定义绘图等还可以学到一些架构设计方面的知识。

lmms 官方介绍:

  功能:

  • 在 Windows、Linux 和 macOS 上创作音乐
  • 在统一而简明的用户界面上编排,混音和自动化控制乐曲
  • 通过 MIDI 或电脑键盘回放音符
  • 使用节拍及低音编辑器润色曲目
  • 使用钢琴键排编辑器微调节奏,音符,和弦及旋律
  • 完全用户自定义,基于音轨由电脑控制的自动化源。
  • 导入 MIDI 文件和 Hydrogen 工程文件

  乐器:

  • 内置 64 位 VST 乐器支持及 32 位 VST 兼容桥(64 位 Windows)
  • 16 种内建波形合成器,包括但不限于对 Roland ® TB-303、Commodore 64 ® SID 微芯片、Nintendo ® NES、 Gameboy、 Yamaha ® OPL2 芯片的模拟
  • 内置 ZynAddSubFx:多声道,多音色,微分音,多音色递增,递减及补充合成的强大多合一插件
  • 原生多音源 SoundFont ® (SF2) 、Giga (GIG)、以及 Gravis UltraSound ® (GUS) 等高质量乐器音色及音源库的支持。

  效果混合:

  • 原生 LADSPA 插件支持
  • 自带 VST ® 音效插件支持 (Linux 和 Windows)
  • 内置压缩器,限幅器,延时,回响,变音以及重低音增强器
  • 内含基于图形及参数的均衡器
  • 内置可视化插件/频谱分析器

软件很强大也很有知名度:软件的架构是有Qt开发的界面、并且里面引用了许多开源的库。

Github:2.1K star

所需的库版本说明
✔️ Qt5 >> = 5.0. 0 推荐超过 Qt4, 请参见下面使用 Qt5。
✔️ Qt4 >> = 4.3. 0 可选而不是 Qt5, >> = 4.4. x 推荐
✔️ libsndfile >> = 1.0. 11 读取和写入声音文件, >> = 1.0. 18 为 lmms >> = 硕士 (>> = 1.0 26) 为 lmms 的 FLAC 压缩级别设置 (master)
✔️ fftw3 快速傅立叶变换计算库
✔️ libsamplerate > 0.1. 7 音频采样率转换器
libvorbis 音频编码库
libogg 多媒体容器格式
在 Unix 上的葡萄酒窗口 (需要 VST 支持)
libstk 信号处理与算法综合库
libfluidsynth 声音字体综合图书馆
fltk 轻量级 GUI 库 (ZynAddSubFX 需要)
软件和硬件音频路由
sdl 音频接口库 *
alsa 音频接口库 *
libportaudio 音频接口库 *
libsoundio 音频接口库 *

想要跑起这个程序:其实也是需要一翻折腾。

下面是配置安装lmms的一些步骤:

1.sudo apt-get remove lmms wine wine-dev   

2.sudo apt-get autoremove

3.sudo add-apt-repository ppa:ubuntu-wine/ppa

4.sudo apt-get update

5.sudo apt-get install wine1.8 winetricks

6.sudo dpkg --add-architecture i386

7.
sudo apt-get install build-essential camke libqt4-dev libsndfile1-dev libfftw3-dev libvorbis-dev libogg-dev libasound2-dev libjack-dev libsdl-dev libsamplerate0-dev libstk0-dev libfluidsynth-dev portaudio19-dev libfltk1.3-dev wine-dev libxinerama-dev libxft-dev libgig-dev git

8.sudo apt-get install libc6-dev-i386 gcc-multilib g++-multilib

 

下面是一些图软件的截图:

é³ä¹å¶ä½è½¯ä»¶(lmms中æç) v1.1.0绿è²ç é使ç¨æç¨

é³ä¹å¶ä½è½¯ä»¶(lmms中æç) v1.1.0绿è²ç é使ç¨æç¨

é³ä¹å¶ä½è½¯ä»¶(lmms中æç) v1.1.0绿è²ç é使ç¨æç¨

é³ä¹å¶ä½è½¯ä»¶(lmms中æç) v1.1.0绿è²ç é使ç¨æç¨

另外推荐一些学习地址:

视屏地址:https://www.youtube.com/watch?v=C33gWPyFTaU
文章地址:http://ubuntuhandbook.org/index.php/2015/12/install-wine-1-8-stable-new-ppa/

如果不方便下载代码的话:

https://download.csdn.net/download/liuzhezhe111/10626539

 

QuickEncrypt,数据安全小工具,采用托盘图标、悬浮窗、鼠标拖拽、右键菜单的简单操作模式,提供文件、文本的加解密(RC4+AES)、Hash(MD5+SHA1)、安全擦除等功能。独有的“智能压缩”加密模式。 1.功能介绍 对鼠标拖入的文本进行加解密 对剪贴板中的文本进行加解密 对鼠标拖入的文件进行加解密 对鼠标拖入的文件进行擦除 对鼠标拖入的文本进行Hash计算 对剪贴板中的文本进行Hash计算 对鼠标拖入的文件进行Hash计算 针对文本和文件加解密的智能数据压缩技术 支持超过4GB的大文件 2.安全机制 2.1 文件擦除策略 a.修改文件名为随机串; b.以32字节的块向文件写入全0; c.刷新数据,关闭文件; d.修改文件名为随机串; e.以32字节的块向文件写入全1; f.刷新数据,关闭文件; g.截断文件大小为0; h.删除文件。 经测试常用数据恢复软件无法成功恢复原有数据。 2.2 Hash算法 使用OpenSSL 0.98提供的MD5(128位)和SHA1(160位)算法。 2.3 加解密密钥生成 将用户输入的密码明文转换成utf-8字节数组(不包含0结束符),计算MD5和SHA1,将MD5结果用作AES 128位密钥,将SHA1结果用作RC4密钥。 2.4 文本加密策略 a.将明文数据转换成utf-8字节数组(包含0结束符); b.对明文字节数组计算CRC32校验码,用于解密时校验,并将CRC32值放在明文首字节之前; c.尝试压缩步骤b的结果(zlib level9),若获得较小的压缩结果则输出压缩后的编码数组,否则放弃压缩,直接输出步骤b的结果; d.对步骤c的结果进行RC4流加密(OpenSSL 0.98); e.对步骤d的结果进行AES_CFB_128分组加密(OpenSSL 0.98); f.对步骤e的结果进行Base64编码(OpenSSL 0.98); g.将标记"QE:|"附加在步骤f的结果之前,输出结果。 2.5 文件加密策略 a.判断输入文件的扩展名是否是压缩格式,对常见压缩格式和流媒体编码文件不启用数据压缩功能; b.以1MB大小分块,读入明文文件数据; c.对分块的明文数据计算MD5,附加在待加密数据之前,用于解密时校验; d.尝试压缩1MB大小的分块,若获得较小的压缩结果则输出压缩后的编码数据,否则直接输出原文; e.对步骤d的结果进行RC4流加密(OpenSSL 0.98); f.对步骤e的结果进行AES_CFB_128分组加密(OpenSSL 0.98); g.将分块数据依次写入输出文件,输出文件的文件名是在原文件名后加".enc"。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值