Claims
- 1. A system for finding and retrieving programming from remote sources in a distributed digital communication network, comprising:
an aggregator, comprising:
a request and results processing server, a search engine server coupled to the request and results processing server, and a content acquisition server coupled to the request and results processing server, wherein the request and results processing server receives a request for a program, the search engine server searches the remote sources for the program, and the content acquisition server receives the program from one of the remote sources.
- 2. The system of claim 1, wherein the aggregator further comprises:
a decoder and content formatter including a decoder processor that decodes the programming for storage; and a coder and content formatter including a coder processor that formats the programming for delivery to a user terminal.
- 3. The system of claim 1, wherein the aggregator further comprises a local content storage that stores one or more programs, and wherein the search engine server first searches the local content storage before searching the remote sources.
- 4. The system of claim 1, wherein the aggregator further comprises:
a communications server coupled to the request and results processing server, wherein the communications server communicates with one or more user terminals in the digital communication network; and a content delivery server coupled to the communications server, wherein the content delivery server receives the program from the content acquisition server and provides the program to one or more of the one or more user terminals.
- 5. The system of claim 1, wherein the aggregator further comprises a network gateway that couples the search engine server and the content acquisition server to the one or more remote sources.
- 6. The system of claim 1, wherein the request and results processing server, comprises:
a request receiver and router; a content download request processor coupled to the request receiver and router; a search request processor coupled to the request receiver and router; a content search suggestion engine coupled to the search request processor; a search results form builder; and a scheduled program prompt and notification processor.
- 7. The system of claim 6, wherein the content search suggestion engine, comprises:
a suggestion database processor; a content metadata crawler; a suggestion keyword indexer; and a suggestion database.
- 8. The system of claim 7, wherein the suggestion database comprises one or more indexed suggestion keywords relating a metadata element with a program content type.
- 9. The system of claim 8, wherein the content metadata crawler generates a list of available content metadata, and passes the list to the suggestion keyword indexer.
- 10. The system of claim 9, wherein the suggestion keyword indexer indexes each metadata element, assigns each metadata element an associated vector quantity, the vector quantity describing the metadata element as a suggestion keyword, and populates the suggestion database with the indexed suggestion keywords, wherein an index value indicates a proximity of metadata elements within the suggestion database.
- 11. The system of claim 10, wherein the suggestion database processor comprises a search engine that searches the suggestion database with user-supplied search criteria and user historical and demographic data to produce a suggested search terms list, wherein search terms in the suggested search terms list are used to create an augmented search request form, and wherein the augmented search request form is provided to the search request processor.
- 12. The system of claim 11, wherein the suggestion database processor prompts the content metadata crawler to search content metadata in the aggregator local database, and wherein the metadata crawler searches content metadata in the aggregator local database and passes retrieved content metadata to the suggestion keyword indexer as the list of available content metadata.
- 13. The system of claim 12, wherein the suggestion database processor uses the proximity of the metadata elements to determine a vector relevance of suggestion keywords to search keywords.
- 14. The system of claim 6, wherein the search results form builder receives user search results and suggested search results, and produces a search results form, the search results form comprising programming, scheduling and availability information, and wherein the results form builder provides the search results form to a user terminal.
- 15. The system of claim 14, wherein the search results form further comprises content metadata and identification information.
- 16. The system of claim 6, wherein the request receiver and router, in response to a user request, opens a dialog with a database administrator, retrieves the requesting user's administrative data, and routes the administrative data to the user's terminal.
- 17. The system of claim 6, wherein the content download request processor receives content download requests, authorizes the download requests, and sends the download requests to a content acquisition server.
- 18. The system of claim 6, wherein the search request processor, comprises:
search request processing programs, comprising:
a search term suggestion program, and a search term comparison program.
- 19. The system of claim 6, wherein the scheduled program prompt and notification processor provides a content notification to the user, wherein the content notification comprises one or more of an on-screen pop-up window, audible notification, e-mail notification, and automated telephone notification, and wherein the content notification includes an indication of program availability.
- 20. The system of claim 1, wherein the search engine server, comprises:
a search engine processor; a remote content crawler coupled to the search engine processor; a search results processor coupled to the search engine processor; and a replicated content database.
- 21. The system of claim 20, wherein the remote content crawler periodically crawls the communications network and retrieves programming information for programs not indexed on the aggregator.
- 22. The system of claim 20, wherein the remote content crawler crawls the communications network automatically on a periodic basis.
- 23. The system of claim 22, wherein the specific program request is provided by the user using a search request form.
- 24. The system of claim 23, wherein the search request form comprises:
a user identification and authorization information; a user administration and billing information; a search request qualification; a search request criteria; and a content type.
- 25. The system of claim 24, wherein the user identification and authorization information, comprises:
a current user identification; a user network address; a public encryption key; digital rights management parameters; a preferred content format; and a current hardware configuration, wherein the current hardware configuration is provided to a coder and content formatter that formats the search request form for delivery to a user terminal.
- 26. The system of claim 24, wherein the search request qualification, comprises:
search request initiation time; a list of search request content types; and a search request time limit.
- 27. The system of claim 24, wherein the search request criteria, comprises:
audio/video programming; computer software; electronic book; and Internet websites.
- 28. The system of claim 26, wherein the list of search request content types allows the user to specify one or more of video, audio, software, text, electronic books, and Websites, wherein the search engine server returns search results based on the list of search result content types.
- 29. The system of claim 20, wherein the replicated content database comprises a copy of the aggregator local database, wherein the search engine server searches the replicated content database according to the search request form.
- 30. The system of claim 1, wherein the content acquisition server, comprises:
a content request processor and router; and a remote content download processor, comprising a content buffer, wherein the remote content download processor caches programming content while managing a download connection to the remote content sources over the digital communications network.
- 31. The system of claim 1, further comprising:
a content delivery server, comprising:
a local content request processor, a digital rights management processor, an advertisement processor, a content delivery processor, and an encryption processor.
- 32. The system of claim 1, further comprising:
a system administrator, comprising:
a system administrative server, a user registration server, a content fee and copyright billing server, a user billing server, a content provider registration server, and a database administrator.
- 33. A method using a video and multimedia aggregator for finding and retrieving program content from remote sources in a distributed digital communication network, comprising:
receiving a program content search request from a user terminal in the network; searching a local content database based on the program content search request; searching one or more remote content databases based on the program content search request; identifying one or more programs based on the searches; and acquiring one or more of the one or more identified programs from one or more of the local content database and the remote databases.
- 34. The method of claim 33, wherein the step of receiving the program content search request, comprises:
receiving search criteria from the user terminal; processing the received search criteria into a search request form; and logging the search criteria into a user local database.
- 35. The method of claim 34, wherein the search request form, comprises:
a user identification and authorization information; a user administration and billing information; a search request criteria; and a program content type.
- 36. The method of claim 35, wherein the user identification and authorization information comprises:
a current user identification; an authorization code and password; a user network address; a public encryption key; digital rights management parameter; a preferred content format; and a current hardware configuration, wherein the current hardware configuration is provided to a coder and content formatter that formats the search request form for delivery to a user terminal.
- 37. The method of claim 35, wherein the search criteria are received as a free form question, further comprising:
applying a search criteria algorithm to parse the free form question; analyzing the parsed free form question to identify and categorize significant terms; and entering the categorized and identified significant terms into the search request form, wherein a search request processor accesses a lexicon of terms to augment the search request.
- 38. The method of claim 37, further comprising designating additional search parameters, wherein the additional search parameters are based on a type of query word used in the free form question.
- 39. The method of claim 33, further comprising:
decoding the one or more programs received from the remote databases; storing the decoded programs; encoding the stored programs and the programs from the local content database for delivery to the user terminal; and delivering the encoded programs to the user terminal.
- 40. The method of claim 33, wherein the remote sources are coupled to the user terminal through a wide area distribution system, wherein program content is delivered directly to a user terminal thereby bypassing the aggregator.
- 41. The method of claim 33, wherein the remote sources are coupled to the aggregator through a network gateway.
- 42. The method of claim 33, further comprising:
providing a search results list, the search results list including information related to the one or more identified programs; and receiving a program acquisition request based on the search results list.
- 43. The method of claim 33, wherein the aggregator comprises a content metadata crawler, the method further comprising:
crawling the remote sources; identifying program content based on one or more completed search requests; and acquiring one or more programs based on the identified program content, wherein the acquired programs are stored in an aggregator database.
- 44. The method of claim 43, wherein the identifying step further comprises using user profile information.
- 45. The method of claim 44, wherein the user profile information includes one or more of user demographic information, user program viewing history, and user-provided information.
- 46. The method of claim 33, further comprising verifying a user is authorized to request the searches.
- 47. The method of claim 46, wherein the user is not authorized to request the searches, further comprising notifying the user terminal that the search request is denied.
- 48. The method of claim 46, further comprising:
filtering the search request based on the user's profile, wherein the filtering steps apply filters comprising one or more of program content type and program content provider.
- 49. The method of claim 46, wherein the search request includes a free form question, further comprising:
comparing a supplied search term in the free form question with a database of indexed suggestion keywords; determining a relevance of the supplied search term, comprising:
calculating vector differences of the supplied search term and indexed keywords, thereby creating a list of suggestion key words, retrieving a user profile, ranking the suggestion keywords based on the user profile, appending the list of suggestion keywords to the search request form, thereby creating an augmented search request form, routing the augmented search request form to a search engine server, and searching content metadata for occurrences of the search criteria.
- 50. A video and multimedia aggregator for use in a distributed digital communication network, comprising:
means for requesting a search for program content; means for processing the search request; means for sending local and remote sources for the program content; means for acquiring metadata related to the program content; means for displaying the acquired metadata; means for receiving a program content download request; means for acquiring the program content in the download request; means for displaying the acquired program content at a user terminal; and means for billing a user of the user terminal.
- 51. The aggregator of claim 50, wherein the means for requesting the search comprises means for receiving and routing the search request.
- 52. The aggregator of claim 50, wherein the means for processing the search request, comprises:
means for constructing a search request form; means for suggesting content to supplement the search request; and means to provide the search results to the user terminal.
- 53. The aggregator of claim 50, further comprising means for providing user fees to a content provider.
RELATED APPLICATIONS
[0001] The following U.S. Patents also are incorporated by reference:
[0002] U.S. Pat. No. 5,798,785, entitled “Terminal for Suggesting Programs Offered on a Television Program Delivery System;”
[0003] U.S. Pat. No. 5,986,690, entitled “Electronic Book Selection and Delivery System;”
[0004] The following co-pending U.S. patent applications also are incorporated by reference:
[0005] U.S. patent application Ser. No. 07/991,074, filed Dec. 9, 1992, entitled “Remote Control for Menu Driven Subscriber Access to Television Programming;”
[0006] U.S. patent application Ser. No. 08/906,469, filed Aug. 5, 1997, entitled “Reprogrammable Terminal for Suggesting Programs Offered on a Television Program Delivery System;”
[0007] U.S. patent application Ser. No. 09/191,520, filed Nov. 13, 1998, entitled “Digital Broadcast Program Ordering;”
[0008] U.S. patent application Ser. No. 09/289,957, filed Apr. 13, 1999, entitled “Electronic Book Alternative Delivery Systems;”
[0009] U.S. patent application Ser. No. 09/289,956, filed Apr. 13, 1999, entitled “Electronic Book Alternative Delivery Methods;” and
[0010] U.S. patent application entitled “Video and Digital Multimedia Aggregator;” and patent application entitled “Video and Digital Multimedia Aggregator Remote Content Crawler,” filed on date herein.