CN116932809A - 一种音乐信息展示方法、装置和计算机可读存储介质 - Google Patents

一种音乐信息展示方法、装置和计算机可读存储介质 Download PDF

Info

Publication number
CN116932809A
CN116932809A CN202210349425.8A CN202210349425A CN116932809A CN 116932809 A CN116932809 A CN 116932809A CN 202210349425 A CN202210349425 A CN 202210349425A CN 116932809 A CN116932809 A CN 116932809A
Authority
CN
China
Prior art keywords
beat
music
target
track
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210349425.8A
Other languages
English (en)
Inventor
胡建丰
苏泓程
李旺成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202210349425.8A priority Critical patent/CN116932809A/zh
Priority to PCT/CN2023/079797 priority patent/WO2023185387A1/zh
Publication of CN116932809A publication Critical patent/CN116932809A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/63Querying
    • G06F16/638Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/68Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/683Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/68Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/686Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, title or artist information, time, location or usage information, user ratings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Library & Information Science (AREA)
  • Acoustics & Sound (AREA)
  • Auxiliary Devices For Music (AREA)

Abstract

本申请实施例公开了一种音乐信息展示方法、装置和计算机可读存储介质;本申请实施例在显示当前播放的目标音乐的音乐播放页面后,响应于针对音乐播放页面中音乐信息展示控件的触发操作,显示目标音乐的音乐信息展示页面,该音乐信息展示页面包括目标音乐中至少一个音乐元素对应的音轨、以及音轨对应的节拍线,然后,基于目标音乐的播放进度,在音乐信息展示页面对音轨和跟随音轨运动的节拍线进行滚动展示;该方案可以提升音乐信息展示的准确性。

Description

