网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
成为超级会员,使用一键签到
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
07月07日
漏签
0
天
前端吧
关注:
223,335
贴子:
1,369,275
看贴
图片
吧主推荐
游戏
8
回复贴,共
1
页
<<返回前端吧
>0< 加载中...
tone.js怎么播放txt格式的jpwabc格式的纯文本代码
只看楼主
收藏
回复
阿兰月亮仙女
初涉江湖
1
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
随意播放一段txt纯文本代码,以jpwabc为例,怎么编写播放规则,让它成为tone.js可识别的代码
就别离-
初涉江湖
1
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
暸问 wx哪有最新华强北Airpods Pro2降噪
耳机顶配?
答 RoAs华强北侧评
降温丶
武林高手
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
业务性质太强了
不做音频,不懂这个库
可以请求这个txt, 拿到字符串
不知道能不能直接用,
如果不行,
能看懂这个 txt 描述音符的规则的话,写个方法转成 tonejs需要的数据结构
阿兰月亮仙女
初涉江湖
1
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
cangqiang.com.cn/about.html?id=6,这个是语法规则,怎么编写播放规则
大西瓜汁
四方游侠
5
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
要将jpwabc格式的纯文本代码转换为Tone.js可识别的音频播放规则,您需要编写一个解析器来解释jpwabc代码并将其转换为音频事件。jpwabc是一种用于表示乐谱的文本格式,它描述了音符、节拍和音高等信息。您可以编写解析器来读取jpwabc文件中的音符和其他参数,并根据这些信息使用Tone.js创建音频事件。
以下是一个简单的示例,演示如何编写一个简单的jpwabc解析器,并将其转换为Tone.js音频事件:
// 示例的jpwabc格式代码
const jpwabcCode = `
X:1
T:Simple Example
M:4/4
K:C
C2 D E F | G2 A B c |
`;
// 解析jpwabc代码的函数
function parseJpwabc(jpwabcCode) {
// 在这里编写解析jpwabc代码的逻辑
// 可以使用正则表达式或自定义解析逻辑来提取音符、节拍等信息
// 并将其转换为Tone.js音频事件
// 返回一个包含Tone.js音频事件的数组
return [
{ time: 0, note: 'C4', duration: '4n' },
{ time: '4n', note: 'D4', duration: '4n' },
{ time: '8n', note: 'E4', duration: '4n' },
// 其他音符和事件
];
}
// 使用解析器将jpwabc代码转换为Tone.js音频事件
const events = parseJpwabc(jpwabcCode);
// 创建一个Part对象,用于播放音频事件
const part = new Tone.Part((time, event) => {
// 创建Tone.js的音频事件
const synth = new Tone.Synth().toDestination();
synth.triggerAttackRelease(event.note, event.duration, time);
}, events);
// 启动播放
part.start();
在上述示例中,parseJpwabc函数模拟了一个简单的jpwabc代码解析器,它将jpwabc代码转换为Tone.js音频事件。然后,我们使用这些事件创建了一个Tone.js的Part对象,并开始播放音频事件。
请注意,这只是一个简单的示例,实际上,jpwabc解析可能更加复杂,需要考虑节拍、调性、音符长度等更多因素。您可能需要编写更复杂的解析器来处理更复杂的jpwabc代码。
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示