基于区块链的音乐发布方法、装置及终端设备与流程

文档序号:15980131发布日期:2018-11-17 00:13阅读:153来源:国知局

本发明属于数据处理技术领域,尤其涉及基于区块链的音乐发布方法、装置、终端设备及计算机可读存储介质。

背景技术

音乐是人类创造性的体现,作为一种文明符号,从古至今都活跃在人们的日常生活中,各种音乐作品更是层出不穷。在以前,音乐作品的传播往往需要现场演奏,需要乐器或人声等硬性条件,故在音乐作品需求的乐器较多或者需要多人合唱时,演奏条件难以满足,为音乐作品的传播共享带来了困难。而在现代社会中,随着科技和网络的发展,用户可将自己创作的音乐作品保存为文件,发布在论坛或者音乐平台上,从而实现传播并提高关注度。

但是,由于现有的音乐平台大多是对所有人开放,在用户在发布音乐作品对应的文件后,很可能会发生他人截取该文件并在他处进行发布的情况,平台在文件真正所属者未知的情况下,很难取得有效的证据来进行判断,即无法从公认层面上保证用户的音乐版权。此外,在用户通过音乐平台进行发布时,某些不良平台可能盗取用户的音乐作品相关文件后,反而率先发布,侵占用户的权益。综上,现有的音乐发布方法透明化程度和安全性低,并且对音乐作品相关文件的保护程度低。



技术实现要素:

有鉴于此,本发明实施例提供了基于区块链的音乐发布方法、装置、终端设备及计算机可读存储介质,以解决现有技术中进行音乐发布的安全性低,对音乐作品相关文件的保护程度低的问题。

本发明实施例的第一方面提供了一种基于区块链的音乐发布方法,包括:

获取用户的音频数据;

对所述音频数据进行转换处理,以生成与所述音频数据对应的上传文件;

执行区块链中预设的智能合约,以生成与所述上传文件对应的上传标识量;

在所述区块链中生成更新区块,并在所述更新区块中存储所述上传文件和所述上传标识量,所述上传标识量被所述区块链用于区分所述上传文件和所述区块链中存储的多个现有文件。

本发明实施例的第二方面提供了一种基于区块链的音乐发布装置,包括:

获取单元,用于获取用户的音频数据;

第一生成单元,用于对所述音频数据进行转换处理,以生成与所述音频数据对应的上传文件;

第二生成单元,用于执行区块链中预设的智能合约,以生成与所述上传文件对应的上传标识量;

存储单元,用于在所述区块链中生成更新区块,并在所述更新区块中存储所述上传文件和所述上传标识量,所述上传标识量被所述区块链用于区分所述上传文件和所述区块链中存储的多个现有文件。

本发明实施例的第三方面提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述音乐发布方法的步骤。

本发明实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上所述音乐发布方法的步骤。

本发明实施例与现有技术相比存在的有益效果是:

本发明实施例通过获取用户上传的音频数据,对音频数据进行转换处理,得到基于音频数据的上传文件,并通过区块链技术,具体通过执行区块链底层预先设置的智能合约,生成与上传文件对应的上传标识量,最后在区块链中新增更新区块,并在更新区块中存储上传文件和上传标识量,本发明实施例通过区块链技术实现音频数据对应的上传文件的上传,保证了上传文件的权益,提升了音乐发布的透明程度和安全性。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例一提供的基于区块链的音乐发布方法的实现流程图;

图2是本发明实施例二提供的基于区块链的音乐发布方法的实现流程图;

图3是本发明实施例三提供的基于区块链的音乐发布方法的实现流程图;

图4是本发明实施例四提供的基于区块链的音乐发布方法的实现流程图;

图5是本发明实施例五提供的基于区块链的音乐发布方法的实现流程图;

图6是本发明实施例六提供的长短期记忆网络lstm模型的示意图;

图7是本发明实施例七提供的基于区块链的音乐发布装置的结构框图;

图8是本发明实施例八提供的终端设备的示意图。

具体实施方式

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。

为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。

图1示出了本发明实施例提供的基于区块链的音乐发布方法的实现流程,详述如下:

在s101中,获取用户的音频数据。

