V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dearxe2v
V2EX  ›  程序员

铃儿响叮当 - 用正弦波函数将简谱文本合成音乐, 200 来行代码听个响

  •  
  •   dearxe2v · 348 天前 · 1046 次点击
    这是一个创建于 348 天前的主题,其中的信息可能已经有所发展或是发生改变。

    简单用 正弦波、方波、锯齿波、三角波 函数生成一段音乐简谱的 pcm 数据,可以转码成 wav 、mp3 等格式直接播放。好久以前写的,差不多快半年前了,刚开始是用来生成测试音频用的,后面陆陆续续加了几十首曲子进去

    在线把玩地址: https://xiangyuecn.gitee.io/recorder/assets/%E5%B7%A5%E5%85%B7-%E4%BB%A3%E7%A0%81%E8%BF%90%E8%A1%8C%E5%92%8C%E9%9D%99%E6%80%81%E5%88%86%E5%8F%91Runtime.html?jsname=test.create-audio.nmn2pcm

    作方法:点击代码下面的运行按钮,再点击任意一个简谱,再点击合成,就可以播放了

    源码: https://github.com/xiangyuecn/Recorder/blob/master/src/extensions/create-audio.nmn2pcm.js

    里面有《铃儿响叮当 - Jingle Bells - 圣诞歌》,马上到圣诞节了,说不定有点用处。

    欢迎收听:《[插件内置] 东方红》《[插件内置] 兰花草(洒水版)》😆


    已有曲目列表:

    1. 思君黯然 - 天龙八部插曲
    2. 小猪佩奇 - 片头曲
    3. 葫芦娃 - 葫芦兄弟主题曲
    4. 云宫迅音 - 西游记片头曲
    5. 梁祝 - 梁山伯与祝英台
    6. 世上只有妈妈好
    7. 一闪一闪亮晶晶
    8. 两只老虎
    9. 春天在哪里
    10. 让我们荡起双桨
    11. 铃儿响叮当 - Jingle Bells - 圣诞歌
    12. 下雨的时候 - SomeTimes When It Rains
    13. 此情可待 - Right Here Waiting
    14. 独角戏 - 是谁导演这场戏
    15. 祝你一路顺风 - 面带着微微笑,用力的挥挥手
    16. 纸短情长 - 好想你,在每一个雨季
    17. 我爱你不问归期 - 是想念,如你温柔过境
    18. 出埃及记 - 电影出埃及记主题曲
    19. Victory - 高潮部分
    20. Victory - 开头部分+高潮部分
    21. 音符试听 - 1234567
    22. [插件内置] 东方红
    23. [插件内置] 祝你生日快乐
    24. [插件内置] 兰花草(洒水版)
    25. [插件内置] 致爱丽丝
    26. [插件内置] 卡农-右手简谱
    27. [插件内置] 卡农
    2 条回复    2023-12-11 13:54:06 +08:00
    est
        1
    est  
       348 天前
    感觉不如我这个简单 /t/891268
    xiangyuecn
        2
    xiangyuecn  
       348 天前
    @est 哈,看到了,你那用的 AudioContext 来合成声音并播放,代码是少了不少,也可以直接用正弦函数来写纯代码更好移植一点,合成用不到 fft ,识别信号时才用到了 fft
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2434 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 02:23 · PVG 10:23 · LAX 18:23 · JFK 21:23
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.