使用 Python 和 Linux 进行音乐创作

与 MAGFest 先生 Brendan Becker 的对话。
93 位读者喜欢这个。
5 sys admin horror stories

Opensource.com

1999 年,我在一家电脑商店遇到了 Brendan Becker。我们都喜欢组装定制电脑并在上面安装 Linux。Brendan 总是同时参与多个技术项目,从游戏编码到音乐创作。快进几年,离开电脑商店的日子,他继续编写了 pyDance,这是一款开源的多种跳舞游戏实现,然后成为音乐和游戏活动 MAGFest 的首席执行官。Brendan 被人称为“MAGFest 先生”,因为他掌管着该活动,现在他使用音乐化名“Inverse Phase”作为芯片音乐的作曲家——芯片音乐主要是在 8 位计算机和游戏机上制作的音乐。

我认为采访他并询问有关他在职业生涯中如何从 Linux 和开源软件中受益的一些具体信息会很有趣。

Inverse Phase performance photo

Inverse Phase 演出照片

Alan Formy-Duval:您是如何开始接触计算机和软件的?

Brendan Becker:自从我记事起,我的家里就有一台电脑。我的父亲热衷于关注科技;当康柏便携式电脑刚上市时,他就把它带回了家,当他不用它工作时,我就可以使用它。自从我两岁开始阅读以来,使用电脑对我来说就变得非常自然——只需阅读磁盘上的内容,按照说明操作,我就可以玩游戏了!有时我会玩一些学习和教育软件,我们还有一些装满游戏的磁盘供我其他时间玩。我记得一张光盘上有一些流行游戏的免费克隆版本。最终,我父亲告诉我,我们可以呼叫其他计算机(5 岁时 BBS!),我看到了某些游戏的来源。我喜欢玩的一款游戏是用 BASIC 编写的,当我意识到我可以通过简单地阅读一些内容并重新输入它们来使我的游戏更容易时,一切都结束了。

Formy-Duval:那是 1980 年代?

Becker:康柏便携式电脑于 1983 年推出,供您参考。我父亲是该型号的首批拥有者之一。

Formy-Duval:您是如何接触到 Linux 和开源软件的?

Becker:在 90 年代初,我沉迷于 MOD 和演示场景,我注意到 Walnut Creek (cdrom.com; 现已倒闭) 在 FreeBSD 上运营商店。我非常好奇 Unix 和其他操作系统,但没有太多第一手接触,并认为现在可能是尝试新事物的时候了。DOOM 刚刚发布,有人告诉我我甚至可以让它运行。有了这个以及能够运行很酷的互联网服务器,我开始深入研究。有人看到我阅读有关 FreeBSD 的资料,并建议我查看 Linux,这是一个为 x86 从头编写的新操作系统,与 BSD 不同,(他们说)BSD 在兼容性方面存在一些问题。因此,我加入了 undernet IRC 上的 #linuxhelp,并询问如何开始使用 Linux,指出我做了一些研究(询问“Red Hat 和 Slackware 之间有什么区别?”),主要询问什么最容易使用。频道中唯一说话的人说他 13 岁,他可以弄清楚 Slackware,所以我应该没有问题。我学校的一位数学老师给了我一个硬盘,我下载了“A”磁盘集和一个引导磁盘,写出来,安装它,并没有花太多时间回头看。

Formy-Duval:您是如何被称为 MAGFest 先生的?

Becker:好吧,这个很容易。在第一次活动之后,我几乎立即成为 MAGFest 的代理负责人。前任主席们都在各奔东西,我要求负责人不要取消该活动。解决方案是自己运行它,随着我慢慢将活动塑造成我自己的活动,这个绰号就归我所有了。

Formy-Duval:我记得早些时候参加过。MAGFest 最终变得有多大?

Becker:第一届 MAGFest 有 265 人。现在是一个可怕的 20,000 多名独立参与者。

Formy-Duval:太大了!您能简要描述一下 MAGFest 大会吗?

Becker:我的一个朋友 Hex 很好地描述了它。他说,“这就像一个以视频游戏为主题的生日派对,所有你的朋友都在那里,但碰巧有几千人在那里,如果你愿意,他们都可以成为你的朋友,然后还有摇滚音乐会。” 这很快被采纳并缩短为“这是一个为期四天的视频游戏派对,有多场视频游戏摇滚音乐会。” 通常,“音乐和游戏节”这个短语是人们理解这个想法所需要的全部。

Formy-Duval:您如何在运行 MAGFest 时使用开源软件?

Becker:当我成为 MAGFest 的负责人时,我已经用 Python 编写了一个游戏,所以我最舒服地用 Python 编写我们的注册系统。这是一个很容易的决定,因为没有涉及任何成本,而且我已经有了经验。后来,我们的在线注册系统和拼车界面是用 PHP/MySQL 编写的,我们使用 Kboard 作为我们的论坛。最终,这演变为我们用 Python 从头开始推出我们自己的注册系统,我们也将其用于活动中,并在主网站上运行 Drupal。在某个时候,我还编写了一个系统来管理 Python 中的视频室和挑战站。哦,我们还有一些游戏音乐收听站,您可以翻阅标志性游戏 OST(原始音轨)和在 MAGFest 演出的乐队的曲目和内页。

Formy-Duval:据我了解,几年前,您减少了在 MAGFest 的职责,以追求新项目。您的下一步努力是什么?

