Program, information processing method, information processing device
The information processing device addresses the lack of context in playlist song introductions by generating playlist-related song information, allowing users to understand the rationale behind song selections.
Patent Information
- Application Number
- JP2024086706
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-05-28
- Publication Date
- 2025-12-10
AI Technical Summary
Existing systems fail to provide users with an understanding of the relationship between songs in a playlist, as they output the same song introduction regardless of the playlist context.
An information processing device acquires first information for generating a playlist, selects songs based on this information, and generates song information for a predetermined song based on the playlist's characteristics and the song's characteristics.
Enables users to understand the relationship between songs in a playlist by providing explanatory elements for each song's inclusion, enhancing user engagement and playlist comprehension.
Smart Images

Figure 2025179760000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to a program, an information processing method, an information processing device, and the like. [Background technology]
[0002] When a playlist consisting of multiple songs is automatically generated, users have a demand to know the reasons why the songs were included in the playlist. For example, Patent Document 1 discloses a song introduction generation device that, when a song is designated, acquires introduction data about the song from a song introduction database and outputs the data. However, in the technique disclosed in Patent Document 1, the same song introduction is output for the same song regardless of the playlist, which may prevent the user from understanding the relationship between the playlist and the song. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Patent No. 5034599 Summary of the Invention [Problem to be solved by the invention]
[0004] The present invention has been made in light of the above-mentioned technical background, and its purpose is to enable a user to understand the relationship between a playlist and songs. [Means for solving the problem]
[0005] According to a first aspect of the present invention, a program executed by an information processing device causes the information processing device to acquire first information for generating a playlist, select a plurality of songs to be included in the playlist based on the first information, and generate song information for a predetermined song based on characteristics of a predetermined song from the plurality of songs included in the playlist and the first information. According to a second aspect of the present invention, an information processing method of an information processing device includes obtaining first information for generating a playlist, selecting a plurality of songs to be included in the playlist based on the first information, and generating song information regarding a predetermined song based on characteristics of a predetermined song from the plurality of songs included in the playlist and the first information. According to a third aspect of the present invention, an information processing device includes a control unit that acquires first information for generating a playlist, selects a plurality of songs to be included in the playlist based on the first information, and generates song information about a predetermined song based on characteristics of a predetermined song from the plurality of songs included in the playlist and the first information. According to a fourth aspect of the present invention, a program executed by an information processing device comprises: The information processing device is caused to generate music information about a predetermined music piece based on first information about an existing playlist and characteristics of the predetermined music piece included in the playlist. According to a fifth aspect of the present invention, an information processing method for an information processing device includes: The method includes generating music information about a predetermined song based on first information about an existing playlist and characteristics of the predetermined song included in the playlist. According to a sixth aspect of the present invention, an information processing device includes a control unit that generates music information about a predetermined song based on first information about an existing playlist and characteristics of the predetermined song included in the playlist. [Brief explanation of the drawings]
[0006] [Figure 1-1] FIG. 1 is a diagram showing an example of a system configuration of a communication system according to a first embodiment. [Figure 1-2] FIG. 3 is a diagram showing an example of functions realized by a control unit of the server according to the first embodiment. [Figure 1-3] FIG. 3 is a diagram showing an example of information stored in a storage unit of the server according to the first embodiment. [Figure 1-4] FIG. 3 is a diagram showing an example of account registration data according to the first embodiment. [Figure 1-5] FIG. 3 is a diagram showing an example of music registration data according to the first embodiment. [Figure 1-6] FIG. 2 is a diagram showing an example of functions realized by a control unit of the terminal according to the first embodiment. [Figure 1-7] FIG. 3 is a diagram showing an example of information stored in a storage unit of the terminal according to the first embodiment. [Figure 1-8] FIG. 3 is a diagram showing an example of a screen displayed on a display unit of the terminal according to the first embodiment. [Figure 1-9] FIG. 3 is a diagram showing an example of a screen displayed on a display unit of the terminal according to the first embodiment. [Figure 1-10] FIG. 3 is a diagram showing an example of a screen displayed on a display unit of the terminal according to the first embodiment. [Figure 1-11] FIG. 3 is a diagram showing an example of a screen displayed on a display unit of the terminal according to the first embodiment. [Figure 1-12] FIG. 3 is a diagram showing an example of a screen displayed on a display unit of the terminal according to the first embodiment. [Figure 1-13] FIG. 3 is a diagram showing an example of a screen displayed on a display unit of the terminal according to the first embodiment. [Figure 1-14] FIG. 3 is a diagram showing an example of a screen displayed on a display unit of the terminal according to the first embodiment. [Figure 1-15] 4 is a flowchart showing an example of the flow of processing executed by each device according to the first embodiment. [Figure 2-1] FIG. 10 is a diagram showing an example of a screen displayed on a display unit of a terminal according to a second embodiment. [Figure 2-2] FIG. 10 is a diagram showing an example of a screen displayed on a display unit of a terminal according to a second embodiment. [Figure 2-3] FIG. 10 is a diagram showing an example of a screen displayed on a display unit of a terminal according to a second embodiment. [Figure 2-4] 10 is a flowchart showing an example of the flow of processing executed by each device according to the second embodiment. [Figure 3-1] FIG. 11 is a diagram showing an example of information stored in a storage unit of a server according to a third embodiment. [Figure 3-2] FIG. 11 is a diagram showing an example of account management data according to the third embodiment. [Figure 3-3] FIG. 11 is a diagram showing an example of a screen displayed on a display unit of a terminal according to a third embodiment. [Figure 3-4] FIG. 11 is a diagram showing an example of a screen displayed on a display unit of a terminal according to a third embodiment. [Figure 3-5] FIG. 11 is a diagram showing an example of a screen displayed on a display unit of a terminal according to a third embodiment. [Figure 3-6] FIG. 11 is a diagram showing an example of a screen displayed on a display unit of a terminal according to a third embodiment. [Figure 3-7] 10 is a flowchart showing an example of the flow of processing executed by each device according to the third embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0007] <Compliance with legal matters> It should be noted that the disclosures set forth herein are subject to compliance with the laws of the country of implementation, such as communications privacy, as required for the implementation of the disclosures.
[0008] <Embodiment> In this specification, for the sake of clarity, there are places where the words "for example" or "for example" are used, but please note that not only these places but also the entire embodiment described below are not limited to the contents of these descriptions.
[0009] An embodiment for implementing a program etc. according to the present disclosure will be described with reference to the drawings.
[0010] The production of a terminal of the claimed invention (terminal of the claimed invention) may include, for example, the concept that a state is created in which the functions of the claimed invention can be realized (a state in which the claimed invention can be executed) on a terminal owned (possessed) by a user by receiving (or receiving and storing) a program (for example, an application program) described in this specification.
[0011] Furthermore, the production of the system of the invention claimed in the present application (the system of the invention of the present application) may include, for example, the concept that a state in which the functions of the invention of the system claimed in the present application can be realized (a state in which the invention claimed in the present application can be executed) is created by receiving a program described in this specification (for example, an application program) transmitted from a server included in the system of the present application at a terminal included in the system of the present application (or by storing the received program in the terminal).
[0012] In this specification, a system may be, for example, configured to include a plurality of devices. The plurality of devices may be a combination of devices of the same type, a combination of devices of different types, or a combination of devices of the same type and devices of different types. A system can also be thought of as, for example, a plurality of devices working together to perform some kind of processing.
[0013] Furthermore, a system relating to a client (client device) and a server can be considered to be, for example, at least one of the following: (1) Terminals and servers (2) Server (3) Terminal
[0014] (1) is, for example, a system including at least one terminal and at least one server. One example of this is a client-server system.
[0015] The server is configured by the following devices, for example, and may be a single device or a combination of multiple devices.
[0016] Specifically, a server is configured to have, for example, at least one processor (for example, CPU: Central Processing Unit, GPU: Graphics Processing Unit, APU: Accelerated Processing Unit, DSP: Digital Signal Processor (for example, ASIC: Application Specific Integrated Circuit, FPGA: Field Programmable Gate Array), etc.), computer device (processor + memory), control device, arithmetic device, processing device, etc., and may be configured to have multiple of the same type of device (for example, CPU + CPU, homogeneous multi-core processor, etc.), or multiple of different types of device (for example, CPU + DSP, heterogeneous multi-core processor, etc.), or may be a combination of multiple devices (for example, processor + computer device, processor + arithmetic device, multiple devices made heterogeneous, etc.). The processor may be a virtual processor.
[0017] Furthermore, when a server performs some processing, if the server is configured with a single device, the processing described in the embodiments is performed by the single device. Furthermore, if the server is configured with multiple devices, one device may perform some of the processing, and the other device may perform other processing. For example, if the server is configured with a processor and an arithmetic device, the processor may perform a first processing, and the arithmetic device may perform a second processing. Furthermore, when a plurality of devices are used, the devices may be located at positions physically separated from one another.
[0018] Furthermore, the server functions may be provided in the form of PaaS, IaaS, or SaaS in cloud computing, for example.
[0019] The control unit of the system can be at least one of the control unit of the terminal and the control unit of the server. That is, for example, the control unit of the system can be any of (1A) only the control unit of the terminal, (1B) only the control unit of the server, or (1C) both the control unit of the terminal and the control unit of the server.
[0020] Furthermore, the control and processing (hereinafter collectively referred to as "control, etc.") performed by the control unit of the system may be performed by (1A) only the control unit of the terminal, (1B) only the control unit of the server, or (1C) both the control unit of the terminal and the control unit of the server. In addition, in (1C), for example, some of the controls performed by the control unit of the system may be performed by the control unit of the terminal, and the remaining controls may be performed by the control unit of the server. In this case, the allocation (allocation) of the controls may be equal or may be allocated in different proportions.
[0021] Furthermore, when referring to the communication unit of a server, if the server is configured with a single device, it may refer to the communication unit itself that the single device has, or if the server is configured with multiple devices, it may be configured to include each communication unit that each device has. For example, if a server comprises a first device and a second device, and the first device has a first communication unit and the second device has a second communication unit, the communication unit of the server may be considered to include the first communication unit and the second communication unit.
[0022] (2) can be, for example, a system consisting of multiple servers (hereinafter referred to as a "server system"). In this case, the configuration of each server can be similarly applied to the configuration described above.
[0023] The control etc. performed by the server system may be performed by only one of the multiple servers (2A), by only the other servers (2B), or by both the one server and the other servers (2C). In addition, in (2C), for example, one server may perform some of the control, etc., performed by the server system, and another server may perform the remaining control, etc. In this case, the allocation (allocation) of the control, etc. may be equal or may be allocated in different proportions.
[0024] (3) can be, for example, a system consisting of multiple terminals. This system can be, for example, the following system. A system that gives server functions to terminals (distributed system). This can be realized, for example, using blockchain technology. A system in which terminals communicate wirelessly with each other. This can be achieved, for example, by using short-range wireless communication technology such as Bluetooth (registered trademark) to communicate in a P2P (peer-to-peer) format.
[0025] The above is not limited to the control unit, but also applies to each functional unit such as an input / output unit, a communication unit, a storage unit, and a clock unit that may be components of the system.
[0026] In the following embodiment, a system including a terminal and a server (a client-server system, for example) will be described as an example. It is also possible to apply the server system described in (2) above as the server.
[0027] Furthermore, instead of a system including a terminal and a server, it is also possible to apply a system that does not include a server, such as the system (3) above. In this case, the embodiment can be configured based on the above-mentioned blockchain technology, etc. Specifically, for example, data stored and managed in a server described in the following embodiment is stored on the blockchain. Then, a terminal generates a transaction to the blockchain, and when the transaction is approved on the blockchain, the data stored on the blockchain is updated.
[0028] It should be noted that even when the term "terminal" is used, this is not limited to the meaning of a terminal as a client device in a client server. That is, a terminal may include the concept of a device that is not in a client-server context. Furthermore, when a part or all of the inventions described in this specification are executed by a program installed in a terminal, the program may be a program that has been installed in the terminal beforehand at the time of shipping the terminal (for example, a program pre-installed by the terminal manufacturer), or a program that is additionally installed after shipping the terminal. In other words, it also includes the case where a program included in an application or the like that is installed by the terminal seller or end user via a predetermined recording medium or a wired connection to a server or a connection via the Internet executes the inventions described in this specification.
[0029] Furthermore, in this specification, the expression "through a communication I / F" is used as appropriate. This may, for example, indicate that a device transmits and receives various information and data via a communication I / F (via a communication unit) based on the control of a control unit (such as a processor).
[0030] Furthermore, in this specification, when the terms "related to" or "related to" are used, for example, "B related to A" or "B related to A" may mean "B" that has some kind of relationship with "A." Specific examples of this will be described later.
[0031] Furthermore, in this specification, when a device performs processing on two or more objects, such as "sending A and B" or "receiving A and B," this may include performing "A" and "B" at the same time (hereinafter referred to as "simultaneous"), and performing "A" and "B" at different times (hereinafter referred to as "non-simultaneous"). For example, when referring to transmitting first information and second information, this may include both the concepts of transmitting the first information and the second information at the same time, and transmitting the first information and the second information at different times. In addition, taking into account the lag (time lag), "simultaneous" may include "almost simultaneously."
[0032] Note that even though "A" and "B" are performed at different times, this only needs to be done with "A" and "B" as the processing targets, and the purposes do not necessarily have to be the same. For example, when the first information and the second information are transmitted as described above, it is sufficient to transmit the first information and the second information, and this may include cases where the first information and the second information are transmitted for the same purpose, as well as cases where the first information and the second information are transmitted for different purposes.
[0033] In the following embodiments, a messaging service is exemplified as an example of a service that allows users to chat (hereinafter referred to as a "chat service"). Furthermore, an application that realizes the chat service is referred to as a "chat application," and an application that realizes the messaging service is referred to as a "messaging application." A chat application may, for example, allow users to chat in chat rooms. In the following embodiments, the name of the messaging application may be shown as "Messaging App" on the screen images.
[0034] Note that messaging services (MS) (including instant messaging services (IMS)) can also be considered one form of social networking services (SNS). Therefore, messaging services and social networking services may or may not be distinguished. In other words, messaging services may be included in social networking services.
[0035] In the following embodiments, an example of a messaging service is an IMS (Instant Messaging Service) that transmits and receives simple messages between a plurality of devices (terminals, for example) via a server. An instant messaging application may, for example, allow users to talk in talk rooms.
[0036] A chat room (for example, a talk room) can be a UI (User Interface) or GUI (Graphical User Interface) that allows each user to view content transmitted and received between the terminals of multiple users.
[0037] In a messaging service, for example, a user can register any account as a "friend" and exchange messages via a chat room.
[0038] Note that "friend" may refer to, for example, a relationship between a first user and a second user when the first user's account and the second user's account in a messaging application are unilaterally or bilaterally associated. For example, if a first user's account and a second user's account are mutually associated, the first user and the second user may be said to be "friends." Also, for example, if a first user's account is associated with a second user's account, the first user and the second user may be said to be "friends" even if the second user's account is not associated with the first user's account.
[0039] In addition, talk rooms can include one-on-one user talk rooms (hereinafter referred to as "one-on-one talk rooms"), group talk rooms including multiple users (hereinafter referred to as "group talk rooms"), and talk rooms with OA businesses (for example, businesses affiliated with messaging service providers) (hereinafter referred to as "OA talk rooms"), etc.
[0040] Furthermore, a messaging application account that is an account of a business operator and not a general user may be referred to as an "OA (Official Account)," and the user of this official account may be referred to as an "official user." This may also be referred to as an "official account user" or an "official account business operator," etc. In contrast, a messaging application account that is owned by a user who is not an OA provider is called a "general account," and a user of a general account is called a "general user." This may also be called a "general account user," etc. In other words, messaging application accounts may include general accounts and official accounts.
[0041] Furthermore, for example, an OA business may also be able to use a terminal similar to that of a user with a general account to send and receive messages to and from other devices via the server.
[0042] Furthermore, a message (message information) may be, for example, information that defines the sender and destination used in a messaging service, and may be information that is composed of identification information (message ID) for identifying the message and message content. Furthermore, the message content may refer to the contents of the message excluding the message ID, for example. The message content may be one or more pieces of content.
[0043] Moreover, information set as identification information for identifying a message is called a "message ID." It can also be considered that message content included in messages with the same message ID is identified by this message ID. Therefore, identification information for identifying a message can also be considered to be essentially synonymous with identification information for identifying message content. Alternatively, individual identification information (message content ID) may be set for each message content, but this is not required.
[0044] The content may include, for example, text content in text format, image content in image format (including at least one of still images and moving images), and sound content in sound format (including voice). In addition, it may also include operation content such as buttons and icons for user operations, and link content such as URIs (including URLs).
[0045] The text may include, for example, at least one of national characters represented by character codes, extended characters, machine-dependent characters, numbers, symbols, figures, and codes. The text does not have to include at least one of the above characters, extended characters, machine-dependent characters, numbers, symbols, figures, and signs, and may include other text.
[0046] The image may include at least one of various types of image information such as an icon, a button, a stamp, a pictogram, and a banner image.
[0047] Unlike the above definition, it is possible to define that a superordinate concept of a message is content, or that content and message are synonymous, but it is not necessary to define them in this way.
[0048] <First Example> In the first embodiment, a server, which is a playlist generation device, generates a playlist consisting of multiple songs based on a prompt (playlist generation instruction sentence) entered by a first user, for example. The server also generates, for each song included in the playlist, reasons (referred to as "explanatory elements") why the song was selected for the playlist based on the prompt, and presents the explanation elements to the first user along with the playlist. The contents described in the first embodiment can be similarly applied to any of the other embodiments and other modified examples.
[0049] In the following embodiments, a music streaming service is exemplified as an example of a service that allows users to listen to music. An application for implementing the music streaming service is referred to as a "music application." The music application allows users to listen to any music streamed by the music streaming service. Furthermore, users can play desired music continuously by using a playlist consisting of the desired music. In the following description, the name of the music application will be referred to as "Music App" where appropriate.
[0050] As an example of a form for realizing a music distribution service, any of the following forms can be applied. (A1) A messaging application with a music distribution service function (A2) A form in which a messaging service function is provided as one of the functions of a music application that provides a music distribution service (B1) A form that configures an application (integrated application) that has the functions of a messaging service and a music distribution service. (C1) A form in which a music application is configured as a separate application from a messaging application (C2) A form in which a messaging application is configured as a separate application from a music application (D) A music application configured as a standalone application
[0051] In the cases of (A1), (A2), and (B1), for example, the messaging service provider may be the same provider as the music distribution service provider. In this case, one method is to use a common account for the user's account in the messaging application and the user's account in the music application. Alternatively, in this case, the user's account in the messaging application and the user's account in the music application may be automatically associated (linked).
[0052] In the forms (C1) to (C2), for example, the messaging service provider may be a different provider from the music distribution service provider, or may be the same provider. In addition, in the modes (C1) to (C2), a process for associating a user's account in the messaging application with a user's account in the music application (a linking process) can be performed.
[0053] In the following, as an example, the server 10 that provides the music distribution service is operated and managed by a music distribution service provider in accordance with the forms (C1) and (C2). For simplicity of explanation, the music distribution service provider and the messaging service provider are assumed to be the same provider, and the user's account in the messaging application and the user's account in the music application are assumed to be a common account.
[0054] In the following description, the user of terminal 20A communicating with server 10 will be referred to as "user AA," the user of terminal 20B as "user BB," the user of terminal 20C as "user CC," . . .
[0055] <System configuration> 1-1 is a diagram illustrating an example of a system configuration of a communication system 1 according to this embodiment. In the communication system 1, for example, a server 10 is connected to one or more terminals 20 (terminal 20A, terminal 20B, terminal 20C, ...) via a network 30.
[0056] The server 10 has a function of providing, for example, a messaging service and a music distribution service to a terminal 20 or the like owned by a user via a network 30 . The server 10 can also be expressed as a messaging service server, a music distribution server, an SNS server, etc. In this embodiment, the user of the server 10 is, for example, a company that provides a messaging service or a music distribution service (a messaging service or a music distribution service provider). Note that the number of servers 10 and the number of terminals 20 connected to the network 30 are not limited to those described above. In this embodiment, the "music distribution service" is a service provided by a business operator (server 10) such as a company that provides music distribution services, and may be provided to a user (user terminal 20), for example.
[0057] The terminal 20 (terminal 20A, terminal 20B, terminal 20C, etc.) may be any information processing terminal capable of implementing the functions described in each embodiment. Examples of the terminal 20 include a smartphone, a mobile phone (feature phone), a computer (including, but not limited to, a desktop, laptop, tablet, etc.), a media computer platform (including, but not limited to, a cable or satellite set-top box, digital video recorder, etc.), a handheld computer device (including, but not limited to, a PDA (personal digital assistant), email client, etc.), a wearable device (glasses-type device, watch-type device, etc.), a VR (Virtual Reality) terminal, a smart speaker (a device for voice recognition), or other types of computers or communication platforms. The terminal 20 may also be referred to as an information processing terminal.
[0058] For example, the configurations of terminal 20A, terminal 20B, and terminal 20C can be the same. Furthermore, as necessary, the terminal used by user X may be expressed as terminal 20X, and user information in a predetermined service associated with user X or terminal 20X may or may not be expressed as user information X. The user information is information of a user associated with an account used by the user in a predetermined service. The user information includes, but is not limited to, information associated with a user, such as the user's name, an icon image of the user, the user's age, the user's gender, the user's address, the user's hobbies and interests, and a user identifier, which is input by the user or assigned by the predetermined service, and may be any one of these, or a combination thereof, or may not be the same.
[0059] The network 30 serves to connect the devices that make up the communication system 1. In other words, the network 30 refers to a communication network that provides connection paths so that the above-mentioned various devices can be connected and then transmit and receive data.
[0060] One or more portions of network 30 may or may not be a wired or wireless network. Network 30 may include, by way of example, an ad hoc network, an intranet, an extranet, a virtual private network (VPN), a local area network (LAN), a wireless LAN (WLAN), a wide area network (WAN), a wireless WAN (WWAN), a metropolitan area network (MAN), a portion of the Internet, a portion of the Public Switched Telephone Network (PSTN), a cellular network, integrated service digital networks (ISDN), wireless LAN, long term evolution (LTE), code division multiple access (CDMA), Bluetooth, satellite communications, etc., or a combination of two or more thereof. Network 30 may include one or more networks 30.
[0061] The server 10 (which is not limited to a server, an example of an information processing device, or an information management device) has a function of providing a predetermined service (a messaging service or a music distribution service in this embodiment) to the terminal 20, etc. The server 10 may be any information processing device that can realize the functions described in each embodiment. The server 10 includes, for example, a server device, a computer (for example, a desktop, a laptop, a tablet, etc.), a media computer platform (for example, a cable or satellite set-top box, a digital video recorder), a handheld computer device (for example, a PDA, an email client, etc.), or other types of computers or communication platforms. The server 10 may also be referred to as an information processing device. When there is no need to distinguish between the server 10 and the terminal 20, the server 10 and the terminal 20 may or may not each be referred to as an information processing device.
[0062] [Hardware (HW) configuration of each device] The hardware configuration of each device included in the communication system 1 will be described.
[0063] (1) Hardware configuration of the terminal FIG. 1-1 shows an example of the hardware configuration of the terminal 20. The terminal 20 includes, for example, a control unit 21 (CPU: central processing unit), a storage unit 28, a communication I / F 22 (interface), an input / output unit 23, a clock unit 29A, and a position calculation information detection unit 29B. The HW components of the terminal 20 are connected to each other, for example, via a bus B. It is not essential that the HW configuration of the terminal 20 includes all of the components. For example, the terminal 20 may or may not be configured such that individual components or multiple components are detachable.
[0064] The communication I / F 22 transmits and receives various data via the network 30. The communication may be performed either wired or wirelessly, and any communication protocol may be used as long as mutual communication is possible. The communication I / F 22 has a function of communicating with various devices such as the server 10 via the network 30. The communication I / F 22 transmits various data to various devices such as the server 10 in accordance with instructions from the control unit 21. The communication I / F 22 also receives various data transmitted from various devices such as the server 10 and transmits it to the control unit 21. The communication I / F 22 may also be simply referred to as a communication unit. When the communication I / F 22 is configured as a physically structured circuit, it may also be referred to as a communication circuit.
[0065] The input / output unit 23 includes a device for inputting various operations to the terminal 20, a device for outputting processing results processed by the terminal 20, etc. The input / output unit 23 may be an integrated input unit and an output unit, or may be separate input unit and output unit, or may not be so.
[0066] The input unit is realized by any one or a combination of all types of devices that can accept input from a user and transmit information related to the input to the control unit 21. Examples of the input unit include hardware keys such as a touch panel, a touch display, and a keyboard, a pointing device such as a mouse, a camera (for inputting operations via moving images), and a microphone (for inputting operations by voice).
[0067] The output unit is realized by any one or a combination of all types of devices that can output the processing results processed by the control unit 21. Examples of the output unit include a touch panel, a touch display, a speaker (audio output), a lens (for example, 3D (three dimensions) output or hologram output), a printer, etc.
[0068] Although this is merely an example, the input / output unit 23 includes a display unit 24, a sound input unit 25, a sound output unit 26, and an imaging unit 27, for example.
[0069] The display unit 24 is realized by any one of all types of devices or a combination thereof that can display according to the display data written to the frame buffer. Examples of the display unit 24 include a touch panel, a touch display, a monitor (e.g., a liquid crystal display or an organic electroluminescence display (OLED)), a head mounted display (HDM), projection mapping, a hologram, and a device that can display images, text information, etc. in air (which may or may not be a vacuum). Note that these display units 24 may or may not be capable of displaying display data in 3D.
[0070] The sound input unit 25 is used to input sound data (including voice data; the same applies below.) The sound input unit 25 includes a microphone and the like. The sound output unit 26 is used to output sound data and includes a speaker and the like. The imaging unit 27 is used to acquire image data (including still image data and moving image data; the same applies below.) The imaging unit 27 includes a camera and the like.
[0071] When the input / output unit 23 is a touch panel, the input / output unit 23 and the display unit 24 may be disposed opposite each other and have approximately the same size and shape.
[0072] The clock unit 29A is a built-in clock of the terminal 20, and outputs time information (timekeeping information). The clock unit 29A is configured to include, for example, a clock that uses a crystal oscillator. The clock unit 29A can also be expressed as, for example, a timekeeping unit or a time information detection unit.
[0073] The clock unit 29A may or may not have a clock that conforms to the NITZ (Network Identity and Time Zone) standard or the like.
[0074] The position calculation information detection unit 29B is a functional unit that detects (measures) information (hereinafter referred to as "position calculation information") necessary for the control unit 21 to calculate (measure) the position of its own terminal 20. The position calculation information detection unit 29B can also be expressed as a position calculation sensor unit, for example.
[0075] The position calculation information detection unit 29B includes, for example, a satellite positioning sensor (satellite positioning unit) which is a sensor or unit for calculating the position of the terminal 20 using a satellite positioning system such as GPS (Global Positioning System), an inertial measurement sensor (inertial measurement unit (IMU (Inertial Measurement Unit))) which is a sensor or unit for calculating the position of the terminal 20 using an inertial navigation system, a UWB positioning sensor (UWB positioning unit) which is a sensor or unit for calculating the position of the terminal 20 using UWB (Ultra Wide Band), and the like.
[0076] The satellite positioning unit includes, for example, an RF receiving circuit that converts RF (Radio Frequency) signals, including positioning satellite signals transmitted from positioning satellites and received by an antenna (not shown), into digital signals, and a baseband processing circuit that performs correlation calculation processing on the digital signals output from the RF receiving circuit to capture the positioning satellite signals, and outputs information such as satellite orbit data and time data extracted from the positioning satellite signals as information for position calculation.
[0077] The inertial measurement unit has an inertial sensor that is a sensor that detects information necessary for calculating the position of the terminal 20 by inertial navigation calculation. The inertial sensor includes, for example, a three-axis acceleration sensor and a three-axis gyro sensor, and outputs the acceleration detected by the acceleration sensor and the angular velocity detected by the gyro sensor as information for position calculation.
[0078] The UWB positioning unit includes, for example, an ultra-wideband RF (Radio Frequency) receiving circuit that converts an ultra-wideband RF signal, including an ultra-wideband pulse signal for positioning transmitted from a positioning beacon and received by an antenna not shown, into a digital signal, and a relative position calculation processing circuit that calculates the relative position between the terminal 20 and the positioning beacon based on the digital signal output from the ultra-wideband RF receiving circuit. For example, the UWB positioning unit may or may not cause the terminal 20 to function as a positioning beacon by transmitting an ultra-wideband RF signal including an ultra-wideband pulse signal for positioning from an antenna not shown.
[0079] For example, control unit 21 calculates the position of its own terminal 20 at regular intervals or specific intervals based on the position calculation information detected by position calculation information detection unit 29B. The terminal position is referred to as the "terminal position," and the calculated terminal position is referred to as the "calculated terminal position." Control unit 21 may, but need not, associate the calculated terminal position with the date and time when the calculated terminal position was calculated and store the calculated terminal position in storage unit 28 as calculated terminal position history data.
[0080] The control unit 21 has a circuit physically structured to execute the functions realized by the code or instructions contained in the program, and is realized by, for example, a data processing device built into hardware. Therefore, the control unit 21 may or may not be expressed as a control circuit.
[0081] The control unit 21 includes, for example, a central processing unit (CPU), a microprocessor, a processor core, a multiprocessor, an application-specific integrated circuit (ASIC), and a field programmable gate array (FPGA).
[0082] The storage unit 28 has a function of storing various programs and various data required for the operation of the terminal 20. The storage unit 28 includes, for example, various storage media such as a hard disk drive (HDD), a solid state drive (SSD), a flash memory, a random access memory (RAM), and a read only memory (ROM). Furthermore, the storage unit 28 may or may not be expressed as a memory.
[0083] Terminal 20 stores program P in storage unit 28, and by executing this program P, control unit 21 executes the processing of each unit included in control unit 21. In other words, program P stored in storage unit 28 causes terminal 20 to realize each function executed by control unit 21. Furthermore, this program P may or may not be expressed as a program module.
[0084] (2) Server hardware configuration FIG. 1-1 shows an example of the hardware configuration of the server 10. In FIG. The server 10 includes, for example, a control unit 11 (CPU), a memory unit 15, a communication I / F 14 (interface), an input / output unit 12, a display unit 13, and a clock unit 19. The components of the HW of the server 10 are connected to each other, for example, via a bus B. Note that the HW of the server 10 does not necessarily have to include all components as the configuration of the HW of the server 10. For example, the HW of the server 10 may or may not be configured so that individual components or multiple components can be removed.
[0085] The control unit 11 has circuits that are physically structured to execute the functions realized by the codes or instructions contained in the program, and is realized, for example, by a data processing device built into hardware.
[0086] The control unit 11 is typically a central processing unit (CPU), but may also be a microprocessor, a processor core, a multiprocessor, an ASIC, or an FPGA. In the present disclosure, the control unit 11 is not limited to these.
[0087] The storage unit 15 has a function of storing various programs and various data required for the operation of the server 10. The storage unit 15 is realized by various storage media such as an HDD, an SSD, and a flash memory. However, in the present disclosure, the storage unit 15 is not limited to these. Furthermore, the storage unit 15 may or may not be expressed as a memory.
[0088] The communication I / F 14 transmits and receives various data via the network 30. The communication may be performed either wired or wirelessly, and any communication protocol may be used as long as mutual communication is possible. The communication I / F 14 has a function of communicating with various devices such as the terminal 20 via the network 30. The communication I / F 14 transmits various data to various devices such as the terminal 20 in accordance with instructions from the control unit 11. The communication I / F 14 also receives various data transmitted from various devices such as the terminal 20 and transmits it to the control unit 11. The communication I / F 14 may also be simply referred to as a communication unit. When the communication I / F 14 is configured as a physically structured circuit, it may also be referred to as a communication circuit.
[0089] The input / output unit 12 includes a device for inputting various operations to the server 10, a device for outputting processing results processed by the server 10, etc. The input / output unit 12 may be an integrated input unit and an output unit, or may be separate input unit and output unit, or may not be the same.
[0090] The input unit is realized by any one of or a combination of all types of devices that can accept input from a user and transmit information related to the input to the control unit 11. The input unit is typically realized by hardware keys such as a keyboard or a pointing device such as a mouse. Note that the input unit may or may not include, for example, a touch panel, a camera (for operation input via moving images), or a microphone (for operation input by voice).
[0091] The output unit is realized by any one or a combination of all kinds of devices that can output the processing results processed by the control unit 11. Examples of the output unit include a touch panel, a touch display, a speaker (sound output), a lens (for example, 3D (three dimensions) output or hologram output), a printer, etc.
[0092] By way of example only, the input / output unit 12 includes a display unit 13, for example.
[0093] The display unit 13 is realized by a display or the like. The display is typically realized by a monitor (for example, a liquid crystal display or an OLED (organic electroluminescence display)). The display may or may not be a head-mounted display (HDM) or the like. These displays may or may not be capable of displaying display data in 3D. In the present disclosure, the display is not limited to these.
[0094] The clock unit 19 is a built-in clock of the server 10, and outputs time information (timekeeping information). The clock unit 19 is configured to include, for example, an RTC (Real Time Clock) as a hardware clock, a system clock, etc. The clock unit 19 can also be expressed as, for example, a timekeeping unit or a time information detection unit.
[0095] (3) Other Server 10 stores program P in storage unit 15, and by executing this program P, control unit 11 executes the processes of each unit included in control unit 11. In other words, program P stored in storage unit 15 causes server 10 to realize each function executed by control unit 11. This program P may or may not be expressed as a program module. The same applies to other devices.
[0096] In each embodiment of the present disclosure, the description will be given assuming that the CPU of the terminal 20 and / or the server 10 executes the program P to realize the present invention. The same applies to other devices.
[0097] The control unit 21 of the terminal 20 and / or the control unit 11 of the server 10 may or may not realize each process not only by a CPU having a control circuit but also by a logic circuit (hardware) formed in an integrated circuit (IC (Integrated Circuit) chip, LSI (Large Scale Integration)), or a dedicated circuit. These circuits may be realized by one or more integrated circuits, and multiple processes shown in each embodiment may or may not be realized by a single integrated circuit. LSIs may also be called VLSIs, super LSIs, ultra LSIs, etc. depending on the degree of integration. Therefore, the control unit 21 may or may not be expressed as a control circuit. The same applies to other devices.
[0098] Furthermore, the program P (e.g., a software program, a computer program, or a program module) of each embodiment of the present disclosure may or may not be provided in a state stored in a computer-readable storage medium. The storage medium can store the program P in a "non-transitory tangible medium." The program P may or may not be intended to realize part of the functions of each embodiment of the present disclosure. Furthermore, the program P may or may not be a so-called differential file (differential program) that can realize the functions of each embodiment of the present disclosure in combination with a program P already recorded on a storage medium.
[0099] The storage medium may include one or more semiconductor-based or other integrated circuits (ICs) (such as, for example, field programmable gate arrays (FPGAs) or application-specific ICs (ASICs)), hard disk drives (HDDs), hybrid hard drives (HHDs), optical disks, optical disk drives (ODDs), magneto-optical disks, magneto-optical drives, floppy diskettes, floppy disk drives (FDDs), magnetic tapes, solid-state drives (SSDs), RAM drives, secure digital cards, or drives, any other suitable storage media, or any suitable combination of two or more of these. The storage medium may be volatile, nonvolatile, or a combination of volatile and nonvolatile, where appropriate. The storage medium is not limited to these examples and may be any device or medium capable of storing the program P. Furthermore, the storage medium may or may not be referred to as memory.
[0100] The server 10 and / or the terminal 20 can implement the functions of the multiple functional units shown in each embodiment by reading out the program P stored in the storage medium and executing the read out program P. The same applies to other devices.
[0101] Furthermore, the program P of the present disclosure may or may not be provided to the server 10 and / or the terminal 20 via any transmission medium capable of transmitting a program (such as a communication network or broadcast waves). The server 10 and / or the terminal 20 executes the program P downloaded via the Internet or the like, for example, to realize the functions of the multiple functional units shown in each embodiment. The same applies to other devices.
[0102] In addition, each embodiment of the present disclosure may be realized in the form of a data signal in which the program P is embodied by electronic transmission. At least a part of the processing in the server 10 and / or the terminal 20 may or may not be realized by cloud computing configured by one or more computers. At least a part or all of the processing in the terminal 20 may or may not be performed by the server 10. In this case, at least a part or all of the processing of each functional unit of the control unit 21 of the terminal 20 may or may not be performed by the server 10. At least a part or all of the processing in the server 10 may or may not be performed by the terminal 20. In this case, at least a part or all of the processing of each functional unit of the control unit 11 of the server 10 may or may not be performed by the terminal 20. Unless explicitly stated otherwise, the judgment configuration in the embodiments of the present disclosure is not essential, and a predetermined process may or may not be performed when the judgment condition is met, or when the judgment condition is not met.
[0103] The program of the present disclosure is implemented using, for example, a scripting language such as ActionScript or JavaScript (registered trademark), a compiler language such as Objective-C or Java (registered trademark), or a markup language such as HTML Living Standard.
[0104] [Functional configuration of each device] (1) Server functional configuration FIG. 1-2 is a diagram showing an example of functions realized by the control unit 11 of the server 10 in this embodiment. The control unit 11 includes, for example, an application management processing unit 111 and a language model unit 113 as functional units.
[0105] The application management processing unit 111 has a function of executing application management processing in accordance with an application management processing program 151 stored in the storage unit 15, for example.
[0106] The language model unit 113 is implemented by a language model such as HyperCLOVA, ChatGPT, or Gemini, and has a function of generating a response sentence based on a prompt. The language model unit 113 may be a question answering system or a question answering model. Furthermore, the language model unit 113 may have a function of Retrieval-Augmented Generation (RAG) that can refer to external data such as the music registration data 155, for example.
[0107] FIG. 1-3 is a diagram showing an example of information stored in the storage unit 15 of the server 10 in this embodiment. The storage unit 15 stores, for example, an application management processing program 151 executed as application management processing, account registration data 153, and music registration data 155.
[0108] The account registration data 153 is registration data relating to the account of the application (music application in this embodiment), and an example of the data configuration is shown in FIG. 1-4. The account registration data 153 stores, for example, a user name, an application ID, and other registration information in association with each other.
[0109] The user name is the name of the account of the terminal 20 that uses this application, and for example, the name that the user of the terminal 20 registers when using the application is stored.
[0110] The application ID is information used to identify an application account, or the account itself. This application ID is preferably a value that is unique for each account, and for example, a unique value (proper value) is set and stored by the server 10 for each account. The application ID is information associated with the terminal 20 or the user of the terminal 20, and is an example of information about the terminal or information about the user of the terminal.
[0111] Other registration information may include, for example, various types of information such as identification information for identifying terminal 20, the telephone number of terminal 20 (terminal telephone number), email address (terminal email address), and authentication information such as passwords (login password, authentication password, etc.) used for various authentications in applications.
[0112] The identification information for identifying the terminal 20 may be, for example, a terminal ID (for example, an IMEI (International Mobile Equipment Identity)).
[0113] For example, the other registration information may be stored in association with user information.
[0114] Note that the application ID may or may not be replaced with a "user ID." Furthermore, if the application allows only one account to be registered per terminal 20, then for example, "identification information for identifying the terminal 20 = identification information for identifying the user of the terminal 20 = application ID."
[0115] Also, for example, it may or may not be possible to assign multiple terminal IDs to one application ID. In this case, it may or may not be possible to simultaneously launch an application on multiple terminals 20 using one application ID as an identification (login) target.
[0116] Furthermore, instead of various IDs such as application IDs, it is also possible to apply a method of managing accounts using information such as terminal phone numbers. In this case, instead of storing information on IDs such as application IDs in account registration data 153, information on terminal telephone numbers and the like can be stored in account registration data 153. It is also possible to have one-to-one correspondence between information on IDs such as application IDs and information on terminal telephone numbers and the like, without replacing information on IDs such as application IDs with information on terminal telephone numbers and the like, but this is not required.
[0117] In the following embodiment, for the sake of simplicity, it is assumed that one account is registered for one terminal 20. Furthermore, in this case, as described above, "identification information for identifying terminal 20 = identification information for identifying the user of terminal 20 = application ID," so the term "user of the account" used in the following explanation may or may not be substantially synonymous with "terminal of the account."
[0118] The music registration data 155 is, for example, management data for music distributed in a music distribution service, and an example of the data configuration is shown in FIG. 1-5. The music registration data 155 stores, in association with each other, for example, a music ID, a music title, an artist name, lyrics information, audio information, playback information, and other registered information.
[0119] The song ID is information for identifying songs distributed in a song distribution service, and is set and stored as a unique value (inherent value) for each song by the server 10 when the song is registered, for example.
[0120] The name (title) of the song identified by the song ID is set and stored in the song name field. The artist name is set and stored as the name of the artist of the song identified by the song ID.
[0121] The lyric information is information relating to the lyrics of this song. For example, the lyrics of the song may be stored in the lyric information as text. Furthermore, the lyric information may store, for example, analysis results relating to the characteristics of the lyrics of the song (for example, "light and cheerful lyrics," "lyrics about a heavy hearted love," "lyrics about a restless spring," etc.), or metadata for use in searching for lyrics of the song (for example, "daytime," "sunny," "refreshing," etc. extracted from the lyrics).
[0122] The acoustic information is information relating to the melody of this piece of music. For example, the main melody of the melody may be stored in the acoustic information as a series of note information. Furthermore, the acoustic information may store, for example, the analysis results of the sound data of the piece of music (for example, the musical pattern or tone (voice) of the piece of music). Furthermore, the acoustic information may store, for example, the sound data of the piece of music itself. The acoustic information may store information obtained by converting the analysis results of the sound data into text (for example, "lively rhythm," "relaxed modulation," "tuned harmony," etc.).
[0123] The playback information is information about the playback (listening) status of this song by the user. The playback information may include, for example, the total number of times the song has been played, aggregate information about the age and gender of the users who played the song (user information), the number of times the song has been played for each set period (e.g., "month"), the number of times the song has been played for each set time period (e.g., "morning," "afternoon," "evening"), etc.
[0124] Other registered information may include various information such as the year of release of the song, the title of the album that contains the song, the song's artist profile, the URI of the song data file, the song's artwork (jacket image), and information about the song (referred to as "song knowledge information"). Here, the song knowledge information may include information about song sales (for example, "the latest song by an up-and-coming artist," "theme song of popular drama XX," "theme song of movie YY," etc.), as well as song IDs of songs related to this song, and other information about songs that is difficult to guess from lyric information or audio information.
[0125] (2) Functional configuration of the terminal FIG. 1-6 is a diagram showing an example of functions realized by the control unit 21 of the terminal 20 in this embodiment. The control unit 21 includes, as a functional unit, an application processing unit 211 for executing application processing in accordance with an application processing program 281 stored in the storage unit 28, for example.
[0126] FIG. 1-7 is a diagram showing an example of data stored in the storage unit 28 of the terminal 20 in this embodiment. The storage unit 28 stores, for example, an application processing program 281 to be executed as application processing, and an application ID 283 corresponding to the terminal 20 or the account of the user of the terminal 20.
[0127] <Display screen> Examples of display screens will be described below. The transitions of the display screens described below are merely examples of transitions of the display screens for realizing the technique of the present disclosure. In the transitions of the display screens exemplified below, the display of some of the display screens may be omitted, or other display screens may be added. Furthermore, the terms used on the display screens described below may differ from the terms used in the processes described thereafter (some terms may not be consistent).
[0128] In the following, the terminal 20 is exemplified as a smartphone having a display unit 24 with a vertically long display. In the smartphone, a touch panel functioning as an input unit is disposed opposite the display, forming a touch screen. When an element such as an icon, button, item, or input area is displayed on the display, and a part of the touch panel that faces the area where the element is displayed is operated by a user, a program associated with the element or a subroutine of the program may be executed.
[0129] Note that the flow of screen transitions may be explained by showing specific screens displayed on different terminals 20 within one drawing or across multiple drawings. In this case, for example, the specific screen may be displayed on the different terminals 20 based on (triggered by) at least one of the following: - Automatically displayed A notification (including a push notification, etc.; the same applies below) is sent to the terminal 20, and is displayed when the user performs an operation in response to the notification. No notification is sent to the terminal 20, but it is displayed when the user performs a predetermined operation on the application. A notification is sent to the terminal 20, and the message is displayed when the user performs a predetermined operation on the application that sent the notification.
[0130] In the following, an example of an account that generates a playlist is the terminal 20A of user AA. In this example, the generation of the playlist is performed within a music application. It should be noted that the playlist may be generated in a different application from the music application, for example, a messaging application. In this case, the same screen configuration may also be used.
[0131] 1-8 to 1-10 are diagrams showing examples of screens displayed on the display unit 24 of the terminal 20A in this embodiment.
[0132] 1-8 shows a playlist generation instruction screen for a music application displayed on terminal 20 A. The music application is configured so that the name of the user using the music application, etc., is displayed to the right of the application title.
[0133] The playlist creation instruction screen is configured to display, for example, a prompt input area PTR for the user to input a prompt by text that specifies the content of the playlist to be created. The prompt input area PTR is also configured to display a voice input button MCB for inputting the prompt by voice, a playlist reference button IMB for creating a new playlist by referencing an existing prompt, and a song selection button MSB for the user to select desired songs and create a new playlist based on the selected songs. On this screen, a prompt input area PTR displays, for example, a prompt input by the user, instructing the generation of a "playlist recommended for spring drives."
[0134] In addition, below the prompt input area PTR, a prompt suggestion area PSR for assisting in inputting a prompt is displayed. The prompt suggestion area PSR is configured to display multiple prompt suggestion element buttons that can be tapped to generate a playlist recommended to the user based on the prompt entered in the prompt input area PTR. For example, when a prompt suggestion element button labeled "Graduation Song" is tapped, the prompt in the prompt input area PTR may be changed to instruct the user to generate a playlist of "Graduation Songs." Furthermore, when a prompt suggestion element button is tapped, playlist generation request information may be transmitted from the terminal 20A to the server 10 based on the prompt displayed on the prompt suggestion element button. Furthermore, a prompt may be automatically generated by a user selecting multiple conditions. For example, a user may select conditions that match their preferences from multiple categories, such as "year of song release," "gender of vocalist," and "theme," and a prompt such as "songs by female singers that suit a winter atmosphere," may be automatically generated based on the selected conditions. The automatically generated prompt may or may not be presented to the user. If presented to the user, a user interface may be provided that allows the user to modify the automatically generated prompt. The automatic generation of the prompt may be performed within the server 10 or within the terminal 20.
[0135] In addition, if no prompt is entered in the prompt input area PTR, the prompt suggestion area PSR may display a recommended prompt (sentence, word, phrase, etc.) in the prompt suggestion element button based on, for example, user information of the terminal 20, information regarding the current date and time, terminal location information, etc.
[0136] For example, when a prompt is input into the prompt input area PTR and the playlist generation button GB1 is tapped, playlist generation request information including the prompt is transmitted from terminal 20A to server 10. Then, based on the playlist generation request information, server 10 executes a song selection process and an explanatory element generation process, which will be described later. Then, when terminal 20A receives playlist information consisting of the generated playlist and explanatory elements of each song from server 10, the display changes to, for example, the generated playlist confirmation display screen shown in FIG. 1-9.
[0137] The generated playlist confirmation display screen is configured to display, for example, a response sentence display area RPR for displaying a response sentence to a prompt. Below the response sentence display area RPR, song display areas TR1, TR2, TR3, etc. are arranged in order of playback to display information about the songs selected in the generated playlist.
[0138] For example, the song display area TR1 is configured to display artwork AR1, song title TT1, and artist name TA1. The song display area TR1 is also configured to display a song delete button DL1 for removing (deleting) the song from the playlist.
[0139] For example, when artwork AR1 is tapped, the tapped song is played, and a seek bar may move to the right in the playback control area at the bottom of the screen.
[0140] For example, the bottom of the song display area TR1 is configured to display one or more explanatory elements explaining why this song was selected for the playlist. In this example, explanatory elements EE1 to EE4 are displayed.
[0141] Each description element may include, for example, the following information: Reasons for selection based on song release year For example, in response to the prompt "hit songs of the 1980s," an explanatory element may be generated that indicates that the song release year was referenced. Alternatively, the song release year itself may be used as an explanatory element. Selection based on lyrics information For example, in response to a prompt such as "Songs to listen to on a spring drive," if the lyrics information contains lyrics or lyric features that are associated with "spring" or "drive," the lyrics or lyric features may be used as explanatory elements. Reasons for selection based on acoustic information For example, in response to a prompt such as "Songs to listen to on a spring drive," if the audio information includes "lively rhythms" or "refreshing harmonies" that are associated with "spring" or "drive," that audio information may be used as an explanatory element. Reasons for selection based on playback information For example, if the prompt is "Songs to listen to on a spring drive," and the analysis result of the playback information shows that playback is frequent in "spring," the elements of the playback information that match the prompt may be used as explanatory elements. - Prompt-based playlist selection with comprehensive selection reasons The explanation element may be a summary of the above selection reasons, or may be a song title, artist name, album title, etc. that matches the prompt, which are further considered as an explanation element.
[0142] The above explanation elements are merely examples, and explanation elements may be generated based on other selection reasons. Each explanatory element may be a sentence, a word, or a phrase. The explanatory element may also be an image.
[0143] In addition, among the above explanatory elements, explanatory elements that do not change in response to a prompt (sometimes referred to as "predetermined selection reasons") and explanatory elements that change in response to a prompt (sometimes referred to as "selection reasons") may be displayed in combination. The predetermined selection reason may be, for example, the year of song release, information about the song artist (for example, artist profile), or the like.
[0144] The same applies to the other music display areas.
[0145] On the generated playlist confirmation display screen, for example, the order of songs in the playlist may be changed by dragging the song display area TR1 or the like up and down.
[0146] In the generated playlist confirmation display screen, for example, a playlist regeneration button RGB and a playlist confirmation button ACB are displayed as floating buttons at the bottom of the screen. For example, when the playlist regeneration button RGB is tapped, a new playlist may be regenerated based on a prompt in the prompt input area PTR.
[0147] For example, when a description element of a song is tapped on the generated playlist confirmation display screen, a new playlist may be regenerated using the tapped description element as a prompt. For example, when the description element "2013" is tapped, a playlist of hit songs from "2013" may be generated. The same applies to other description elements. Furthermore, when a song title or artist name is tapped on the playlist creation confirmation display screen, a new playlist may be regenerated with a prompt based on the tapped song title or artist name. For example, when "Artist AAA" is tapped, a playlist consisting of songs by "Artist AAA" may be regenerated.
[0148] For example, when the playlist confirmation button ACB is tapped, the playlist is confirmed based on the content and song order of each song display area on the generated playlist confirmation display screen, and the display changes to the generated playlist save screen of FIG. 1-10, for example.
[0149] The generated playlist save screen is configured to display, for example, a title display area LNR for displaying the title of the playlist generated based on the prompt entered in the prompt input area PTR, and a summary display area LSR that summarizes the descriptive elements of the songs selected based on the prompt.
[0150] For example, when the title display area LNR or the summary display area LSR is tapped, the user may be able to edit the generated title or summary. Also, for example, the title display area LNR may display a title that is not based on the prompt entered in the prompt input area PTR, such as "Playlist 01," to which a sequential number is assigned as a default title. Also, for example, the summary display area LSR may display the prompt entered in the prompt input area PTR as is. The title display area LNR and the summary display area LSR may not be displayed.
[0151] Below the title display area LNR and the summary display area LSR, the contents of each song display area are displayed in accordance with the song order determined on the generated playlist confirmation display screen, for example. Note that explanatory elements may not be displayed and / or saved in each song display area.
[0152] For example, when the title and summary are confirmed and the playlist save button SVB is tapped, the generated playlist is saved. Note that the format for saving the generated playlist may be in accordance with the playlist data shown in Figure 3-2.
[0153] 1-11 and 1-12 are other examples of playlists generated by different prompts. In the prompt input area PTR in FIG. 1-11, for example, a prompt that instructs the user to generate a "playlist to listen to at the beach" is displayed as text input by the user. Furthermore, prompt suggestion area PSR displays prompt suggestion element buttons (for example, "Summer Songs") based on the "Playlist to listen to at the beach."
[0154] When a prompt is input in the prompt input field PTR and the playlist generation button GB1 is tapped, the display changes to, for example, the generated playlist confirmation display screen of FIG. 1-12.
[0155] On this screen, for example, the same song "Self-Exploration Song" as that on the generated playlist confirmation display screen of FIG. 1-9 is selected and displayed in the song display area TR3. However, there are some differences between the explanatory elements EE5 to EE8 displayed for the song display area TR3 on the generated playlist confirmation display screen of Figure 1-9 and the explanatory elements EE9 to EE12 displayed for the song display area TR3 of Figure 1-12. This allows the user to be notified that the songs were selected for different reasons even if the same songs are selected for the playlist, if different prompts are used.Furthermore, the user can easily understand the reason why the song they want was selected by checking the explanatory element.
[0156] FIG. 1-13 is an example of a reference playlist selection screen that is displayed when the playlist reference button IMB is tapped on the playlist generation instruction screen, for example. The reference playlist selection screen is configured to display a list of playlists PL1 to PL3, etc., created in advance by user AA, a music distribution service provider, etc. On this screen, each playlist is displayed with the songs that make up the playlist collapsed. For example, when the song expansion button displayed to the right of the playlist is tapped, a list of each song included in the playlist is displayed.
[0157] For example, when the user taps on playlist PL3, playlist PL3 is displayed in inverse video, indicating that it has been selected. For example, when the user selects one or more playlists and taps playlist generation button GB2, playlist generation request information including information about the playlists (such as the constituent songs, playlist title, and playlist summary) is transmitted from terminal 20A to server 10, and the playlist is generated. When the playlist PL1 and the playlist PL3 are selected, playlist generation request information including information about the two playlists may be transmitted from the terminal 20A to the server 10, and one playlist may be generated. For example, if a prompt is input in the prompt input area PTR, and then the playlist generation button GB2 is tapped to select a playlist, the playlist generation request information may include information about the playlist and the prompt.
[0158] FIG. 1-14 is an example of a reference song selection screen that is displayed when the song selection button MSB is tapped on the playlist generation instruction screen, for example. The reference song selection screen is configured to display, for example, a list of song display areas TR1 to TR3, which are lists of songs that user AA has listened to and songs that user AA has registered as favorites.
[0159] For example, when the user taps one or more song display areas (in this screen, song display area TR2 and song display area TR3), a check mark appears to the left of the song display area to indicate that it has been selected.
[0160] Also, at the bottom of the reference song selection screen, there are check boxes for including the selected song in the playlist and for including songs similar to the selected song in the playlist. These check boxes may be used to obtain flag information (song reference condition information) regarding how the selected song will be referenced.
[0161] For example, when a user selects one or more songs and taps the playlist generation button GB3, playlist generation request information including information about the selected songs (song IDs, etc.) and song reference condition information is sent from terminal 20A to server 10, and a playlist is generated. For example, if a prompt is entered in the prompt input area PTR, and then the playlist generation button GB2 is tapped to select a playlist, the playlist generation request information may include information about the selected song, song reference condition information, and the prompt.
[0162] <Processing> 1-15 is a flowchart showing an example of the flow of processing executed by each device in this embodiment. From the left, this figure shows an example of processing executed by the control unit 21 of the terminal 20A of user AA, and an example of processing executed by the control unit 11 of the server 10. Note that the processes described below are merely examples of processes for realizing the method of the present disclosure, and are not limited to these. Furthermore, other steps may be added to the processing described below, or some steps may be omitted (deleted) from the processing described below.
[0163] First, the control unit 21 of the terminal 20A (hereinafter sometimes simply referred to as "terminal 20A") acquires playlist generation request information based on, for example, input to the input / output unit 23 of the terminal 20A (for example, user input (user operation input, sound input, etc.); the same may be applied hereinafter). Here, the playlist generation request information (which may also be called "first information") may include, for example, any of the following information. Text-entered prompts - Audio input for prompts - Prompts that convert the voice input for the prompt into text using speech recognition -Selected prompts from suggested prompts Information about the playlist specified as the reference playlist Information about the song selected as the reference song The playlist generation request information may be the prompt itself.
[0164] Then, the terminal 20A transmits playlist generation request information to the server 10 (A110).
[0165] When the playlist generation request information is received from the terminal 20A, the control unit 11 of the server 10 (hereinafter, sometimes simply referred to as "the server 10") executes a playlist generation request information analysis process (S110). In the playlist generation request information analysis process, the server 10 determines whether or not a command to generate a playlist has been issued, for example, by using the language model unit 113. Furthermore, when the server 10 determines that a command to generate a playlist has been issued, the server 10 extracts playlist generation elements designated by the user as conditions for generating a playlist, based on the playlist generation request information. The playlist generation elements may include, for example, any of the following elements: - Where you listen to the songs in the playlist (e.g., "at the beach" or "at a restaurant") - The time and date when you listen to the songs in the playlist (for example, "Spring" or "Night") - The situation in which you listen to the songs in the playlist (for example, "driving" or "resting" etc.) - The tone of the songs in the playlist (e.g., "cheerful" or "calm") - The genre of the songs in the playlist (e.g., "Pop" or "Rock") Information about the reference playlist, such as the song IDs and song order of the songs that make up the reference playlist - Information about the songs to be included in the playlist, such as song IDs - Information about the number of songs in a playlist and the duration of the playlist
[0166] Then, the server 10 executes a music selection process (S120). In the music selection process, the server 10 generates a playlist including one or more music IDs using the language model unit 113 based on the playlist generation elements, for example. For example, the prompt for selecting a song to be input to the language model unit 113 may be as follows: The prompt for selecting a song may be called first information. "You're a great DJ. Create a playlist that includes the following playlist generation elements: <<Playlist generation element>> Playlist generation element 1 (where to listen to songs in the playlist) Playlist generation element 2 (time and time period for listening to the songs in the playlist) Playlist generation element 3 (situation in which songs in the playlist are listened to) ... "
[0167] In the song selection process, the language model unit 113 may refer to the song registration data 155. Also, in the song selection process, the language model unit 113 may refer to information from other external search services, etc., without referring to the song registration data 155. In the song selection process, the language model unit 113 may generate a response based on knowledge that has been acquired (learned) within the language model unit 113, without using an external database.
[0168] In the music selection process, the server 10 may generate a playlist based on a prompt included in the playlist generation request information. The prompt for music selection may be the prompt included in the playlist generation request information.
[0169] Furthermore, the server 10 may generate a playlist by, for example, a statistical recommendation system (for example, collaborative filtering or content-based filtering) without using the language model unit 113. In this case, the prompt may be a filtering condition for the recommendation system.
[0170] In addition, if the playlist generation request information includes information about a playlist designated as a reference playlist or information about a song selected as a reference song, the server 10 may generate a new playlist in the song selection process by merging songs included in the playlist designated as a reference playlist or songs selected as reference songs.
[0171] Furthermore, the user's preferences in creating a playlist may be grasped from common characteristics of a plurality of songs selected as reference songs, and songs may be selected based on the common characteristics.
[0172] Furthermore, for example, when playlist generation request information consisting of multiple elements such as "common sound characteristics" and "common lyrics" is received, a search using "acoustic features" may be performed for the song selection prompt "common sound characteristics," and a "lyric-based search" may be performed for the song selection prompt "common lyrics."
[0173] The order of songs in the generated playlist may also be determined based on the song selection prompt. For example, songs may be arranged from the top of the playlist in order of their proximity to the theme of the song selection prompt. Alternatively, songs that are close to the theme may be distributed evenly throughout the playlist.
[0174] Furthermore, in the song selection process, the server 10 may select a playlist by random sampling from a set of songs obtained by existing music information search technology (for example, text-to-music technology that uses text as a query and outputs songs similar to the text features, or similar song search technology that uses a song as input and outputs songs similar to that song), or may select a playlist by arranging a predetermined number of songs from the set of songs in order.
[0175] Furthermore, in the song selection process, if a song selection method (e.g., the language model unit 113, collaborative filtering, etc.) is not specified in the song selection prompt, the server 10 may select the playlist to be ultimately presented by combining playlists obtained by multiple selection methods.
[0176] In the music selection process, the language model unit 113 may generate a response sentence based on a prompt.
[0177] For example, when a song included in a playlist is selected, the server 10 executes an explanation element generation process (S130). In the explanation element generation process, the server 10 generates explanation elements for, for example, a selected predetermined song by, for example, the language model unit 113. The predetermined songs for which explanation elements are to be generated may be all songs included in the playlist (sometimes referred to as a "series of songs"), or may be one or more arbitrary songs included in the playlist (for example, songs specified by the user or songs selected randomly). The explanatory element may be generated, for example, by the following explanatory element generation prompt: The explanatory element may be a reason for the playlist selection, generated for the song taking into account the prompt. "How do you feel when listening to the song <<song specified by song ID>> in the following <<playlist generation element>>? Please list them. <<Playlist generation element>> Playlist generation element 1 (where to listen to songs in the playlist) Playlist generation element 2 (time and time period for listening to the songs in the playlist) Playlist generation element 3 (situation in which songs in the playlist are listened to) " For example, the generated description element may include content such as "lyrics contain XX."
[0178] The explanatory element may also be a reason why a particular song was included in a playlist (e.g., why a particular song was selected in the playlist). The explanatory element may be generated, for example, by the following explanatory element generation prompt: "What are the characteristics of the song <<song specified by song ID>> compared to the <<specified song>> below? <<Prescribed music>> Song 1 in the playlist Playlist song 2 Song 3 in the playlist ... " For example, the generated explanation element may include a description such as "The tone is similar to XX." The features of the <<predetermined song>> may be referred to as partial features or overall features of the playlist, or the theme of the playlist (e.g., summer songs, songs to listen to at the beach, etc.). A description element for each song may be generated based on the features of the <<predetermined song>>. A description element for each song may be generated based on the features of the <<predetermined song>> and the features of each song in the playlist (e.g., acoustic features or text features).
[0179] In addition, in the explanatory element generation process, the server 10 may generate explanatory elements based on the matching parts of the metadata and the prompt (e.g., "Ideal for △△ in XX") and the mismatching parts (e.g., "Ideal for △△, but not limited to XX"), for example, based on metadata for use in searching for song lyrics.
[0180] In addition, in the explanation element generation process, the server 10 may generate explanation elements for each song based on, for example, the playlist title and summary included in the information about the playlist selected by the user on the reference playlist selection screen.
[0181] In addition, in the explanatory element generation process, the server 10 may generate an explanatory element for the song for which an explanatory element is to be generated, such as "continues with a song by artist AAA" based on the relationship between the song and the previous and next songs in the playlist.
[0182] In addition, in the explanatory element generation process, the server 10 may, for example, obtain advertising information based on a prompt from an advertising server not shown, and generate explanatory elements (for example, advertising copy, links to advertisements, etc.) based on the advertising information.
[0183] In addition, in the explanation element generation process, the server 10 may generate explanation elements (for example, "song by artist AAA" or "song from 1980") using, for example, composition music information.
[0184] For example, after generating the description elements for each song, the server 10 executes a title summary generation process (S140). In the title and summary generation process, the server 10 generates a title and summary of the playlist based on a prompt for generating the playlist, for example, by using the language model unit 113. Note that the server 10 may also generate the title or summary, for example. The title and summary may be generated, for example, by the following prompts for generating a title and summary: The title and summary may be the title and summary of a playlist generated taking the prompts into consideration. "Please generate a suitable title and summary for the playlist generated in the <<Playlist Generation Element>> below. <<Playlist generation element>> Playlist generation element 1 (where to listen to songs in the playlist) Playlist generation element 2 (time and time period for listening to the songs in the playlist) Playlist generation element 3 (situation in which songs in the playlist are listened to) "
[0185] The title summary may also be generated based on a given song or series of songs included in a playlist. For example, the title summary may be generated by the following title summary generation prompt: "Please generate a suitable title and summary for the following <<series of songs>>. <> Song 1 in the playlist Playlist song 2 Song 3 in the playlist ... " The title and summary may be generated from information such as the number of songs and genres that make up the generated playlist, as well as from the characteristics of the selected group of songs themselves.
[0186] The processes from the playlist generation request information analysis process (S110) to the title summary generation process (S140) may be performed individually, or may be combined into a single process. For example, the series of processes from the playlist generation request information analysis process (S110) to the title summary generation process (S140) may be combined into a "playlist generation process."
[0187] For example, when the playlist generation process is executed, the server 10 transmits playlist information relating to the generated playlist to the terminal 20A (S150). The playlist information may include, for example, any of the following information: - List of music composition information selected for the playlist ·title Summary ·prompt Prompt response
[0188] The composition information may include, for example, any of the following information. Song ID Song title Artist name Artwork Description elements
[0189] Furthermore, after executing the playlist generation process, the server 10 may execute a playlist saving process for saving the generated playlist. An example of the data format of the saved playlist will be described later.
[0190] Then, the control unit 11 of the server 10 determines whether or not to end the process (S190). If it is determined that the process should be continued (S190: NO), the control unit 11 of the server 10, for example, waits for reception of playlist generation request information, and returns the process to S110. On the other hand, if it is determined that the process should be ended (S190: YES), the control unit 11 of the server 10 ends the process.
[0191] When the playlist information is received from the server 10, the terminal 20A outputs the received playlist information (for example, displays it on the display unit 24) (A120).
[0192] Then, the control unit 21 of the terminal 20A determines whether or not to end the processing (A190). If it is determined to continue the processing (A190: NO), the control unit 21 of the terminal 20A returns the processing to A110, for example. On the other hand, if it is determined to end the processing (A190: YES), the control unit 21 of the terminal 20A ends the processing.
[0193] <Effects of the First Embodiment> According to this embodiment, the server 10 (an example of an information processing device) acquires playlist generation request information and a prompt sentence (an example of first information) for generating a playlist. The information processing device then executes an explanation element generation process based on acoustic features and text features (an example of song features) of a specific song among multiple songs included in the playlist and the first information (based on a prompt based on the first information, or based on the first information itself), thereby generating an explanation element (an example of song information) for the specific song. According to this, the information processing device can select songs to be included in the playlist by acquiring the first information. Also, song information about the songs included in the playlist can be generated. As a result, a user of the information processing device can deepen his / her understanding of the songs included in the playlist by referring to the song information.
[0194] Furthermore, according to this embodiment, the server 10 (an example of an information processing device) acquires playlist generation request information and a prompt statement (an example of first information) related to a song selection prompt (an example of a prompt) for generating a playlist. The information processing device then executes, for example, a song selection process based on the prompt based on the first information, and selects songs to be included in the playlist. The information processing device then executes, for example, an explanation element generation process, and generates explanation elements (an example of song information) related to explanations of the songs. This shows an example of a configuration in which the song information is generated based on an arbitrary song in the playlist (an example of a song included in the playlist) and a playlist generation element (an example of a prompt). According to this, by acquiring the first information, the information processing device can select songs to be included in the playlist based on the prompt. Also, song information regarding the reason why the songs to be included in the playlist were selected can be generated. As a result, the user of the information processing device can know the reason why the songs were selected for the playlist by referring to the song information.
[0195] Furthermore, according to this embodiment, explanatory element EE2 (an example of first song information) for the "Self-exploration song" (first song) in the "Playlist to listen to on a spring drive" (an example of a first playlist) selected based on "Recommended for a spring drive" (an example of a first prompt) shows an example of a different configuration from explanatory element EE10 (an example of second song information) for the first song in the "Recommended playlist to enjoy on the beach" (an example of a second playlist) selected based on "Want to listen to at the beach" (an example of a second prompt). According to this, when the same first song is selected for the first playlist and the second playlist, the first song information and the second song information can be made different by using different prompts for each.
[0196] Furthermore, in this embodiment, the song information is generated based on an arbitrary song in the playlist (an example of a selected song) and a series of songs in the playlist (an example of a playlist). The explanation element EE8 for the first song in the first playlist selected based on the first prompt shows an example of a different structure from the explanation element EE12 for the first song in the second playlist selected based on the second prompt. According to this, when the same first song is selected for the first playlist and the second playlist, the first song information and the second song information can be made different because the songs selected for each playlist are different.
[0197] Furthermore, according to this embodiment, the first song information includes the release year indicated in the explanatory element EE5 (an example of a predetermined selection reason) and explanatory elements EE6 and EE7 (an example of a first selection reason), and the second song information shows an example of a configuration including the predetermined selection reason and explanatory elements EE10 and EE11 (an example of a second selection reason) that are different from the first selection reason. According to this, by including a common predetermined reason for selection and different reasons for selection in the first music information and the second music information, the user can more easily understand the reason why the music was selected for the playlist.
[0198] In addition, this embodiment shows an example of a configuration in which server 10 (an example of an information processing device) is capable of communicating with terminal 20, receives first information from terminal 20A (an example of a first terminal), and transmits playlist information including songs and song information to the first terminal. This allows the user of the first terminal to refer to the playlist generated in the information processing device and the accompanying music information.
[0199] <First Modification Example (1)> In the above embodiment, the explanation element generation process generates explanation elements for display output, but is not limited to this. For example, the server 10 may generate explanation elements for audio output by performing voice synthesis on explanation elements for display output in the explanation element generation process.
[0200] In addition, in the explanatory element generation process, the server 10 may generate, for example, explanatory elements for sound output that are played before a song in the playlist is played, and explanatory elements for display that are displayed in conjunction with a song in the playlist.
[0201] In addition, in the explanation element generation process, the server 10 may generate, for example, an explanation element for sound output that serves as a transition between songs in a playlist. The transition explanation element may be, for example, a generated sentence that explains the characteristics of the next song compared to the previous song whose playback has ended.
[0202] <First Modification (2)> In the above embodiment, the explanatory elements are generated based on prompts and music, but the present invention is not limited to this. For example, the explanatory elements may be generated based on conditions set by a music distribution service provider or the like.
[0203] For example, suppose "XX resort hotel near the sea" is set as a condition. In this case, if "a playlist to listen to at the sea" is specified as a prompt, the probability of generating "I want to spend time at a seaside hotel" as an explanatory element may increase. Furthermore, for example, a link to the website of "XX resort hotel" may be inserted into the generated explanatory element, so that the web page can be viewed when the explanatory element is tapped.
[0204] For example, suppose that a condition is set to "XX Cafe, now selling limited-edition spring parfaits." In this case, if a "playlist for spring drives" is specified as the prompt, the probability of generating a "parfait like the one mentioned in the lyrics" as the explanatory element may increase. Furthermore, for example, a link to the "XX Cafe" website may be inserted into the generated explanatory element, and the webpage may be displayed when the explanatory element is tapped.
[0205] For example, suppose that a condition is set such that "artist AAA is currently selling as a recommended artist." In this case, the probability that "artist AAA" will be selected as a song to be included in the playlist may be increased. Furthermore, a promotional message such as "an artist currently in the spotlight" may be generated as an explanatory element for the selected song by "artist AAA."
[0206] <First Modification (3)> In the above embodiment, a server-client system between the terminal 20 and the server 10 has been exemplified, but the present invention is not limited to this. For example, the server 10 may acquire playlist generation request information (e.g., input based on a user input), generate a playlist, and output the playlist information (e.g., display output).
[0207] <First Modification (4)> In the above embodiment, the server 10 generates explanatory elements for songs selected for a playlist in the song selection process, but this is not limited to this. For example, when the server 10 acquires an existing playlist consisting of one or more songs, it may execute an explanatory element generation process or a title / summary generation process for each song in the acquired playlist (e.g., processes corresponding to S130 and S140 in FIG. 1-15) to generate explanatory elements. In this case, the existing playlist may be a playlist consisting of songs specified (selected) by the user, or a playlist that was generated in advance.
[0208] For example, when generating a playlist consisting of 10 songs, the server 10 automatically selects five of the 10 songs in the song selection process. The remaining five songs may then be selected from songs specified by the user in the playlist generation request information. In this case, the playlist may be said to be composed of songs selected by the user and songs selected by the server 10.
[0209] For example, in the explanation element generation process, the server 10 may determine (acquire) the overall characteristics of the playlist (such as a summary or theme of the playlist) acquired from the information (characteristics) of each song that makes up the playlist, and generate explanation elements for each song based on the overall characteristics and the characteristics of each song. Also, if a title, summary, etc. has been assigned to an existing acquired playlist, explanations for each song may be generated based on the existing title, summary, and the characteristics of each song (such as lyric information, acoustic information, etc.).
[0210] This modified example shows an example of a configuration in which a server 10 (an example of an information processing device) generates explanatory elements (an example of song information) for a specified song based on the overall characteristics of a playlist (an example of first information) for an existing playlist and the lyric information and acoustic information of the songs included in the playlist (an example of characteristics of the specified song). According to this, the information processing device can generate song information about songs based on first information about an existing playlist and characteristics of songs in the playlist. As a result, a user of the information processing device can gain a deeper understanding of the songs included in the playlist by referring to the song information.
[0211] In addition, this modified example shows an example of a configuration in which the server 10 generates song information based on the overall characteristics of the playlist (an example of the characteristics of the playlist) determined based on the lyric information and acoustic information of the songs included in the playlist (an example of the characteristics of the songs included in the playlist) and the characteristics of the songs. This allows the information processing device to generate song information about the reasons why songs included in a playlist are included in the playlist, allowing the user of the information processing device to gain a deeper understanding of the songs included in the playlist by referring to the song information.
[0212] In addition, this modified example shows an example of a configuration in which the playlist includes at least one of songs specified by the user (an example of songs selected by the user) and songs selected in the song selection process (an example of songs selected based on the acquisition of first information regarding a prompt for generating the playlist). This allows the user to easily include desired songs in a playlist.
[0213] <Second Example> In the second embodiment, for example, the user of the terminal 20 issues an instruction to modify the generated playlist, and modifies the playlist so that it more strongly reflects the user's intentions. The contents described in the second embodiment are similarly applicable to any of the other embodiments and other modified examples.
[0214] <Display screen> 2-1 to 2-3 are diagrams showing examples of screens displayed on the display unit 24 of the terminal 20A in this embodiment.
[0215] FIG. 2-2 is another example of the generated playlist confirmation display screen shown in FIG. 1-9. On this screen, a correction prompt input area MPR for inputting a prompt to instruct corrections to the playlist is displayed to the left of the playlist regeneration button RGB. For example, a prompt to remove ballads and select upbeat songs is input in the correction prompt input area MPR.
[0216] For example, when the playlist regeneration button RGB is tapped, playlist modification request information based on the prompt input in the modification prompt input area MPR is transmitted from the terminal 20A to the server 10. Then, based on the playlist modification request information, the server 10 takes over the session corresponding to the previous prompt input in the language model unit 113 and executes the playlist generation process again. Then, when the terminal 20A receives the playlist information from the server 10, the display changes to, for example, the generated playlist confirmation display screen shown in FIG. 2-2.
[0217] On this screen, for example, it can be seen that the song "Ballad of Love and Heartbreak" shown in song display area TR1 has been removed from the playlist, and instead the song "Dream Chasing Song" shown in song display area TR4 has been selected. Additionally, the response display area RPR shows that a playlist for a spring drive, composed of upbeat tunes, has been generated, reflecting the prompts received so far.
[0218] For example, when the playlist confirmation button ACB is tapped, the playlist is confirmed, and the display changes to the generated playlist saving screen shown in FIG. 2-3, for example. This screen shows that a title and a summary have been generated in the title display area LNR and summary display area LSR that reflect the "cheerful melody" input in the modification prompt input area MPR.
[0219] For example, on the generated playlist confirmation display screen in FIG. 2-2, when the explanatory element “2017” in the song display area TR2 is tapped, a playlist “for a spring drive with upbeat tunes” consisting of hit songs from “2017” may be generated. The same applies to other explanatory elements.
[0220] <Processing> 2-4 is a flowchart showing an example of the flow of processing executed by each device in this embodiment. From the left, this figure shows an example of processing executed by the control unit 21 of the terminal 20A of user AA, and an example of processing executed by the control unit 11 of the server 10.
[0221] For example, when the terminal 20A outputs the playlist information (A120), it determines whether or not to modify the generated playlist based on a user input (A210).
[0222] When it is determined that the generated playlist is to be modified (A120: YES), for example, the terminal 20A acquires playlist modification request information based on a user input. The playlist modification request information may include, for example, various types of information similar to the playlist generation request information.
[0223] For example, when a song deletion operation or a song playback order change operation is performed in the song display area on the generated playlist confirmation display screen, the operation may be converted into text and included in the playlist modification request information as a modification prompt.
[0224] Then, the terminal 20A transmits playlist modification request information to the server 10 (A220).
[0225] When it is determined that the generated playlist is not to be modified (A120: NO), for example, the terminal 20A shifts the process to an end determination (A190).
[0226] When it is determined that playlist modification request information has been received from the terminal 20A (S210: YES), the server 10 executes the playlist generation process again (S110 to S140), for example, without resetting the interaction session of the language model unit 113. Then, the server 10 transmits the modified playlist information to the terminal 20A (S150).
[0227] For example, in the title / summary generation process, the server 10 may generate a title and a summary based on the entire process of the interaction.
[0228] When it is determined that the playlist modification request information has not been received from the terminal 20A (S210: YES), the server 10 proceeds to, for example, an end determination step (S190).
[0229] <Effects of the second embodiment> According to this embodiment, the server 10 (an example of an information processing device) shows an example of a configuration that executes the following: acquiring playlist correction request information (an example of second information) regarding a prompt (an example of a first prompt) for selecting songs again to correct the playlist; reselecting songs based on the first prompt and the prompt; and generating explanatory elements (an example of first song information) regarding the reason for selecting the songs based on the reselected songs. This allows the information processing device to select a song that reflects the first prompt and the prompt based on the second information. Also, the information processing device can generate first song information regarding the selection reason for the reselected song.
[0230] <Second Modification Example (1)> In the above embodiment, the server 10 re-executes the playlist generation process based on the playlist modification request information, but the present invention is not limited to this. The server 10 may cause the language model unit 113 to learn playlist modification instructions based on a method such as LoRA (Low Rank Adaptation). This makes it possible to improve the accuracy of the language model unit 113 so that the music and the like selected in the playlist generation process will be more in line with the user's preferences.
[0231] The same applies when selecting music using statistical methods.
[0232] <Third Example> The third embodiment is an example in which a playlist created by the user of the terminal 20A is shared with other users. In this embodiment, an example is shown in which a playlist is generated on a messaging service and shared with other users of the messaging service, but a playlist generated by a user may also be shared on a music distribution service.
[0233] The contents described in the third embodiment can be similarly applied to any of the other embodiments and other modified examples.
[0234] FIG. 3-1 is a diagram showing an example of information stored in the storage unit 15 of the server 10 in this embodiment. The storage unit 15 stores, for example, an application management processing program 151 executed as application management processing, account registration data 153, music registration data 155, and an account management database 157.
[0235] The account management database 157 is a database for managing information relating to playlists generated in a messaging service, for example, and an example of its data structure is shown in FIG. 3-2. The account management database 157 stores account management data as management data for each account.
[0236] In each account management data, for example, an application ID and playlist data are stored in association with each other.
[0237] The application ID is information for identifying an account managed by the account management data, and for example, the application ID registered in the account registration data 153 is stored.
[0238] The playlist data is data for storing information about the playlists created by this account. In the playlist data, for example, a playlist ID, a title, a summary, a prompt, a share destination application ID, and playlist constituent music data are stored in association with each other.
[0239] The playlist ID is information for identifying a generated playlist, and is set and stored as a unique value (inherent value) for each playlist by the server 10, for example.
[0240] The title and summary are stored, for example, as titles and summaries generated in the title and summary generation process.
[0241] The prompt stores one or more prompts used to generate this playlist.
[0242] In the share destination application ID, for example, the application ID of the user who shared this playlist is stored. Note that the playlist itself and the prompts used to generate the playlist may be shareable with different users.
[0243] The playlist composition music data is information about the music selected in this playlist, and for example, track numbers, music IDs, and explanatory elements are stored in association with each other.
[0244] The track number is the order of the songs in the playlist. The song ID is identification information of the song selected in the song order indicated by the track number. The description element stores a description element for each song generated in the playlist generation process.
[0245] The playlist data may also store information about the date and time the playlist was created, and information about the playlists and songs referenced when the playlist was created.
[0246] The account management data may also include friend management data for storing the application IDs of accounts that are friends of this account. The friend management data may also be considered information indicating the relationship between each account.
[0247] The account management data may also store information about the playback history of songs played by a music distribution application or the like, and information about songs registered as favorites.
[0248] <Display screen> 3-3 and 3-4 are diagrams showing examples of screens displayed on the display unit 24 of the terminal 20A in this embodiment. The left side of FIG. 3-3 shows an example of a talk room screen displayed on the terminal 20A, and the left side displays a screen of a one-to-one talk room in which the talk partner (chat partner) is a chatbot.
[0249] The chat room screen is configured with an area CR where content and similar information are displayed (hereinafter referred to as the "content display area"), and for example, content sent by you (content sent by you) may be displayed on the right side of the screen, and content sent by the other person (content sent by the other person) may be displayed on the left side of the screen. The content may also be displayed in association with information that allows the sender to be specified or identified, such as a registered icon image of the user. The content may also be displayed in a speech bubble. In this case, the text in the speech bubble may be considered to be the content, or the speech bubble may be considered to be the content. Also, depending on the type of content or the information contained in the content, it may be possible not to display the content in a balloon. A single piece of content may include different elements (for example, text, images, and objects such as buttons and icons), and such content may be referred to as "composite content."
[0250] On this screen, a prompt message PTM1 is input by user AA and displayed, requesting the chatbot to generate a playlist of "recommended plays for spring drives."
[0251] In the center of FIG. 3-3, which is displayed based on the input (transmission) of the prompt message PTM1, a response message PRM1 is displayed, which indicates the chatbot's response to the prompt message PTM1.
[0252] Next, on the right side of FIG. 3-3, a playlist message PLM1 for displaying the generated playlist is displayed below the response message PRM2. The playlist message PLM1 is configured to display information about the selected songs in song display areas TR1, TR2, TR3, etc., arranged in the order of playback. The configuration of each song display area is the same as, for example, the generated playlist confirmation display screen.
[0253] The playlist message PLM1 is configured to display, at the bottom, a playlist share button SB for sharing the generated playlist with other users, and a playlist play button PB for causing a music application to play songs according to the generated playlist.
[0254] On the left side of Figure 3-4, a response message PRM2 is displayed based on the prompt message PTM2 entered by user AA to "remove ballads and add more upbeat songs" to instruct modifications to the playlist shown in playlist message PLM1.
[0255] Next, in the center of FIG. 3-4, a playlist message PLM2 for displaying the generated playlist is displayed below the response message PRM2.
[0256] For example, when the user taps the playlist share button SB in the playlist message PLM2, the screen changes to the chat room screen shown on the right side of Figure 3-4.
[0257] This screen is configured so that a playlist sharing destination designation area SPR for designating a playlist sharing destination is displayed superimposed on the content display area CR. In the playlist sharing destination specification area SPR, a prompt sharing switch SPS is displayed below the title of the playlist to be shared, allowing you to switch whether or not to share the prompt for generating the playlist. On this screen, you can see that the prompt sharing switch SPS is set to, for example, share the prompt.
[0258] Below the prompt share switch SPS, a playlist sharing destination selection area is displayed for selecting a playlist sharing destination. In this screen, for example, sharing with user BB, a friend of user AA, is selected in the playlist sharing destination selection area.
[0259] For example, the playlist sharing destination may be selected from the following: -Friends who created the playlist -Users in the group to which the user who created the playlist belongs Any user All users who register for messaging services (music distribution services) Do not share
[0260] Furthermore, the sharing destination of the playlist and the sharing destination of the prompt that generated the playlist may be set to different sharing destinations.
[0261] Furthermore, when sharing a prompt, instead of sharing the prompt as is, a summary prompt that summarizes the prompt and omits private information contained in the prompt may be shared.
[0262] For example, when a share destination decision button SCB displayed below the playlist share destination specification area SPR is tapped, the playlist is shared based on the content specified in the playlist share destination specification area SPR.
[0263] Note that sharing of a playlist or playing of a playlist may be realized by inputting a prompt message instructing sharing or playing of a playlist.
[0264] FIG. 3-5 is a diagram showing an example of a screen displayed on the display unit 24 of the terminal 20B of user BB with whom the playlist is shared. The left side of Figure 3-5 is an example of a playlist playback screen that is displayed when, for example, the playlist playback function button of a music application is tapped. On this screen, for example, playlist PL4 "Playlist 9" created by user BB and playlist PL5 "Upbeat songs list for spring drives" shared by user AA can be selected as playable playlists.
[0265] For example, when a playlist PL5 is tapped, the playlist display area expands downward, and the song display areas included in the playlist are displayed in playback order. Also, above the song display area, a "Play" button is displayed for playing the songs in the playlist in order from the beginning, a "Shuffle" button is displayed for playing the songs in the playlist in random order, and a prompt confirmation button PLB is displayed for confirming the prompt used to generate the playlist.
[0266] For example, when the user taps the prompt confirmation button PLB, the display changes to the generated prompt reference screen shown on the right side of Figure 3-5. This screen is configured to display a pair of prompt display areas PT1, which displays the prompts used to generate the playlist, and response display areas RP1, which display the responses and the generated playlist, below the playlist title. Additionally, a prompt display area PT2 and a response display area RP2 for the modification prompt are displayed based on the input prompt sequence.
[0267] For example, when a prompt copy button PCR1 displayed in the generation prompt display area PT1 is tapped, the prompt in the generation prompt display area PT1 may be stored in the clipboard of the terminal 20B, allowing the user BB of the terminal 20B to easily reference prompts used by other users.
[0268] Furthermore, when the prompt copy button PCR1 is tapped, for example, playlist generation request information may be sent to the server 10 based on the prompt in the generation prompt display area PT1, and playlist information based on the results of the playlist generation process may be displayed on the terminal 20B.
[0269] In addition, the shared prompts may be displayed together with the generated playlists in a list, which allows a playlist to be generated efficiently while centrally referencing the prompts and playlists published by multiple users.
[0270] The shared prompt may be made available for reference by the language model unit 113 in the playlist generation process, for example. FIG. 3-6 is a diagram showing an example of a talk room screen displayed on the display unit 24 of the terminal 20B of user BB with whom the playlist is shared.
[0271] In this chat room screen, when user BB sends prompt message PTM3 requesting the creation of a "Spring Playlist," a response message PRM3 is displayed indicating that user AA has shared a playlist based on a similar prompt. Following response message PRM3, a response message PRM4 is displayed, requesting confirmation of whether or not to view the shared playlist. In the prompt message PTM4, a prompt for selecting to refer to the shared playlist is input and displayed.
[0272] Furthermore, in the prompt message PTM4, a prompt is input requesting that user BB include a predetermined song (in this example, "Love Pops") in the playlist. In response, response message PRM5 displays a message indicating that "Love Pops" is likely to be selected for a playlist generated based on the prompt "Playlist to listen to in autumn," based on prompts and playlists shared by other users.
[0273] Then, a response message PRM6 and a playlist message PLM3 are displayed, which are generated based on a series of interactions from prompt message PTM3 to prompt message PTM5. For example, the playlist message PLM3 indicates that the playlist shared by user AA includes the songs "Ballad of Love and Heartbreak" and "Rocky Spring," as well as the song "Pop of Love" specified by user BB.
[0274] <Processing> 3-7 is a flowchart showing an example of the flow of processing executed by each device in this embodiment. From the left, this figure shows an example of processing executed by the control unit 21 of the terminal 20A of user AA, an example of processing executed by the control unit 21 of the terminal 20B of user BB, and an example of processing executed by the control unit 11 of the server 10.
[0275] When the server 10 receives the playlist generation request information from the terminal 20A, the server 10 executes a playlist generation process (S310). The playlist generation process may be performed, for example, in accordance with steps S110 to S140 in FIG. 1-15. Then, the server 10 transmits the generated playlist information to the terminal 20A (S150).
[0276] When the terminal 20A outputs the playlist information received from the server 10 (A120), it transmits playlist sharing request information to the server 10 based on, for example, a user input (A310). The playlist sharing request information may include, for example, information indicating the sharing destination of the playlist and prompt.
[0277] The terminal 20A may transmit the playlist modification request information in accordance with, for example, FIG. 2-4.
[0278] When the playlist sharing request information is received from the terminal 20A, the server 10 executes, for example, a playlist sharing process (S320). In the playlist sharing process, the server 10, for example, refers to the account management database 157, adds the playlist data to the account management data corresponding to the application ID of the terminal 20A, and stores each item.
[0279] Note that, when the server 10 executes the playlist sharing process, it may be configured to transmit playlist sharing notification information indicating that the playlist has been shared to each of the shared terminals 20. Then, the terminals 20 may output (for example, display) the received playlist sharing notification information.
[0280] The terminal 20B transmits shared playlist reference request information for referencing the shared playlist to the server 10, for example, based on a user input (B310).
[0281] When the server 10 receives the shared playlist reference request information from the terminal 20B, the server 10 refers to the account management database 157, for example, and reads out each playlist data whose share destination application ID includes the application ID of the terminal 20B. Then, the server 10 transmits shared playlist information including each playlist data to the terminal 20B (S330). Note that the shared playlist information may not include any items of the playlist data (for example, "shared application ID," "prompt," "explanatory element," etc.).
[0282] Upon receiving the shared playlist information from the server 10, the terminal 20B outputs (for example, displays) the received shared playlist information (B320).
[0283] <Effects of the third embodiment> According to this embodiment, the server 10 (an example of an information processing device) shows an example of a configuration in which it receives playlist sharing request information (an example of second information) regarding the sharing of playlist information from a terminal 20A (an example of a first terminal), and, based on the reception of the second information, transmits the playlist information to a terminal 20B (an example of a second terminal) that is different from the first terminal. This allows playlist information based on the first information received from the first terminal to be transmitted to the second terminal based on the received second information, thereby enabling playlist information generated by the user of the first terminal to be shared with the user of the second terminal.
[0284] Furthermore, according to this embodiment, the playlist information shows an example of a configuration including a prompt. This allows the prompts used by the user of the first terminal to select songs for a playlist to be shared with the user of the second terminal.
[0285] Furthermore, when a user of a second terminal receives a playlist from a user of a first terminal, the user of the second terminal may input a new prompt to change or adjust the composition of the songs included in the playlist, such as adding new songs to the playlist (e.g., executing a song selection process in response to a prompt such as "add more songs") or deleting some songs (e.g., executing a song selection process in response to a prompt such as "delete songs by artist A"). Furthermore, the user of the second terminal may input a new prompt to add song information such as new song descriptions to each song included in the playlist (e.g., executing a description element generation process in response to a prompt such as "add composer information"). Furthermore, the composition of songs may be changed or adjusted, or song information such as new descriptions may be added, based on information about the user of the second terminal (e.g., the user's tastes and preferences, song selection history, etc.).
[0286] <Third Modification (1)> In the above embodiment, a messaging service is used as an example of an SNS service, but the SNS service is not limited to this. For example, a playlist created by a user may be made publicly available in an SNS service other than the messaging service.
[0287] For example, when a user of a first terminal shares a created playlist with an unspecified number of users, a user of a second terminal may be able to search for the playlist based on the shared playlist's title, summary, explanatory elements, song titles included in the playlist, etc. This allows the user of the second terminal to easily obtain a playlist that suits their own tastes and preferences without having to create the playlist themselves.
[0288] Additionally, the prompts used to generate the playlist may be shared along with the playlist. The shared prompts, as well as the playlist title, summary, and description elements, may be searchable by the user of the second terminal. This allows the user of the second terminal to easily obtain the appropriate prompts to generate the desired playlist.
[0289] The user of the second terminal may be able to execute the playlist generation process again, for example, by using the shared prompt as reference, leaving the prompt as is, or by partially changing the prompt, which allows the user of the second terminal to easily generate a new playlist based on the playlist and prompt shared on the SNS service.
[0290] <Other> (1) In the above embodiment, a song is selected based on a prompt, and an explanatory element for the song is generated. However, this is not limiting. For example, similar explanatory elements may be generated for the following services: ·Itinerary generation Itinerary elements such as departure points and destinations, transportation methods, names of accommodations, tourist spots, places to eat, etc. are selected based on the prompts, and an explanation of why the itinerary elements were selected based on the prompts may be generated. ·Real estate search Selecting a property based on a prompt, and optionally generating an explanation for why the property was selected based on the prompt. Store Locator Select store information based on the prompt, and then generate an explanation for why the store information based on the prompt was selected. Fashion coordination application Select clothing information based on the prompt, and then generate an explanation for why the clothing information based on the prompt was selected.
[0291] Note that similar explanation elements may be generated in other EC services.
[0292] (2) At least a part of the processing that was to be performed by the server 10 in the above embodiment may be performed by the terminal 20. Conversely, at least a part of the processing that was to be performed by the terminal 20 in the above example may be performed by the server 10.
[0293] The operator of the server 10 may also be a music distribution service provider in cooperation with a messaging service provider. In this case, the processing described in the above embodiments may be realized by one server, or the processing described in the above embodiments may be shared and realized by a server system consisting of multiple servers. A system configured with one or more servers may be defined as a server system, and the server of the present invention may be considered as a server system.
[0294] Furthermore, in the above-described embodiments, a server for distributing various applications (a server from which the terminal 20 downloads applications) may be configured as a server different from a server for providing the corresponding service (application). In other words, a server for distributing applications and a server for performing application management processing, etc., described in the above-described embodiments, etc., may be configured as physically separated servers, or may be configured as a single server.
[0295] Furthermore, applications are not limited to various application programs, but may also include, for example, a program that provides a function of another service as one function of a base application (for example, a program that provides a function of an advertisement distribution service as one function of a messaging application, or vice versa), a program for updating the base application, etc. Data used in application programs (which may include data for updating applications, etc.) may also be included.
[0296] In the above embodiments, the present invention is implemented by a client-server system, but is not limited to this. As mentioned above, the present invention may be implemented by a system such as a distributed system in which the terminal 20 has the functions of a server or server system. For example, the processes described in the flowcharts of the above embodiments as being performed by a server or server system may be performed by a terminal.
[0297] Furthermore, as mentioned above, the contents described in the above-mentioned embodiments, modifications, other embodiments, etc. can be applied in combination with each other. [Explanation of symbols]
[0298] 1. Communication Systems 10 Servers 20 terminals 30 Network
Claims
1. A program executed by an information processing device, Obtaining first information for generating a playlist; selecting a plurality of songs to be included in the playlist based on the first information; generating music information about a predetermined music piece from among the plurality of music pieces included in the playlist based on the first information and a feature of the predetermined music piece; is executed by the information processing device, program.
2. 2. The program according to claim 1, the first information is a prompt entered by a user generating the playlist; program.
3. 3. The program according to claim 2, The prompt input is a voice or text input. program.
4. 2. The program according to claim 1, the first information is an automatically generated prompt based on a user's selection regarding conditions for playlist generation; program.
5. 2. The program according to claim 1, the music information includes information about a sentence explaining the characteristics of the predetermined music piece; program.
6. The program according to claim 2 or claim 4, First song information for a first song in a first playlist selected based on a first prompt is different from second song information for the first song in a second playlist selected based on a second prompt different from the first prompt; program.
7. 7. The program according to claim 6, the first music information includes a predetermined selection reason and a first selection reason; The second music information includes the predetermined selection reason and a second selection reason different from the first selection reason.
8. 2. The program according to claim 1, the selecting and generating are performed by a language model. program.
9. 2. The program according to claim 1, the selecting is performed by a recommendation system; said generating being performed by a language model; program.
10. 2. The program according to claim 1, and further performing generating a title for the playlist. program.
11. 2. The program according to claim 1, further performing generating a summary of the playlist. program.
12. The program according to claim 2 or claim 4, obtaining second information related to the first prompt for modifying the playlist; reselecting a plurality of songs to include in the playlist based on the first prompt and the prompt; generating first music piece information regarding a reason for selecting the reselected predetermined music piece based on the reselected predetermined music piece and at least one of the prompt and the first prompt; is executed by the information processing device, program.
13. The program according to claim 2 or claim 4, the information processing device is capable of communicating with a terminal, receiving the first information from a first terminal; transmitting playlist information including the plurality of songs included in the playlist and the song information to the first terminal; is executed by the information processing device, program.
14. 14. The program according to claim 13, receiving second information related to sharing of the playlist information from the first terminal; transmitting the playlist information to a second terminal different from the first terminal based on the reception of the second information; is executed by the information processing device, program.
15. 15. The program according to claim 14, the playlist information includes the prompt; program.
16. 2. The program according to claim 1, The music information is generated for all the music pieces included in the playlist. program.
17. A program executed by an information processing device, generating music information about a predetermined music piece based on first information about an existing playlist and characteristics of the predetermined music piece included in the playlist; is executed by the information processing device, program.
18. 18. The program of claim 17, the first information includes information about a feature of the playlist that is determined based on features of a plurality of songs included in the playlist; program.
19. 19. The program of claim 18, the information about the characteristics of the playlist is generated by the information processing device based on the characteristics of the plurality of songs included in the playlist; program.
20. 18. The program of claim 17, the first information includes information indicating a feature of the playlist that is assigned to the playlist; program.
21. 21. The program of claim 20, The information representing the characteristics of the playlist includes at least either title information of the playlist assigned to the playlist or summary information explaining the characteristics of the playlist assigned to the playlist. program.
22. 18. The program of claim 17, the first information includes a prompt used to generate the playlist; program.
23. 18. The program of claim 17, the music information includes information about a sentence explaining the characteristics of the predetermined music piece; program.
24. 21. The program of claim 20, The plurality of songs included in the playlist include at least one of songs selected directly by a user and songs selected based on prompts for generating the playlist. program.
25. 2. The program according to claim 1, The music information is generated for all the music pieces included in the playlist. program.
26. An information processing method for an information processing device, Obtaining first information for generating a playlist; selecting a plurality of songs to be included in the playlist based on the first information; generating music information about a predetermined piece of music from among the plurality of pieces of music included in the playlist based on the first information and a feature of the predetermined piece of music; Information processing methods.
27. An information processing device, obtaining first information for generating a playlist; selecting a plurality of songs to be included in the playlist based on the first information; a control unit that generates music information about a predetermined music piece based on characteristics of the plurality of music pieces included in the playlist and the first information; Information processing device.
28. An information processing method for an information processing device, generating song information about a predetermined song based on first information about an existing playlist and characteristics of the predetermined song included in the playlist; Information processing methods.
29. An information processing device, a control unit that generates music information about a predetermined music piece based on first information about an existing playlist and characteristics of the predetermined music piece included in the playlist; Information processing device.
Citation Information
Patent Citations
JP1975034599A