新项目 - 来自实验室的新鲜成果
以下声明出现在 downtimed 网站的顶部:“为什么找出服务器的正常运行时间如此容易,但找出停机时间却如此困难?” 而且,事后看来这一切都显得如此显而易见。根据该网站
downtimed 是一个用于监视操作系统停机时间、正常运行时间、关机和崩溃的程序,并用于记录此类事件。
...downtimes 是一个命令行工具,可用于检查记录在停机时间数据库文件中的先前停机时间记录。
安装
tar.gz 和 tar.xz 格式的源代码 tarball 在该网站上均可获得。至于库需求,我在安装过程中没有遇到任何问题,也没有找到任何关于所需库的信息,因此需求似乎非常简单。至于实际安装,至少第一部分是一个简单的过程。
从网站上获取最新的 tarball,解压缩它,并在文件夹中打开一个终端。从那里开始,就是通常的
$ ./configure $ make
如果您的发行版使用 sudo
$ sudo make install
如果您的发行版使用 root
$ su # make install
从这里开始,事情就没那么容易了,您应该查阅文档以获取更多说明,因此我将接下来的步骤留给您自行完成。如果您幸运的话,有人会为您的系统制作一个二进制文件,就 Ubuntu 而言,我在 launchpad.net 上的 Ubuntu Personal Package Archives 中找到了一个自定义软件包。
假设您能够完成 downtimed 的安装,您显然需要重置才能完成该过程。
用法
实际使用 downtimed 可能是最简单的部分,它可能是我评测过的最简单的程序。
打开终端并输入
$ downtimes
如果一切在安装过程中都顺利进行,您应该会记录下您的第一次关机,在现代发行版上,停机时间可能不到一分钟。downtimed 非常聪明,可以区分崩溃和正常关机,我通过按下计算机的重置开关对其进行了测试(在保存所有工作之后)。第二天晚上,我们停电了几秒钟,这也记录为崩溃。如果您查看包含的屏幕截图,您可以看到干净的关机在左侧用“down”注释,而其他关机则标记为“crash”。
这实际上就是全部内容。当然,该程序可以通过某些方式进行扩展,例如指定另一个数据库文件而不是默认数据库文件并查看正常运行时间,但我会让您自己在程序的手册页中探索这些内容。
最后,这是您不禁会觉得应该早已存在,但只是最近才出现的一款程序。我喜欢该程序的简洁性,这尤其让我认为它将成为主流工具。发行版制造商请注意:这应该默认安装在您的已部署系统中,尤其是在服务器风格的发行版上。
描述这款游戏很困难。在该网站的“它是什么?”标题下,给出了以下简单的陈述:“Performous 是一款免费的跨平台音乐和节奏游戏。” 但是,这甚至没有开始描述这个项目。
几天后,我能想到的只是 Performous 是 卡拉 OK、吉他英雄、摇滚乐队、Frets On Fire、SingStar、StepMania 和 Dance Dance Revolution 的混合体。
以下是该网站的功能列表,应该可以很好地概括一切
应该可以在几乎任何平台上工作。
非常准确的歌唱音高检测。嘈杂的环境不是问题。可以正确检测和分离多个同时发出的音调。
智能吉他和贝斯游戏。引擎确定预期的内容,而不是简单地选择最近的和弦。当玩家意外地进行击弦和拉弦,然后以常规方式弹奏音符时,击弦和拉弦将被撤消。
鼓。
跳舞毯。
设备自动检测:吉他英雄 和 摇滚乐队 乐器、通用跳舞毯、SingStar 和 摇滚乐队 麦克风,以及在未检测到 SS/RB 麦克风时回退到其他音频设备。
一流的视觉效果:完全基于 OpenGL 的渲染、音乐视频作为背景、流畅的 UI 动画和其他视觉效果。
坚实的 C++ 引擎:在较慢的机器上也能良好运行。快速但仍然安全的开发,这要归功于高级 C++ 功能。大量的线程处理,例如歌曲和视频的后台加载。
自由软件,根据 GNU GPL 版本 2 或更高版本获得许可。
安装
如果您正在寻找二进制软件包,Ubuntu(我推荐来自 Launchpad PPA 的前沿软件包)、Debian、openSUSE、Arch Linux 和 Mandriva 都有各种可用的软件包。如果您可以获得软件包,请这样做。源代码 tarball 可用,但这是一个漫长的追逐依赖项的过程。尽管如此,为了保持发行版的中立性,我像往常一样使用源代码运行。但请做好准备:我们将经历一段漫长的过程!
幸运的是,Performous 文档非常详尽。至于库需求,文档说您需要以下内容
OpenGL:图形。
Boost:线程、解析器/转换、指针容器。
SDL:窗口管理和输入。
FFmpeg(avcodec、avformat 和 swscale):A/V 解码。
Cairo >= 1.2:可缩放图形支持。
librsvg:SVG 渲染(主题)。
libxml++:XML 解析器,用于主题等。
PortAudio v19:音频捕获和播放。
Gettext(可选):用于国际化。
PortMidi(可选):用于 MIDI 鼓支持。
OpenCV(可选):用于网络摄像头支持。
但是,我需要安装许多开发软件包,以及一些我之前没有看到的依赖项才能继续。至于我自己的系统 (Kubuntu),我必须安装以下内容:libboost-all-dev、libglew1.5-dev、libavutil-dev、libavcodec-dev、libavformat-dev、libswscale-dev 和 libportaudio-dev。
一旦您拥有了所需的依赖项,请下载最新的 tarball,解压缩它,并在文件夹中打开一个终端。现在,输入以下命令
$ mkdir build $ cd build $ cmake ../ $ make
如果您的发行版使用 sudo
$ sudo make install
如果您的发行版使用 root
$ su # make install
无论您是否从源代码运行,我 强烈 建议安装 Frets On Fire 的歌曲文件,因为这使游戏可以立即选择歌曲。我还 PPA 站点找到了一个 Ultrastar 歌曲包,如果您能找到类似的软件包,我建议您安装它们。
要运行游戏,请输入
$ performous
用法
正如功能列表所建议的那样,游戏 应该 自动检测来自这些流行的节奏/卡拉 OK 游戏的任何设备。我没有任何这些设备,所以我无法验证其有效性,但也许外面有使用 PlayStation 的并且拥有所有设备的人可以告诉我效果如何。
如果您正在使用卡拉 OK 功能,您需要在进入游戏本身之前在练习部分测试您的声音级别。如果您只安装了基本的 Frets On Fire 歌曲,那么现在您将只有吉他歌曲,所以我将首先介绍这些歌曲。
您将使用的五个品格键由数字键 1-5 控制,R-Shift 或 Enter 作为拨弦按钮。但是,考虑到您可以使用任一按钮或两个按钮,我发现对于超快速部分,用两根手指在两个按钮之间快速切换很有帮助。
这听起来可能亵渎神灵,但我发现与其拿起键盘,不如将其放在桌面上,像钢琴一样平放着弹奏更容易。我知道,我知道,您应该拿起它来模拟吉他或贝斯,但作为同时拥有贝斯和吉他的人,请相信我,它感觉都不像(即使使用 GH 控制器也不像)。
但是,您很快就会想转到其他乐器的其他歌曲(您甚至无法使用该选择进行卡拉 OK),因此我建议您在社区论坛上查找 Frets On Fire、SingStar 和 StepMania。Performous 文档说它在多个目录中查找歌曲,但我的成功有限。最后,我只是将我的新歌曲复制到 /usr/share/games/performous/songs 中,它们就顺利运行了。
例如,如果您想演奏鼓曲,您需要一首已编程鼓曲的歌曲。假设歌曲文件都应该在它们应该在的位置,那么下次您启动 Performous 时,它将出现在您的歌曲菜单中。如果一首歌曲有多个音轨,而您只想演奏鼓,则在歌曲加载后,按下一个鼓垫/按钮以启用鼓模式(或跳舞毯按钮以启用舞蹈模式,依此类推)。至于贝斯,因为它使用与吉他模式相同的按钮,因此您需要在歌曲开始时从默认吉他模式更改为贝斯模式。
在 Performous 上,我能够伴奏我最喜欢的(也是最稀有的)曲目,并且从鼓手的角度来看,用户制作的曲目实际上比商业曲目更逼真。
最终,Performous 既是一个雄心勃勃又务实的概念。人们反正都在玩相同的游戏选择,为什么不将它们组合起来呢?而且,考虑到 Performous 可以使用真实的控制器,这意味着我也可以跳过购买 PlayStation(我宁愿吃掉自己的胫骨也不愿成为游戏机玩家)。PC 万岁!
正在酝酿新鲜、创新或令人兴奋的东西?发送电子邮件至 newprojects@linuxjournal.com。
John Knight 是一位 26 岁的鼓和攀岩爱好者,来自世界上最孤立的城市——西澳大利亚州珀斯。人们通常可以发现他要么埋头于 Audacity 屏幕,要么猛烈敲击底鼓,以至于无法辨认。