在本发明实施例中,首先获取用户的音频数据。音频数据可由对用户上传的音频信号进行模数转换,使音频信号数字化产生,比如用户发出通过演唱或弹奏产生的原声,并同时开始录制,则录制来源的原声即为音频信号,录制完成后产生的数字化数据即为音频数据。在音频信号数字化的过程中,还需确定对音频信号的采样频率和采样大小,其中,采样频率指单位时间内对音频信号采样的次数,随着采样频率的增大,每个采样单位时间采样到的音频信号的内容越多,从而数字化得到的音频数据就越接近于真实的音频信号,但是采样频率的增大会使得音频数据的数据量增大,提高对音频数据处理的难度;而采样大小决定了对音频信号采样得到的音频数据样本值的数值位数范围,数值位数范围越大,对于音频信号中的变化的可记录程度越高,当然,音频数据的数据量也会对应增大。在实际应用场景中,执行音频信号到音频数据的模数转换之前,可预先设置对音频信号的采样频率和采样大小,以使转换出的音频数据满足应用场景的需求。当然,也可使用现有的录制工具进行音频信号的录制,并输出音频数据。一般地,保存音频数据的文件格式为wave。

可选地,获取用户上传的音频文件,将音频文件作为音频数据。除了录制用户的音频信号外,还可直接获取用户上传的音频文件,其中,音频文件格式为可读音乐格式,包括乐器数字接口(musicalinstrumentdigitalinterface,midi)、wave和mp3等。获取到音频文件后,将音频文件作为音频数据,进行后续处理,提升了获取音频数据的多样性。

在s102中,对所述音频数据进行转换处理,以生成与所述音频数据对应的上传文件。

获取音频数据后,对音频数据进行转换处理,得到对应的上传文件。其中,转换处理并不单独指示某一种操作,比如,转换处理可在不改变音频数据本身的前提下,将音频数据按照固定的文件格式(如midi)生成上传文件;转换处理也可将音频数据与模型进行拟合,以合成模型对应风格的上传文件等,具体内容在后文进行阐述。

可选地,输出转换处理选项至用户,获取用户对输出转换处理选项的选择结果,并根据选择结果执行对所述音频数据进行转换处理,以生成与所述音频数据对应的上传文件的操作。在实际应用场景中,在获取到用户的音频数据后,可向用户提供转换处理选项,转换处理选项包括但不限于“直接上传”、“音乐合成”和“固定格式上传”,“直接上传”是指将音频数据直接作为上传文件;“音乐合成”是指对音频数据进行一定处理后,改变音频数据本身的内容,并生成与音频数据对应的上传文件;“固定格式上传”是指将音频数据封装为固定格式的上传文件进行上传,可延伸为固定midi格式上传、固定mp3格式上传等。提供转换处理选项后,获取用户对于转换处理选项的选择结果,并执行与该选择结果对应的转换处理方法,生成上传文件,满足了用户的不同需求,提升了转换处理的适用性。

在s103中,执行区块链中预设的智能合约,以生成与所述上传文件对应的上传标识量。

区块链技术是利用块链式数据结构来验证与存储数据,利用分布式节点共识算法来生成和更新数据,利用密码学保证数据传输和访问的安全,利用由自动化脚本代码组成的智能合约来编程和操作数据的分布式基础架构与计算范式。区块链一般由数据层、网络层、共识层、激励层、合约层和应用层组成。其中,数据层封装了底层数据区块以及相关的数据加密和时间戳等技术;网络层则包括分布式组网机制、数据传播机制和数据验证机制等;共识层主要封装针对区块链中各个节点的各类共识算法;激励层将经济因素集成到区块链技术体系中来,主要包括经济激励的发行机制和分配机制等;合约层主要封装各类脚本、算法和智能合约,是区块链可编程特性的基础;应用层则封装了区块链的各种应用场景和案例。

