一种低延迟的钢琴教学用实时互动系统技术方案

技术编号:33470440 阅读:20 留言:0更新日期:2022-05-19 00:48
本发明专利技术属于钢琴教学领域,具体的说是一种低延迟的钢琴教学用实时互动系统,设备连接:老师或学生的电子钢琴或MIDI设备通过MIDI数据线与电脑设备连接;MIDI信号传输:浏览器通过电子乐器和电脑之间的通信协议传输并接收MIDI信号数据;琴键对应的数值变更颜色;接收到MIDI信号数据后,通过网页脚本语言的键盘按下事件输出琴键对应的音符元素由白色或黑色转成其他颜色的数据,键盘弹起事件时输出则相反;改用WebRTC协议传输MIDI信号数据;推流至云端流媒体服务器;通过WebRTC协议将音频与HTML5模拟钢琴画面低延迟推送至云端流媒体服务器使老师或学生在弹奏钢琴时可以直观的看见具体琴键的功能。见具体琴键的功能。见具体琴键的功能。

【技术实现步骤摘要】
一种低延迟的钢琴教学用实时互动系统


[0001]本专利技术涉及钢琴教学领域,具体是一种低延迟的钢琴教学用实时互动系统。

技术介绍

[0002]钢琴是西洋古典乐器中的一种键盘乐器,现在在对钢琴进行教学时多采用线上和线下两种模式进行,现在在对钢琴进行线上教学时多采用直播教学的方式。
[0003]目前在钢琴直播教学中,想要实现钢琴弹奏的互动,需要通过老师与学生进行音视频的实时互动连麦完成,老师与学生通过摄像头画面观看双方的弹奏过程。
[0004]现有的钢琴直播教学系统老师与学生在弹奏钢琴时不能直观的看到对方弹奏的具体琴键位置且弹奏钢琴时声音传输会受环境影响音质,从而导致直播教学学生与老师皆出现中看不清、听不清的情况,使教学效率和效果都较不理想;因此,针对上述问题提出一种低延迟的钢琴教学用实时互动系统。

技术实现思路

