
一个富裕的基于Web的作曲家,用于创建铃声文本传输语言(RTTTL)。
该工具最初是为了简单起见的香草HTML,CSS&JS构建的,但最终超出了基础知识,并需要一个网络框架来简化开发并更好地遵守现代标准。该应用程序是使用新鲜的Web框架与Deno进行后端和构建过程构建的。前端还使用表格UI框架,BS5和jQuery进行交互。

笔记
有关RTTTL及其背景历史记录,规格及其工作方式的更详细说明,请查看什么是RTTTL?
RTTTL (以前称为Nokring)最初是由诺基亚于1996年开发的,用于将其用于手机的手机,当时它们是手机市场中的主要力量,并且是最常见的作曲方法,而分享铃声是通过短信。该格式简单易懂,这使得它的采用非常受欢迎,尽管很快被MIDI和MP3铃声等更现代的格式取代,这些格式提供了更多功能和更好的音质。
RTTTL格式如今仍在某些应用程序和设备(例如爱好者Arduino Projects,IoT设备和较旧的手机)中使用。
如果您有兴趣播放在物理硬件上在RTTTL中组成的铃声,或者您可能已经拥有必要的电气组件来构建简单的电路,则可以将以下以下示例用作基础知识的起始参考。
另外,如果您喜欢准备好开箱即用的现成硬件解决方案,那么Home Assistant的Apollo MSR-2之类的东西是玩RTTTTL的绝佳选择。有关使用情况的更多信息,请参阅MSR-2蜂鸣器文档。
以下图是一个很好的基本电路的示例表示,该电路将压电蜂鸣器连接到面包板上的ESP32控制器:

请注意,实际电路将根据您的控制器而有所不同:
GPIO0 GPIO16范围内GPIO0 ESP32 GPIO33 如果您的微控制器与Esphome兼容,那么您可以幸运地利用现有的RTTTL组件来轻松播放直接在ESP设备上的Web应用程序上组成的RTTTTL字符串,请参见RTTTTTL组件文档,有关更多信息,有关更多信息,可以在此处找到基础RTTTL库的源。
# Buzzer (ESP32 controller)
output :
- platform : ledc
pin : GPIO12
id : buzzer
rtttl :
output : buzzer
# Example API action
api :
actions :
- action : play_rtttl
variables :
song_str : string
then :
- rtttl.play :
rtttl : !lambda 'return song_str;'现在,您可以将song_str设置的play_rtttl操作调用到有效的rtttl字符串,例如:
# Example RTTTL tone to play.
song_str : " James Bond:d=4, o=5, b=320:c, 8d, 8d, d, 2d, c, c, c, c, 8d#, 8d#, 2d#, d, d, d, c, 8d, 8d, d, 2d, c, c, c, c, 8d#, 8d#, d#, 2d#, d, c#, c, c6, 1b., g, f, 1g. "该项目可根据GPL-2.0许可提供。