在本发明实施例中,将上传文件上传至区块链的数据区块。首先,执行区块链合约层中预设的智能合约,从而生成与待上传文件对应的上传标识量。其中,智能合约是传统合约的数字化版本,是在区块链上运行的计算机程序。在本发明实施例中,区块链中预设的智能合约包括状态机、事务和触发条件,其中,状态机主要提供运行环境,以运行智能合约的代码;事务是指访问并可能更新区块链中数据的一个程序执行单元,为了方便说明,将与上传文件的上传过程相关的事务命名为上传事务;触发条件为智能合约执行的前提条件,当触发条件满足时,智能合约开始执行,触发条件可配置为接收到用户对上传文件的上传意图,如在上传文件生成后,向用户提供包含“确认上传”和“不上传”上传选项,并在获取到用户对该上传选项的选择结果为“确认上传”后,启动状态机(状态机也可处于长期在线的状态),将与上传文件相关的上传事务在状态机中进行处理。为了保证上传事务处理的时效性,可定期检测状态机状态,即检测触发条件满足的情况,并将满足触发条件的上传事务进行进一步处理,如果存在不满足触发条件的其他事务,则将其他事务继续存放在区块链中。

可选地,配置上传队列,若检测到触发条件满足,则将与上传文件相关的上传事务传输至上传队列。具体地,当触发条件满足后,将包含上传文件的上传事务传输至上传队列的队尾,当上传事务排至上传队列的队首时,执行该上传事务,提升智能合约执行过程的有序性和适用性,可应用于有多个上传事务需要执行的场景。

在上传事务的执行过程中,对上传文件进行标识特征提取,以生成与该上传文件对应的上传标识量。在本发明实施例中,并不限定标识特征提取的方式,只要其与上传文件中具有标识度的元素相关,并且通过标识特征提取的方式,不同上传文件产生的上传标识量不同,则皆可应用在本发明实施例中,如可提取上传文件中的音乐时长和音乐密度,将两者进行综合处理生成上传标识量,上传标识量可以为某个数值、多个数值的集合或者向量等。

在s104中,在所述区块链中生成更新区块,并在所述更新区块中存储所述上传文件和所述上传标识量,所述上传标识量被所述区块链用于区分所述上传文件和所述区块链中存储的多个现有文件。

在生成上传标识量后,继续处理上传事务,将上传事务扩散到区块链的每一个验证节点,由验证节点进行签名验证确定该上传事务的有效性。当获取到大多数验证节点或全部验证节点的签名验证后,上传事务成功执行,在区块链的数据层中新增更新区块,并将上传文件和上传标识量存储在更新区块中,并且,状态机将智能合约标记为完成,并从最新的更新区块中移除智能合约。上传文件和上传标识量保存成功后,即实现了音乐的发布后,区块链的其他节点可通过访问最新区块从而访问待上传文件。

在实际应用场景中,可创建基于区块链的音乐发布平台以执行s101到s104的步骤。具体地,由音乐发布平台获取用户的音频数据,音频数据可通过对用户录制的音频信号进行模数转换得到,或者可为接收到的用户上传的音频文件。在获取到音频数据后,音乐发布平台对音频数据进行转换处理,得到与音频数据对应的上传文件。访问音乐发布平台的用户设备为区块链的一个节点,音乐发布平台基于用户设备的节点和生成的上传文件,执行区块链中预设的智能合约,生成与该上传文件对应的上传标识量。在包含上传文件的上传事务经区块链中的大多数或全部验证节点签名验证后,在区块链中新增更新区块,并在更新区块中保存上传文件和上传标识量,提升了用户层面的易用性。此外,音乐发布平台可设置对于更新区块的访问接口,以便音乐发布平台的其他用户(区块链的其他节点)通过该访问接口访问更新区块,从而访问上传文件。

此外,由于区块链网络属于点对点网络,并且上传文件所在的最新区块一般会进行加密,故在上传文件和上传标识量成功存储在区块链中后,还可针对其他用户想要购买权限以访问上传文件的情况,创建另一种智能合约,为了便于说明,将其命名为收费合约。在收费合约中,可制定如在接收到其他用户的请求,并接收到该用户的钱款后,将访问上传文件的权限开放给该用户等纪机制,通过执行收费合约,可将其他用户的钱款直接汇入上传文件所有者的账户中,可简化交易过程,提升交易的有效性。

