Method and device for displaying music digital collections
By analyzing the electronic composition of the music digital collection and being associated with the animation generation module, the problem of single auditory experience of the music digital collection is solved, the visual and auditory linkage are achieved, and the user experience is improved.
Patent Information
- Application Number
- CN202510570969.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-30
- Publication Date
- 2025-08-15
AI Technical Summary
The existing digital music collections are only experienced through auditory experience, with a single rhythm, a weak sense of incoming, and a poor user experience.
By obtaining the electronic music scores of the digital music collection from the blockchain system, analyzing its feature data, and associating the feature data with the animation generation module, generating animations while playing music, realizing the linkage between vision and hearing.
It enriches the display form of music digital collections, improves user experience, realizes the linkage between vision and hearing, and enhances the sense of introductory music.
Smart Images

Figure CN120492666A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of this specification belong to the field of blockchain technology, and more particularly, to a method and device for displaying digital music collections. Background Art
[0002] Blockchain is a novel application model for computer technologies, including distributed data storage, peer-to-peer transmission, consensus mechanisms, and encryption algorithms. In a blockchain system, data blocks are linked sequentially in chronological order to form a chain-like data structure, cryptographically guaranteeing an unalterable and unforgeable distributed ledger. Due to its decentralized, tamper-proof, and autonomous nature, blockchain is gaining increasing attention and application.
[0003] Digital collectibles are unique digital certificates generated using blockchain technology for specific works or artworks. While protecting digital copyright, they enable authentic digital distribution, purchase, collection, and use. Digital collectibles are a new form of digital publication and offer a wide variety of categories, including but not limited to digital images, music, videos, 3D models, e-tickets, and digital souvenirs. In recent years, music has been a key area of development for the Non-Fungible Token (NFT) industry, with NFT audio falling under the category of rare collectibles. As an audio storage format, digital music is primarily enjoyed through listening. As NFTs, digital music is perceived solely through auditory perception, resulting in a monotonous rhythmic rhythm, a lack of immersion, and a subpar experience. Summary of the Invention
[0004] One or more embodiments of this specification describe a method and apparatus for displaying digital music collections, which can achieve visual and auditory linkage, enrich the display form of digital music collections, and enhance user experience.
[0005] According to a first aspect, a method for displaying a digital music collection is provided, comprising: obtaining an electronic score of the digital music collection from a blockchain system; parsing the electronic score to obtain feature data of the electronic score; associating the feature data with a preset animation generation module; and while playing music based on the electronic score, generating and playing an animation based on the feature data by the animation generation module.
[0006] According to a second aspect, a device for displaying a digital music collection is provided, comprising: an acquisition unit configured to acquire an electronic score of the digital music collection from a blockchain system; a parsing unit configured to parse the electronic score to obtain feature data of the electronic score; an association unit configured to associate the feature data with a preset animation generation module; and a display unit configured to generate and play an animation based on the feature data by the animation generation module while playing music based on the electronic score.
[0007] According to a third aspect, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed in a computer, the computer is caused to execute the method described in any implementation manner of the first aspect.
[0008] According to a fourth aspect, an electronic device is provided, comprising a memory and a processor, wherein executable code is stored in the memory, and when the processor executes the executable code, the method described in any implementation manner in the first aspect is implemented.
[0009] According to the method and apparatus for displaying digital music collections provided in the embodiments of this specification, the electronic score of the digital music collection is first obtained from the blockchain system. The electronic score is then analyzed to obtain its characteristic data. This characteristic data is then associated with a pre-set animation generation module. Thus, while the music is played based on the electronic score, the animation generation module generates and plays an animation based on the characteristic data. This achieves a visual and auditory linkage, enriching the display of the digital music collection and enhancing the user experience. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] In order to more clearly illustrate the technical solutions of the embodiments of this specification, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments recorded in this specification. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.
[0011] Figure 1 A diagram of a blockchain architecture in one embodiment is shown;
[0012] Figure 2 A schematic diagram showing an application scenario in which the embodiments of this specification can be applied;
[0013] Figure 3 A schematic diagram showing the format conversion of audio data and uploading it to the chain is shown;
[0014] Figure 4A flowchart showing a method for displaying a digital collection of music according to one embodiment is shown;
[0015] Figure 5 A schematic block diagram of an apparatus for displaying digital music collections according to an embodiment is shown. DETAILED DESCRIPTION
[0016] To help those skilled in the art better understand the technical solutions in this specification, the following will provide a clear and complete description of the technical solutions in the embodiments of this specification, in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of this specification, not all of them. All other embodiments derived by those skilled in the art based on the embodiments in this specification without creative effort shall fall within the scope of protection of this specification.
[0017] Blockchain technology was originally designed by a person using the pseudonym "Satoshi Nakamoto" as a special distributed database technology. It is suitable for storing simple, sequential, and verifiable data within the system. It uses cryptography and consensus algorithms to ensure that the data cannot be tampered with or forged. To further explain blockchain technology, Figure 1 FIG1 shows a blockchain architecture diagram in one embodiment. Figure 1 In the blockchain architecture diagram shown, the blockchain 100 includes, for example, six nodes. The lines between the nodes schematically represent P2P (Peer to Peer) connections. These nodes can store the full ledger, that is, the status of all blocks and all accounts. Each node in the blockchain can generate the same state in the blockchain by executing the same transaction, and each node in the blockchain can store the same state database. It can be understood that Figure 1 Although the blockchain is shown as including six nodes, the embodiments of this specification are not limited to this and may include other numbers of nodes. Specifically, the nodes included in the blockchain can meet Byzantine Fault Tolerance (BFT) requirements. This Byzantine Fault Tolerance requirement can be understood as allowing Byzantine nodes to exist within the blockchain while not exhibiting Byzantine behavior externally. Generally, some Byzantine Fault Tolerance algorithms require the number of nodes to be greater than 3f+1, where f is the number of Byzantine nodes, such as the Practical Byzantine Fault Tolerance (PBFT) algorithm.
[0018] A transaction in the blockchain field can refer to a task unit executed and recorded in the blockchain. A transaction typically includes a send field (From), a receive field (To), and a data field (Data). In the case of a transfer transaction, the From field indicates the account address initiating the transaction (i.e., initiating a transfer task to another account), the To field indicates the account address receiving the transaction (i.e., receiving the transfer), and the Data field includes the transfer amount. In the case of a transaction calling a smart contract in the blockchain, the From field indicates the account address initiating the transaction, the To field indicates the account address of the contract called by the exchange, and the Data field includes data such as the function name in the called contract and the parameters passed to the function, which are used to retrieve the function code from the blockchain and execute the function code when the transaction is executed.
[0019] Blockchains offer smart contract functionality. Smart contracts on blockchains are contracts that can be triggered and executed by transactions within the blockchain system. Smart contracts can be defined in code. Invoking a smart contract in Ethereum involves initiating a transaction directed to the smart contract address, enabling each node in the Ethereum network to execute the smart contract code in a distributed manner. It should be noted that in addition to user-created smart contracts, smart contracts can also be set up by the system in the genesis block. This type of contract is generally referred to as a genesis contract. Generally, a genesis contract can set certain blockchain data structures, parameters, properties, and methods. Furthermore, accounts with system administrator privileges can create or modify system-level contracts (referred to as system contracts). These system contracts can be used to add data structures for different business operations to the blockchain.
[0020] In the scenario of deploying a contract, for example, Bob sends a transaction containing the information of creating a smart contract (ie deploying the contract) to Figure 1 In the blockchain shown, the transaction's data field contains the code (such as bytecode or machine code) for the contract to be created. The transaction's to field is empty, indicating that the transaction is for deploying the contract. After the nodes reach consensus through the consensus mechanism, they determine the contract address "0x6f8ae93..." Each node adds a contract account corresponding to the smart contract's contract address to the state database, allocates state storage corresponding to the contract account, and saves the contract code in the contract's state storage, successfully creating the contract.
[0021] In the scenario of calling a contract, for example, Bob sends a transaction for calling a smart contract to Figure 1In the blockchain shown, the transaction's "from" field is the account address of the initiator (Bob), the "to" field ("0x6f8ae93...") represents the address of the smart contract being called, and the transaction's "data" field contains the method and parameters for calling the smart contract. After consensus is reached on the transaction within the blockchain, each node in the blockchain can execute the transaction, thereby executing the contract and updating the state database based on the contract's execution.
[0022] In the embodiments of this specification, smart contracts deployed on a blockchain may include NFT smart contracts. NFT smart contracts can be code on the blockchain that implements NFT functions. For example, NFT functions may include minting, transfer, and query functions. The minting function can be used to create NFTs on the blockchain. Specifically, the NFT's identity and attributes are recorded in the contract state of the NFT smart contract on the blockchain. The transfer function can be used to transfer an NFT from its current owner to another user. The query function can be used to retrieve NFT attribute information.
[0023] As previously mentioned, digital music exists in the form of NFTs and is perceived only through hearing, resulting in a monotonous rhythm, a weak sense of immersion, and a poor user experience. Therefore, the embodiments of this specification provide a method for displaying digital music collections, thereby achieving a visual and auditory linkage, enriching the display format of digital music collections, and enhancing the user experience. Figure 2 The figure shows a schematic diagram of an application scenario in which the embodiment of this specification can be applied. Figure 2As shown, in this application scenario, user Alice's client 201 can send a transaction to blockchain system 100, which is used to obtain the electronic score of the digital music collection from blockchain system 100. Client 201 can then parse the electronic score to obtain its characteristic data. In this example, the characteristic data may include data for each track. Client 201 can then associate the characteristic data with a pre-set animation generation module. In this example, assume that one track in the electronic score uses a piano. For example, using a piano to create particle effects, a piano has 88 keys, corresponding to 88 different notes, each with a corresponding note name. Using the note type as the particle number, the animation generation module can create 88 particles, each with a corresponding particle name. Here, each note can be associated with a particle. Specifically, each particle name can be associated with a note name. This allows the electronic score to be played back on a timeline, and the particle corresponding to the currently playing note can be dynamically displayed based on the currently playing note, creating an animated video. In this example, the dynamic display of the particles can include particle rotation. Thus, it is achieved that while music is played based on the electronic composition, the animation generation module generates and plays animation based on the feature data.
[0024] It is understood that before displaying the digital music collection, the blockchain needs to store pre-created digital music collections. The metadata of the digital music collections may include electronic scores. As an example, the electronic scores of the digital music collections can be in various formats, such as audio file formats, music score file formats, MIDI (Musical Instrument Digital Interface) file formats, etc.
[0025] MIDI is a communication protocol and file format used to transmit music information between electronic musical instruments, computers, and other digital audio devices. MIDI does not transmit audio signals directly, but rather music control information (such as notes, dynamics, timbre changes, etc.), allowing devices to play, record, and edit music synchronously. Electronic music scores in the MIDI format have many characteristics. For example, they are small in size, only one thousandth or one hundredth of the size of MP3. For another example, they are rich in information, and MIDI can record a wealth of information such as tracks, pitch, intensity, volume, vibrato, phase, rhythm, etc. For another example, they are simple to produce and allow for secondary creation, such as modifying timbre and rhythm. In addition, as binary files, MIDI files can also record the author, name, etc., making them easier to store on the chain.
[0026] In the present disclosure, the electronic scores corresponding to the digital music collections created on the blockchain can be original electronic scores or secondary electronic scores. Taking the electronic scores in MIDI file format as an example, in some implementations, the electronic scores of the digital music collections can include original electronic scores. The original electronic scores can be MIDI files created directly by the creator, or they can be MIDI files obtained by the creator first creating audio data and then converting the audio data. For example, the audio data can include data in formats such as mp3 and wav (Waveform Audio File Format). At this stage, audio data can be converted into MIDI format through some conversion tools. In addition to the electronic scores, the metadata of the digital music collections can also include at least one of the following: copyright information of the electronic scores, creator information, information on whether secondary creation is allowed, owner information, etc.
[0027] like Figure 3 As shown, Figure 3 The schematic diagram of converting the audio data format and uploading it to the chain is shown in FIG. Figure 3 In the example shown, the audio data may include mp3 format, wav format, and other music formats. Through some existing conversion tools, the audio data can be converted into MIDI format files. After that, the MIDI format file, user information, music copyright information, whether secondary creation is allowed, and other information are merged. Here, Figure 3 The user in the "user" can refer to the creator, and the user information can refer to the creator's information. Afterwards, a smart contract can be called to create a digital music collection and store it on-chain. The metadata for the created digital music collection can include MIDI format files, music copyright information, whether secondary creation is allowed, creator information, and so on. If secondary creation is allowed, secondary music creation can be performed, and for each secondary creation, a smart contract can be called to create a corresponding digital collection and store it on-chain.
[0028] In other implementations, the electronic scores of the digital music collection may include secondary electronic scores, and the metadata of the digital music collection corresponding to the secondary electronic scores may include at least one of the following: information about the creator of the original electronic score corresponding to the secondary electronic score, information about the creator of the secondary electronic score, the ratio of the original and secondary revenues, etc. As an example, information about the creator (i.e., original author) of the original electronic score corresponding to the secondary electronic score may include: the blockchain account of the original author, etc. Information about the creator (i.e., secondary creator) of the secondary electronic score may include: the blockchain account of the secondary creator, etc. In this way, when a user sends a transaction to the blockchain that calls a smart contract to purchase the digital music collection corresponding to the secondary electronic score, the blockchain can execute this transaction and transfer the assets spent by the user to the blockchain account of the original author and the blockchain account of the secondary creator respectively according to the ratio of the original and secondary revenues in the metadata.
[0029] In some implementations, the music digital collection can be a non-fungible token NFT, and each music digital collection has a unique identifier.
[0030] In some implementations, metadata for a digital music collection can be stored in the contract state of a smart contract on a blockchain system. The metadata can include the electronic score. Based on this, the owner of the digital music collection can access the electronic score through the smart contract.
[0031] Continue to see Figure 4 , Figure 4 A flow chart of a method for displaying a digital music collection according to one embodiment is shown. It is understandable that the method can be executed by a client installed on a terminal device, and the terminal device may include but is not limited to a smartphone, a tablet computer, a smart watch, a laptop computer, and the like. The client installed on the terminal device can interact with a blockchain system, in which a digital music collection is pre-created. The metadata of the digital music collection may include electronic compositions, copyright information of the electronic compositions, creator information, information on whether secondary creation is allowed, owner information, and the like. The above-mentioned method for displaying a digital music collection can be executed by a client of the first user, and the owner information of the electronic composition may be the account of the first user. As Figure 4 As shown, the method for displaying digital music collections may include the following steps 401 to 404, specifically:
[0032] Step 401: Obtain the electronic score of the digital music collection from the blockchain system.
[0033] In this embodiment, a first user can access the blockchain system through a client installed on a terminal device and obtain the electronic score of the digital music collection from the blockchain system. Specifically, the client can send a transaction to the blockchain system through the first user's account to invoke a smart contract. The transaction can include the unique identifier of the digital music collection, and the transaction can be used to obtain the electronic score of the digital music collection.
[0034] Step 402: Analyze the electronic music composition to obtain characteristic data of the electronic music composition.
[0035] In this embodiment, the client can analyze the electronic composition to obtain feature data of the electronic composition.
[0036] Taking the example of an electronic music score being a MIDI file, the client can identify the MIDI file, parse the file, and generate a specific data format that can be recognized by the 3D engine. In this example, a MIDI file in JSON format is used as an example. The following shows an example of a MIDI file parsed for an electronic music score:
[0037]
[0038]
[0039] The above MIDI file describes the music information of the electronic composition, such as notes, tempo, instruments, etc. Specifically:
[0040] The header stores global metadata such as time, tempo, and time signature. Name is typically the name of the first track in the MIDI file, which may correspond to the song title. Tempos is an array of tempo events, each element of which is a TempoEvent object representing the BPM at a specific point in time (e.g., {bpm:120,time:0}).
[0041] timeSignatures: An array of time signatures, each element of which is a TimeSignatureEvent object, representing the number of measures and beats per measure at a given point in time (e.g., {numerator:4,denominator:4,time:0}). PPQ: Pulses Per Quarter, used to determine the accuracy of the MIDI time scale.
[0042] Tracks: Each track contains information such as notes, control timing, and instruments. Name: Track name (optional). Channel: MIDI channel number (0-15), with channels 9 and 10 typically reserved for percussion instruments. Notes: An array of notes, each of which is an object describing the details of the note. ControlChanges: Control change events (such as volume, pan, and other MIDI controller events). Instrument: Instrument information, describing the instrument used for this track.
[0043] During the application process, the above MIDI file can be parsed as needed to extract the required feature data. As an example, the extracted data sample after parsing can be as follows:
[0044]
[0045]
[0046] The above code snippet is a JSON-formatted description of MIDI music data, which can represent a simple music clip containing an electric piano track. Specifically:
[0047] The header contains the overall information of the music file, such as PPQ (pulses per quarter note), tempos (speed), keySignatures (key signature), timeSignatures (time signature), etc. The tracks (audio tracks) contain an electric piano track, and the audio track can contain information such as notes, controller changes, pitch bends, instrument configuration, etc.
[0048] A variety of feature data may be obtained through the above analysis, and one or more of the plurality of feature data may be used to associate with the animation generation module.
[0049] Step 403: Associating the feature data with a preset animation generation module.
[0050] In this embodiment, the client can call a preset animation generation module and associate the feature data with the animation generation module. Here, the animation generation module may include a 3D (3 Dimensions) engine. Here, a three-dimensional model may be pre-created in the animation generation module, thereby associating the feature data with the action data of the three-dimensional model. For example, the three-dimensional model may be a character model corresponding to a dancer, and the feature data may be a musical scale. A musical scale may be associated with a dance movement. In this way, when the music is played, the character model corresponding to the dancer performs a dance performance, and when the entire music is played, the character model can complete a complete dance performance.
[0051] Step 404: while playing the music based on the electronic composition, the animation generation module generates and plays the animation based on the feature data.
[0052] In this embodiment, while the client is playing music based on the electronic composition, the animation generation module can generate and play animation based on the feature data.
[0053] In some implementations, the electronic score of the digital music collection may be in MIDI format and include multiple feature data, which may be organized in a time series format. A 3D model may be pre-created in the animation generation module. Based on this, step 404 may specifically include converting the multiple feature data into multiple animation data for controlling the 3D model, and driving the 3D model to move based on the timeline and the multiple animation data to generate the animation.
[0054] In this embodiment, the electronic composition can include multiple feature data. For example, the feature data can include at least one of the following: volume, pitch, track, scale, note, etc. Here, the animation data of a 3D model can refer to a collection of information used to describe the dynamic effects of the 3D model in the animation, such as movement, deformation, and material changes. A single 3D model can have multiple types of animation data. Thus, the multiple feature data in the electronic composition can be converted into multiple types of animation data for controlling the 3D model. This allows the 3D model to be driven to move based on a timeline and multiple types of animation data, generating an animation. For example, assuming the electronic composition includes feature data 1 and feature data 2, and the animation data for a 3D model can include animation data a and animation data b, the name of feature data 1 can be associated with the name of animation data a, and the name of feature data 2 can be associated with the name of animation data b. In this way, feature data 1 and feature data 2 can be converted into animation data a and animation data b for controlling the 3D model, driving the 3D model to move and generate an animation.
[0055] In some implementations, the electronic composition of the digital music collection allows for secondary creation, and the blockchain system's smart contract pre-defines profit distribution rules for the digital collection of secondary creations. Furthermore, the above-mentioned method for displaying the digital music collection may further include the following step 1), specifically:
[0056] Step 1) The played animation is treated as a secondary work for the electronic composition, and a transaction is sent to the blockchain system. The transaction calls a smart contract to create metadata of the secondary digital collection corresponding to the secondary work in the state of the smart contract.
[0057] In this implementation, the metadata of the secondary digital collection may include at least one of the following: video data of the secondary digital collection, the identification of the original author, the account of the original author, the identification of the secondary creator, the account of the secondary creator, the income ratio of original and secondary creations, etc.
[0058] According to another embodiment, a device for displaying digital music collections is provided, which is deployed on a terminal device, and the terminal device may include but is not limited to a smart phone, a tablet computer, a smart watch, a laptop computer, etc.
[0059] Figure 5 FIG. 1 shows a schematic block diagram of an apparatus for displaying digital music collections according to an embodiment. Figure 5 As shown, the device 500 for displaying a digital music collection includes: an acquisition unit 501, configured to obtain an electronic score of the digital music collection from a blockchain system; a parsing unit 502, configured to parse the electronic score to obtain feature data of the electronic score; an association unit 503, configured to associate the feature data with a preset animation generation module; and a display unit 504, configured to generate and play an animation based on the feature data by the animation generation module while playing music based on the electronic score.
[0060] In some optional implementations of this embodiment, the electronic music is in MIDI format, and includes a variety of feature data, which are organized in a time series format; a three-dimensional model is pre-created in the animation generation module; the display unit 504 is further configured to convert the multiple feature data into a variety of animation data for controlling the three-dimensional model, drive the three-dimensional model to move based on the timeline and the multiple animation data, and generate animation.
[0061] In some optional implementations of this embodiment, the metadata of the above-mentioned digital music collection is stored in the contract status of the smart contract of the above-mentioned blockchain system, and the above-mentioned metadata includes the above-mentioned electronic score.
[0062] In some optional implementations of this embodiment, the above-mentioned electronic composition includes an original electronic composition, which is obtained by converting audio data, and the above-mentioned metadata also includes at least one of the following: copyright information of the above-mentioned electronic composition, creator information, information on whether secondary creation is allowed, and owner information.
[0063] In some optional implementations of this embodiment, the apparatus 500 is deployed on a client of the first user, and the owner information is the account of the first user.
[0064] In some optional implementations of this embodiment, the electronic composition allows secondary creation, and the smart contract of the blockchain system presets the profit distribution rules for the digital collection of the secondary creation, and the device 500 also includes: a sending unit (not shown in the figure), configured to send a transaction to the blockchain system by taking the played animation as the secondary creation for the electronic composition, and the transaction calls the smart contract to create metadata of the secondary digital collection corresponding to the secondary creation in the state of the smart contract, wherein the metadata of the secondary digital collection includes at least one of the following: video data of the secondary digital collection, the identification of the original author, the account of the original author, the identification of the secondary creator, the account of the secondary creator, and the profit ratio between the original and secondary creations.
[0065] In some optional implementations of this embodiment, the above-mentioned electronic composition includes a secondary electronic composition, and the metadata of the digital music collection corresponding to the above-mentioned secondary electronic composition includes at least one of the following: the creator information of the original electronic composition corresponding to the above-mentioned secondary electronic composition, the creator information of the above-mentioned secondary electronic composition, and the income ratio of the original and secondary creations.
[0066] In some optional implementations of this embodiment, the above-mentioned digital music collection is a non-fungible token NFT.
[0067] In some optional implementations of this embodiment, the above-mentioned characteristic data includes at least one of the following: volume, pitch, track, and scale.
[0068] According to another embodiment, there is also provided a computer-readable storage medium having a computer program stored thereon, which, when executed in a computer, causes the computer to execute Figure 4 The method described.
[0069] According to another embodiment, there is also provided an electronic device, comprising a memory and a processor, wherein the memory stores an executable code, and when the processor executes the executable code, Figure 4 The method described.
[0070] In the 1990s, technological improvements could be clearly distinguished as either hardware improvements (for example, improvements to circuit structures like diodes, transistors, and switches) or software improvements (improvements to process flows). However, with the advancement of technology, many process flow improvements today can now be considered direct improvements to hardware circuit structures. Designers almost always create the corresponding hardware circuit structure by programming the improved process flow into the hardware circuit. Therefore, it cannot be said that a process flow improvement cannot be implemented using hardware modules. For example, a programmable logic device (PLD), such as a field programmable gate array (FPGA), is an integrated circuit whose logical function is determined by user programming. Designers can "integrate" a digital system on a PLD through their own programming, without having to hire a chip manufacturer to design and manufacture a dedicated integrated circuit chip. Moreover, nowadays, instead of manually fabricating integrated circuit chips, this programming is mostly done using "logic compiler" software. This is similar to the software compiler used when developing programs. Before compilation, the original code must also be written in a specific programming language, called a hardware description language (HDL). There is not just one HDL, but many, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description Language), etc. The most commonly used ones are VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art will also understand that by simply programming the method flow in one of these hardware description languages and then programming it into an integrated circuit, a hardware circuit that implements the logic method flow can be easily obtained.
[0071] The controller can be implemented in any suitable manner. For example, the controller can take the form of a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro)processor, logic gates, switches, application-specific integrated circuits (ASICs), programmable logic controllers, and embedded microcontrollers. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicone Labs C8051F320. The memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art will also know that in addition to implementing the controller in a purely computer-readable program code format, the controller can be implemented in the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers by logically programming the method steps. Therefore, such a controller can be considered a hardware component, and the devices included therein for implementing various functions can also be considered as structures within the hardware component. Or even, the devices for implementing various functions can be considered as both software modules implementing the method and structures within the hardware component.
[0072] The systems, devices, modules or units described in the above embodiments may be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a server system. Of course, this application does not exclude that with the future development of computer technology, the computer that implements the functions of the above embodiments may be, for example, a personal computer, a laptop computer, an in-vehicle human-computer interaction device, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
[0073] Although one or more embodiments of this specification provide method operation steps as described in the embodiments or flow charts, more or fewer operation steps may be included based on conventional or non-creative means. The order of steps listed in the embodiments is only one way of executing the order of many steps and does not represent the only execution order. When the device or terminal product in practice is executed, it can be executed in sequence or in parallel according to the method shown in the embodiments or the drawings (for example, a parallel processor or a multi-threaded processing environment, or even a distributed data processing environment). The term "comprise", "include" or any other variant thereof is intended to cover non-exclusive inclusion, so that the process, method, product or equipment including a series of elements includes not only those elements, but also includes other elements that are not clearly listed, or also includes elements inherent to such process, method, product or equipment. In the absence of more restrictions, it is not excluded that there are other identical or equivalent elements in the process, method, product or equipment including the elements. For example, if the words first, second, etc. are used to represent the name, they do not represent any particular order.
[0074] For the convenience of description, the above devices are described in terms of functions divided into various modules. Of course, when implementing one or more of the present specifications, the functions of each module can be implemented in the same or multiple software and / or hardware, or the module that implements the same function can be implemented by a combination of multiple sub-modules or sub-units, etc. The device embodiments described above are merely schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.
[0075] The present invention is described with reference to flowcharts and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowcharts and / or block diagrams, as well as combinations of processes and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowcharts and / or block diagrams. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0076] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.
[0077] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.
[0078] In a typical configuration, a computing device includes one or more processors (CPUs), input / output interfaces, network interfaces, and memory.
[0079] Memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. Memory is an example of a computer-readable medium.
[0080] Computer-readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer-readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage, graphene storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer-readable media does not include transitory media such as modulated data signals and carrier waves.
[0081] Those skilled in the art will appreciate that one or more embodiments of this specification may be provided as a method, system, or computer program product. Thus, one or more embodiments of this specification may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware. Furthermore, one or more embodiments of this specification may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0082] One or more embodiments of this specification may be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, and the like that perform specific tasks or implement specific abstract data types. One or more embodiments of this specification may also be practiced in distributed computing environments where tasks are performed by remote processing devices connected via a communications network. In distributed computing environments, program modules may be located in local and remote computer storage media, including storage devices.
[0083] The various embodiments in this specification are described in a progressive manner. Similar or identical parts between the various embodiments can be referenced across them. Each embodiment focuses on the differences from the other embodiments. In particular, since the system embodiments are generally similar to the method embodiments, their description is relatively simple. For relevant parts, reference can be made to the description of the method embodiments. Throughout this specification, reference to the terms "one embodiment," "some embodiments," "examples," "specific examples," or "some examples" means that the specific features, structures, materials, or characteristics described in conjunction with that embodiment or example are included in at least one embodiment or example of this specification. In this specification, the schematic representations of these terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples. Furthermore, those skilled in the art may combine and integrate the different embodiments or examples, and features of different embodiments or examples, described in this specification, without conflict.
[0084] The foregoing is merely an example of one or more embodiments of this specification and is not intended to limit the one or more embodiments of this specification. It will be apparent to those skilled in the art that various modifications and variations may be made to one or more embodiments of this specification. Any modifications, equivalent substitutions, or improvements made within the spirit and principles of this specification shall be included within the scope of the claims.
Claims
1. A method for displaying a digital music collection, comprising: Obtain electronic scores of digital music collections from the blockchain system; Analyzing the electronic music composition to obtain characteristic data of the electronic music composition; Associating the feature data with a preset animation generation module; While playing music based on the electronic composition, the animation generation module generates and plays animation based on the feature data.
2. The method according to claim 1, wherein The electronic music composition is in MIDI format, and includes a variety of feature data, which are organized in the form of time series. A three-dimensional model is pre-created in the animation generation module; and The method of generating and playing an animation based on the feature data by the animation generation module while playing music based on the electronic composition includes: The plurality of feature data are converted into a plurality of animation data for controlling the three-dimensional model, and the three-dimensional model is driven to move based on a time axis and the plurality of animation data to generate an animation.
3. The method according to claim 1, wherein The metadata of the digital music collection is stored in the contract state of the smart contract of the blockchain system, and the metadata includes the electronic score.
4. The method according to claim 3, wherein: The electronic composition includes an original electronic composition, which is obtained by converting audio data. The metadata also includes at least one of the following: copyright information of the electronic composition, creator information, information on whether secondary creation is allowed, and owner information.
5. The method according to claim 4, wherein The method is executed by a client of a first user, and the owner information is the account of the first user.
6. The method according to claim 4, wherein: The electronic music composition allows secondary creation, and the smart contract of the blockchain system presets profit distribution rules for digital collections of secondary creations, and the method further includes: The played animation is regarded as a secondary work for the electronic composition, and a transaction is sent to the blockchain system. The transaction calls the smart contract to create metadata of a secondary digital collection corresponding to the secondary work in the state of the smart contract, wherein the metadata of the secondary digital collection includes at least one of the following: video data of the secondary digital collection, an identifier of the original author, an account of the original author, an identifier of the secondary creator, an account of the secondary creator, and a ratio of revenue between original and secondary creations.
7. The method according to claim 1, wherein The electronic composition includes a secondary electronic composition, and the metadata of the digital music collection corresponding to the secondary electronic composition includes at least one of the following: creator information of the original electronic composition corresponding to the secondary electronic composition, creator information of the secondary electronic composition, and the income ratio between the original and secondary creations.
8. The method according to claim 1, wherein The aforementioned music digital collection is a non-fungible token NFT.
9. The method according to claim 1, wherein The characteristic data includes at least one of the following: volume, pitch, track, and scale.
10. A device for displaying digital music collections, comprising: An acquisition unit is configured to acquire the electronic score of the digital music collection from the blockchain system; an analyzing unit configured to analyze the electronic music composition to obtain characteristic data of the electronic music composition; an associating unit configured to associate the feature data with a preset animation generation module; The display unit is configured to, while playing music based on the electronic composition, generate and play animation based on the feature data by the animation generation module.
11. A computer-readable storage medium having a computer program stored thereon, which, when executed in a computer, causes the computer to execute the method according to any one of claims 1 to 9.
12. An electronic device comprising a memory and a processor, characterized in that: The memory stores executable code, and when the processor executes the executable code, the method according to any one of claims 1 to 9 is implemented.