IP Library Granted Patent US 12,001,472
Granted Patent B2
US 12,001,472 · App. 18/194,260 · Granted Jun 4, 2024

Method and system for generating podcast metadata to facilitate searching and recommendation

Inventors: Aneesh Vartakavi (Emeryville, CA); Casper Lützhøft Christensen (Emeryville, CA)
Assignee: Gracenote, Inc.
G06F16/383G06F16/335G06F16/35G06F16/685G06F16/7844G06F30/27G06F40/00G10L15/00
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,001,472
App. No.
18/194,260
Granted
Jun 4, 2024
Kind
B2
Abstract

A method and system for computer-based generation of podcast metadata, to facilitate operations such as searching for and recommending podcasts based on the generated metadata. In an example method, a computing system obtains a text representation of a podcast episode and obtains person data defining a list of person names such as celebrity names. The computing system then correlates the person data with the text representation, to find a match between a listed person name a text string in the text representation. Further, the computing system predicts a named-entity span in the text representation and determines that the predicted named-entity span matches a location of the text string in the text representation of the podcast episode, and based on this determination, the computing system generates and outputs metadata that associates the person name with the podcast episode.

Claims (65)

1. A method comprising:

obtaining, by a computing system, a text representation of a podcast episode;

obtaining, by the computing system, person data defining a list of person names;

correlating, by the computing system, the person data with the text representation of the podcast episode, to find a match between (i) a person name from the list of the person names and (ii) a text string in the text representation of the podcast episode;

predicting, by the computing system, a named-entity span in the text representation of the podcast episode;

determining, by the computing system, that the predicted named-entity span matches a location of the text string in the text representation of the podcast episode;

based on the determining that the predicted named-entity span matches the location of the text string in the text representation of the podcast episode, generating, by the computing system, metadata that associates the person name with the podcast episode; and

outputting, by the computing system, the generated metadata.

2. The method of claim 1 , wherein the person names in the list defined by the person data are names of people, the method further comprising:

filtering the person data based on accreditations of the people.

3. The method of claim 1 , wherein the person name is a name of a person, the method further comprising:

using, the computing system, machine-learning-based role identification to determine a role of the person in the podcast episode;

based on the determined role of the person in the podcast episode, generating, by the computing system, additional metadata that identifies the role of the person in the podcast episode; and

outputting, by the computing system, the generated additional metadata.

4. The method of claim 3 , wherein the role comprises at least one item selected from the group consisting of a host of the podcast episode, a guest of the podcast episode, and a subject of the podcast episode.

5. The method of claim 1 , wherein the person name is a name of a person, the method further comprising:

making a voice-identification-based determination of whether a voice of the person is included in the podcast episode, wherein the generating of the metadata that associates the person name with the podcast episode is further based on the voice-identification-based determination.

6. The method of claim 1 , wherein the person name is a name of a person, the method further comprising:

using, by the computing system, voice identification as a basis to determine one or more times in the podcast episode when a voice of the person is present; and

generating and outputting, by the computing system, additional metadata indicating the one or more determined times.

7. The method of claim 1 , further comprising using the generated metadata as a basis to facilitate podcast searching based on the person name.

8. A computing system comprising:

one or more processors;

non-transitory data storage; and

program instructions stored in the non-transitory data storage and executable by the one or more processors to carry out operations including:

obtaining a text representation of a podcast episode,

obtaining person data defining a list of person names,

correlating the person data with the text representation of the podcast episode, to find a match between (i) a person name from the list of the person names and (ii) a text string in the text representation of the podcast episode,

predicting a named-entity span in the text representation of the podcast episode,

determining that the predicted named-entity span matches a location of the text string in the text representation of the podcast episode,

based on the determining that the predicted named-entity span matches the location of the text string in the text representation of the podcast episode, generating metadata that associates the person name with the podcast episode, and

outputting the generated metadata.

9. The computing system of claim 8 , wherein the person names in the list defined by the person data are names of people, the operations further including:

filtering the person data based on accreditations of the people.

10. The computing system of claim 8 , wherein the person name is a name of a person, the operations further including:

using machine-learning-based role identification to determine a role of the person in the podcast episode;

based on the determined role of the person in the podcast episode, generating additional metadata that identifies the role of the person in the podcast episode; and

outputting the generated additional metadata.

11. The computing system of claim 10 , wherein the role comprises at least one item selected from the group consisting of a host of the podcast episode, a guest of the podcast episode, and a subject of the podcast episode.

12. The computing system of claim 8 , wherein the person name is a name of a person, the operations further including:

making a voice-identification-based determination of whether a voice of the person is included in the podcast episode, wherein the generating of the metadata that associates the person name with the podcast episode is further based on the voice-identification-based determination.

13. The computing system of claim 8 , wherein the person name is a name of a person, the operations further including:

using voice identification as a basis to determine one or more times in the podcast episode when a voice of the person is present; and

generating and outputting additional metadata indicating the one or more determined times.

14. The computing system of claim 8 , further comprising using the generated metadata as a basis to facilitate podcast searching based on the person name.

15. A non-transitory computer-readable medium having stored thereon program instructions that, upon execution by one or more processors, cause performance of a set of operations comprising:

obtaining a text representation of a podcast episode;

obtaining person data defining a list of person names;

correlating the person data with the text representation of the podcast episode, to find a match between (i) a person name from the list of the person names and (ii) a text string in the text representation of the podcast episode;

predicting a named-entity span in the text representation of the podcast episode;

determining that the predicted named-entity span matches a location of the text string in the text representation of the podcast episode;

based on the determining that the predicted named-entity span matches the location of the text string in the text representation of the podcast episode, generating metadata that associates the person name with the podcast episode; and

outputting the generated metadata.

16. The non-transitory computer-readable medium of claim 15 , wherein the person names in the list defined by the person data are names of people, the operations further comprising:

filtering the person data based on accreditations of the people.

17. The non-transitory computer-readable medium of claim 15 , wherein the person name is a name of a person, the operations further comprising:

using machine-learning-based role identification to determine a role of the person in the podcast episode;

based on the determined role of the person in the podcast episode, generating additional metadata that identifies the role of the person in the podcast episode; and

outputting the generated additional metadata.

18. The non-transitory computer-readable medium of claim 17 , wherein the role comprises at least one item selected from the group consisting of a host of the podcast episode, a guest of the podcast episode, and a subject of the podcast episode.

19. The non-transitory computer-readable medium of claim 15 , wherein the person name is a name of a person, the operations further including:

making a voice-identification-based determination of whether a voice of the person is included in the podcast episode, wherein the generating of the metadata that associates the person name with the podcast episode is further based on the voice-identification-based determination.

20. The non-transitory computer-readable medium of claim 15 , wherein the person name is a name of a person, the operations further including:

using voice identification as a basis to determine one or more times in the podcast episode when a voice of the person is present; and

generating and outputting additional metadata indicating the one or more determined times.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2023
From: V ARTAKAVI, ANEESH; LÜTZHØFT CHRISTENSEN, CASPER
To: GRACENOTE, INC.
Reel/Frame 063202/0587 →
Continuity (2)
Provisional Application 63326457 · Apr 1, 2022
Related Publication 20230325428A1 · Oct 12, 2023