通过图1所示实施例可知,在本发明实施例中,通过不同方式获取来自用户的音频数据,对所述音频数据进行转换处理后,生成与音频数据对应的上传文件,并利用区块链技术,通过执行其底层预设的智能合约,生成与所述上传文件对应的上传标识量,最后在验证通过后,在区块链中生成更新区块,将上传文件和上传标识量存入更新区块中,保证了上传文件的有效权益,提升了音乐发布的安全性和可靠性。

图2所示,是在本发明实施例一的基础上,根据上传标识量判断上传文件是否有效的过程。本发明实施例提供的基于区块链的音乐发布的实现流程图,如图所示,该音乐发布方法可以包括以下步骤:

在s201中,获取所述区块链存储的与所述多个现有文件对应的多个现有标识量,并将所述上传标识量与所述多个现有标识量进行比对。

在智能合约的执行过程中,为了保证上传文件的有效性,保证其不侵犯其他现有文件的权益,对上传文件进行检测。具体地,在生成与上传文件对应的上传标识量后,获取区块链存储的多个现有文件以及与多个现有文件对应的多个现有标识量(其可能存在于区块链的不同数据区块中,也可能存在于区块链中单独设置的用于存储多个现有标识量的单元),并将上传标识量与多个现有标识量进行比对,根据比对结果执行不同的操作。

在s202中,若所述上传标识量与所述多个现有标识量都不相同,则执行所述在所述区块链中生成更新区块的操作。

若上传标识量与多个现有标识量都不相同,则证明上传文件有效,则继续执行在区块链中生成更新区块及其后续的操作;若上传标识量与多个现有标识量中的某一个相同,则证明区块链中存储有与上传文件相同的现有文件,为了保证该现有文件的权益,停止执行后续的操作,可选地,在检测出上传标识量与多个现有标识量中的某一个相同后,向用户输出上传失败的提示。

通过图2所示实施例可知,在本发明实施例中,通过获取区块链中存储的与多个现有文件对应的多个现有标识量,并将上传标识量与多个现有标识量进行比对,如果上传标识量与多个现有标识量都不相同,则执行在区块链中生成更新区块的操作;如果上传标识量与多个现有标识量中的某一个相同,则停止执行后续的操作,防止了上传文件上传后与某个现有文件相同的情况,提升了音乐发布的有效性。

图3所示,在本发明实施例一的基础上,增加对长短期记忆网络模型训练得到文件转换模型,从而基于文件转换模型对音频数据进行转换处理的过程。本发明实施例提供的基于区块链的音乐发布的实现流程图,如图所示,该音乐发布方法可以包括以下步骤:

在s301中,获取音频样本集,将所述音频样本集与长短期记忆网络lstm模型进行拟合,并将拟合完成的长短期记忆网络lstm模型作为文件转换模型进行输出。

在本发明实施例中,可对获取到的音频数据进行转换处理,特别地,一种转换处理的方式是将音频数据和特定的音乐风格结合,从而生成适应音乐风格的上传文件。首先,需要获取音频样本集,一般来说,音频样本集包含多个属于同一音乐风格的现有音频文件,为了减少计算资源的浪费,音频样本集可以存储区块链外的数据库中,在需要使用时从数据库中获取。

获取完毕后,将音频样本集内的多个现有音频文件与长短期记忆网络(longshort-termmemory,lstm)模型进行拟合,lstm模型属于时间递归神经网络模型,适合于处理和预测时间序列中间隔和延迟相对较长的重要事件,故可应用在本发明实施例中。在拟合时,需要将音频样本集内的现有音频文件按照单位时间进行音频特征提取,音频特征提取可对现有音频文件的多个特征进行提取,以提升后续进行模型训练的准确性。举例来说,确定单位时间后,假定现有音频文件包含n个单位时间,则从现有音频文件的起始位置开始,对现有音频文件的音符属性(某个单位的音频所属的音符)进行音频特征提取得到第一特征向量,为“a1,a2,……,an”,对现有音频文件的音量大小进行音频特征提取得到第二特征向量,为“b1,b2,……,bn”,对现有音频文件的短时能量(表示该单元时间内音频文件的能量强弱)进行音频特征提取得到第三特征向量,为“c1,c2,……,cn”等,训练的效果与音频特征提取提取特征的种类成正比,但随着特征的种类增多,训练的计算量也会对应增大,在实际应用场景中可根据需要调整音频特征提取的过程。为了便于理解,后续取基于现有音频文件的一类特征向量进行说明,特征向量与现有音频文件的某个特征相关,经音频特征提取后为“x1,x2,……,xn”,将其作为lstm模型的输入向量,与之对应的,对现有音频文件中与实际声音相关的特征进行声音特征提取,得到“y1,y2,……,yn”,作为实际向量,用于对经lstm模型训练输出的结果进行修正。

