feross / feross/timidity

Fork with AudioWorklet implementation

未关闭
#16 1 条评论 2 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
Shell
星标
403
派生
44
PR 合并指标
30 天内没有已合并 PR

描述

Hi, I really like this library, and I have made an attempt to reuse a lot of its bits and create a version that uses [AudioWorkletProcessor](https://developer.mozilla.org/en-US/docs/Web/API/AudioWorkletProcessor/AudioWorkletProcessor) rather than the very deprecated ScriptProcessorNode. Can be found [here](https://github.com/miker2049/timidity).

I need to work on completely copying the api here, with the duration features and events, but it stays pretty close right now otherwise. Most of the original `index.js` is now bundled into a `registerProcessor` for the `AudioWorkletGlobalScope`, and a second interface class `MIDIPlayer` handles all the messy communication with the worklet, as well as instantiating itself from an async static builder.

Some improvements otherwise include dynamically loading the `timidity.cfg` file on building the instance, and simply requiring that the pat folders are found in the same place. Also, a built in build system with rollup is now included.

I am not sure there is PR interest/how active this library is, and this is a pretty big set of changes. But let me know! It is right now working pretty well.

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。