Selection of media based on edge values specifying node relationships
Abstract
A method includes building at least a first data structure by storing artist identifiers and media identifiers as nodes within the at least a first data structure, wherein edges between the nodes correspond to relationships among artists and media identified by the artist identifiers and the media identifiers. User input including a seed identifier is received, wherein the seed identifier corresponds to one of the artist identifiers or one of the media identifiers. A first node corresponding to the seed identifier is located within the at least a first data structure. A first media identifier within the at least a first data structure having particular relationships to the seed identifier is located based on relationships corresponding to the edges between the nodes. A first media associated with the first media identifier is added to a playlist associated with a customized media station.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method comprising:
building at least a first data structure by storing artist identifiers and media identifiers as nodes within the at least a first data structure, wherein edges between the nodes correspond to relationships among artists and media identified by the artist identifiers and the media identifiers; receiving user input including a seed identifier, wherein the seed identifier corresponds to one of the artist identifiers or one of the media identifiers; locating within the at least a first data structure a first node corresponding to the seed identifier; locating, based on relationships corresponding to the edges between the nodes, a first media identifier within the at least a first data structure having particular relationships to the seed identifier; and adding a first media associated with the first media identifier to a playlist associated with a customized media station.
2 . The method of claim 1 , wherein:
a first node within the at least a first data structure corresponds to a first media item, and a second node within the at least a first data structure corresponds to a second media item; and wherein the method further includes:
making a comparison between at least a first characteristic of the first media item and a corresponding characteristic of the second media item to determine a degree of connectedness between the first media item and the second media item; and
assigning a numerical value reflecting the degree of connectedness between the first media item and the second media item to an edge between the first node and the second node.
3 . The method of claim 2 , further comprising:
determining the degree of connectedness between the first media item and the second media item based, at least in part, on whether the first media item and the second media item are included on a same media album.
4 . The method of claim 2 , further comprising:
building a plurality of second data structures, wherein each of the plurality of second data structures includes a third node corresponding to a particular acoustic aspect of the first media item, and a fourth node corresponding to a corresponding acoustic aspect of the second media item, and wherein edges between each third node and each fourth node represent a degree of acoustic connectedness between a first artist and a second artist; for each of the plurality of second data structures:
making a comparison between the particular acoustic aspect of the first media item and the corresponding acoustic characteristic of the second media item to determine a degree of acoustic connectedness between the first media item and the second media item; and
assigning a numerical value reflecting the degree of acoustic connectedness between the first media item and the second media item to an edge between the third node and the fourth node.
5 . The method of claim 4 , further comprising:
determining an overall degree of acoustic connectedness between the first media item and the second media item based on a plurality of numerical values assigned to edges between third nodes and fourth nodes of each of the plurality of second data structures; and determining the numerical value to be assigned to an edge between the first node and the second node in the at least a first data structure based in part on the overall degree of acoustic connectedness between the first media item and the second media item.
6 . The method of claim 1 , wherein:
a first node within the at least a first data structure corresponds to a first artist, and a second node within the at least a first data structure corresponds to a second artist; and wherein the method further includes:
making a comparison between at least a first characteristic of the first artist and a corresponding characteristic of the second artist to determine a degree of connectedness between the first artist and the second artist; and
assigning a numerical value reflecting the degree of connectedness between the first artist and the second artist to an edge between the first node and the second node.
7 . The method of claim 1 , further comprising:
building an artist data structure by storing artist identifiers as artist nodes within the artist data structure, wherein the artist identifiers correspond to artists, and edges between the artist nodes correspond to relationships between the artists; building a media data structure by storing media identifiers as media nodes within the media data structure, wherein the media identifiers correspond to media, and edges between the media nodes correspond to relationships between the media; receiving user input including a seed identifier, wherein the seed identifier corresponds to seed artist identifier; locating within the artist data structure a first artist node corresponding to the seed artist identifier; locating, based on relationships corresponding to the edges between the artist nodes, a child artist node within the artist data structure, wherein the child artist node is associated with a particular artist; identifying a media item associated with the particular artist; using the media item as a seed media item; locating within the media data structure a first media node corresponding to the seed media item; locating, based on relationships corresponding to the edges between the media nodes, a selected media item within the media data structure, wherein the selected media item has particular relationships to the seed media item; and adding the selected media item to a playlist associated with a customized media station.
8 . A media selection engine comprising:
a processor; memory coupled to the processor; a program of instructions stored in the memory, and configured to be executed by the processor, the program of instructions including:
at least one instruction to build at least a first data structure by storing artist identifiers and media identifiers as nodes within the at least a first data structure, wherein edges between the nodes correspond to relationships among artists and media identified by the artist identifiers and the media identifiers;
at least one instruction to receive user input including a seed identifier, wherein the seed identifier corresponds to one of the artist identifiers or one of the media identifiers;
at least one instruction to locate within the at least a first data structure a first node corresponding to the seed identifier;
at least one instruction to locate, based on relationships corresponding to the edges between the nodes, a first media identifier within the at least a first data structure having particular relationships to the seed identifier; and
at least one instruction to add a first media associated with the first media identifier to a playlist associated with a customized media station.
9 . The media selection engine of claim 8 , wherein:
a first node within the at least a first data structure corresponds to a first media item, and a second node within the at least a first data structure corresponds to a second media item; the program of instructions further including:
at least one instruction to make a comparison between at least a first characteristic of the first media item and a corresponding characteristic of the second media item to determine a degree of connectedness between the first media item and the second media item; and
at least one instruction to assign a numerical value reflecting the degree of connectedness between the first media item and the second media item to an edge between the first node and the second node.
10 . The media selection engine of claim 9 , the program of instructions further including:
at least one instruction to determine the degree of connectedness between the first media item and the second media item based, at least in part, on whether the first media item and the second media item are included on a same media album.
11 . The media selection engine of claim 9 , the program of instructions further including:
at least one instruction to build a plurality of second data structures, wherein each of the plurality of second data structures includes a third node corresponding to a particular acoustic aspect of the first media item, and a fourth node corresponding to a corresponding acoustic aspect of the second media item, and wherein edges between each third node and each fourth node represent a degree of acoustic connectedness between a first artist and a second artist; at least one instruction to be executed for each of the plurality of second data structures, the at least one instruction including:
at least one instruction to make a comparison between the particular acoustic aspect of the first media item and the corresponding acoustic characteristic of the second media item to determine a degree of acoustic connectedness between the first media item and the second media item; and
at least one instruction to assign a numerical value reflecting the degree of acoustic connectedness between the first media item and the second media item to an edge between the third node and the fourth node.
12 . The media selection engine of claim 11 , the program of instructions further including:
at least one instruction to determine an overall degree of acoustic connectedness between the first media item and the second media item based on a plurality of numerical values assigned to edges between third nodes and fourth nodes of each of the plurality of second data structures; and at least one instruction to determine the numerical value to be assigned to an edge between the first node and the second node in the at least a first data structure based in part on the overall degree of acoustic connectedness between the first media item and the second media item.
13 . The media selection engine of claim 8 , wherein:
a first node within the at least a first data structure corresponds to a first artist, and a second node within the at least a first data structure corresponds to a second artist; the program of instructions further including:
at least one instruction to make a comparison between at least a first characteristic of the first artist and a corresponding characteristic of the second artist to determine a degree of connectedness between the first artist and the second artist; and
at least one instruction to assign a numerical value reflecting the degree of connectedness between the first artist and the second artist to an edge between the first node and the second node.
14 . The media selection engine of claim 8 , the program of instructions further including:
at least one instruction to build an artist data structure by storing artist identifiers as artist nodes within the artist data structure, wherein the artist identifiers correspond to artists, and edges between the artist nodes correspond to relationships between the artists; at least one instruction to build a media data structure by storing media identifiers as media nodes within the media data structure, wherein the media identifiers correspond to media, and edges between the media nodes correspond to relationships between the media; at least one instruction to receive user input including a seed identifier, wherein the seed identifier corresponds to seed artist identifier; at least one instruction to locate within the artist data structure a first artist node corresponding to the seed artist identifier; at least one instruction to locate, based on relationships corresponding to the edges between the artist nodes, a child artist node within the artist data structure, wherein the child artist node is associated with a particular artist; at least one instruction to identify a media item associated with the particular artist; at least one instruction to use the media item as a seed media item; at least one instruction to locate within the media data structure a first media node corresponding to the seed media item; at least one instruction to locate, based on relationships corresponding to the edges between the media nodes, a selected media item within the media data structure, wherein the selected media item has particular relationships to the seed media item; and at least one instruction to add the selected media item to a playlist associated with a customized media station.
15 . A non-transitory computer readable medium tangibly embodying a program of instructions configured to be stored in a memory and executed by a processor, the program of instructions comprising:
at least one instruction to build at least a first data structure by storing artist identifiers and media identifiers as nodes within the at least a first data structure, wherein edges between the nodes correspond to relationships among artists and media identified by the artist identifiers and the media identifiers; at least one instruction to receive user input including a seed identifier, wherein the seed identifier corresponds to one of the artist identifiers or one of the media identifiers; at least one instruction to locate within the at least a first data structure a first node corresponding to the seed identifier; at least one instruction to locate, based on relationships corresponding to the edges between the nodes, a first media identifier within the at least a first data structure having particular relationships to the seed identifier; and at least one instruction to add a first media associated with the first media identifier to a playlist associated with a customized media station.
16 . The non-transitory computer readable medium of claim 15 , wherein:
a first node within the at least a first data structure corresponds to a first media item, and a second node within the at least a first data structure corresponds to a second media item; the program of instructions further including:
at least one instruction to make a comparison between at least a first characteristic of the first media item and a corresponding characteristic of the second media item to determine a degree of connectedness between the first media item and the second media item; and
at least one instruction to assign a numerical value reflecting the degree of connectedness between the first media item and the second media item to an edge between the first node and the second node.
17 . The non-transitory computer readable medium of claim 16 , further including:
at least one instruction to build a plurality of second data structures, wherein each of the plurality of second data structures includes a third node corresponding to a particular acoustic aspect of the first media item, and a fourth node corresponding to a corresponding acoustic aspect of the second media item, and wherein edges between each third node and each fourth node represent a degree of acoustic connectedness between a first artist and a second artist; at least one instruction to be executed for each of the plurality of second data structures, the at least one instruction including:
at least one instruction to make a comparison between the particular acoustic aspect of the first media item and the corresponding acoustic characteristic of the second media item to determine a degree of acoustic connectedness between the first media item and the second media item; and
at least one instruction to assign a numerical value reflecting the degree of acoustic connectedness between the first media item and the second media item to an edge between the third node and the fourth node.
18 . The non-transitory computer readable medium of claim 17 , further including:
at least one instruction to determine an overall degree of acoustic connectedness between the first media item and the second media item based on a plurality of numerical values assigned to edges between third nodes and fourth nodes of each of the plurality of second data structures; and at least one instruction to determine the numerical value to be assigned to an edge between the first node and the second node in the at least a first data structure based in part on the overall degree of acoustic connectedness between the first media item and the second media item.
19 . The non-transitory computer readable medium of claim 15 , wherein:
a first node within the at least a first data structure corresponds to a first artist, and a second node within the at least a first data structure corresponds to a second artist; and further including:
at least one instruction to make a comparison between at least a first characteristic of the first artist and a corresponding characteristic of the second artist to determine a degree of connectedness between the first artist and the second artist; and
at least one instruction to assign a numerical value reflecting the degree of connectedness between the first artist and the second artist to an edge between the first node and the second node.
20 . The non-transitory computer readable medium of claim 15 , further including:
at least one instruction to build an artist data structure by storing artist identifiers as artist nodes within the artist data structure, wherein the artist identifiers correspond to artists, and edges between the artist nodes correspond to relationships between the artists; at least one instruction to build a media data structure by storing media identifiers as media nodes within the media data structure, wherein the media identifiers correspond to media, and edges between the media nodes correspond to relationships between the media; at least one instruction to receive user input including a seed identifier, wherein the seed identifier corresponds to seed artist identifier; at least one instruction to locate within the artist data structure a first artist node corresponding to the seed artist identifier; at least one instruction to locate, based on relationships corresponding to the edges between the artist nodes, a child artist node within the artist data structure, wherein the child artist node is associated with a particular artist; at least one instruction to identify a media item associated with the particular artist; at least one instruction to use the media item as a seed media item; at least one instruction to locate within the media data structure a first media node corresponding to the seed media item; at least one instruction to locate, based on relationships corresponding to the edges between the media nodes, a selected media item within the media data structure, wherein the selected media item has particular relationships to the seed media item; and at least one instruction to add the selected media item to a playlist associated with a customized media station.Join the waitlist — get patent alerts
Track US2023103954A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.