图6所示,为lstm模型的一个单位时间内的处理过程,通常称之为一个细胞,故对现有音频文件进行计算lstm模型总共包含n个细胞,每个细胞中包括输入门层、遗忘门层和输出门层。图6中,ct指的是lstm模型在该单位时间的细胞状态,细胞主要用于维持以前输入的记忆;xt为特征向量“x1,x2,……,xn”中的一个输入参数;ht为输出参数;σ表示神经网络的sigmoid函数;tanh表示双曲正切函数。具体计算过程如下:

首先,将特征向量“x1,x2,……,xn”输入lstm模型,图6中从左至右的第一个σ层对应遗忘门层,遗忘门层的主要作用是确定从细胞状态ct-1中丢弃的信息,该层输出的ft为在0至1之间的数值,其中,1表示“完全保留”,0表示“完全舍弃”,具体计算公式为ft=σ(wt·[ht-1,xt]+bf),遗忘门层会读取经前一个细胞状态ct-1产生的输出参数ht-1,和本次细胞状态的输入参数xt。

图6中从左至右的第二个σ层对应输入门层,其主要作用是确定细胞状态ct中需要更新的值,输出的it与遗忘门层的ft类似,也为在0到1之间的数值,1表示“完全保留”,0表示“完全舍弃”,具体计算公式为it=σ(wi·[ht-1,xt]+bi)。而图6中从左至右的第一个tanh层用于创建一个新的候选值向量,命名为计算公式为第一个tanh层和第二个σ层共同确定存放在新的细胞状态ct中的新信息。

经过遗忘门层和输入门层的计算后,即可对旧的细胞状态进行更新,计算公式为

图6中从左至右的第三个σ层对应输出门层,在经过上述的公式更新细胞状态的同时,通过输出门层计算该细胞状态的输出参数ht,计算公式为ot=σ(wo·[ct,ht-1,xt]+bo)和ht=ot*tanh(ct)。将特征向量中所有的输入参数输入lstm模型后,经过计算,并综合每个单位时间的输出参数,可得到“h1,h2,……,hn”的输出向量。由于已知现有音频文件的实际向量“y1,y2,……,yn”,故可采取梯度下降的方法,调整lstm模型中公式的参数,从而使输出向量尽量接近于实际向量。值得说明的是,上述公式中的wt、wc、wo表示不同节点之间的连接权重,上述公式中的bf、bi、bc和bo表示预设的变量,在计算过程调整bf、bi、bc和bo变量的值以达到训练lstm模型的目的。在将音频样本集的多个现有音频文件与lstm模型拟合后,可训练出接近于音频样本集对应音乐风格的文件转换模型,并进行输出。

对s301中获取音频样本集的内容进行延伸,得到通过用户的偏好设置选取音频样本集的过程,如图4所示,步骤包括:

在s401中,获取所述用户的偏好设置。

在本发明实施例中,还可预设多个音频样本集,并通过获取用户的偏好设置来从多个音频样本集中选取与偏好设置对应的音频样本集。在预设多个音频样本集时,设置多个关键词,并将关键词与音频样本集建立对应关系,一般地,关键词与音乐类别相关,例如设置“古典音乐”关键词,则该关键词对应音频样本集下的多个现有音频文件与古典音乐相关。建立好对应关系后,获取用户的偏好设置,偏好设置应包含上述的多个关键词,获取方式包括但不限于向用户提供包含“古典音乐”、“爵士乐”和“迪斯科”等多个偏好设置选项,并获取用户的选择结果;从用户设备中获取收听率最高的音频文件的音乐类别,并将其作为该用户的偏好设置等。

在s402中,确定与所述偏好设置对应的所述音频样本集。