Becker:我一直对游戏音乐场景非常感兴趣,并试图尽可能多地将其带到 MAGFest。随着我越来越多地成为这些社区的一员,我想参与其中。我使用 DOS 和 Windows 演示场景工具的免费开源版本编写了一些视频游戏曲调的混合曲、翻唱和编曲,这些工具也是免费的,但不一定是开源的。在运行 MAGFest 的头几年,我发布了一些曲目,然后在 Jake Kaufman(也称为 virt;铲子骑士和 Shantae 在他的履历中,还有其他)的一些严厉的爱和建议之后,我将方向转向我更擅长的东西——芯片音乐。即使我在小时候用我的康柏便携式电脑和 90 年代整个演示场景中的 MOD 文件编写了 PC 扬声器哔哔声,我还是在 2006 年发布了第一首我真正自豪地称之为我自己的 NES 规格曲目。随后出现了几首流行致敬和专辑。

2010 年,有多人与我联系,要求进行游戏配乐工作。即使配乐工作并没有产生太大影响,我还是开始更加认真地缩减我在 MAGFest 的一些职责,并在 2011 年,我决定更进一步地进入幕后。我会作为顾问留在船上,并帮助人们学习他们需要运行部门的内容,但我不再掌舵。与此同时,我的兼职工作支付了账单,解雇了所有员工,我突然发现自己有很多空闲时间。我开始编写 Pretty Eight Machine,这是一首 Nine Inch Nails 致敬歌曲,我花了一年多的时间在这上面,通过它和游戏配乐工作,我向自己证明,我可以用音乐来维持生计(即使只是勉强),这就是我接下来想要做的事情。

Inverse Phase CTM Tracker

Formy-Duval:就硬件和软件而言,您的工作区是什么样的?

Becker:在我的 DOS/Windows 时代,我主要使用 FastTracker 2。在 Linux 中,我用 SoundTracker 替换了它(不是 Karsten Obarski 的原创,而是 GTK 重写;参见 soundtracker.org)。如今,SoundTracker 处于不稳定状态——尽管我仍然需要尝试新的 GTK3 版本——但 MilkyTracker 是我无法使用 SoundTracker 时的良好替代品。如果我真的需要原始版本,老式的 FastTracker 2 也可以在 DOSBox 中运行。然而,这是我开始使用 Linux 的时候,所以这是我 20-25 年前弄清楚的事情。

在过去的十年里,我逐渐远离了基于采样的音乐,转向了芯片音乐——通过来自 8 位和 16 位游戏系统和计算机的旧音效芯片合成的音乐。有一个非常好的跨平台工具叫做 Deflemask,可以为很多系统编写音乐。但是,我不支持一些我想为之编写音乐的系统,而且 Deflemask 是闭源的,所以我已经开始使用 Python 和 Pygame 从头开始构建我自己的音乐创作环境。我使用 Git 维护我的代码树,并将使用开源 KiCad 控制硬件合成器板。

Formy-Duval:您目前专注于哪些项目?

Becker: 我断断续续地从事游戏原声带和音乐委托创作工作。与此同时,我也在筹备一个名为 Bloop 的电子娱乐博物馆。 我们在档案管理和库存方面做了很多很酷的事情,但也许最令人兴奋的是我们一直在用 Raspberry Pi 构建展品。 它们非常通用,想到如果我十年前尝试做这件事,我不会有小型单板计算机来驱动我的展品,我可能只会把一台笔记本电脑螺栓固定在平板显示器的背面!这真是太不可思议了。

Formy-Duval: 现在有越来越多的游戏平台来到 Linux,例如 Steam、Lutris 和 Play-on-Linux。 您认为这种趋势会持续下去吗,它们会一直存在吗?

Becker: 作为一个已经在 Linux 上玩了 25 年游戏的人——事实上,我接触 Linux *就是因为* 游戏——我认为这个问题比大多数人更难回答。 我已经运行 Linux 原生游戏几十年了,我甚至不得不收回我过去说过的“要么存在 Linux 解决方案,要么可以编写”的话,但最终我还是这样做了,并且编写了一款 Linux 游戏。

说说实话:Android 自 2008 年以来就已推出。 如果您在 Android 上玩过游戏,那么您就是在 Linux 上玩游戏。 Steam 已经为 Linux 提供了八年。 Steambox/SteamOS 仅在 Steam 之后一年宣布。 我没有听到很多关于 Lutris 或 Play-on-Linux 的消息,但我知道它们存在并且希望它们成功。 我确实看到了 GOG 的一大批追随者,我认为这非常棒。 我看到了像 Ryan Gordon (icculus) 和 Ethan Lee (flibitijibibo) 这样的人推出了许多高质量的游戏移植,甚至有些公司也进行内部移植。 像 Unity 和 Unreal 这样的游戏引擎已经支持 Linux。 Valve 已经将 Proton 集成到 Linux 版本的 Steam 中大约两年了,所以现在 Linux 用户甚至不必搜索他们的游戏的 Linux 原生版本。

我可以肯定地说,我认为大多数游戏玩家期望并且将继续期望他们已经从零售游戏市场获得的这种支持水平。 就我个人而言,我希望这个水平能够提高而不是降低!

了解更多关于 Brendan 作为 Inverse Phase 的工作。

接下来要阅读的内容
Alan Formy-Duval Opensource.com Correspondent
Alan 拥有 20 年的 IT 经验,主要是在政府和金融领域。 他最初是一名增值经销商,后来转为系统工程师。 Alan 的背景是高可用集群应用程序。 他在 Oracle Press/McGraw Hill 的《Oracle Solaris 11 系统管理》一书中撰写了“用户和组”和“Apache 和 Web 堆栈”章节。

2 条评论

很棒的采访 Alan :)

Creative Commons 许可协议 本作品已根据 Creative Commons 署名 - 相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.