Verizon Tackles Predictive Search

Two Verizon subscribers searching for World Cup programming on its next-generation interactive program guide would receive unique results based on factors such as location and language of the query.

“For example, a search for ‘world cup’ in Hindi may return search results for the cricket world cup, while a search for ‘world cup’ in English may return search results for the soccer world cup,” Verizon states in a patent application published Thursday.

Sasidharan
Sasidharan

Chennai, India-based Verizon senior program manager Shan Sasidharan is named as lead inventor on the patent application, titled, “Advanced search for media content.”

The invention could see Verizon compete with top IPG patent owner Rovi Corp., which demonstrated an IPG featuring predictive search capabilities at the INTX convention in May.

Abstract: Methods and systems for indexing and efficiently retrieving media content in a database use subtitle data of media content items, including subtitle text and timestamps, for indexing the items. A media server coupled to a communication network identifies keywords in the subtitle data, and stores the media content items in association with metadata including the keywords. When a search request for media content is received, a search for media content includes searching the metadata of the stored media content to identify media content items having subtitles matching the search request. In one example, keywords are translated into multiple languages to enable searching of the metadata in multiple languages. In another example, timestamp information included in the subtitle data is also included in the metadata so as to enable a search to return a time point within a media content item at which a keyword matches the search request.

Patent Application

Claims: 

1. A method comprising: retrieving subtitle data for a media content item, the subtitle data including a plurality of subtitles each having subtitle text and a timestamp, in a media server coupled to a communication network; identifying one or more keywords included in the subtitle data; storing the media content item in a database communicatively connected to the communication network, wherein the media content item is stored in the database in association with metadata for the media content item including the identified one or more keywords; receiving in the media server a search request for media content stored in the database; and performing a search of metadata for media content stored in the database to identify one or more media content items having metadata including a keyword matching a search term of the search request.

2. The method of claim 1, further comprising: in response to identifying the one or more keywords, determining translations of the one or more keywords into a language other than a language of the subtitle data, wherein the media content item is stored in the database in association with metadata for the media content item including the determined translations of the one or more keywords.

3. The method of claim 2, further comprising: in response to performing the search, identifying a media content item stored in the database and having subtitle data that is in a language other than a language of the search term of the search request and that includes a subtitle text whose translation into the language of the search term of the search request matches the search term.

4. The method of claim 1, further comprising: in response to identifying the one or more keywords included in the subtitle data, retrieving the timestamp of each subtitle including one of the one or more keywords; and storing the media content item in the database in association with metadata for the media content item including the identified one or more keywords and, for each identified keyword, the retrieved timestamp of a subtitle including the keyword.

5. The method of claim 4, further comprising: in response to performing the search, identifying a media content item stored in the database and having metadata including a keyword matching a search term of the search request; and initiating transmission of the identified media content item from a time point determined based on the timestamp in the metadata that is associated with the keyword matched to the search term.

6. The method of claim 5, wherein the transmission of the identified media content item is initiated from a time point of the timestamp of a subtitle of the media content item including the keyword matched to the search term.

7. The method of claim 5, wherein the transmission of the identified media content item is initiated from a time point preceding the time point of the timestamp of a subtitle of the media content item including the keyword matched to the search term.

8. The method of claim 1, further comprising: in response to identifying the one or more keywords included in the subtitle data, determining a technical term that refers to a same technology or a similar technology as one of the identified keywords, wherein the media content item is stored in the database in association with metadata for the media content item including the identified one or more keywords and the determined technical term that refers to the same or similar technology as the one keyword.

9. The method of claim 1, wherein the performing the search of metadata comprises: performing a first search of media content stored in the database to determine whether any media content item stored in the database has a title matching the search term of the search request; and upon determining that no media content item stored in the database has a title matching the search term of the search request, performing a second search of metadata for media content stored in the database, wherein the second search is performed on a broader range of metadata stored in the database than the first search and determines whether any media content item stored in the database has any metadata matching the search term of the search request.

10. The method of claim 9, wherein the performing the search of metadata further comprises: performing a search of media content stored in the database to determine whether any name, number, or category of a channel accessible through the media server matches the search term of the search request, wherein the first search of media content is performed only upon determining that no name, number, or category of a channel accessible through the media server matches the search term of the search request.

11. The method of claim 9, wherein the performing of the second search includes determining whether any media content item stored in the database has associated subtitle data matching the search term of the search request.

12. A server comprising: a central processing unit; a data communication interface for packet data communication with user devices across a communication network; and a memory storing machine readable instructions which, when executed by the central processing unit, cause the server to perform functions including functions to: retrieve subtitle data for a media content item, the subtitle data including a plurality of subtitles each having subtitle text and a timestamp; identify one or more keywords included in the subtitle data; store the media content item in a database communicatively connected to the communication network, wherein the media content item is stored in the database in association with metadata for the media content item including the identified one or more keywords; receive, via the data communication interface from a user device across the communication network, a search request for media content stored in the database; and perform a search of metadata for media content stored in the database to identify one or more media content items having metadata including a keyword matching a search term of the search request.

13. The server of claim 12, wherein execution of the machine readable instructions by the central processing unit cause the server to perform further functions to: in response to identifying the one or more keywords, determine translations of the one or more keywords into a language other than a language of the subtitle data, wherein the media content item is stored in the database in association with metadata for the media content item including the determined translations of the one or more keywords.

14. The server of claim 13, wherein execution of the machine readable instructions by the central processing unit cause the server to perform further functions to: in response to performing the search, identify a media content item stored in the database and having subtitle data that is in a language other than a language of a search term of the search request and that includes a subtitle text whose translation into the language of the search term of the search request matches the search term.

15. The server of claim 12, wherein execution of the machine readable instructions by the central processing unit cause the server to perform further functions to: in response to identifying the one or more keywords included in the subtitle data, retrieve the timestamp of each subtitle including one of the one or more keywords; and store the media content item in the database in association with metadata for the media content item including the identified one or more keywords and, for each identified keyword, the retrieved timestamp of a subtitle including the keyword.

16. The server of claim 12, wherein execution of the machine readable instructions by the central processing unit cause the server to perform further functions to: in response to performing the search, identify a media content item stored in the database and having metadata including a keyword matching a search term of the search request; and initiate transmission, to a user device across the communication network, of the identified media content item from a time point determined based on the timestamp in the metadata that is associated with the keyword matched to the search term.

17. The server of claim 16, wherein the transmission of the identified media content item is initiated from a time point of the timestamp of a subtitle of the media content item including the keyword matched to the search term.

18. The server of claim 16, wherein the transmission of the identified media content item is initiated from a time point preceding the time point of the timestamp of a subtitle of the media content item including the keyword matched to the search term.

19. The server of claim 12, wherein the function to perform the search of metadata comprises: performing a first search of media content stored in the database to determine whether any media content item stored in the database has a title matching the search term of the search request; and upon determining that no media content item stored in the database has a title matching the search term of the search request, performing a second search of metadata for media content stored in the database, wherein the second search is performed on a broader range of metadata stored in the database than the first search and determines whether any media content item stored in the database has associated subtitle data matching the search term of the search request.

20. The server of claim 19, wherein the performing the search of metadata further comprises: performing a search of media content stored in the database to determine whether any name, number, or category of a channel accessible through the media server matches the search term of the search request, wherein the first search of media content is performed only upon determining that no name, number, or category of a channel accessible through the media server matches the search term of the search request.