偏好设置确定后,确定与其相同的关键词,并从数据库存储的多个音频样本集中查找与该关键词存在对应关系的音频样本集,以便将音频样本集内的多个现有音频文件与lstm模型进行拟合,从而训练lstm模型。

在s302中,将所述音频数据输入所述文件转换模型,并将所述文件转换模型的输出结果转换为所述上传文件。

获取到经训练输出的文件转换模型后,将音频数据按照同样的音频特征提取方法提取出音频向量,输入文件转换模型,并将经文件转换模型计算后的输出参数集合为输出结果(输出向量)。由于音频特征提取是按照每个单位时间进行提取,故可将输出结果按照单位时间进行整合,转换为上传文件,上传文件可以实现如现有音频文件的正常运行及播放。

通过图3所示实施例可知,在本发明实施例中,通过获取音频样本集,根据音频特征提取的原理,将音频样本集内的多个现有音频文件与长短期记忆网络lstm模型进行拟合,将经多个现有音频文件拟合完毕后的长短期记忆网络lstm模型作为文件转换模型进行输出,并将音频数据输入文件转换模型,最后将文件转换模型的输出结果整合为上传文件,可生成不同音乐风格的上传文件,提升了上传文件的多样性。

图5所示,是在本发明实施例一的基础上,增加的在以太坊中实现对智能合约进行创建的过程。本发明实施例提供的基于区块链的音乐发布方法的实现流程图,如图所示,该音乐发布方法可以包括以下步骤:

在s501中,启动以太坊节点。

以太坊是指能够在区块链上实现智能合约的开源底层系统,在本发明实施例中,可利用以太坊网络实现智能合约的创建和运行。首先,以太坊网络是由多个以太坊节点连接构成,启动其中一个以太坊节点,在该以太坊节点中进行智能合约的创建。此外,由于区块链主要采用非对称加密技术,故该以太坊节点对应一个公钥和一个私钥,公钥指示该以太坊节点的账户地址,私钥用于对以太坊节点进行操作,以及后续对智能合约进行签名。

在s502中,在所述以太坊节点中创建所述智能合约。

智能合约是传统的实体合约的计算机语言版本,通常以代码形式存在,其可被部署在共享账本上,在维持自身状态的同时,控制自身资产,并且可对接收到的外界信息或者外界资产进行回应。启动以太坊节点后,在该以太坊节点中创建智能合约,智能合约的机制可为步骤s103的内容,即在接收到待上传文件后,生成与待上传文件对应的标识量,当然,根据实际应用场景的需要,智能合约还可包括更多或更少的内容。值得一提的是,可在go-ethereum框架或testrpc框架下,利用solc智能合约编译器完成智能合约的编译。另一种方式是利用以太钱包,将智能合约对应的代码添加入以太钱包中,进行发布,从而取代繁琐的编译过程,提升智能合约的创建效率。

在s503中,将所述智能合约部署在所述以太坊节点所在的以太坊网络中,并在所述以太坊网络验证成功后,在所述区块链中存储所述智能合约。

智能合约须在虚拟机内执行,以太坊虚拟机是以太坊中智能合约的运行环境。以太坊虚拟机内部被沙箱封装,完全隔离运行,也即以太坊虚拟机内部的代码不能接触到网络、文件系统或其它进程。在智能合约创建完成后,将智能合约的代码编译为字节码,并通过远程过程调用协议(remoteprocedurecall,rpc)接口,通过点对点的方式发送至以太坊网络的多个以太坊节点,最终每个以太坊节点均能接收到智能合约对应的字节码。接收成功后,以太坊节点将智能合约对应的字节码在以太坊节点自身的以太坊虚拟机中进行运算,得到运算结果。将以太坊网络中每个以太坊虚拟机的运算结果进行互相验证,验证的内容主要是智能合约的参与者(即以太坊节点)的私钥签名是否与账户地址匹配,若匹配,则验证成功,若不匹配,则验证失败。当以太坊网络中所有的以太坊节点都验证成功后,将智能合约写入区块链中进行存储,