[0005]为了弥补现有技术的不足,现有的钢琴直播教学系统老师与学生在弹奏钢琴时不能直观的看到对方弹奏的具体琴键位置且弹奏钢琴时声音传输会受环境影响音质,从而导致直播教学学生与老师皆出现中看不清、听不清的情况,使教学效率和效果都较不理想的问题,本专利技术提出一种低延迟的钢琴教学用实时互动系统。
[0006]本专利技术解决其技术问题所采用的技术方案是:本专利技术所述的一种低延迟的钢琴教学用实时互动系统,该实时互动系统包括以下步骤:
[0007]S1:设备连接:老师或学生的电子钢琴或MIDI设备通过MIDI数据线与电脑设备连接;
[0008]S2:MIDI信号传输:浏览器通过电子乐器和电脑之间的通信协议传输并接收MIDI信号数据;
[0009]S3:琴键对应的数值变更颜色;接收到MIDI信号数据后,通过网页脚本语言的键盘按下事件输出琴键对应的音符元素由白色或黑色转成其他颜色的数据,键盘弹起事件输出由其他颜色转回原来的白色或黑色;
[0010]S4:改用WebRTC协议传输MIDI信号数据;
[0011]S5:推流至云端流媒体服务器。
[0012]优选的,所述S2中电子乐器和电脑之间的通信协议具体为Web服务协议、MIDI通信协议或API接口协议。
[0013]优选的,所述S3中所述的网页脚本语言为JavaScript,所述S3中的键盘按下事件为KeyDown,所述S3中琴键对应的音符元素为DIV,所述S3中键盘弹起事件为KeyUp。
[0014]优选的,所述S4中改用WebRTC协议传输MIDI信号数据后的具体执行方法为:
[0015]A1:MIDI设备A首先创建本地端机器与远程机器的一条链接对象即PeerConnection对象,将音视频数据封装成媒体内容的流即MediaStream添加到
PeerConnection对象中;
[0016]A2:MIDI设备A调用PeerConnection对象中的CreateOffer方法创建一个用于offer的SDP对象,CreateOffer方法会先获取本地所支持的音视频编码格式,传输给对端进行协商,然后通过Signal信令服务器将SDP对象包数据发送给MIDI设备B;
[0017]A3:MIDI设备B接收到MIDI设备A发送过的offerSDP对象,通过PeerConnection对象的SetRemoteDescription方法将其保存起来,通过PeerConnection对象的SetLocalDescription方法保存应答SDP对象并将它通过Signal信令服务器发送给MIDI设备A,SetLocalDescription方法的作用是改变与连接相关的描述,连接的offer通常来自于负责匹配的服务器所发送的数据;
[0018]A4:MIDI设备A接收到MIDI设备B发送过来的应答SDP对象,将其通过PeerConnection对象的SetRemoteDescription方法进行保存;
[0019]A5:在SDP信息的offer/answer流程中,MIDI设备A和MIDI设备B已经根据SDP信息创建好相应的音频Channel和视频Channel并开启Candidate数据的收集;
[0020]A6:当MIDI设备A收集到Candidate信息后,PeerConnection对象通过一个事件触发器OnIceCandidate接口给MIDI设备A发送通知,MIDI设备A将收到的Candidate信息通过Signal信令服务器发送给MIDI设备B,MIDI设备B通过PeerConnection对象的AddIceCandidate方法保存起来,当MIDI设备B收集到Candidate信息时重复操作;
[0021]A7:MIDI设备A和MIDI设备B成功建立音视频传输的P2P通道,MIDI设备B接收到MIDI设备A传送的音视频流,通过PeerConnection对象的OnAddStream回调接口,返回一个标识MIDI设备A端音视频流的MediaStream对象,MIDI设备B对MediaStream对象进行渲染,MIDI设备B到MIDI设备A的音视频流的传输同样采用上述方法。
[0022]优选的,所述A2中传输给对端进行协商的具体步骤为:
[0023]B1:执行清除动作,避免指针指向无效数据;
[0024]B2:如果当前编码信息不为空,说明不是第一次执行CreateOffer,那么就将当前的编码信息记录存入SDP对象中;
[0025]B3:调用PeerConnection的SetLocalDescription方法进行本地端编码格式的匹配,SetLocalDescription方法接受会话描述中的单个参数,并返回一个承诺,一旦描述被异步更改,该承诺就会实现,直到两个对等方配置达成一致时,协商完成。
[0026]优选的,所述A3中SetRemoteDescription方法具体为调用此方法先设置远程描述,然后生成发送到对端计算机的应答数据包即answer并调用PeerConnection对象的CreateAnswer方法创建一个应答的SDP对象,CreateAnswer方法在WebRTC连接的提供/应答协商期间,为从远程对等方收到的提供创建SDP应答。
[0027]优选的,所述A5中的Candidate数据即MIDI设备端的IP地址信息即本地IP地址、公网IP地址、Relay服务端分配的地址。
[0028]优选的,所述S5具体为捕获HTML5模拟钢琴界面数据传输至云端流媒体服务器,云端流媒体服务器接收音视频流的数据包,以TS或RTP的封包格式经过网络端口外送。
[0029]本专利技术的有益之处在于:
[0030]本专利技术通过电子钢琴或MIDI设备连接HTML5模拟钢琴进行MIDI信号传输,接收MIDI信号,并对琴键对应的数值通过JavaScript加CSS变更颜色,WebRTC协议将音频与
HTML5模拟钢琴画面低延迟推送至云端流媒体服务器,实现了提高线上教学时钢琴音质,使老师或学生本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种低延迟的钢琴教学用实时互动系统,其特征在于:该实时互动系统包括以下步骤:S1:设备连接:老师或学生的电子钢琴或MIDI设备通过MIDI数据线与电脑设备连接;S2:MIDI信号传输:浏览器通过电子乐器和电脑之间的通信协议传输并接收MIDI信号数据;S3:琴键对应的数值变更颜色;接收到MIDI信号数据后,通过网页脚本语言的键盘按下事件输出琴键对应的音符元素由白色或黑色转成其他颜色的数据,键盘弹起事件输出由其他颜色转回原来的白色或黑色;S4:改用WebRTC协议传输MIDI信号数据;S5:推流至云端流媒体服务器。2.根据权利要求1所述的一种低延迟的钢琴教学用实时互动系统,其特征在于:所述S2中电子乐器和电脑之间的通信协议具体为Web服务协议、MIDI通信协议或API接口协议。3.根据权利要求2所述的一种低延迟的钢琴教学用实时互动系统,其特征在于:所述S3中所述的网页脚本语言为JavaScript,所述S3中的键盘按下事件为KeyDown,所述S3中琴键对应的音符元素为DIV,所述S3中键盘弹起事件为KeyUp。4.根据权利要求3所述的一种低延迟的钢琴教学用实时互动系统,其特征在于:所述S4中改用WebRTC协议传输MIDI信号数据后的具体执行方法为:A1:MIDI设备A首先创建本地端机器与远程机器的一条链接对象即PeerConnection对象,将音视频数据封装成媒体内容的流即MediaStream添加到PeerConnection对象中;A2:MIDI设备A调用PeerConnection对象中的CreateOffer方法创建一个用于offer的SDP对象,CreateOffer方法会先获取本地所支持的音视频编码格式,传输给对端进行协商,然后通过Signal信令服务器将SDP对象包数据发送给MIDI设备B;A3:MIDI设备B接收到MIDI设备A发送过的offerSDP对象,通过PeerConnection对象的SetRemoteDescription方法将其保存起来,通过PeerConnection对象的SetLocalDescription方法保存应答SDP对象并将它通过Signal信令服务器发送给MIDI设备A;A4:MIDI设备A接收到MIDI设备B发送过来的应答SDP对象,将其通过PeerConnection对象的SetRemoteDescription方法进行保存;A5:在SDP信息的offer/answer流程中,MIDI设备A和MIDI设备B已经根据SDP信息创建好相应的音...

【专利技术属性】
技术研发人员:倪燕陈军刘宏黄彦
申请(专利权)人:深圳品阔信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1