一种音乐信息展示方法、装置和计算机可读存储介质
技术领域
本申请涉及通信技术领域,具体涉及一种音乐信息展示方法、装置和计算机可读存储介质。
背景技术
近年来,随着互联网技术的飞速发展,网络上音乐创作的内容样式也越来越丰富。为了更加准确的了解音乐的内容,在听音乐的同时,还可以展示音乐信息。现有的音乐信息展示方法主要是通过识别音乐中人声音高并进行展示。而人声音高等并不能完全代表一首完整的音乐,也就不能准确的表达音乐的内容,因此,导致音乐信息展示的准确性较低。
发明内容
本申请实施例提供一种音乐信息展示方法、装置和计算机可读存储介质,可以提高音乐信息展示的准确性。
一种音乐信息展示方法,包括:
显示当前播放的目标音乐的音乐播放页面,所述音乐播放页面包括音乐信息展示控件;
响应于针对所述音乐信息展示控件的触发操作,显示所述目标音乐的音乐信息展示页面,所述音乐信息展示页面包括所述目标音乐中至少一个音乐元素对应的音轨、以及所述音轨对应的节拍线,所述节拍线用于指示所述目标音乐的节拍;
基于所述目标音乐的播放进度,在所述音乐信息展示页面对所述音轨和跟随所述音轨运动的节拍线进行滚动展示。
相应的,本申请实施例提供一种音乐信息展示装置,包括:
第一显示单元,用于显示当前播放的目标音乐的音乐播放页面,所述音乐播放页面包括音乐信息展示控件;
第二显示单元,用于响应于针对所述音乐信息展示控件的触发操作,显示所述目标音乐的音乐信息展示页面,所述音乐信息展示页面包括所述目标音乐中至少一个音乐元素对应的音轨、以及所述音轨对应的节拍线,所述节拍线用于指示所述目标音乐的节拍;
滚动展示单元,用于基于所述目标音乐的播放进度,在所述音乐信息展示页面对所述音轨和跟随所述音轨运动的节拍线进行滚动展示。
可选的,在一些实施例中,所述第二显示单元,具体可以用于获取所述目标音乐中至少一个音乐元素的音轨数据;基于所述音轨数据,在预设音乐信息展示页面绘制所述音乐元素对应的音轨;根据所述目标音乐的当前播放时刻,在所述音轨绘制节拍线,得到所述目标音乐的音乐信息展示页面,并显示所述音乐信息展示页面。
可选的,在一些实施例中,所述第二显示单元,具体可以用于在所述音轨中筛选出鼓点音轨,并基于所述鼓点音轨,确定所述目标音乐的节拍信息;基于所述目标音乐的当前播放时刻和节拍信息,在所述音轨上识别出已播放节拍的节拍线位置;基于所述节拍线位置,在所述音轨绘制出所述已播放节拍的节拍线,得到所述目标音乐的音乐信息展示页面。
可选的,在一些实施例中,所述第二显示单元,具体可以用于在所述鼓点音轨中识别出每一鼓点的鼓点类型和时间信息;基于所述时间信息,计算不同鼓点类型的鼓点之间的时间间隔,得到时间间隔集合;根据所述鼓点类型和时间间隔集合,确定所述目标音乐的节拍信息。
可选的,在一些实施例中,所述第二显示单元,具体可以用于在所述时间间隔集合中筛选出数量最多的时间间隔,得到所述目标音乐的节拍线的时间间距;对所述鼓点音轨中的鼓点进行排序,以得到所述鼓点音轨的目标鼓点;根据所述时间间距和所述目标鼓点的时间信息,确定所述目标音乐的每一节拍线的节拍类型和时间位置,并将所述节拍线的节拍类型和时间位置作为节拍信息。
可选的,在一些实施例中,所述第二显示单元,具体可以用于将所述目标音乐的当前播放时刻与所述节拍线的时间位置进行对比;基于对比结果,在所述节拍线中筛选出已播放节拍的历史节拍线;获取所述音轨的时间轴信息,并基于所述时间轴信息和历史节拍线的时间位置,在所述音轨上识别出已播放节拍的节拍线位置。
可选的,在一些实施例中,所述第二显示单元,具体可以用于将所述节拍信息转换为节拍音轨的目标音轨数据;基于所述目标音轨数据,在所述预设音乐信息展示页面绘制所述节拍音轨;在所述预设音乐信息展示页面将所述鼓点音轨替换为所述节拍音轨,得到所述目标音乐的音乐信息展示页面。
可选的,在一些实施例中,所述滚动展示单元,具体可以用于基于所述目标音乐的播放进度,在所述音乐信息展示页面上对所述音轨进行滚动展示,并在所述音轨进行动效播放;根据所述节拍标识线和目标音乐的播放进度,在所述音轨上绘制节拍线,以便所述节拍线跟随所述音轨进行滚动展示。
可选的,在一些实施例中,所述滚动展示单元,具体可以用于根据所述音轨的时间轴信息,在所述音轨中识别出每一播放时刻对应的音轨段;对所述音轨段进行排序,并基于排序信息和所述目标音乐的播放进度,对所述音轨段进行滚动展示。
可选的,在一些实施例中,所述滚动展示单元,具体可以用于根据所述目标音乐的播放进度,在所述音轨段中选出当前展示的当前音轨段;根据所述目标音乐的播放进度,在所述音轨段中选出当前展示的当前音轨段;基于所述节拍标识线和目标音乐的播放进度,确定所述鼓点音轨的当前时间轴的偏移距离;计算所述偏移距离与所述节拍线的时间间距的比值,以得到所述当前音轨段的待播放节拍的节拍线信息;基于所述节拍线信息,在所述当前音轨段上绘制所述待播放节拍的节拍线并滚动展示所述节拍线。
可选的,在一些实施例中,所述滚动展示单元,具体可以用于根据所述目标音乐的播放进度,在鼓点分桶中筛选出当前帧对应的目标鼓点分桶;在所述目标鼓点分桶中识别出与所述节拍标识线最近的目标鼓点,并计算所述目标鼓点与所述节拍标识线的当前距离;基于所述当前距离和所述目标鼓点的位置信息,确定所述鼓点音轨的当前时间轴的偏移距离。
可选的,在一些实施例中,所述滚动展示单元,具体可以用于在所述鼓点音轨中提取出至少一个鼓点,并识别出所述鼓点的时间信息;基于所述时间信息,对所述鼓点进行分类,得到每一时间区间对应的目标鼓点;在预设分桶中筛选出所述每一时间区间对应的目标分桶,并将所述每一时间区间对应的目标鼓点添加至所述时间区间对应的目标分桶,得到各时间区间对应的鼓点分桶。
可选的,在一些实施例中,所述滚动展示单元,具体可以用于对所述节拍线信息进行取整处理,得到当前取整后节拍线信息;基于所述目标音乐的播放进度,获取历史取整后节拍线信息;当所述当前取整后节拍线信息与历史取整后节拍线信息不同时,基于所述当前取整后节拍线信息,在所述当前音轨段上绘制待播放节拍的节拍线。
可选的,在一些实施例中,所述滚动展示单元,具体可以用于基于所述当前取整后节拍线信息,在所述目标音乐的节拍线中筛选出待播放节拍的目标节拍线;计算所述当前取整后节拍线信息和所述待播放节拍的节拍线信息的信息差值,并基于所述信息差值,确定所述目标节拍线的延时绘制时间;基于所述延时绘制时间,在所述当前音轨段上绘制所述待播放节拍的目标节拍线。
可选的,在一些实施例中,所述音乐信息展示装置还可以包括节拍展示单元,所述节拍展示单元,具体可以用于在所述节拍展示区域展示每一节拍类型对应的节拍展示信息;当检测到在音轨或音轨段上绘制节拍线,或,所述节拍标识线与所述节拍线重合时,在所述节拍展示区域对节拍线对应的节拍展示信息进行动态展示。
可选的,在一些实施例中,所述节拍展示单元,具体可以用于根据所述节拍线的节拍类型,在所述节拍展示信息中筛选出目标节拍展示信息,并对目标节拍展示信息进行动效播放;响应于针对节拍播放控件的触发操作,播放所述节拍类型对应的节拍声音;根据所述节拍线的位置信息,确定所述节拍线对应的节拍标识,并在所述节拍展示区域展示所述节拍标识。
可选的,在一些实施例中,所述音乐信息展示装置还可以包括调整单元,所述调整单元,具体可以用于响应于针对所述调整控件的触发操作,获取所述调整控件对应的目标音轨的音频文件的当前播放音量;根据所述当前播放音量,在所述音乐信息展示页面对所述目标音轨进行隐藏处理;基于所述目标音轨的音频文件,播放调整后音乐,所述调整后音乐为在所述目标音乐中对所述目标音轨的音频文件进行静音播放后的音乐。
此外,本申请实施例还提供一种电子设备,包括处理器和存储器,所述存储器存储有应用程序,所述处理器用于运行所述存储器内的应用程序实现本申请实施例提供的音乐信息展示方法。
此外,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本申请实施例所提供的任一种音乐信息展示方法中的步骤。
本申请实施例在显示当前播放的目标音乐的音乐播放页面后,响应于针对音乐播放页面中音乐信息展示控件的触发操作,显示目标音乐的音乐信息展示页面,该音乐信息展示页面包括目标音乐中至少一个音乐元素对应的音轨、以及音轨对应的节拍线,然后,基于目标音乐的播放进度,在音乐信息展示页面对音轨和跟随音轨运动的节拍线进行滚动展示;由于该方案可以在播放目标音乐的同时显示目标音乐中至少一个音乐元素对应的音轨和该音轨对应的节拍线,而且,还可以根据目标音乐的播放进度,对音轨和节拍线进行滚动展示,从而可以准确的展示目标音乐所包含的内容,因此,可以提升音乐信息展示的准确性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的音乐信息展示方法的场景示意图;
图2是本申请实施例提供的音乐信息展示方法的流程示意图;
图3是本申请实施例提供的音乐待播放页面的页面示意图;
图4是本申请实施例提供的音乐播放页面的第一页面示意图;
图5是本申请实施例提供的本地待上传内容页面的页面示意图;
图6是本申请实施例提供的音乐播放页面的第二页面示意图;
图7是本申请实施例提供的音乐信息展示页面的页面示意图;
图8是本申请实施例提供的不同乐器的波形的示意图;
图9是本申请实施例提供的声音的波形示意图;
图10是本申请实施例提供的将目标音乐的音频文件上传至服务器的流程示意图;
图11是本申请实施例提供的服务器对音频进行可视化处理的流程示意图;
图12是本申请实施例提供的TEG音频服务器对目标音乐的音频文件进行解析的流程示意图;
图13是本申请实施例提供的对鼓点音轨进行动效播放的流程示意图;
图14是本申请实施例提供的播放器回调日志的示意图;
图15是本申请实施例提供的回调间隔数据的示意图;
图16是本申请实施例提供的对鼓点进行分桶的示意图;
图17是本申请实施例提供的计算待播放节拍对应的节拍线的序号的示意图;
图18是本申请实施例提供的节拍展示区域的示意图;
图19是本申请实施例提供的节拍器与与鼓点音轨同步算法的流程示意图;
图20是本申请实施例提供的展示的节拍标识的示意图;
图21是本申请实施例提供的添加蒙层后的音乐信息展示页面的页面示意图;
图22是本申请实施例提供的音乐信息展示页面中提示信息的示意图;
图23是本申请实施例提供的通过两种可视化路径对音乐进行可视化的示意图;
图24是本申请实施例提供的音乐信息展示方法的另一流程示意图;
图25是本申请实施例提供的音乐信息展示装置的结构示意图;
图26是本申请实施例提供的音乐信息展示装置的另一结构示意图;
图27是本申请实施例提供的音乐信息展示装置的另一结构示意图;
图28是本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供一种音乐信息展示方法、装置和计算机可读存储介质。其中,该音乐信息展示装置可以集成在电子设备中,该电子设备可以是服务器,也可以是终端等设备。
其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、网络加速服务(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
例如,参见图1,以音乐信息展示装置集成在电子设备中为例。电子设备在显示当前播放的目标音乐的音乐播放页面后,响应于针对音乐播放页面中音乐信息展示控件的触发操作,显示目标音乐的音乐信息展示页面;该音乐信息展示页面包括目标音乐中至少一个音乐元素对应的音轨、以及音轨对应的节拍线;然后,基于目标音乐的播放进度,在音乐信息展示页面对音轨和跟随音轨运动的节拍线进行滚动展示,进而提升音乐信息展示的准确性。
其中,响应于,用于表示所执行的操作所依赖的条件或者状态,当满足所依赖的条件或状态时,所执行的一个或多个操作可以是实时的,也可以具有设定的延迟;在没有特别说明的情况下,所执行的多个操作不存在执行先后顺序的限制。
以下分别进行详细说明。需要说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。
本实施例将从音乐信息展示装置的角度进行描述,该音乐信息展示装置具体可以集成在电子设备中,该电子设备可以是服务器,也可以是终端等设备;其中,该终端可以包括平板电脑、笔记本电脑、以及个人计算机(PC,Personal Computer)、可穿戴设备、虚拟现实设备或其他可以进行音乐信息展示的智能设备等设备。
一种音乐信息展示方法,包括:
显示当前播放的目标音乐的音乐播放页面,该音乐播放页面包括音乐信息展示控件,响应于针对音乐信息展示控件的触发操作,显示目标音乐的音乐信息展示页面,该音乐信息展示页面包括目标音乐中至少一个音乐元素对应的音轨、以及音轨对应的节拍线,该节拍线用于指示目标音乐的节拍,基于目标音乐的播放进度,在音乐信息展示页面对音轨和跟随音轨运动的节拍线进行滚动展示。
如图2所示,该音乐信息展示方法的具体流程如下:
101、显示当前播放的目标音乐的音乐播放页面。
其中,音乐播放页面为播放当前目标音乐的页面,音乐播放页面包括针对目标音乐的音乐信息展示控件。该音乐信息展示控件用于触发展示目标音乐的音乐信息,所谓音乐信息可以为目标音乐中的音乐元素。音乐元素可以为目标音乐中的声音旋律,音乐元素组成了目标音乐的内容,音乐元素的类型可以有多种,比如,可以包括人声音高、伴奏和乐器等多种声音旋律,乐器旋律有可以包括鼓点、贝斯、吉他或其他乐器的旋律。音乐播放页面还可以包括在播放目标音乐时,目标音乐的基础旋律、播放时间和歌词等信息。
其中,显示当前播放的目标音乐的音乐播放页面的方式可以有多种,具体可以如下:
例如,可以显示音乐待播放页面,该音乐待播放页面包括待播放音乐列表,响应于针对待播放音乐列表的选择操作,播放选择操作对应的目标音乐,并显示当前播放的目标音乐的音乐播放页面。
其中,音乐待播放页面可以为音乐库中的待播放音乐的展示页面,音乐待播放页面可以包括待播放音乐列表,还可以包括音乐分类列表和搜索控件,具体可以如图3所示,待播放音乐列表可以为当前音乐库中的热门音乐列表。显示音乐待播放页面的方式可以有多种,比如,显示用户操作页面,用户操作页面包括创作控件,用户可以在用户操作页面触发创作控件,响应于针对创作控件的触发操作,显示音乐库对应的音乐待播放页面。
可选的,当检测到用户在音乐分类列表上的选择操作时,还可以响应于针对音乐分类列表的选择操作,将待播放音乐列表替换为选择操作对应的目标音乐分类的待播放音乐列表。
在显示音乐待播放页面之后,便可以响应于针对待播放音乐列表的选择操作,播放选择操作对应的目标音乐,并显示当前播放的目标音乐的音乐播放页面。比如,获取选择操作对应的目标音乐的音频文件,播放音频文件,并显示当前播放的目标音乐的音乐播放页面,音乐播放页面具体可以如图4所示。
可选的,音乐待播放页面还可以包括上传控件,该上传控件用于将终端的本地内容进行上传,并播放终端的本地内容中的目标音乐。因此,在显示音乐待播放页面之后,音乐信息展示方法还可以包括:
响应于针对上传控件的触发操作,显示本地待上传内容页面,该本地待上传内容页面包括至少一个待上传内容;响应于针对待上传内容的选择操作,播放选择操作对应的待上传内容的目标音乐,并显示当前播放的目标音乐的音乐播放页面。
其中,本地待上传内容页面用于展示终端本地的待上传内容,待上传内容的内容形式可以有多种,比如可以为音频、视频等包含音频或音乐的内容。以待上传内容为视频为例,通过响应于音乐待播放页面的上传控件,显示本地待上传内容页面可以如图5所示。显示本地待上传内容页面的方式可以有多种,比如,响应于针对上传控件的触发操作,在得到同意拉起的授权时,拉起终端的本地相册或者本地内容数据库,基于本地相册或本地内容数据库,生成本地待上传内容页面,并显示本地待上传内容页面。
在显示本地待上传内容页面之后,便可以响应于针对待上传内容的选择操作,播放选择操作对应的待上传内容的目标音乐,并显示当前播放的目标音乐的音乐播放页面,比如,响应于针对待上传内容的选择操作,获取选择操作对应的待上传内容的目标音乐的音频文件,播放该音频文件,并显示目标音乐的音乐播放页面,音乐播放页面具体可以如图6所示。
其中,获取选择操作对应的待上传内容的目标音乐的音频文件的方式可以有多种。比如,在待上传内容中筛选出选择操作对应的目标待上传内容,当目标待上传内容为音频时,将目标待上传内容作为目标音乐的音频文件,当目标待上传内容为视频或者其他类型的内容时,便可以在目标待上传内容中提取出音频文件,并将该音频文件作为目标音乐的音频文件。
其中,在目标待上传内容中提取出音频文件的方式可以有多种。比如,可以在本地对目标待上传内容进行音频文件提取,得到音频文件,或者,还可以将目标待上传内容上传至服务器进行提取文件提取,并接收服务器返回的音频文件,并将该音频文件作为目标音乐的音频文件。
102、响应于针对音乐信息展示控件的触发操作,显示目标音乐的音乐信息展示页面。
其中,音乐信息页面包括目标音乐中至少一个音乐元素对应的音轨、以及音轨对应的节拍线,还可以包括指示目标音乐的音乐元素的音乐元素标识,所谓音轨可以为展示目标音乐中音乐元素的可视化轨道,节拍线用于指示目标音乐的节拍,以目标音乐的音乐元素为人声、鼓点、贝斯和伴奏为例,则音乐信息展示页面可以如图7所示,各个音轨具体可以如下:
(1)人声音轨:利用声音分轨算法分离出的人声音轨文件作为输入,通过算法将人声音轨文件进行音高分离(氛围120个pitch),将人声音高进行归一化,在界面展示为24层音高的音阶图,实现当前歌曲中随着人声音高/音低的音调变化进行音阶绘制的效果;
(2)鼓点音轨:利用声音分轨算法分离出的鼓点音轨文件作为输入,通过算法将鼓点音轨文件进行鼓点识别,将音乐基础节奏中的鼓点分为重鼓和轻鼓两类。其中重鼓使用一种标识(例如蓝色大圆绘制),轻鼓使用另一种标识(绿色小圆)绘制。根据音乐中鼓点出现的时间点将鼓点圆形图案绘制在鼓点轨道中。当音乐播放至当前鼓点时间节点时,此鼓点模拟鼓点击打动效进行放大扩散效果展示,能够让用户更清晰的了解到当前鼓点的节奏;
(3)伴奏音轨:利用声音分轨算法分离出的伴奏音轨文件作为输入,通过波形图绘制算法将伴奏旋律的音高进行绘制,方便用户可视化的理解伴奏旋律的起伏;
(4)贝斯音轨:利用声音分轨算法分离出的贝斯音轨文件作为输入,通过声音识别算法将贝斯声音的有无进行绘制。由于贝斯本身非常低频,对于用户而言很难听清,因此将贝斯声音轨道绘制出来能够更加方便用户理解音乐的全部构成。
可选的,音乐信息展示页面还可以包括歌词显示区域,该歌词显示区域用于展示目标音乐当前播放的歌词信息等。
其中,响应于针对音乐信息展示控件的触发操作,显示目标音乐的音乐信息展示页面的方式可以有多种,具体可以如下:
例如,响应于针对音乐信息展示控件的触发操作,可以获取目标音乐中每一音乐元素的音轨数据;基于音轨数据,在预设音乐信息展示页面绘制音乐元素对应的音轨;根据目标音乐的当前播放时刻,在音轨绘制节拍线,得到目标音乐的音乐信息展示页面,并显示音乐信息展示页面。
其中,音轨数据可以理解为音乐中一种音乐元素在轨道中所对应的数据,以音乐元素为鼓点为例,则音轨数据就可以理解为这首音乐中所有的鼓点信息。获取目标音乐中每一音乐元素的音轨数据的方式可以有多种,比如,可以获取历史音轨数据,并在历史音轨数据中查询目标音乐对应的目标历史音轨数据,当不存在目标历史音轨数据时,在目标音乐中分割出每一音乐元素对应的音轨数据,当存在目标历史音轨数据时,在目标历史音轨数据中筛选出每一音乐元素的音轨数据。
其中,历史音轨数据可以理解为在当前时刻之前对音乐进行音轨分割之后得到音轨数据,当历史音轨数据中不存在目标历史音轨数据时,就可以说明目标音乐在当前时刻之前并未进行分割,此时,就需要对该目标音乐进行音轨分割。在目标音乐中分割出每一音乐元素对应的音轨数据的方式可以有多种,比如,可以在终端本地对目标音乐进行分割,从而得到每一音乐元素对应的音轨数据,或者,还可以通过服务器对目标音乐进行分割,从而得到每一音乐元素对应的音轨数据。
其中,在对目标音乐分割之前,就必须要了解目标音乐的内容组成,由于声源的振动通常产生的并不是单一频率的声波,而是由基音和不同频率的泛音组成的复合声音,图8为不同乐器的波形的示意图,图9为声音的波形示意图,由此可以发现声音的最终波形是由不同波形组合而成。也就是当前播放的目标音乐也可以理解为是由多个不同波形组合而成,对目标音乐的分割,也就意味着将这些不同波形分割出来,以音轨的形式进行展示。在终端本地对目标音乐进行分割的方式可以有多种,比如,可以对目标音乐进行频域转换,得到目标音乐的频域信息,在目标音乐中识别出至少一种音乐元素,在频域信息中分割出音乐元素对应的音轨数据。
其中,在频域信息中分割出音乐元素对应的音轨数据的方式可以有多种,比如,可以采用训练后的音轨分割网络将频域的矩阵进行分离,分割成多个音轨矩阵,并将每一音轨矩阵作为每一音乐元素的音轨数据。
其中,音轨分割网络的网络结构可以参考主流的图像分割网络,在对音轨分割网络进行训练的过程中,可以将分割结果与原先对应的单轨数据进行对比,从而得到分割损失信息。
其中,在服务器中对目标音乐进行音轨分割的方式可以有多种。比如,当目标音乐为上传的音频文件时,就需要在待上传内容中提取出音频文件,并将音频文件发送至服务器,服务器采用训练后的音轨分割网络对音频文件进行分割;当目标音乐为用户在待播放音乐列表中选择的音乐时,就无需上传该目标音乐的音频文件,服务器可以直接将目标音乐的音频文件进行音轨分割,从而得到每一音乐元素对应的音轨数据。
其中,将目标音乐的音频文件上传至服务器的过程可以包括在预设权限信息中筛选出客户端的目标权限信息,并将目标音乐的音频文件和目标权限信息发送至服务器,以便服务器基于所述目标权限信息对客户端进行校验;接收所述服务器在客户端检验通过后返回目标音乐的音频文件的文件标识和存储地址;基于文件标识和存储地址,播放目标音乐。以待上传内容为视频为例,将目标音乐的音频文件上传至服务器的流程可以如图10所示,用户进入本地待上传内容页面,选择视频确认导入;音乐信息展示装置提取目标音乐的音频文件,并获取客户端的权限包,通过客户端将目标音乐的音频文件和权限包发送至服务器的上传中台,上传中台通过业务侧上传模块对权限包进行解包,得到客户端的权限信息,通过业务侧上传模块将权限信息发送至服务器的登录中台,登录中台基于权限信息对客户端的权限进行校验,登录中台向上传中台返回校验结果,如果校验结果为成功时,上传中台则通过业务侧上传模块生成目标音乐的文件标识,然后,向服务器的云数据库发送目标音乐的音频文件和文件标识,云数据库在将目标音乐的音频文件存储之后,便可以返回目标音乐的存储地址(CDN)至上传中台,上传中台就可以返回目标音乐的文件标识和存储地址至客户端,当客户端接收到目标音乐的文本标识和存储地址时,终端播放目标音乐。
其中,将目标音乐的音频文件上传至服务器之后,便可以通过服务器对目标音乐进行可视化处理,将目标音乐解析成不同音轨的离散数据,从而得到目标音乐的音轨数据,比如,响应于针对音乐信息展示控件的触发操作,创建目标音乐的可视化任务,并将可视化任务的任务参数发送至服务器,以便服务器查询所述目标音乐的历史音轨数据;当服务器中不存在历史音轨数据时,接收服务器返回的对目标音乐进行音轨分割后的音轨数据;基于音轨数据,在预设音乐信息展示页面绘制音轨。具体可以如图11所示,在将目标音乐解析成不同音轨的音轨数据时,终端响应于针对音乐信息展示控件的触发操作,创建可视化任务,服务器中的逻辑服务器对可视化任务进行参数校验,查询是否存在目标音乐的历史音轨数据,当不存在历史音轨数据时,逻辑服务器创建可视化记录,向音频服务器发送目标音乐的文件标识,音频服务器基于文件标识创建音轨分割任务,向逻辑服务器返回音轨分割任务的任务标识,逻辑服务器将任务标识存储在缓存中。音频服务器在创建音轨分割任务时,还可以创建音轨分割任务的每一步骤对应的步骤子流水,音频服务器在对音轨分割完成后,向逻辑服务器发送目标音乐的音轨数据和步骤子流水,逻辑服务器将目标音乐的音轨数据发送至终端,终端根据音轨数据,绘制目标音乐的各音乐元素对应的音轨,逻辑服务器还可以将步骤子流水发送虫洞,流水服务器在运行流水任务时,向虫洞发送流水获取请求,虫洞就可以返回步骤子流水至流水服务器,最后将步骤子流水存储至流水数据库。流水服务器和流水数据库是用来保证音轨数据的安全,一旦音轨数据出现异常或者丢失时,还可以通过流水数据库来恢复该音轨数据。服务器在对目标音乐进行解析的过程中,主要通过TEG音频服务进行解析处理,这里的解析主要可以为音轨分割,TEG音频服务对目标音乐的音乐文件进行音轨分割的过程的可以如图12所示,基于目标音乐,生成音轨分割进度轮询请求,将音轨分割进度轮询请求发送至服务器;接收服务器返回的针对目标音乐的音轨分割进度;当音轨分割进度指示目标音乐的音轨分割完成时,获取目标音乐的音轨数据,并基于音轨数据,在预设音乐信息展示页面绘制目标音乐的各音乐元素的音轨,得到音乐信息展示页面,并显示。服务器对音轨分离需要一定的时间,根据音乐的不同,时间有所不同,音乐信息展示装置或者音乐信息展示装置中的客户端可以通过轮询接口,向逻辑服务器发送查询请求,以便查询目标音乐的音轨分割进度,逻辑服务器在音轨数据库中查询目标音乐的可视化记录,当目标音乐的可视化记录指示目标音乐的音轨分割完成时,将分割出的音轨数据进行组包,并返回进度和组包后的音轨数据,终端下载该音轨数据,并基于该音轨数据绘制音轨,以显示音乐信息展示页面。在音频服务器对目标音乐的音频文件进行分割的过程中,会将分割出的音轨数据上传至音轨数据进行存储,另外,在对音频文件进行分割处时,还可以将处理结果回传至逻辑服务器,以便逻辑服务器更新可视化记录,从而进行下一个可视化任务,当目标音乐的可视化任务完成之后,便可以向虫洞发送目标音乐的可视化流水。
在获取目标音乐中至少一个音乐元素的音轨数据后,便可以基于音轨数据,在预设音乐信息展示页面绘制音乐元素对应的音轨,绘制音轨的方式可以有多种,比如,在音轨数据中提取出音轨中每一音轨元素的音频数据,得到音频数据集合,对音频数据集合中音频数据进行过滤,得到过滤后音频数据集合,基于过滤后音频数据集合,在预设音乐信息展示页面绘制音轨。
其中,音轨元素可以理解为组成音轨数据的每一个元素。比如,以鼓点对应的音轨数据为例,则鼓点音轨数据中的音乐元素就可以为鼓点。音乐元素还可以包括多种类型,以音乐元素为鼓点为例,则该音乐元素还可以分为轻鼓和重鼓,等等。对音频数据集合中的音频数据进行过滤主要是为了过滤出异常数据,对音频数据进行过滤的方式可以有多种,比如,可以对音频数据集合中的音频数据进行排序,并基于排序信息,计算音频数据之间的时间间隔,在音频数据集合中删除时间间隔未超过预设时间间隔阈值的音频数据,得到过滤后音频数据集合。
其中,预设时间间隔阈值可以为0或者其他阈值,当预设时间间隔阈值为0时,就可以在音频数据集合中删除时间间隔为0的音频数据。
在对音频数据进行过滤之后,便可以基于过滤后音频数据集合,在预设音乐信息展示页面绘制音轨,绘制音轨的方式可以有多种,比如,以鼓点音轨数据为例,由于鼓点数据较多,绘制鼓点时可以采用轻量级的CALayer(一种UI绘制工具)代替重量级的UIView(一种UI绘制工具),以提高渲染性能。
其中,需要说明的是,针对不同类型音轨可以采用相同的处理方式,也可以根据音轨类型,采用该音轨类型对应的处理方式绘制该音轨。还是以鼓点音轨数据为例,获取到的鼓点音轨数据为json数据,该json数据可以如下所示:
/>
在获取到鼓点音轨的json数据之后,将所有的轻鼓数据和重鼓数据进行合并,生成一个鼓点数据组,对鼓点数据组根据time字段进行升序排列,求出所有鼓点中最小的时间间隔,然后,删除时间间隔为0的鼓点,采用轻量级的CALayer在预设信息展示页面绘制鼓点音轨。
可选的,当存在目标历史音轨数据时,就说明目标音乐在当前时刻之前已经被分割为多个音轨数据,此时,就不需要重新对目标音乐进行音轨分割,可以直接在目标历史音轨数据中筛选出音乐元素对应的音轨数据,并基于音轨数据绘制音轨,绘制音轨的方式可以参见上文,在此就不再一一赘述。
在绘制出音轨之后,便可以根据目标音乐的当前播放时刻,在音轨绘制节拍线,得到目标音乐信息展示页面。绘制节拍线的方式可以有多种,比如,可以在音轨中筛选出鼓点音轨,并基于鼓点音轨,确定目标音乐的节拍信息。基于目标音乐的当前播放时刻和节拍信息,在音轨上识别出已播放节拍的节拍线位置,基于节拍线位置,在音轨绘制出已播放节拍的节拍线,得到目标音乐信息展示页面。
其中,节拍信息可以理解为指示目标音乐中节拍的信息;该节拍信息可以包括目标音乐中包含的节拍数量,节拍类型、节拍间距和每一节拍对应的节拍线位置等信息。基于鼓点音轨,确定目标音乐的节拍信息的方式可以有多种,比如,在鼓点音轨中识别出每一鼓点的鼓点类型和时间信息;基于时间信息,计算不同鼓点类型的鼓点之间的时间间隔,得到时间间隔集合,根据鼓点类型和时间间隔集合,确定目标音乐的节拍信息。
其中,鼓点类型用于指示鼓点音轨中鼓点的类型,鼓点的类型可以有多种,比如,可以包括轻鼓和重鼓。时间信息可以理解为鼓点音轨中鼓点的触发时间或者播放时间。根据鼓点类型和时间间隔集合,确定目标音乐的节拍信息的方式可以有多种,比如,在时间间隔集合中筛选出数量最多的时间间隔,得到目标音乐的节拍线的时间间距,对鼓点音轨中的鼓点进行排序,以得到鼓点音轨的目标鼓点;根据时间间距和目标鼓点的时间信息,确定目标音乐的每一节拍线的节拍类型和时间位置,并将节拍线的节拍类型和时间位置作为节拍信息。
其中,对鼓点音轨进行排序,以得到鼓点音轨的目标鼓点的方式可以有多种。比如,对鼓点音轨进行排序,基于排序信息,在鼓点音轨中筛选出时间信息最早的鼓点,也就是在鼓点音轨中第一声响的鼓点,得到候选鼓点;当候选鼓点为一个时,将该候选鼓点作为目标鼓点,当候选鼓点存在多个时,将候选鼓点的下一个鼓点作为目标鼓点。
在得到鼓点音轨的目标鼓点之后,便可以基于时间间距和目标鼓点的时间信息,确定目标音乐的每一节拍线的节拍类型和时间位置,从而得到目标音乐的节拍信息。确定节拍线的节拍类型和位置的方式可以有多种,比如,根据目标鼓点的鼓点类型,确定目标鼓点对应的节拍线的节拍类型;将目标鼓点的时间信息与时间间距进行融合,就可以得到目标音乐的每一节拍线的时间位置;然后,根据目标鼓点对应的节拍线的节拍类型,确定目标音乐的每一节拍线的节拍类型。
其中,将目标鼓点的时间信息和时间间距进行融合,得到每一节拍线的时间位置的方式可以有多种。比如,将目标鼓点的时间信息往前移动一倍的时间间距,就可以得到目标鼓点对应的节拍线的前一个节拍线的时间位置。依次类推,往前或往后移动,直至下一个节拍线的时间位置为负数或者超过目标音乐的总时长时为止,从而就可以得到目标音乐的每一节拍线的时间位置。譬如,以目标音乐的鼓点响起时间顺序如下:
重鼓(SlowRhythm):10740、13110、15490;
轻鼓(PuckingDrum):10740、11330、11920、12520、13110、13710…
根据目标音乐的鼓点响起时间顺序,可以确定节拍线的时间间接为11330-10740=590(ms)。10740ms为第一个鼓点对应的节拍线的时间位置,且该节拍线的节拍类型可以为重拍,11330ms为第二个鼓点(目标鼓点)对应的节拍线的位置,该节拍线的节拍类型可以为轻拍;向前推一个时间间距,10150ms为第一个鼓点对应的节拍线的前一个节拍线的时间位置,节拍类型为轻拍;再向前推一个时间间距,9560ms为轻拍的前一个节拍线的时间位置,节拍类型为重拍;依次类推,到0秒时不一定整除,也没有关系,0秒也不是必须要存在一条节拍线,主要的逻辑还是根据时间间距,确定目标音乐的每一节拍线的时间位置和节拍类型。
在确定出目标音乐的节拍信息之后,便可以基于目标音乐的当前播放时刻和节拍信息,在音轨上识别出已播放节拍的节拍线位置。识别出已播放节拍的节拍线位置的方式可以有多种,比如,可以将目标音乐的当前播放时刻与节拍线的时间位置进行对比,基于对比结果,在节拍线中筛选出已播放节拍的历史节拍线,获取音轨的时间轴信息;并基于时间轴信息和历史节拍线的时间位置,在音轨上识别出已播放节拍的节拍线位置。
其中,当前播放时刻可以理解为用户在音乐信息展示页面触发音乐信息展示控件的时间,或者,还可以为在音乐信息展示页面显示目标音乐的至少一个音乐元素对应的音轨时的时间。历史节拍线可以为在节拍线的时间位置在当前播放时刻之前的节拍线,在节拍线中筛选出已播放历史节拍的历史节拍线的方式可以有多种,比如,以当前播放时刻为2000ms为例,就可以筛选出时间位置在2000ms之前的节拍线,从而得到历史节拍线。
其中,时间轴信息可以用于指示音轨中每一音轨元素对应的时间信息,也可以理解为音轨中每一位置对应的时间信息。基于时间轴信息和历史节拍线的时间位置,在音轨上识别出已播放节拍的节拍线位置的方式可以有多种。比如,基于时间轴信息,在音轨上识别出已播放节拍的时间位置对应的目标位置,将该目标位置作为该已播放节拍的节拍线位置。
在识别出已播放节拍的节拍线位置之后,便可以在音轨上绘制已播放节拍的节拍线,绘制已播放节拍的节拍线的方式可以有多种。比如,可以在音轨的节拍线位置绘制节拍类型对应的节拍线。譬如,节拍类型为重拍时,就可以绘制粗线;节拍类型为轻拍时,绘制细线;或者,重拍对应长线,轻拍对应断线等等;或者,还可以,可以根据当前展示的音轨段,在历史节拍线中筛选出目标历史节拍线,在音轨的节拍线位置上绘制节拍类型对应的节拍线。
其中,已播放节拍并非一定存在,当前播放时刻之前不存在节拍线时,就可以确定不存在已播放历史节拍,此时,就不需要在音轨上绘制节拍线。
可选的,在基于鼓点音轨,确定目标音乐的节拍信息之后,还可以将音乐信息展示页面的鼓点音轨替换为节拍音轨,所谓节拍音轨就可以为指示目标音乐的节拍线的音轨。将鼓点音轨替换为节拍音轨的方式可以有多种,比如,将节拍信息转换为节拍音轨的目标音轨数据;基于目标音轨数据,在预设音乐信息展示页面绘制节拍音轨,在预设音乐信息展示页面将鼓点音轨替换为节拍音轨,得到目标音乐的音乐信息展示页面。
其中,将节拍信息转换为节拍音轨的目标音轨数据的方式可以有多种,比如,可以将节拍信息转换为音轨数据的数据格式,从而得到目标音轨数据,或者,在节拍信息中将节拍线进行合并,生成一个节拍线数据组,对节拍线数据组按照时间顺序进行排序,从而得到节拍音轨的目标音轨数据。
103、基于目标音乐的播放进度,在音乐信息展示页面对音轨和跟随音轨运动的节拍线进行滚动展示。
其中,播放进度用于指示目标音乐在播放过程中的进度信息,该播放进度随着目标音乐的播放在不断更新。
其中,基于目标音乐的播放进度,在音乐信息展示页面对音轨和跟随音轨运动的节拍线进行滚动展示的方式可以有多种,具体可以如下:
例如,基于目标音乐的播放进度,在音乐信息展示页面对音轨进行滚动展示,并在音轨上进行动效播放,根据节拍标识线和目标音乐的播放进度,在音轨上绘制节拍线,以便节拍线跟随音轨进行滚动展示,具体可以如下:
S1、基于目标音乐的播放进度,在音乐信息展示页面对音轨进行滚动展示,并在音轨上进行动效播放。
例如,可以根据音轨的时间轴信息,在音轨中识别出每一播放时刻对应的音轨段,对音轨段进行排序,并基于排序信息和目标音乐的播放进度,对音轨段进行滚动展示,并在音轨上进行动效播放。
其中,根据音轨的时间轴信息,在音轨中识别出每一播放时刻对应的音轨段的方式可以有多种。比如,在音乐信息展示页面识别出展示音轨的音轨区域,并根据音轨区域的区域信息,确定每一播放时刻对应的展示时间区间;根据音轨的时间轴信息,在音轨中筛选出各展示时间区间对应的音轨段作为该播放时刻对应的音轨段。
在识别出每一播放时刻对应的音轨段之后,便可以基于排序信息和目标音乐的播放进度,对音轨段进行滚动展示。滚动展示的方式可以有多种,比如,可以基于目标音乐的播放进度,通过播放时间轴的形式,对每一播放时刻对应的音轨段进行滚动展示。
其中,在音轨上进行动效播放的方式可以有多种,比如,可以在音轨中筛选出鼓点音轨,并根据节拍标识线,在鼓点音轨中识别出当前播放的目标鼓点,根据目标鼓点的鼓点类型,在鼓点音轨上对目标鼓点进行动效播放。
其中,节拍标识线用于指示目标音乐在播放过程中所处的节拍位置,也可以为目标音乐在播放时间轴中的当前播放时刻,在音乐信息展示页面中可以为当前时刻的中心白线。根据节拍标识线,在鼓点音轨中识别出当前播放的目标鼓点的方式可以有多种,比如,可以获取节拍标识线在鼓点音轨的位置信息和鼓点音轨中每一鼓点的位置区间,将位置信息和位置区间进行匹配,并在鼓点音轨中筛选出匹配成功的鼓点作为当前播放的目标鼓点。
其中,需要说明的是,由于鼓点音轨中的鼓点数据较多,可以出现两个鼓点在鼓点音轨中有重合区域,因此,筛选出目标鼓点的数量可以为一个或者多个。
在识别出目标鼓点之后,便可以根据目标鼓点的鼓点类型,在鼓点音轨上对目标鼓点进行动效播放。进行动效播放的方式可以有多种,比如,可以获取历史播放鼓点集合,并在历史播放鼓点集合中查询目标鼓点;当历史播放鼓点集合中不存在目标鼓点时,获取目标鼓点的鼓点类型,并根据鼓点类型,确定目标鼓点的动效类型;基于动效类型,在鼓点音轨上对目标鼓点进行动效播放,并将目标鼓点添加至历史播放鼓点集合。
其中,历史播放鼓点集合可以为目标音乐的鼓点音轨中在当前时刻之前已经播放过的鼓点组成的鼓点集合。当历史播放鼓点集合中不存在目标鼓点时,也就意味该目标鼓点在之前并未被播放时,就可以获取目标鼓点的鼓点类型,从而确定目标鼓点的动效类型。比如,当目标鼓点为轻鼓时,该目标鼓点的动效类型就可以为轻鼓动效类型,当目标鼓点为重鼓时,该目标鼓点的动效类型就可以为重鼓动效类型。
在确定出目标鼓点的动效类型之后,便可以基于该动效类型,在鼓点音轨上对目标鼓点进行动效播放,进行动效播放的方式可以有多种,比如,可以模拟鼓点击打动效进行放大扩散效果展示,从而能够让用户更清晰的了解当前鼓点的节奏,或者,可以对鼓点进行振动动效播放,轻鼓的振动幅度可以小于重鼓的振动浮动,或者,还可以在播放振动动效的同时触发音乐信息展示装置进行振动。
可选的,在历史播放鼓点集合中查询目标鼓点之后,当历史播放鼓点集合中存在目标鼓点时,也就意味该目标鼓点在当前时刻之前已被播放,此时,就可以获取节拍标识线在鼓点音轨的当前位置信息,当当前位置信息与目标鼓点的位置区间不匹配时,在历史播放鼓点集合中删除目标鼓点,当当前位置信息与目标鼓点的位置区间匹配时,继续播放目标音乐,此时,对目标鼓点无需进行动效播放。
其中,在对鼓点音轨进行动效播放时,具体的流程可以如图13所示,当检测到用户触发播放控件时,播放目标音乐,时间轴滚动,找到所有和当前时刻白线相交的目标鼓点,查询目标鼓点是否在已播放数组中,当目标鼓点不在已播放数组中时,播放鼓点动效,并将目标鼓点放入已播放数组,当目标鼓点在已播放数组中时,查询当前时刻是否已经过了目标鼓点的范围,当未超过目标鼓点的范围时,继续播放目标音乐,当已超过目标鼓点的范围时,从已播放数组中删除目标鼓点,然后,继续播放目标音乐。
S2、根据节拍标识线和目标音乐的播放进度,在音轨上绘制节拍线,以便节拍线跟随音轨进行滚动展示。
例如,可以根据目标音乐的播放进度,在音轨段中筛选出当前展示的当前音轨段,基于节拍标识线,在当前音轨上绘制节拍线,并滚动展示节拍线。
其中,在目标音乐的播放过程中绘制节拍线时,就需要涉及到播放器的回调,因为,根据播放器回调的播放进度不一定能触发相应的鼓点,也就无法触发在音轨上绘制节拍线,比如,以播放器回调日志为图14所示,根据上面的数据和前面鼓点的数据,就可以发现鼓点的时间戳不在播放器回调时间戳上面,这就会导致鼓点动效/绘制节拍线等无法直接根据播放器回调来执行。在音轨的滚动展示过程中,需要明白一点,视频是怎么动起来的。简单来说,人眼一般只能分辨24帧,也就是在1秒内切换连环画超过24帧就是动画/视频了。视频/电影都是基于此原理。目前,播放器的帧率是30,1秒33帧,所以播放器的回调在毫秒维度是非常稀疏的,这就导致鼓点不一定能卡到回调的时间上。播放器需要确保按帧率回调,因为只要出现掉帧后续数据就有偏移。在对播放器回调的数据进行分析可以发现,在计算出的两个回调间隔之间并不是标准的,回调间隔的数据可以如图15所示,大部分是是33(34也可以认为是33),但是有一个11(67=33+34),这就导致后面的数据偏移了。关键是,播放器回调是不可能稳定的,也就是说不可能按每秒30帧标准回调(卡顿,等等一堆的因素),因此,在音轨绘制节拍线时就需要使得节拍线与鼓点音轨进行同步。在同步规则下,在某一个播放器回调中,绘制节拍线的方式可以有多种,比如,基于节拍标识线和目标音乐的播放进度,确定鼓点音轨的当前时间轴的偏移距离;计算偏移距离与节拍线的时间间距的比值,以得到当前音轨段的待播放节拍的节拍线信息;基于节拍线信息,在当前音轨段上绘制待播放节拍的节拍线。
其中,时间轴的偏移距离就可以为节拍标识线与鼓点音轨的时间起点之间的偏移位移,也可以理解为当前播放进度对应的播放时刻与播放起始点之间的距离。基于节拍标识线和目标音乐的播放进度,确定鼓点音轨的当前时间轴的偏移距离的方式可以有多种,比如,可以根据目标音乐的播放进度,在鼓点分桶中筛选出当前帧对应的目标鼓点分桶;在目标鼓点分桶中识别出节拍标识线最近的目标鼓点,并计算目标鼓点与节拍标识线的当前距离;基于当前距离和目标鼓点的位置信息,确定鼓点音轨的当前时间轴的偏移距离。
其中,鼓点分桶可以理解为存储鼓点音轨中鼓点的数据分桶,在鼓点分桶中筛选出当前帧对应的目标鼓点分桶之前,还可以将鼓点音轨中的鼓点存储至预设分桶。比如,可以在鼓点音轨中提取出至少一个鼓点,并识别出鼓点的时间信息,基于时间信息,对鼓点进行分类,得到每一时间区间对应的目标鼓点,在预设分桶中筛选出每一时间区间对应的目标分桶,并将每一时间区间对应的目标鼓点添加至该时间区间对应的目标分桶,得到各时间区间对应的鼓点分桶。
其中,基于时间信息,对鼓点进行分类的方式可以有多种,比如,根据鼓点的时间戳,将时间戳在同一秒的鼓点都分为一类。在预设分桶中就可以筛选出每一秒对应的目标分桶,然后,将同一类的鼓点都存储至目标分桶,从而得到鼓点分桶。
其中,需要说明的是,对鼓点进行分桶的方式可以如图16所示,以一首3分钟左右的音乐为例,同类的拍子最多600个,分到每一秒,不到4个。通过分桶的目的在于提高查找每帧中邻近鼓点的效率,从而计算出偏移距离。
在确定出鼓点音轨的当前时间轴的偏移距离之后,便可以计算偏移距离与节拍线的时间间距的比值,从而得到当前音轨段的待播放节拍的节拍线信息。待播放节拍可以理解为在当前音轨段中还未开始播放的节拍,当播放该待播放节拍时,就需要在当前音轨中绘制待播放节拍的节拍线,节拍线信息可以理解为当前播放进度对应的节拍线的位置信息,该位置信息可以为待播放节拍对应的节拍线的序号,具体可以如图17所示,比如,以偏移距离为100,节拍线的时间间距为30为例,则节拍线信息index=3.33,也就意味着此时播放到了序号为3和4的节拍线之间。
在计算出待播放节拍的节拍线信息之后,便可以基于节拍线信息,在当前音轨段上绘制待播放节拍的节拍线。绘制节拍线的方式可以有多种,比如,对节拍线信息进行取整处理,得到当前取整后节拍线信息,基于目标音乐的播放进度,获取历史取整后节拍线信息,当当前取整后节拍线信息与历史取整后节拍线信息不同时,基于当前取整后节拍线信息,在当前音轨段上绘制待播放节拍的节拍线。
其中,对节拍线信息进行取整处理的方式可以有多种,比如,以节拍线信息index=3.33为例,则当前取整后节拍线信息nextIndex=4,也就是说下一次要绘制的节拍线的序号为4号。
其中,历史取整后节拍线信息可以为在当前播放器回调的下一次播放回调时进行取整后得到的取整后节拍线信息。获取历史取整后节拍信息的方式可以有多种,比如,基于目标音乐的播放进度,确定当前播放器回调信息;在播放器回调日志中筛选出当前播放器回调信息之前的历史播放器回调信息;在预设取整后节拍信息集合中筛选出历史播放器回调信息对应的取整后节拍线信息,从而得到历史取整后节拍线信息。
当当前取整后节拍线信息与历史取整后节拍线信息不同时,就可以基于当前取整后节拍线信息,在当前音轨段上绘制待播放节拍的节拍线。绘制待播放节拍的节拍线的方式可以有多种,比如,可以基于当前取整后节拍线信息,在目标音乐的节拍线中筛选出待播放节拍的目标节拍线;计算当前取整后节拍线信息和待播放节拍的节拍线信息的信息差值,并基于信息差值,确定目标节拍线的延时绘制时间;基于延时绘制时间,在当前音轨段上绘制待播放节拍的目标节拍线。
其中,计算当前取整后节拍线信息和节拍线信息的信息差值的方式可以有多种,比如,可以直接将当前取整后节拍线信息nextIndex-节拍线信息index,将这个差值offsetTime作为信息差值。
在计算出该信息差值之后,便可以基于信息差值,确定目标节拍线的延时绘制时间。确定延时绘制时间的方式可以有多种,比如,可以直接将这个信息差值作为从现在开始到下个待播放节拍的响应中间的时间间隔,并将该时间间隔作为目标节拍线的延时绘制时间,或者,还可以在预设时间集合中筛选出信息差值对应的时间间隔,从而得到目标节拍线的延时绘制时间。
在确定出延时绘制时间之后,便可以基于该延时绘制时间,在当前音轨段绘制目标节拍线,绘制目标节拍线的方式可以有多种,比如,基于该延时绘制时间,设置延时器,延迟offsetTime后,在当前音轨段绘制目标节拍线。
可选的,当当前取整后节拍线信息与历史取整后节拍线信息相同时,就不需要执行任何逻辑,也就不需要进行延时绘制。
可选的,音乐信息展示页面还可以包括节拍展示区域,在显示目标音乐的音乐信息展示页面之后,还可以在节拍展示区域展示节拍线对应的节拍展示信息,比如,在节拍展示区域展示每一节拍类型对应的节拍展示信息,当检测到音轨或音轨段上绘制节拍线,或,节拍标识线与节拍线重合时,在节拍展示区域对节拍线对应的节拍展示信息进行动态展示。
其中,节拍展示区域为节拍器用于展示节拍信息的区域,节拍展示区域可以如图18所示。在节拍展示区域展示每一节拍类型对应的节拍展示信息的方式可以有多种。比如,节拍展示区域内展示的节拍展示信息就可以为重拍对应的左指示灯和轻拍对应的右指示灯。
其中,节拍展示区域还可以包括节拍播放控件,该节拍播放控件用于控制是否播放节拍线对应的节拍声音。在节拍展示区域对节拍线对应的节拍展示信息进行动态展示的方式可以有多种。比如,在节拍展示信息中筛选出目标节拍展示信息,并对目标节拍展示信息进行动效播放,响应于针对节拍播放控件的触发操作,播放节拍类型对应的节拍声音,根据节拍线的位置信息,确定节拍线对应的节拍标识,并在节拍展示区域展示节拍标识。
其中,在节拍展示区域对节拍线对应的目标节拍展示信息进行动效播放的方式可以有多种,,当节拍线的节拍类型为重拍时,就可以使得左指示灯闪烁,当节拍线的节拍类型为轻拍时,就可以得到右指示灯闪烁。当用户在任意时候对节拍播放控件进行触发时,就可以设置播放节拍声音。当检测到绘制节拍线时,当节拍线的节拍类型为重拍时,此时,除了左指示灯闪烁,还可以播放重拍对应的标准声1,当节拍线的节拍类型为轻拍时,此时,除了右指示灯闪烁,还可以播放轻拍对应的标准声2。
其中,需要说明的是,绘制节拍线、指示灯闪烁和播放节拍声音可以是联动的。在节拍器与鼓点音轨的同步算法中,播放目标音乐;根据目标音乐的播放进度,确定出鼓点音轨的当前时间轴的偏移距离;将偏移距离除以节拍线的时间间距,从而得到节拍线信息;对节拍线信息进行取整,然后,获取历史取整后节拍线信息;当历史取整后节拍线信息与当前取整后节拍线信息不同时,计算当前取整后节拍线信息与节拍线信息之间的信息差值,并基于信息差值,确定目标节拍线的延时绘制时间;确定当前取整后节拍线信息对应的目标节拍线的节拍类型,在等到延时绘制时间之后,当节拍类型为重拍时,绘制粗线,左指示灯闪烁,播放重拍的节拍声音,当节拍类型为轻拍时,绘制细线,右指示灯闪烁,播放轻拍的节拍声音,具体可以如图19所示。
可选的,节拍线也可以在绘制音轨的时候同时绘制,而并非根据目标音乐的播放进度实时绘制。当节拍线跟音轨为同一时间绘制时,此时,就可以检测到节拍线标识与节拍线重合时,在节拍展示区域对节拍线对应的节拍展示信息进行动态展示。
可选的,还可以在节拍展示区域展示节拍线对应的节拍标识,所谓节拍标识用于指示节拍线在节拍区间内当前所对应的节拍。节拍区间可以为4拍或者8拍等,根据节拍线的位置信息,确定节拍线对应的节拍标识的方式,比如,根据节拍线的位置信息,确定节拍线的节拍序号,将节拍序号和节拍区间进行融合,从而就可以得到节拍线对应的节拍标识,从而就可以在节拍展示区域展示节拍标识,展示的节拍标识可以如图20所示。
可选的,音乐信息展示页面还可以包括每一音轨对应的调整控件,调整控件可以为音轨对应的音乐元素标识,可以通过该调整控件对音轨和目标音乐进行调整。调整的方式可以有多种,比如,可以响应于针对调整控件的触发操作,获取调整控件对应的目标音轨的音频文件的当前播放音量,根据当前播放音量,在音乐信息展示页面对目标音轨进行隐藏处理,基于目标音轨的音频文件,播放调整后音乐,该调整后音乐为在目标音乐中对目标音轨的音频文件进行静音播放后的音乐。
其中,对于目标音乐中分割出的各个音轨,每一个音轨的音轨数据都相当于一个单独的m4a格式的音频文件,获取调整控件对应的目标音轨的音频文件的当前播放音量的方式可以有多种,比如,可以直接获取目标音乐的播放信息,在播放信息中提取出播放音量信息,在播放音量信息中识别出调整控件对应的目标音轨的音频文件的当前播放音量。
在获取音频文件的当前播放音量之后,便可以基于当前播放音量,在音乐信息展示页面对目标音轨进行隐藏处理,隐藏处理的方式可以有多种,比如,当当前播放音量超过静音音量时,在音乐信息展示页面识别出调整控件对应的目标音轨,对目标音轨添加蒙层,以便在音乐信息展示页面隐藏目标音轨。
其中,静音音量为静音状态下的播放音量,也可以理解为播放音量为0。当前播放音量超过静音音量时,也就意味着目标音轨的音频文件的当前播放状态为非静音播放状态。在非静音播放状态下,对目标音轨添加蒙层的方式可以有多种,比如,在音乐信息展示页面中识别出目标音轨对应的音轨区域,在该音轨区域添加蒙层覆盖,从而使得目标音轨在音乐信息展示页面不显示可视化效果,以目标音轨为鼓点音轨为例,添加蒙层后的音乐信息展示页面可以如图21所示。
其中,基于目标音轨的音频文件,播放调整后音乐的方式可以有多种,比如,可以在目标音乐中将目标音轨的音频文件的当前播放音量调整为静音,得到调整后音乐,播放调整后音乐,并基于音频文件的当前播放音量对音频文件的历史播放音量进行更新。
其中,将目标音轨的音频文件的当前播放音量调整为静音的方式可以有多种,比如,目标音乐可以看作是多个音轨的音频文件进行融合得到的融合后音频文件,就可以在融合后音频文件中对目标音轨的音频文件进行静音处理,从而就可以得到调整后音乐。
其中,历史播放音量可以理解为目标音轨的音频文件在当前时刻之前保存的播放音量,基于音频文件的当前播放音量对音频文件的历史播放音量进行更新的方式可以有多种,比如,将目标音轨的音频文件的历史播放音量替换为当前播放音量,当再次触发调整控件时,就可以将目标音轨的音频文件从静音播放状态调整为当前播放音量进行播放。
可选的,在播放调整后音乐之后,用户还可以触发调整控件,用于对调整后音乐进行恢复或者还原,比如,响应于针对调整控件的触发操作,去除目标音轨上的蒙层,以在音乐信息展示页面显示目标音轨,基于更新后历史播放音量,将目标音轨对应的音频文件的播放音量调整为当前播放音量,以播放目标音乐。
其中,需要说明的是,通过音轨的调整对目标音轨和目标音乐进行调整可以理解为对目标音乐进行分轨视听,在进入音乐信息展示页面之后,还可以通过提示信息提示用户可以进行单轨静音试听,具体可以如图22所示,用户单击每个音轨前的调整控件(icon),该调整控件也可以为音乐元素标识,可以实现对每个音轨实现单轨静音,当用户对其中的某一条音轨进行静音后,该音轨会隐藏可视化效果展示,其他剩余音轨仍正常展示,并播放剩余轨道混合的合成声音(调整后音乐),基于此功能,用户还可以同时静音多条音轨,仅保留单一声音轨道(音轨),以达到更好的了解一首音乐中单个音轨的声音的效果,从而可以帮助用户更好的进行分层理解音乐。
其中,本方案中对目标音乐进行音乐信息展示的方式主要可以理解为对目标音乐进行音乐可视化,将该目标音乐中的音乐元素和节拍信息进行可视化展示,在对目标音乐进行可视化的过程中,可以有两种可视化路径,一种是用户对产品内已有的音乐进行可视化,另一种是用户有其他音乐进行可视化时可以通过自主上传的路径进行可视化,具体可以如图23所示。
由以上可知,本申请实施例在显示当前播放的目标音乐的音乐播放页面后,响应于针对音乐播放页面中音乐信息展示控件的触发操作,显示目标音乐的音乐信息展示页面,该音乐信息展示页面包括目标音乐中至少一个音乐元素对应的音轨、以及音轨对应的节拍线,然后,基于目标音乐的播放进度,在音乐信息展示页面对音轨和跟随音轨运动的节拍线进行滚动展示;由于该方案可以在播放目标音乐的同时显示目标音乐中至少一个音乐元素对应的音轨和该音轨对应的节拍线,而且,还可以根据目标音乐的播放进度,对音轨和节拍线进行滚动展示,从而可以准确的展示目标音乐所包含的内容,因此,可以提升音乐信息展示的准确性。
根据上面实施例所描述的方法,以下将举例作进一步详细说明。
在本实施例中,将以该音乐信息展示装置具体集成在电子设备,电子设备为终端,音乐信息展示页面包括人声音轨、鼓点音轨、伴奏音轨和贝斯音轨,节拍线信息为节拍线序号为例进行说明。
如图24所示,一种音乐信息展示方法,具体流程如下:
201、终端显示当前播放的目标音乐的音乐播放页面。
例如,终端显示用户操作页面,用户操作页面包括创作控件,用户可以在用户操作页面触发创作控件,响应于针对创作控件的触发操作,显示音乐库对应的音乐待播放页面,该音乐待播放页面包括待播放音乐列表,用户在待播放音乐列表中进行选择操作,响应于针对待播放音乐列表的选择操作,获取选择操作对应的目标音乐的音频文件,播放音频文件,并显示当前播放的目标音乐的音乐播放页面。
可选的,音乐待播放页面还可以包括上传控件,用户在音乐待播放页面上触发上传控件,终端响应于针对上传控件的触发操作,在得到同意拉起的授权时,拉起终端的本地相册或者本地内容数据库,基于本地相册或本地内容数据库,生成本地待上传内容页面,并显示本地待上传内容页面,本地待上传内容页面包括至少一个待上传内容,响应于针对待上传内容的选择操作,在待上传内容中筛选出选择操作对应的目标待上传内容,当目标待上传内容为音频时,将目标待上传内容作为目标音乐的音频文件,当目标待上传内容为视频或者其他类型的内容时,便可以在目标待上传内容中提取出音频文件,并将该音频文件作为目标音乐的音频文件,播放该音频文件,并显示目标音乐的音乐播放页面。
202、终端响应于针对音乐信息展示控件的触发操作,显示目标音乐的音乐信息展示页面。
例如,终端可以获取历史音轨数据,并在历史音轨数据中查询目标音乐对应的目标历史音轨数据,当不存在目标历史音轨数据时,对目标音乐进行频域转换,得到目标音乐的频域信息,在目标音乐中识别出至少一种音乐元素,可以对目标音乐进行频域转换,得到目标音乐的频域信息,在目标音乐中识别出至少一种音乐元素,采用训练后的音轨分割网络将频域的矩阵进行分离,分割成多个音轨矩阵,并将每一音轨矩阵作为每一音乐元素的音轨数据,或者,当目标音乐为本地上传的音频文件时,将该音频文件发送至服务器,以便服务器采用音轨分割网络对上传的音频文件进行分割,当目标音乐为用户在待播放音乐列表上选择的目标音乐时,生成音乐分割请求,该音乐分割请求携带目标音乐的音乐标识,服务器在接收该音乐分割请求时,服务器采用音轨分割网络对目标音乐进行音轨分割,当服务器对目标音乐进行音轨分割完成之后,便可以返回目标音乐的每一音乐元素对应的音轨数据。当存在目标历史音轨数据时,在目标历史音轨数据中筛选出每一音乐元素的音轨数据。
终端在音轨数据中提取出音轨中每一音轨元素的音频数据,得到音频数据集合,对音频数据集合中的音频数据进行排序,并基于排序信息,计算音频数据之间的时间间隔,在音频数据集合中删除时间间隔为0的音频数据,得到过滤后音频数据集合。基于过滤后音频数据集合,采用轻量级的CALayer在预设音乐信息展示页面绘制音轨。
终端可以在音轨中筛选出鼓点音轨,在鼓点音轨中识别出每一鼓点的鼓点类型和时间信息,基于时间信息,计算不同鼓点类型的鼓点之间的时间间隔,得到时间间隔集合,在时间间隔集合中筛选出数量最多的时间间隔,得到目标音乐的节拍线的时间间距。对鼓点音轨进行排序,基于排序信息,在鼓点音轨中筛选出时间信息最早的鼓点,也就是在鼓点音轨中第一声响的鼓点,得到候选鼓点,当候选鼓点为一个时,将该候选鼓点作为目标鼓点,当候选鼓点存在多个时,将候选鼓点的下一个鼓点作为目标鼓点。将目标鼓点的时间信息往前移动一倍的时间间距,就可以得到目标鼓点对应的节拍线的前一个节拍线的时间位置,依次类推,往前或往后移动,直至下一个节拍线的时间位置为负数或者超过目标音乐的总时长时为止,从而就可以得到目标音乐的每一节拍线的时间位置。根据目标鼓点的鼓点类型,确定目标鼓点对应的节拍线的节拍类型。根据目标鼓点对应的节拍线的节拍类型,确定目标音乐的每一节拍线的节拍类型。将节拍线的节拍类型和时间位置作为节拍信息。将目标音乐的当前播放时刻与节拍线的时间位置进行对比,基于对比结果,在节拍线中筛选出已播放节拍的历史节拍线,获取音轨的时间轴信息,基于时间轴信息,在音轨上识别出已播放节拍的时间位置对应的目标位置,将该目标位置就可以作为该已播放节拍的节拍线位置。在音轨的节拍线位置绘制节拍类型对应的节拍线,譬如,节拍类型为重拍时,就可以绘制粗线,节拍类型为轻拍时,绘制细线,或者,重拍对应长线,轻拍对应断线等等,或者,还可以,可以根据当前展示的音轨段,在历史节拍线中筛选出目标历史节拍线,在音轨的节拍线位置上绘制节拍类型对应的节拍线,从而得到目标音乐的音乐信息展示页面。
其中,已播放节拍并非一定存在,当前播放时刻之前不存在节拍线时,就可以确定不存在已播放历史节拍,此时,就不需要在音轨上绘制节拍线,也就说在音乐信息展示页面可以不用直接显示节拍线。
可选的,终端在基于鼓点音轨,确定目标音乐的节拍信息之后,可以将节拍信息转换为音轨数据的数据格式,从而得到目标音轨数据,或者,在节拍信息中将节拍线进行合并,生成一个节拍线数据组,对节拍线数据组按照时间顺序进行排序,从而得到节拍音轨的目标音轨数据。,基于目标音轨数据,在预设音乐信息展示页面绘制节拍音轨,在预设音乐信息展示页面将鼓点音轨替换为节拍音轨,得到目标音乐的音乐信息展示页面。
203、终端基于目标音乐的播放进度,在音乐信息展示页面对音轨进行滚动展示,并在音轨上进行动效播放。
例如,终端在音乐信息展示页面识别出展示音轨的音轨区域,并根据音轨区域的区域信息,确定每一播放时刻对应的展示时间区间,根据音轨的时间轴信息,在音轨中筛选出展示时间区间对应的音轨段作为该播放时刻对应的音轨段。对音轨段进行排序,基于目标音乐的播放进度,通过播放时间轴的形式,对每一播放时刻对应的音轨段进行滚动展示。
终端在音轨中筛选出鼓点音轨,获取节拍标识线在鼓点音轨的位置信息和鼓点音轨中每一鼓点的位置区间,将位置信息和位置区间进行匹配,并在鼓点音轨中筛选出匹配成功的鼓点作为当前播放的目标鼓点。获取历史播放鼓点集合,并在历史播放鼓点集合中查询目标鼓点,当历史播放鼓点集合中不存在目标鼓点时,获取目标鼓点的鼓点类型,当目标鼓点为轻鼓时,该目标鼓点的动效类型就可以为轻鼓动效类型,当目标鼓点为重鼓时,该目标鼓点的动效类型就可以为重鼓动效类型。基于动效类型,在鼓点音轨模拟鼓点击打动效进行放大扩散效果展示,从而能够让用户更清晰的了解当前鼓点的节奏,或者,可以对鼓点进行振动动效播放,轻鼓的振动幅度可以小于重鼓的振动浮动,或者,还可以在播放振动动效的同时触发音乐信息展示装置进行振动。
终端当历史播放鼓点集合中存在目标鼓点时,也就意味该目标鼓点在当前时刻之前已被播放,此时,就可以获取节拍标识线在鼓点音轨的当前位置信息,当当前位置信息与目标鼓点的位置区间不匹配时,在历史播放鼓点集合中删除目标鼓点,当当前位置信息与目标鼓点的位置区间匹配时,继续播放目标音乐,此时,对目标鼓点无需进行动效播放。
204、终端根据节拍标识线和目标音乐的播放进度,在音轨上绘制节拍线,以便节拍线跟随音轨进行滚动展示。
例如,终端可以根据目标音乐的播放进度,在音轨段中筛选出当前展示的当前音轨段。根据目标音乐的播放进度,在鼓点分桶中筛选出当前帧对应的目标鼓点分桶,在目标鼓点分桶中识别出节拍标识线最近的目标鼓点,并计算目标鼓点与节拍标识线的当前距离,基于当前距离和目标鼓点的位置信息,确定鼓点音轨的当前时间轴的偏移距离。
可选的,在目标鼓点分桶中识别出节拍标识线最近的目标鼓点之前,终端可以在鼓点音轨中提取出至少一个鼓点,并识别出鼓点的时间信息,根据鼓点的时间戳,将时间戳在同一秒的鼓点都分为一类。在预设分桶中就可以筛选出每一秒对应的目标分桶,然后,将同一类的鼓点都存储至目标分桶,从而得到鼓点分桶。
终端计算偏移距离与节拍线的时间间距的比值,从而得到需要在当前音轨中绘制待播放节拍的节拍线的当前序号,对当前序号进行取整,得到当前取整后序号。基于目标音乐的播放进度,确定当前播放器回调信息,在播放器回调日志中筛选出当前播放器回调信息之前的历史播放器回调信息,在预设取整后序号集合筛选出历史播放器回调信息对应的取整后序号,从而得到历史取整后序号。当当前取整后序号和历史取整后序号不同时,基于当前取整后序号,在目标音乐的节拍线中筛选出待播放节拍的目标节拍线,计算当前取整后序号和当前需要的序号差值。将这个序号差值作为从现在开始到下个待播放节拍的响应中间的时间间隔,并将该时间间隔作为目标节拍线的延时绘制时间offsetTime,或者,还可以在预设时间集合中筛选出序号差值对应的时间间隔,从而得到目标节拍线的延时绘制时间offsetTime。基于该延时绘制时间,设置延时器,延迟offsetTime后,在当前音轨段绘制目标节拍线。
可选的,音乐信息展示页面还可以包括节拍展示区域,在显示目标音乐的音乐信息展示页面之后,终端在节拍展示区域展示重拍对应的左指示灯和轻拍对应的右指示灯,当检测到音轨或音轨段上绘制节拍线,或,节拍标识线与节拍线重合时,当节拍线的节拍类型为重拍时,就可以使得右指示灯闪烁,当节拍线的节拍类型为轻拍时,就可以得到右指示灯闪烁。当用户在任意时候对节拍播放控件进行触发时,就可以设置播放节拍声音,当检测到绘制节拍线时,当节拍线的节拍类型为重拍时,此时,除了左指示灯闪烁,还可以播放重拍对应的标准声1,当节拍线的节拍类型为轻拍时,此时,除了右指示灯闪烁,还可以播放轻拍对应的标准声2。根据节拍线的位置信息,确定节拍线的节拍序号,将节拍序号和节拍区间进行融合,从而就可以得到节拍线对应的节拍标识,从而就可以在节拍展示区域展示节拍标识,
205、终端响应于针对调整控件的触发操作,对目标音轨和目标音乐进行调整。
例如,终端响应于针对调整控件的触发操作,直接获取目标音乐的播放信息,在播放信息中提取出播放音量信息,在播放音量信息中识别出调整控件对应的目标音轨的音频文件的当前播放音量。当当前播放音量超过静音音量时,在音乐信息展示页面中识别出目标音轨对应的音轨区域,在该音轨区域添加蒙层覆盖,从而使得目标音轨在音乐信息展示页面不显示可视化效果。在目标音乐中将目标音轨的音频文件的当前播放音量调整为静音,得到调整后音乐,播放调整后音乐,并基于音频文件的当前播放音量对音频文件的历史播放音量进行更新。
可选的,在播放调整后音乐之后,终端响应于针对调整控件的触发操作,去除目标音轨上的蒙层,以在音乐信息展示页面显示目标音轨,基于更新后历史播放音量,将目标音轨对应的音频文件的播放音量调整为当前播放音量,以播放目标音乐。
由以上可知,本实施例终端在显示当前播放的目标音乐的音乐播放页面后,响应于针对音乐播放页面中音乐信息展示控件的触发操作,显示目标音乐的音乐信息展示页面,该音乐信息展示页面包括目标音乐中至少一个音乐元素对应的音轨、以及音轨对应的节拍线,然后,基于目标音乐的播放进度,在音乐信息展示页面对音轨和跟随音轨运动的节拍线进行滚动展示;由于该方案可以在播放目标音乐的同时显示目标音乐中至少一个音乐元素对应的音轨和该音轨对应的节拍线,而且,还可以根据目标音乐的播放进度,对音轨和节拍线进行滚动展示,从而可以准确的展示目标音乐所包含的内容,因此,可以提升音乐信息展示的准确性。
为了更好地实施以上方法,本申请实施例还提供一种音乐信息展示装置,该音乐信息展示装置可以集成在电子设备,比如服务器或终端等设备中,该终端可以包括平板电脑、笔记本电脑和/或个人计算机等。
例如,如图25所示,该音乐信息展示装置可以包括第一显示单元301、第二显示单元302和滚动展示单元303,如下:
(1)第一显示单元301;
第一显示单元301,用于显示当前播放的目标音乐的音乐播放页面,该音乐播放页面包括音乐信息展示控件。
例如,第一显示单元301,具体可以用于显示音乐待播放页面,该音乐待播放页面包括待播放音乐列表和上传控件,响应于针对待播放音乐列表的选择操作,播放选择操作对于的目标音乐,并显示当前播放的目标音乐的音乐播放页面,或者,响应于针对上传控件的触发操作,显示本地待上传内容页面,该本地待上传内容页面包括至少一个待上传内容,响应于针对待上传内容的选择操作,播放选择操作对于的待上传内容的目标音乐,并显示当前播放的目标音乐的音乐播放页面。
(2)第二显示单元302;
第二显示单元302,用于响应于针对音乐信息展示控件的触发操作,显示目标音乐的音乐信息展示页面,该音乐信息展示页面包括目标音乐中至少一个音乐元素对应的音轨、以及音轨对应的节拍线,该节拍线用于指示目标音乐的节拍。
例如,第二显示单元302,具体可以用于获取目标音乐中至少一个音乐元素的音轨数据,基于音轨数据,在预设音乐信息展示页面绘制音乐元素对应的音轨,根据目标音乐的当前播放时刻,在音轨绘制节拍线,得到目标音乐的音乐信息展示页面,并显示音乐信息展示页面。
(3)滚动展示单元303;
滚动展示单元303,用于基于目标音乐的播放进度,在音乐信息展示页面对音轨和跟随音轨运动的节拍线进行滚动展示。
例如,滚动展示单元303,具体可以用于基于目标音乐的播放进度,在音乐信息展示页面上对音轨进行滚动展示,并在音轨进行动效播放,根据节拍标识线和目标音乐的播放进度,在音轨上绘制节拍线,以便节拍线跟随所述音轨进行滚动展示。
可选的,在一些实施例中,音乐信息展示装置还可以包括节拍展示单元304,如图26所示,具体可以如下:
节拍展示单元304,用于在节拍展示区域展示每一节拍类型对应的节拍展示信息,当检测到音轨或音轨段上绘制节拍线,或,节拍标识线与节拍线重合时,在节拍展示区域对节拍线对应的节拍展示信息进行动态展示。
例如,节拍展示单元304,具体可以用于在节拍展示区域展示每一节拍类型对应的节拍展示信息,当检测到在音轨或音轨段上绘制节拍线,或,节拍标识线与节拍线重合时,根据节拍线的节拍类型,在节拍展示信息中筛选出目标节拍展示信息,并对目标节拍展示信息进行动效播放,响应于针对节拍播放控件的触发操作,播放节拍类型对应的节拍声音,根据节拍线的位置信息,确定节拍线对应的节拍标识,并在节拍展示区域展示所述节拍标识。
可选的,在一些实施例中,音乐信息展示装置还可以包括调整单元305,如图27所示,具体可以如下:
调整单元305,响应于针对音乐信息展示页面中音轨的调整控件的触发操作,对音轨和目标音乐进行调整。
例如,调整单元305,具体可以用于响应于针对调整控件的触发操作,获取调整控件对应的目标音轨的音频文件的当前播放音量,根据当前播放音量,在音乐信息展示页面对目标音轨进行隐藏处理,基于目标音轨的音频文件,播放调整后音乐,该调整后音乐为在目标音乐中对目标音轨的音频文件进行静音播放后的音乐。
具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。
由以上可知,本实施例在显示当前播放的目标音乐的音乐播放页面后,响应于针对音乐播放页面中音乐信息展示控件的触发操作,显示目标音乐的音乐信息展示页面,该音乐信息展示页面包括目标音乐中至少一个音乐元素对应的音轨、以及音轨对应的节拍线,然后,基于目标音乐的播放进度,在音乐信息展示页面对音轨和跟随音轨运动的节拍线进行滚动展示;由于该方案可以在播放目标音乐的同时显示目标音乐中至少一个音乐元素对应的音轨和该音轨对应的节拍线,而且,还可以根据目标音乐的播放进度,对音轨和节拍线进行滚动展示,从而可以准确的展示目标音乐所包含的内容,因此,可以提升音乐信息展示的准确性。
本申请实施例还提供一种电子设备,如图28所示,其示出了本申请实施例所涉及的电子设备的结构示意图,具体来讲:
该电子设备可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、电源403和输入单元404等部件。本领域技术人员可以理解,图28中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器401是该电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行电子设备的各种功能和处理数据。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。
存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。
电子设备还包括给各个部件供电的电源403,优选的,电源403可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源403还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该电子设备还可包括输入单元404,该输入单元404可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,电子设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,电子设备中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能,如下:
显示当前播放的目标音乐的音乐播放页面,该音乐播放页面包括音乐信息展示控件,响应于针对音乐信息展示控件的触发操作,显示目标音乐的音乐信息展示页面,该音乐信息展示页面包括目标音乐中至少一个音乐元素对应的音轨、以及音轨对应的节拍线,该节拍线用于指示目标音乐的节拍,基于目标音乐的播放进度,在音乐信息展示页面对音轨和跟随音轨运动的节拍线进行滚动展示。
例如,电子设备显示音乐待播放页面,该音乐待播放页面包括待播放音乐列表和上传控件,响应于针对待播放音乐列表的选择操作,播放选择操作对于的目标音乐,并显示当前播放的目标音乐的音乐播放页面,或者,响应于针对上传控件的触发操作,显示本地待上传内容页面,该本地待上传内容页面包括至少一个待上传内容,响应于针对待上传内容的选择操作,播放选择操作对于的待上传内容的目标音乐,并显示当前播放的目标音乐的音乐播放页面。获取目标音乐中至少一个音乐元素的音轨数据,基于音轨数据,在预设音乐信息展示页面绘制音乐元素对应的音轨,根据目标音乐的当前播放时刻,在音轨绘制节拍线,得到目标音乐的音乐信息展示页面,并显示音乐信息展示页面。基于目标音乐的播放进度,在音乐信息展示页面上对音轨进行滚动展示,并在音轨进行动效播放,根据节拍标识线和目标音乐的播放进度,在音轨上绘制节拍线,以便节拍线跟随所述音轨进行滚动展示。在节拍展示区域展示每一节拍类型对应的节拍展示信息,当检测到在音轨或音轨段上绘制节拍线,或,节拍标识线与节拍线重合时,根据节拍线的节拍类型,在节拍展示信息中筛选出目标节拍展示信息,并对目标节拍展示信息进行动效播放,响应于针对节拍播放控件的触发操作,播放节拍类型对应的节拍声音,根据节拍线的位置信息,确定节拍线对应的节拍标识,并在节拍展示区域展示所述节拍标识。响应于针对调整控件的触发操作,获取调整控件对应的目标音轨的音频文件的当前播放音量,根据当前播放音量,在音乐信息展示页面对目标音轨进行隐藏处理,基于目标音轨的音频文件,播放调整后音乐,该调整后音乐为在目标音乐中对目标音轨的音频文件进行静音播放后的音乐。
以上各个操作的具体实施可参见前面的实施例,在此不作赘述。
由以上可知,本申请实施例在显示当前播放的目标音乐的音乐播放页面后,响应于针对音乐播放页面中音乐信息展示控件的触发操作,显示目标音乐的音乐信息展示页面,该音乐信息展示页面包括目标音乐中至少一个音乐元素对应的音轨、以及音轨对应的节拍线,然后,基于目标音乐的播放进度,在音乐信息展示页面对音轨和跟随音轨运动的节拍线进行滚动展示;由于该方案可以在播放目标音乐的同时显示目标音乐中至少一个音乐元素对应的音轨和该音轨对应的节拍线,而且,还可以根据目标音乐的播放进度,对音轨和节拍线进行滚动展示,从而可以准确的展示目标音乐所包含的内容,因此,可以提升音乐信息展示的准确性。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请实施例所提供的任一种音乐信息展示方法中的步骤。例如,该指令可以执行如下步骤:
显示当前播放的目标音乐的音乐播放页面,该音乐播放页面包括音乐信息展示控件,响应于针对音乐信息展示控件的触发操作,显示目标音乐的音乐信息展示页面,该音乐信息展示页面包括目标音乐中至少一个音乐元素对应的音轨、以及音轨对应的节拍线,该节拍线用于指示目标音乐的节拍,基于目标音乐的播放进度,在音乐信息展示页面对音轨和跟随音轨运动的节拍线进行滚动展示。
例如,显示音乐待播放页面,该音乐待播放页面包括待播放音乐列表和上传控件,响应于针对待播放音乐列表的选择操作,播放选择操作对于的目标音乐,并显示当前播放的目标音乐的音乐播放页面,或者,响应于针对上传控件的触发操作,显示本地待上传内容页面,该本地待上传内容页面包括至少一个待上传内容,响应于针对待上传内容的选择操作,播放选择操作对于的待上传内容的目标音乐,并显示当前播放的目标音乐的音乐播放页面。获取目标音乐中至少一个音乐元素的音轨数据,基于音轨数据,在预设音乐信息展示页面绘制音乐元素对应的音轨,根据目标音乐的当前播放时刻,在音轨绘制节拍线,得到目标音乐的音乐信息展示页面,并显示音乐信息展示页面。基于目标音乐的播放进度,在音乐信息展示页面上对音轨进行滚动展示,并在音轨进行动效播放,根据节拍标识线和目标音乐的播放进度,在音轨上绘制节拍线,以便节拍线跟随所述音轨进行滚动展示。在节拍展示区域展示每一节拍类型对应的节拍展示信息,当检测到在音轨或音轨段上绘制节拍线,或,节拍标识线与节拍线重合时,根据节拍线的节拍类型,在节拍展示信息中筛选出目标节拍展示信息,并对目标节拍展示信息进行动效播放,响应于针对节拍播放控件的触发操作,播放节拍类型对应的节拍声音,根据节拍线的位置信息,确定节拍线对应的节拍标识,并在节拍展示区域展示所述节拍标识。响应于针对调整控件的触发操作,获取调整控件对应的目标音轨的音频文件的当前播放音量,根据当前播放音量,在音乐信息展示页面对目标音轨进行隐藏处理,基于目标音轨的音频文件,播放调整后音乐,该调整后音乐为在目标音乐中对目标音轨的音频文件进行静音播放后的音乐。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该计算机可读存储介质中所存储的指令,可以执行本申请实施例所提供的任一种音乐信息展示方法中的步骤,因此,可以实现本申请实施例所提供的任一种音乐信息展示方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
其中,根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述音乐信息展示方面或者音轨和节拍信息展示方面的各种可选实现方式中提供的方法。
以上对本申请实施例所提供的一种音乐信息展示方法、装置和计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (20)

1.一种音乐信息展示方法,其特征在于,包括:
显示当前播放的目标音乐的音乐播放页面,所述音乐播放页面包括音乐信息展示控件;
响应于针对所述音乐信息展示控件的触发操作,显示所述目标音乐的音乐信息展示页面,所述音乐信息展示页面包括所述目标音乐中至少一个音乐元素对应的音轨、以及所述音轨对应的节拍线,所述节拍线用于指示所述目标音乐的节拍;
基于所述目标音乐的播放进度,在所述音乐信息展示页面对所述音轨和跟随所述音轨运动的节拍线进行滚动展示。
2.根据权利要求1所述的音乐信息展示方法,其特征在于,所述显示所述目标音乐的音乐信息展示页面,包括:
获取所述目标音乐中至少一个音乐元素的音轨数据;
基于所述音轨数据,在预设音乐信息展示页面绘制所述音乐元素对应的音轨;
根据所述目标音乐的当前播放时刻,在所述音轨绘制节拍线,得到所述目标音乐的音乐信息展示页面,并显示所述音乐信息展示页面。
3.根据权利要求2所述的音乐信息展示方法,其特征在于,所述根据所述目标音乐的当前播放时刻,在所述音轨绘制节拍线,得到所述目标音乐的音乐信息展示页面,包括:
在所述音轨中筛选出鼓点音轨,并基于所述鼓点音轨,确定所述目标音乐的节拍信息;
基于所述目标音乐的当前播放时刻和节拍信息,在所述音轨上识别出已播放节拍的节拍线位置;
基于所述节拍线位置,在所述音轨绘制出所述已播放节拍的节拍线,得到所述目标音乐的音乐信息展示页面。
4.根据权利要求3所述的音乐信息展示方法,其特征在于,所述基于所述鼓点音轨,确定所述目标音乐的节拍信息,包括:
在所述鼓点音轨中识别出每一鼓点的鼓点类型和时间信息;
基于所述时间信息,计算不同鼓点类型的鼓点之间的时间间隔,得到时间间隔集合;
根据所述鼓点类型和时间间隔集合,确定所述目标音乐的节拍信息。
5.根据权利要求4所述的音乐信息展示方法,其特征在于,所述根据所述鼓点类型和时间间隔集合,确定所述目标音乐的节拍信息,包括:
在所述时间间隔集合中筛选出数量最多的时间间隔,得到所述目标音乐的节拍线的时间间距;
对所述鼓点音轨中的鼓点进行排序,以得到所述鼓点音轨的目标鼓点;
根据所述时间间距和所述目标鼓点的时间信息,确定所述目标音乐的每一节拍线的节拍类型和时间位置,并将所述节拍线的节拍类型和时间位置作为节拍信息。
6.根据权利要求5所述的音乐信息展示方法,其特征在于,所述基于所述目标音乐的当前播放时刻和节拍信息,在所述音轨上识别出已播放节拍的节拍线位置,包括:
将所述目标音乐的当前播放时刻与所述节拍线的时间位置进行对比;
基于对比结果,在所述节拍线中筛选出已播放节拍的历史节拍线;
获取所述音轨的时间轴信息,并基于所述时间轴信息和历史节拍线的时间位置,在所述音轨上识别出已播放节拍的节拍线位置。
7.根据权利要求3所述的音乐信息展示方法,其特征在于,所述基于所述鼓点音轨,确定所述目标音乐的节拍信息之后,还包括:
将所述节拍信息转换为节拍音轨的目标音轨数据;
基于所述目标音轨数据,在所述预设音乐信息展示页面绘制所述节拍音轨;
在所述预设音乐信息展示页面将所述鼓点音轨替换为所述节拍音轨,得到所述目标音乐的音乐信息展示页面。
8.根据权利1至7任一项所述的音乐信息展示方法,其特征在于,所述音乐信息展示页面包括节拍标识线,所述基于所述目标音乐的播放进度,在所述音乐信息展示页面对所述音轨和跟随所述音轨运动的节拍线进行滚动展示,包括:
基于所述目标音乐的播放进度,在所述音乐信息展示页面上对所述音轨进行滚动展示,并在所述音轨进行动效播放;
根据所述节拍标识线和目标音乐的播放进度,在所述音轨上绘制节拍线,以便所述节拍线跟随所述音轨进行滚动展示。
9.根据权利要求8所述的音乐信息展示方法,其特征在于,所述基于所述目标音乐的播放进度,在所述音乐信息展示页面上对所述音轨进行滚动展示,包括:
根据所述音轨的时间轴信息,在所述音轨中识别出每一播放时刻对应的音轨段;
对所述音轨段进行排序,并基于排序信息和所述目标音乐的播放进度,对所述音轨段进行滚动展示。
10.根据权利要求9所述的音乐信息展示方法,其特征在于,所述根据所述节拍标识线和目标音乐的播放进度,在所述音轨上绘制节拍线,以便所述节拍线跟随所述音轨进行滚动展示,包括:
根据所述目标音乐的播放进度,在所述音轨段中选出当前展示的当前音轨段;
基于所述节拍标识线和目标音乐的播放进度,确定所述鼓点音轨的当前时间轴的偏移距离;
计算所述偏移距离与所述节拍线的时间间距的比值,以得到所述当前音轨段的待播放节拍的节拍线信息;
基于所述节拍线信息,在所述当前音轨段上绘制所述待播放节拍的节拍线,并滚动展示所述节拍线。
11.根据权利要求10所述的音乐信息展示方法,其特征在于,所述基于所述节拍标识线和目标音乐的播放进度,确定所述鼓点音轨的当前时间轴的偏移距离,包括:
根据所述目标音乐的播放进度,在鼓点分桶中筛选出当前帧对应的目标鼓点分桶;
在所述目标鼓点分桶中识别出与所述节拍标识线最近的目标鼓点,并计算所述目标鼓点与所述节拍标识线的当前距离;
基于所述当前距离和所述目标鼓点的位置信息,确定所述鼓点音轨的当前时间轴的偏移距离。
12.根据权利要求11所述的音乐信息展示方法,其特征在于,所述根据所述目标音乐的播放进度,在鼓点分桶中筛选出当前帧对应的目标鼓点分桶之前,还包括:
在所述鼓点音轨中提取出至少一个鼓点,并识别出所述鼓点的时间信息;
基于所述时间信息,对所述鼓点进行分类,得到每一时间区间对应的目标鼓点;
在预设分桶中筛选出所述每一时间区间对应的目标分桶,并将所述每一时间区间对应的目标鼓点添加至所述时间区间对应的目标分桶,得到各时间区间对应的鼓点分桶。
13.根据权利要求10所述的音乐信息展示方法,其特征在于,所述基于所述节拍线信息,在所述当前音轨段上绘制待播放节拍的节拍线,包括:
对所述节拍线信息进行取整处理,得到当前取整后节拍线信息;
基于所述目标音乐的播放进度,获取历史取整后节拍线信息;
当所述当前取整后节拍线信息与历史取整后节拍线信息不同时,基于所述当前取整后节拍线信息,在所述当前音轨段上绘制待播放节拍的节拍线。
14.根据权利要求13所述的音乐信息展示方法,其特征在于,所述基于所述当前取整后节拍线信息,在所述当前音轨段上绘制待播放节拍的节拍线,包括:
基于所述当前取整后节拍线信息,在所述目标音乐的节拍线中筛选出待播放节拍的目标节拍线;
计算所述当前取整后节拍线信息和所述待播放节拍的节拍线信息的信息差值,并基于所述信息差值,确定所述目标节拍线的延时绘制时间;
基于所述延时绘制时间,在所述当前音轨段上绘制所述待播放节拍的目标节拍线。
15.根据权利要求2所述的音乐信息展示方法,其特征在于,所述音乐信息展示页面还包括节拍展示区域,所述显示所述音乐信息展示页面之后,还包括:
在所述节拍展示区域展示每一节拍类型对应的节拍展示信息;
当检测到在音轨或音轨段上绘制节拍线,或,所述节拍标识线与所述节拍线重合时,在所述节拍展示区域对所述节拍线对应的节拍展示信息进行动态展示。
16.根据权利要求15所述的音乐信息展示方法,其特征在于,所述节拍展示区域包括节拍播放控件,所述在所述节拍展示区域对所述节拍线对应的节拍展示信息进行动态展示,包括:
根据所述节拍线的节拍类型,在所述节拍展示信息中筛选出目标节拍展示信息,并对目标节拍展示信息进行动效播放;
响应于针对节拍播放控件的触发操作,播放所述节拍类型对应的节拍声音;
根据所述节拍线的位置信息,确定所述节拍线对应的节拍标识,并在所述节拍展示区域展示所述节拍标识。
17.根据权利要求1至7任一项所述的音乐信息展示方法,其特征在于,所述音乐信息展示页面还包括每一音轨对应的调整控件,所述显示所述目标音乐的音乐信息展示页面之后,还包括:
响应于针对所述调整控件的触发操作,获取所述调整控件对应的目标音轨的音频文件的当前播放音量;
根据所述当前播放音量,在所述音乐信息展示页面对所述目标音轨进行隐藏处理;
基于所述目标音轨的音频文件,播放调整后音乐,所述调整后音乐为在所述目标音乐中对所述目标音轨的音频文件进行静音播放后的音乐。
18.一种音乐信息展示装置,其特征在于,包括:
第一显示单元,用于显示当前播放的目标音乐的音乐播放页面,所述音乐播放页面包括音乐信息展示控件;
第二显示单元,用于响应于针对所述音乐信息展示控件的触发操作,显示所述目标音乐的音乐信息展示页面,所述音乐信息展示页面包括所述目标音乐中至少一个音乐元素对应的音轨、以及所述音轨对应的节拍线,所述节拍线用于指示所述目标音乐的节拍;
滚动展示单元,用于基于所述目标音乐的播放进度,在所述音乐信息展示页面对所述音轨和跟随所述音轨运动的节拍线进行滚动展示。
19.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现权利要求1至17任一项所述音乐信息展示方法中的步骤。
20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至17任一项所述的音乐信息展示方法中的步骤。
CN202210349425.8A 2022-04-01 2022-04-01 一种音乐信息展示方法、装置和计算机可读存储介质 Pending CN116932809A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210349425.8A CN116932809A (zh) 2022-04-01 2022-04-01 一种音乐信息展示方法、装置和计算机可读存储介质
PCT/CN2023/079797 WO2023185387A1 (zh) 2022-04-01 2023-03-06 音乐信息展示方法、装置、设备、程序产品和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210349425.8A CN116932809A (zh) 2022-04-01 2022-04-01 一种音乐信息展示方法、装置和计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN116932809A true CN116932809A (zh) 2023-10-24

Family

ID=88198962

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210349425.8A Pending CN116932809A (zh) 2022-04-01 2022-04-01 一种音乐信息展示方法、装置和计算机可读存储介质

Country Status (2)

Country Link
CN (1) CN116932809A (zh)
WO (1) WO2023185387A1 (zh)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008024486A2 (en) * 2006-08-24 2008-02-28 Fliptrack, Inc. Beat and text based editing and composing systems and methods
US8198525B2 (en) * 2009-07-20 2012-06-12 Apple Inc. Collectively adjusting tracks using a digital audio workstation
US11580941B2 (en) * 2018-04-24 2023-02-14 Dial House, LLC Music compilation systems and related methods
CN110070849A (zh) * 2019-03-22 2019-07-30 福建星网视易信息系统有限公司 音频演奏方法及计算机可读存储介质
CN114143587A (zh) * 2020-09-03 2022-03-04 上海哔哩哔哩科技有限公司 一种用于在目标音乐视频中乐谱展示的方法与设备

Also Published As

Publication number Publication date
WO2023185387A1 (zh) 2023-10-05

Similar Documents

Publication Publication Date Title
US11375295B2 (en) Method and device for obtaining video clip, server, and storage medium
US10846334B2 (en) Audio identification during performance
US9159338B2 (en) Systems and methods of rendering a textual animation
US10506268B2 (en) Identifying media content for simultaneous playback
US10799795B1 (en) Real-time audio generation for electronic games based on personalized music preferences
US20180137425A1 (en) Real-time analysis of a musical performance using analytics
CN104040618A (zh) 用于制作更和谐音乐伴奏以及用于将效果链应用于乐曲的系统和方法
JP2017513049A (ja) カラオケ曲の演奏に関するフィードバックをユーザに提供する方法
US20160196812A1 (en) Music information retrieval
CN114128299A (zh) 多媒体表演的基于模板的摘录和呈现
US20210035541A1 (en) Systems and methods for recommending collaborative content
US20210034688A1 (en) Systems and methods for recommending collaborative content
US20220047954A1 (en) Game playing method and system based on a multimedia file
JP2016070999A (ja) カラオケ効果音設定システム
US20160307551A1 (en) Multifunctional Media Players
KR101713242B1 (ko) 악보 기반 검색 서비스 제공 장치 및 이를 이용한 방법
CN116932809A (zh) 一种音乐信息展示方法、装置和计算机可读存储介质
CN106448710B (zh) 一种音乐播放参数的校准方法及音乐播放设备
JP6589521B2 (ja) 歌唱基準データ修正装置、カラオケシステム、プログラム
CN116932810A (zh) 一种音乐信息展示方法、装置和计算机可读存储介质
JP2014123085A (ja) カラオケにおいて歌唱に合わせて視聴者が行う身体動作等をより有効に演出し提供する装置、方法、およびプログラム
WO2023185425A1 (zh) 音乐匹配方法、装置、电子设备、存储介质及程序产品
JP2015161888A (ja) 歌唱対戦カラオケシステム
US20240184515A1 (en) Vocal Attenuation Mechanism in On-Device App
Deliyannis et al. Enabling social software-based musical content for computer games and virtual worlds

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40098473

Country of ref document: HK