通过图5所示实施例可知,在本发明实施例中,通过启动以太坊网络中的一个以太坊节点,在以太坊节点中创建智能合约,并通过点对点的方式将所述智能合约部署在所述以太坊节点所在的以太坊网络中,最后经以太坊网络的所有以太坊节点验证成功后,将智能合约存储在区块链中,体现了在以太坊网络中的智能合约创建过程,通过以太坊网络的验证,保证了智能合约的公平性和可靠性。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

对应于上文实施例所述的基于区块链的音乐发布方法,图7示出了本发明实施例提供的基于区块链的音乐发布装置的结构框图,参照图7,该音乐发布装置包括:

获取单元71,用于获取用户的音频数据;

第一生成单元72,用于对所述音频数据进行转换处理,以生成与所述音频数据对应的上传文件;

第二生成单元73,用于执行区块链中预设的智能合约,以生成与所述上传文件对应的上传标识量;

存储单元74,用于在所述区块链中生成更新区块,并在所述更新区块中存储所述上传文件和所述上传标识量,所述上传标识量被所述区块链用于区分所述上传文件和所述区块链中存储的多个现有文件。

可选地,所述存储单元74,还包括:

标识获取单元,用于获取所述区块链存储的与所述多个现有文件对应的多个现有标识量,并将所述上传标识量与所述多个现有标识量进行比对;

执行单元,用于若所述上传标识量与所述多个现有标识量都不相同,则执行所述在所述区块链中生成更新区块的操作。

可选地,所述第一生成单元73,包括:

样本获取单元,用于获取音频样本集,将所述音频样本集与长短期记忆网络lstm模型进行拟合,并将拟合完成的长短期记忆网络lstm模型作为文件转换模型进行输出;

转换单元,用于将所述音频数据输入所述文件转换模型,并将所述文件转换模型的输出结果转换为所述上传文件。

可选地,所述样本获取单元,包括:

偏好获取单元,用于获取所述用户的偏好设置;

确定单元,用于确定与所述偏好设置对应的所述音频样本集。

可选地,所述音乐发布装置,还包括:

启动单元,用于启动以太坊节点;

创建单元,用于在所述以太坊节点中创建所述智能合约;

部署单元,用于将所述智能合约部署在所述以太坊节点所在的以太坊网络中,并在所述以太坊网络验证成功后,在所述区块链中存储所述智能合约。

图8是本发明实施例提供的终端设备的示意图。如图8所示,该实施例的终端设备8包括:处理器80、存储器81以及存储在所述存储器81中并可在所述处理器80上运行的计算机程序82。所述处理器80执行所述计算机程序82时实现上述各个基于区块链的音乐发布方法实施例中的步骤,例如图1所示的步骤s101至s104。或者,所述处理器80执行所述计算机程序82时实现上述各装置实施例中各单元的功能,例如图7所示单元71至74的功能。

示例性的,所述计算机程序82可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器81中,并由所述处理器80执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序82在所述终端设备8中的执行过程。例如,所述计算机程序82可以被分割成获取单元、第一生成单元、第二生成单元、存储单元,各单元具体功能如下:

获取单元,用于获取用户的音频数据;

第一生成单元,用于对所述音频数据进行转换处理,以生成与所述音频数据对应的上传文件;

第二生成单元,用于执行区块链中预设的智能合约,以生成与所述上传文件对应的上传标识量;

存储单元,用于在所述区块链中生成更新区块,并在所述更新区块中存储所述上传文件和所述上传标识量,所述上传标识量被所述区块链用于区分所述上传文件和所述区块链中存储的多个现有文件。

所述终端设备8可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备8可包括,但不仅限于,处理器80、存储器81。本领域技术人员可以理解,图8仅仅是终端设备8的示例,并不构成对终端设备8的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备8还可以包括输入输出设备、网络接入设备、总线等。

所称处理器80可以是中央处理单元(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

所述存储器81可以是所述终端设备8的内部存储单元,例如终端设备8的硬盘或内存。所述存储器81也可以是所述终端设备8的外部存储设备,例如所述终端设备8上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,所述存储器81还可以既包括所述终端设备8的内部存储单元也包括外部存储设备。所述存储器81用于存储所述计算机程序以及所述终端设备8所需的其他程序和数据。所述存储器81还可以用于暂时地存储已经输出或者将要输出的数据。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将所述装置的内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能。实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

在本发明所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。

以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1