Methods and systems for identifying and accessing multimedia content
Methods, systems, and subsystems for identifying and accessing multimedia content are provided. One system for identifying and accessing multimedia content from a network includes an encyclopedic database, a user library content file having data distilled from the encyclopedic database, a user local settings file having personal profile settings relating to filtering content, and a similarity file having data associating together the multimedia content. A local device is in data communication with the user library content file, the user local settings file, and the similarity file. Instructions stored on computer-readable media perform steps (when executed by a processor) for allowing: (a) the user library content file to be searched to obtain search results, the search results having been filtered using the personal profile settings; and (b) the similarity file to be accessed to obtain supplementary search results, the supplementary search results having been filtered using the personal profile settings.
Latest Arrabon Management Services LLC Patents:
This application is a continuation-in-part claiming priority to U.S. patent application Ser. No. 13/357,279 filed Jan. 24, 2012. This application is also a continuation-in-part claiming priority to U.S. patent application Ser. No. 13/357,303 filed Jan. 24, 2012. And this application is a continuation-in-part claiming priority to U.S. patent application Ser. No. 13/554,660 filed Jul. 20, 2012. The disclosure of each is incorporated herein in its entirety by reference.
BACKGROUNDAlthough the production of multimedia content is expanding at ever increasing rates, much of that content is overlooked due to insufficiencies in identification and access. Shortcomings in identification and access can relate to various problems, ranging for example from finding the content to knowing the subject matter and appropriateness of the content. Knowing whether content is appropriate for various users may be of particular interest to families and those with particular moral preferences. Methods, systems, and subsystems set forth herein may improve the identification of, and/or access to, multimedia content.
SUMMARYMethods, systems, and subsystems for identifying and accessing multimedia content are set forth herein. In one embodiment, a system for identifying and accessing multimedia content from a network includes a server having a first processor in data communication with a first communication device, a first input device, a first output device, and first computer memory. The first computer memory has an encyclopedic database having an accumulation of subject matter data about the multimedia content. A local device includes a second processor in data communication with a second communication device, a second input device, a second output device, and second computer memory. The second processor is in data communication with a user library content file located in at least one of the first computer memory and the second computer memory. The user library content file has data distilled from the encyclopedic database. The second processor is also in data communication with a user local settings file located in at least one of the first computer memory and the second computer memory, and the user local settings file has personal settings relating to filtering content. The second processor allows the user library content file to be searched and presents search results from the user library content file after the search results are filtered using the personal settings. The second processor is in data communication with a similarity file located in at least one of the first computer memory and the second computer memory, and the similarity file has associations between the multimedia content. The second processor allows the similarity file to be accessed and presents supplementary search results from the similarity file after the supplementary search results are filtered using the personal settings.
In another embodiment, a system for identifying and accessing multimedia content from a network includes an encyclopedic database having an accumulation of subject matter data about the multimedia content. A user library content file has data distilled from the encyclopedic database, a user local settings file has personal profile settings relating to filtering content, and a similarity file has data associating together the multimedia content. A local device is in data communication with the user library content file, the user local settings file, and the similarity file. Instructions are stored on computer-readable media, and the instructions (when executed by a processor) perform steps for allowing: (a) the user library content file to be searched to obtain search results, the search results having been filtered using the personal profile settings; and (b) the similarity file to be accessed to obtain supplementary search results, the supplementary search results having been filtered using the personal profile settings.
In still another embodiment, a system for identifying and accessing multimedia content from a network includes at least one non-transitory computer memory and at least one processor. The at least one processor is in data communication with the at least one computer memory, an input device, and an output device. Programming causes: (a) the at least one computer memory to store a user profile, which includes personal settings relating to filtering content; (b) a user library content file to be searched using data from the input device and subsequently filtered using the personal settings relating to filtering content, whereby at least one search result is created; and (c) a similarity file to be accessed using the at least one search result and subsequently filtered using the personal settings relating to filtering content, whereby at least one supplemental search result is created. Programming further allows multimedia content from the at least one search result and the at least one supplemental search result to be selected. The user library content file has data distilled from an accumulation of subject matter data about the multimedia content.
In yet another embodiment, a system for identifying and accessing multimedia content from a network includes at least one non-transitory computer memory and at least one processor. The at least one processor is in data communication with the at least one computer memory, an input device, and an output device. Programming causes: (a) the at least one computer memory to store a user profile which includes personal settings relating to filtering content; (b) a user library content file to be searched using data from the input device, whereby creating preliminary search results; (c) the preliminary search results to be filtered using the personal settings relating to filtering content, whereby creating search results; (d) a similarity file to be accessed using the preliminary search results, whereby creating preliminary supplemental search results; and (e) the preliminary supplemental search results to be filtered using the personal settings relating to filtering content, whereby creating supplemental search results. Programming further allows multimedia content from the search results and the supplemental search results to be selected. The user library content file has data distilled from an accumulation of subject matter data about the multimedia content.
In still yet another embodiment, a system for identifying and accessing multimedia content from a network includes at least one non-transitory computer memory and at least one processor. The at least one processor is in data communication with the at least one computer memory, an input device, and an output device. Programming causes: (a) the at least one computer memory to store a user profile having personal settings relating to filtering content; (b) a user library content file to be searched using data from the input device, whereby creating preliminary search results; (c) the preliminary search results to be filtered using the personal settings relating to filtering content, whereby creating search results; (d) a similarity file to be accessed using the search results, whereby creating preliminary supplemental search results; and (e) the preliminary supplemental search results to be filtered using the personal settings relating to filtering content, whereby creating supplemental search results. Programming further allows multimedia content from the search results and the supplemental search results to be selected. The user library content file has data distilled from an accumulation of subject matter data about the multimedia content.
In a further embodiment, a method for determining similarities among multiple pieces of multimedia content includes the steps: providing at least one non-transitory computer memory; providing at least one processor in data communication with the at least one computer memory, an input device, and an output device; creating a similarity file; and accessing the similarity file. The similarity file is created either by: (a) automatically computing correlations from an encyclopedic database and storing correlations over a predetermined threshold in the similarity file; or (b) automatically computing correlations from a user library content file and storing correlations over a predetermined threshold in the similarity file. The encyclopedic database has an electronically-created accumulation of subject matter data about the multimedia content, and the user library content file has data automatically distilled from the encyclopedic database.
The server 1100 includes a processor 1105 in data communication with a communication device 1110, an input device 1115, an output device 1120, and computer memory 1125. While this document shall often refer to elements in the singular, those skilled in the art will appreciate that multiple such elements may often be employed and that the use of multiple such elements is fully contemplated herein. For example, multiple processors may be used as the processor 1105 instead of a single processor.
The communication device 1110 may be a modem or any other appropriate device, whether now existing or later developed, for allowing the processor 1105 to communicate with the local device 1200 and the network 1300. In some embodiments, the communication device 1110 may be a single device for communicating with the local device 1200 and the network 1300, while in other embodiments multiple devices may be used.
The input device 1115 and the output device 1120 may be any appropriate devices, whether now existing or later developed, for providing data to and presenting data from the processor 1105. For example, the input device 1115 may include a computer mouse, a touchpad, and/or a keyboard; and the output device 1120 may include a display screen, a printer, and/or an audible alarm. In some embodiments, the input device 1115 and the output device 1120 may be combined, such as through a touch screen.
The computer memory 1125 may include volatile and nonvolatile memory, and any appropriate data storage devices whether now existing or later developed may be used. The computer memory 1125 may store an encyclopedic database 1150, a user library content file 1160, a user software file 1170, and a server software file 1180. Again, the database and files 1150, 1160, 1170, 1180 may include multiple databases and files, as will be appreciated by those skilled in the art, and the use of the singular herein encompasses such multiple databases and files.
The encyclopedic database 1150 includes an extensive accumulation of data about the substance of the content 1310. For example, the encyclopedic database 1150 may include information about actors, directors, writers, scripts, key words, titles, story lines, genres, soundtracks, release dates, box office data, ratings, presence of adult content (e.g., language, drug use, nudity, et cetera), reviews, awards, historical context, and other data associated with the content 1310. The database 1150 may be built and maintained (i.e., supplemented/updated) in one or more of various ways. For example, the server software file 1180 may cause the processor 1105 (via the communication device 1110) to automatically access and store the content data 1320 from the network 1300 using web crawler software instructions. Or the content data 1320 in the network 1300 may be accessed and stored in a non-automated manner (i.e., with human input). Or data may be obtained from reviewing the content 1310 and then input into the encyclopedic database 1150 in an automated or non-automated manner; for example, closed captioning data may be input into the encyclopedic database 1150.
Creating/maintaining the encyclopedic database 1150 is illustrated at step S1150 in
The user library content file 1160 includes data distilled from the encyclopedic database 1150. Some of the data in the user library content file 1160 may be identical to data in the encyclopedic database 1150 (e.g., actor data, director data, writer data, title data, et cetera), and other data in the user library content file 1160 may be summaries, rankings, or other data processed from the data in the encyclopedic database 1150. The server software file 1180 may create the user library content file 1160 with or without human intervention.
Creating/maintaining the user library content file 1160 is illustrated at step S1160 in
Returning to
Turning now to the local device 1200, though still with primary reference to
The communication device 1210 may be a modem or any other appropriate device, whether now existing or later developed, for allowing the processor 1205 to communicate with the server 1100 and the network 1300. In some embodiments, the communication device 1210 may be a single device for communicating with the server 1100 and the network 1300, while in other embodiments multiple devices may be used.
The input device 1215 and the output device 1220 may be any appropriate devices, whether now existing or later developed, for providing data to and presenting data from the processor 1205. For example, the input device 1215 may include a television remote control, a computer mouse, a touchpad, and/or a keyboard; and the output device 1220 may include a television screen, a display screen, et cetera. In some embodiments, the input device 1215 and the output device 1220 may be combined, such as through a touch screen.
The computer memory 1225 may include volatile and nonvolatile memory, and any appropriate data storage devices whether now existing or later developed may be used. The computer memory 1225 may store a copy of the user library content file 1160, a copy of the user software file 1170, an external library content file 1265, and a local settings file 1290. Again, the files 1160, 1170, 1265, 1290 may include multiple files, as will be appreciated by those skilled in the art, and the use of the singular herein encompasses such multiple files. As illustrated in
The various files in the computer memory 1225 are illustrated in
Moving on, the user library access module 1202 (
Once the user identifies content 1310 to access, a reference file (or “pointer file” or “link”) in the user library content file 1160 may direct the processor 1205 to access the content 1310 on the network 1300. For example, the content 1310 may be accessed through Netflix, Hulu, or websites of other content providers. Because the user library content file 1160 may include detailed information about the content 1310, the associated content 1310 may be searched and filtered with great specificity regarding the subject matter and fine details of the content 1310. And in addition to resulting in superior output, searching and filtering based on the user library content file 1160 may provide substantial speed advantages over trying to search and analyze the content data 1320 directly from the network 1300.
The external library access module 1203 (
Because of insufficient data about the content 1310 accessed through the external library access module 1203, the user's particular profile settings in the local settings file 1290 may not be directly utilized. Instead, the external library content file 1265 may reconcile the user's particular profile settings in the local settings file 1290 with filter settings in an external search engine that can identify and access the content 1310. Reconciliation may occur based on various principles, with the goal being to filter out truly unwanted content 1310 and provide access to acceptable content 1310.
A stringent reconciliation may ensure that the filter settings in an external search engine are at least sufficient to meet all of the restrictions in the user's particular profile settings in the local settings file 1290. For example, if an external search engine has four levels of filtering (with level four being most restrictive), if all but one of a user's profile settings are met by the settings in level two, and if the remaining setting is met by the settings in level four, the external library access module 1203 may activate level four of the external search engine filter. If an external search engine does not have filter settings that meet all of the restrictions in the user's profile settings, the external library access module 1203 may completely block access to the external search engine.
In a less stringent reconciliation, the external library access module 1203 may disregard one or more of the user's profile settings based on such factors as the degree to which the user's other profile settings are met by a particular filter setting in an external search engine, the identity of the particular profile setting that is not met by an external filter setting, et cetera. For example, if an external search engine has four levels of filtering (with level four being most restrictive), if all but one of a user's profile settings are met by the settings in level two, and if the remaining setting is met by the settings in level four, level two may be used unless the remaining profile setting is required to be met due to its specific identity (e.g., if the remaining setting is language-related, level two may be used; if the remaining setting is related to sexual content, use of level four may be required).
Whether the external library access module 1203 uses a stringent reconciliation or a less stringent reconciliation may depend on a user-selected setting in the local settings file 1290 or the external library content file 1265, or may be selected without user input. Similarly, the specific identity of user profile settings that must be met by an external search engine filter (e.g., sexual content in the example given above) may depend on user-selected settings in the local settings file 1290 or the external library content file 1265, or may be selected without user input. Once appropriate content 1310 is identified using the external search engine, the external search engine may be used to access the content 1310. Although the content 1310 accessible through the external library access module 1203 may not be searched and filtered to the extent of the content 1310 accessible through the user library access module 1202, it may nevertheless be desirable to provide access to this additional multimedia content.
The following description is an example of the system 100 in use according to an embodiment. At the step S1220 (
At the step S1150 (
From there, at the step S1160 (also illustrated in
By accessing the user library content file 1160 and the stored profile settings in the local settings file 1290, the user library access module 1202 can search and filter the content 1310 associated with the content data 1320 at a very fine level. For example, by searching for “Tom Hanks”, all of the content 1310 in which Tom Hanks acted, directed, produced, wrote, or performed in a soundtrack, and all of the content 1310 in which the name “Tom Hanks” is used or mentioned may be filtered in accordance with the profile settings and then presented by the user library access module 1202. The order in which the user library access module 1202 presents the filtered results may be selected based on various predetermined rules; for example, content 1310 in which Tom Hanks acted may be presented before content 1310 in which Tom Hanks produced and content 1310 in which “Tom Hanks” is mentioned. So “Forrest Gump”, “A League Of Their Own”, and “Philadelphia” (films in which Tom Hanks was an actor) may be displayed before “Where The Wild Things Are” (a film in which Tom Hanks was a producer) and “Bamboo Shark” (a film that mentions “Tom Hanks”). Because the user library access module 1202 references the user library content file 1160, films such as “Catch Me If You Can” (a film in which Tom Hanks was an actor) may be filtered out for including smoking if the user profile does not allow smoking to be shown. For another example, “Apollo 13” (a film in which Tom Hanks was an actor) may be one of many results in a user search for “moon”, “lunar”, “astronaut”, “NASA”, or “survive”—assuming the profile settings do not require “Apollo 13” to be filtered out of the results. A reference file in the user library content file 1160 may direct the processor 1205 to access the content 1310 on the network 1300 once the content 1310 is selected.
To search for content 1310 which is not adequately described in the user library content file 1160, the external library access module 1203 may be utilized. For example, the external library content file 1265 may reconcile the user's particular profile settings in the local settings file 1290 with filter settings in a YouTube search engine. The YouTube search engine (with its filter settings appropriately engaged) may then be used to identify and access content 1310.
The instructions 1505 used to determine similarity may be configured in various ways, and it may be desirable for the content 1310 to be ranked against some or all other content 1310 using scores that are then stored in the similarity file 1502. The scores may be numerical values (e.g., between zero and one, one and one thousand, or any other appropriate range), classes (e.g., high similarity, little similarity, no similarity), or any other type of ranking. In some embodiments, only relationships with a threshold amount of similarity are stored. It may be particularly desirable for the similarity file 1502 to be created prior to (or at least independent from) receiving input from any users about their preferences.
Once the similarity file 1502 is created, it may be used in various ways. For example, if a user selects one piece of content data 1320 (e.g., using the input device 1215), recommendation instructions 1515 (e.g., in the user software file 1170, shown in
So, returning to the example above in which a user searches for “Tom Hanks”, the recommendation instructions 1515 may cause (among others) the movies “Apocalypse Now”, “Field of Dreams”, “Major League”, and “The Wrestler” to be identified, supplementing the example “Forrest Gump”, “A League Of Their Own”, “Philadelphia”, “Where The Wild Things Are”, and “Bamboo Shark” results (Apocalypse Now because it relates to the Vietnam war, as does part of the Tom Hanks movie Forrest Gump; Field of Dreams and Major League because they relate to baseball, as does the Tom Hanks movie A League Of Their Own; The Wrestler because its soundtrack includes a work by Bruce Springsteen, as does the soundtrack to the Tom Hanks movie Philadelphia). The processor 1205 may then filter the identified content 1310 using the stored profile settings in the local settings file 1290, and the results may be presented to the user (e.g., according to the scores in the similarity file 1502).
And in some embodiments, the stored profile settings in the local settings file 1290 may be consulted by the processor 1205 multiple times—such as both before and after the similarity file 1502 is consulted. If such an embodiment is used and the movie A League Of Their Own is filtered out due to the stored profile settings in the local settings file 1290, the movie Field of Dreams may not be identified and presented to the user, even assuming it would not be filtered out by the stored profile settings in the local settings file 1290 if considered individually.
By using the similarity file 1502, recommendations can be provided upon receiving only a single input, in addition to any desired profile settings. Moreover, results may be promptly determined and presented. This may not be realistically achieved if similarity between the content 1310 were determined simultaneously with searching the Internet to identify the content 1310, and use of the content data 1320 (whether or not distilled as discussed above) may provide more satisfying results than recommendation engines that use past behavior of individuals to gage likely behavior of other individuals.
In embodiment 2000, the user library content file 1160 remains solely on the server 1100 (and not on the local device 1200). As such, the local device 1200 accesses the user library content file 1160 at the server 1100 (via the communication device 1210) for using the user library content file 1160. This arrangement may be desirable, for example, to eliminate periodic updating of the user library content file 1160 at the local device 1200, to retain exclusive control of the user library content file 1160, or if the local device 1200 has very limited computer memory capacity. Similarly, though not shown in
In embodiment 3000, content 1310′ and content data 1320′—which may be generally similar to the content 1310 and the content data 1320, respectively—is housed on the server 1100. The encyclopedic database 1150 may include an extensive accumulation of data about the substance of the content 1310′, just as it does about the content 1310; and the distilled data in the user library content file 1160 may relate to the content 1310′, just as it does to the content 1310. Moreover, the user library access module 1202 may allow a user to search for and access the content 1310′, just as it allows access to a portion of the content 1310 on the network 1300. Accordingly, the primary affect of the location of the content 1310, 1310′ may simply be that reference files may point to the server 1100 to access the content 1310′, and may point to the network 1300 to access the content 1310.
Similarly, though not shown in
In embodiment 4000, local settings file 1290′ and user software file 1170′—which may include the functionality as discussed above with respect to the local settings file 1290 and the user software file 1170, respectively—may also allow for the automatic playback of content 1310 on the output device 1220 based on a user's preferences.
Specifically, as discussed above, the profile module 1201 (
Many sources may require that certain prerequisites be met before some or all of the content 1310 is accessible by the user. For example, Netflix may require that the user set up an account on Netflix and pay a fee before accessing any content 1310. Or, for example, Comcast may require that the user enter a pin before accessing certain content 1310 (e.g., movies on demand). The user may have different user names, passwords, pins, et cetera, for accessing the content 1310 from these various sources, and repeated entry of these usernames, passwords, pins, et cetera, to access the content 1310 may get tiresome. Moreover, some users, due for example to age or disability, may have difficulty with entering (or be unable to enter) such information and choosing between the content sources. Difficulties may further arise from the ever expanding sources of content, as some users may find it challenging or unpleasant to keep track of, obtain access to, and/or choose between the numerous content sources.
Attention is now directed to
As shown in
Then, at step 4008, the program 4002 may ask the user to select sources 4007 that he would like to be searched for the content 1310. Only by way of example, the program 4002 may ask the user to select one or more sources 4007 from the list comprising Netflix 4007A, Hulu 4007B, Hulu Plus 4007C, Direct TV 4007D, Amazon 4007E, YouTube 4007F, and Vudu 4007G. The user may select one or all of the sources 4007. As noted above, some or all of these sources 4007 may require that the user meet certain prerequisites (e.g., set up an account, pay a fee, enter his age, enter a pin, et cetera) before the content 1310 from these sources 4007 becomes accessible to the user. Assume, for purposes of illustration, that the user selects Netflix 4007A. The program 4002 may then move on to step 5000 (
Specifically, once the user selects a specific source 4007 (e.g., Netflix 4007A) at step 4008, the program 4002, at step 5002, may ask the user whether he already has an account set up on that source 4007 (e.g., Netflix 4007A). If the user indicates that he already has an account set up on Netflix 4007A, the program 4002 may move to step 5004A and ask the user to enter his Netflix username and password. Then, at step 5006A, the program 4002 may save the user's Netflix signup information and return to step 4008. Alternatively, if the user indicates at step 5002 that he does not have an account on Netflix 4007A, the program 4002 at step 5004 may ask whether the user wishes to set up an account on Netflix 4007A. If the user indicates that he does not want to set up an account on Netflix 4007A, the program 4002 may move to step 5006B and save this information in the local settings file 1290′ (i.e., save in the local settings file 1290′ that the user does not have and does not want an account on Netflix 4007A). If, on the other hand, the user indicates at step 5004 that he would like to set up an account on Netflix 4007A, the program 4002 may ask the user at step 5006 whether the user would like to set up the account on Netflix 4007A manually, or whether he would like the account to be setup automatically.
If the user indicates that he would like to set up an account on Netflix 4007A manually, the program 4002 at step 5008M may take user to the Netflix signup page so that the user may manually set up the account. After the user sets up his Netflix account, the program 4002 may save the user's Netflix username and password in the local settings file 1290′ and return to step 4008 (
It will be appreciated by those skilled in the art that while
It will also be appreciated by those skilled in the art that the popularity of the sources 4007 may change from time to time. For example, certain sources 4007 may become more popular over time because they increase their content and/or decrease their fees. Other sources 4007, for example, may become less popular because of the lack of recent content. And still other sources 4007 may shut down. The program 4002 may keep track of the status of the sources 1407 (e.g., by accessing the network 1300), and only display those sources which are currently functional and in demand, so that the user does not have to unnecessarily scroll through less desirable sources 4007. But of course the user may enter and access any source 4007 by using the other option 4007O.
After the user has entered the information regarding the sources 4007 in step 4008, the program 4002 at step 4010 may ask the user about his preferences. For example, the program 4002 may ask whether the high quality or the low cost of the content 1310 is more important to him. As will be appreciated, certain users may wish to never compromise on the audio and video quality of the content 1310, and may indicate that high quality of the content 1310 is more important than lower cost. The program 4002 may then move to step 4012H and ask the user for the highest resolution that his output device 1220 supports. Only by way of example, the user may be given options such as 480i, 480p, 720i, 720p, 1080i, 1080p, et cetera. The user may select the highest resolution that his output device 1220 supports, and the program may then move on to step 4014. The program 4002 may also allow the user to enter any other preferences regarding the quality of the content 1310 (e.g., the user may enter that he prefers black and white content 1310, 3D content, et cetera).
If at step 4010 the user indicates that lower cost of the content 1310 is more important, the program 4002 may move to step 4012L and ask the user about the maximum cost that he is willing to incur for the content 1310. For example, the program 4002 may ask whether the user wishes only to access content 1310 that is free, under $2 (e.g., under $2 per season, per show, per hour, per movie, et cetera), under $4, under $6, et cetera. The program 4002 may also allow the user to enter other preferences related to costs in step 4012L. For example, the user may enter that he wishes to pay up to $5 for full HD content 1310, but that otherwise, the content 1310 must be under $2.
Next, at steps 4014-4020, the program 4002 may ask the user about preferences 1295, such as discussed above. For example, at step 4014 the program 4002 may ask the user about the level of violence that he is comfortable viewing (e.g., mild fighting, moderate violence, strong violence, intense violence, no violence, et cetera). After the user enters his preference for violence of the content 1310 at step 4014, the program may at step 4016 ask the user what level of offensive language he is comfortable with (e.g., none, mild language, moderate language, brief strong language, pervasive strong language, et cetera). At step 4018, the program 4002 may ask the user about the sexual content that he is comfortable viewing (e.g., kissing, implied sexual situations, partial nudity, full nudity, sex scenes, et cetera), and at step 4020, the program 4002 may ask the user what level of mature themes he is comfortable viewing (e.g., is he comfortable viewing alcohol consumption, intense situations, drug use, smoking, occult themes, et cetera). Once the user enters this information, the program 4002 moves on to step 4024. Based on a user's particular information, certain preferences may be made unavailable; for example, a user that is 15 years old may be disallowed from entering that he is comfortable with sex scenes, drug use, pervasive strong language, et cetera. Selections made through an administrator profile and/or preset selections triggered by profile data (e.g., age) may prevent predetermined selections from being made, or automatically make predetermined selections.
At step 4024, the program 4002 may inquire about the user's payment preferences (assuming that the user has not limited the content 1310 only to free content). The program 4002 may provide the user with several payment options. Only by way of example, the program 4002 may ask whether the user wishes to always pay for the content by a credit card, or by a debit card, or whether the user wishes the payments to be alternatively charged to the debit and credit card. The program 4002 may also allow for entry of the user's credit card and debit card information, which information may securely be stored, for example, in the local settings file 1225. In some embodiments, this sensitive information may be stored offline for safety (e.g., in a hard drive in the device 1200 that is accessible by the processor 1205 but which is otherwise blocked from being accessed over the network 1300).
The program 4002 may allow the user to rotate payments between the various users. For example, the program 4002 may apply a credit card of the first user to pay for one episode of a show, and then a debit card of a third user to pay for a second episode of a show. The program 4002 may first obtain the consent of all the paying users before allowing this option to be exercised. Other payment variations may also be available. For example, a user may ask the program 4002 to charge his debit card for payments under $2 and his credit card for larger payments.
After the user enters the payment options in step 4024, the program 4002 may move on to step 4026 and store the information provided by the user in the local settings file 1290′. At step 4028, the program 4002 may check whether the user wanted a source account to be set up automatically (e.g., a Netflix account 4007A, a Hulu Plus account 4007C, a YouTube account 4007F, et cetera). If so, the program 4002 may set up these accounts, taking into account the various information gathered by the program 4002. For example, the program 4002 may generate a Netflix username for the user based on his name, a Netflix password based on his address, and make any required payments based on the payment information entered by the user in step 4024. The program 4002 may then end at step 4032. As those skilled in the art will appreciate, various described steps may be omitted or rearranged in various embodiments, and additional steps may be added.
As noted, the user software file 1170′, akin to the user software file 1170 of embodiment 1000, may include instructions for operating the local device 1200. In embodiment 1000, if a user searches for particular content 1310, the profile module 1201, in conjunction with the user library access module 1202 (
Consider, for example, a user John Doe having a profile 6000 as shown in
Assume now that John Doe searches for the movie “Drive.” The module 1202 and/or 1203 may thus search for this movie on Netflix 4007A, Hulu Plus 4007C, Direct TV 4007D, and Fastpasstv. Assume that Netflix 4007A includes this movie in 720p resolution, Hulu Plus 4007C includes this movie in 420p resolution, Direct TV 4007D includes this movie in 1080p resolution, and that Fastpasstv does not include this movie. The user software file 1290′, based on John Doe's preferences, may select this movie from Direct TV 4007D. For example, the user software file 1170 may access Direct TV and automatically enter John Doe's Direct TV pin as required by Direct TV. The user software file 1170 may then also automatically display this movie on the output device 1220, and if required, pay the required fees according to John Doe's preferences. In this manner, the need for John Doe to search through the various sources 4007 to find the content 1310 that best fits his preferences is eliminated. As will be appreciated, the profile 6000 need only be saved once, and may thereafter be automatically utilized to repeatedly find and display the requested content 1310. However, the profile 6000 may be edited as desired (e.g., to accommodate a change in preferences).
Consider now, for example, a profile 6002 of a user Jane Doe, as depicted in
Assume now that Jane Doe searches for “car chases.” The module 1202 and/or 1203 may thus search for content 1310 that includes or relates to car chases on Netflix 4007A, Hulu Plus 4007C, Direct TV 4007D, and YouTube 4007F. Assume that the encyclopedic database 1150 indicates that the movie “Drive” is most closely related to these search terms. The profile module 1201 may thus crosscheck the movie “Drive” with Jane Doe's profile 6002, and then, because this movie contains strong violence, continue searching for other content 1310. Consider, for example, that the encyclopedic database 1150 suggests that the movie “Herbie” is most closely related to the search terms after the movie “Drive.” The profile module 1201, after ensuring that the movie “Herbie” does not run afoul of any preferences set by Jane Doe, may search for “Herbie” on Netflix 4007A, Hulu Plus 4007C, Direct TV 4007D, and YouTube 4007F. Assume that Netflix 4007A includes this movie in 1080i resolution, Hulu Plus 4007C includes this movie in 1080p resolution for free, Direct TV 4007D includes this movie in 480p resolution for $5, and that YouTube includes this movie in 420p resolution for free. Based on Jane Doe's preferences, the embodiment 4000 may then automatically display the movie “Herbie” from YouTube.
By automatically displaying the content 1310 that best fits the user's preferences, the embodiment 4000 may eliminate the need for users to: (1) repetitively enter their user names, passwords, pins, et cetera to access the content 1310 from the various sources 4007; (2) scroll through long lists of the content 1310 from the various sources 1407, including content 1310 that is unsuitable (e.g., exceeds the user's comfort with violence, sex, or is too costly, et cetera) and/or unplayable (e.g., of a resolution higher than that supported by the output device 1220); and (3) repetitively enter information regarding payment (e.g., credit card information, debit card information, et cetera). In some embodiments, a budget (e.g., a monthly budget or a weekly budget) may be associated with profiles during the setup of preferences (e.g., by the administrator profile), and the system may block all but free content once the budget is reached. This may provide a safeguard from large, unwanted charges. And as should be clear, some user profiles (e.g., children profiles) may be configured to always block all but free content.
For situations in which multiple content sources have the same cost and output quality attributes (e.g., if Netflix 4007A, Direct TV 4007D, and You Tube 4007F include the same desired content at the same cost and resolution), the source may be automatically chosen among those results by selecting the source that has the most reliable transmissions, the fastest transmissions, the soonest transmission, a preferential relationship with an operator of the system 4000, et cetera.
Many different arrangements of the various components depicted, as well as components not shown, are possible without departing from the spirit and scope of the present invention. Embodiments of the present invention have been described with the intent to be illustrative rather than restrictive. Alternative embodiments will become apparent to those skilled in the art that do not depart from its scope. A skilled artisan may develop alternative means of implementing the aforementioned improvements without departing from the scope of the present invention. It will be understood that certain features and subcombinations are of utility and may be employed without reference to other features and subcombinations and are contemplated within the scope of the claims. While various files and software have been described as enabling specific functions, those skilled in the art will appreciate that files and software may be commingled or further segregated, and that specific file or software labels are used for convenience.
Claims
1. A system for identifying and accessing multimedia content from a network, the system comprising:
- a server having a first processor in data communication with: a first communication device, a first input device, a first output device, and first computer memory; the first computer memory having an encyclopedic database; the encyclopedic database being separate from the multimedia content and having an accumulation of subject matter data about the multimedia content; and
- a local device having a second processor in data communication with: a second communication device, a second input device, a second output device, and second computer memory;
- wherein the second processor is in data communication with a user library content file located in at least one of the first computer memory and the second computer memory, the user library content file being separate from the encyclopedic database and having data distilled from the encyclopedic database;
- wherein the second processor is in data communication with a user local settings file located in at least one of the first computer memory and the second computer memory, the user local settings file having personal settings relating to filtering content;
- wherein the second processor allows the user library content file to be searched and presents search results from the user library content file, the search results having been filtered using the personal settings;
- wherein the second processor is in data communication with a similarity file located in at least one of the first computer memory and the second computer memory, the similarity file having associations between the multimedia content; and
- wherein the second processor allows the similarity file to be accessed and presents supplementary search results from the similarity file, the supplementary search results having been filtered using the personal settings.
2. The system of claim 1, wherein the similarity file is located in the second computer memory.
3. The system of claim 1, wherein the user library content file is located in the second computer memory.
4. The system of claim 1, wherein the data distilled from the encyclopedic database includes a plurality of reference files for accessing the multimedia content from the network.
5. The system of claim 1, further comprising software for automatically entering subject matter data from the network into the encyclopedic database.
6. The system of claim 1, wherein the associations between the multimedia content in the similarity file are scores indicating amounts of similarity.
7. A system for identifying and accessing multimedia content from a network, the system comprising:
- an encyclopedic database separate from the multimedia content and having an accumulation of subject matter data about the multimedia content;
- a user library content file separate from the encyclopedic database and having data distilled from the encyclopedic database;
- a user local settings file having personal profile settings relating to filtering content;
- a similarity file having data associating together the multimedia content; and
- a local device in data communication with the user library content file, the user local settings file, and the similarity file; and
- instructions stored on computer-readable media; wherein the instructions, when executed by a processor, perform steps for allowing: (a) the user library content file to be searched to obtain search results, the search results having been filtered using the personal profile settings; and (b) the similarity file to be accessed to obtain supplementary search results, the supplementary search results having been filtered using the personal profile settings.
8. A system for identifying and accessing multimedia content from a network, the system comprising:
- at least one non-transitory computer memory;
- at least one processor in data communication with the at least one computer memory, an input device, and an output device;
- programming causing the at least one computer memory to store a user profile; the user profile including personal settings relating to filtering content;
- programming causing a user library content file to be searched using data from the input device and subsequently filtered using the personal settings relating to filtering content, whereby at least one search result is created; the user library content file being separate from an encyclopedic database and having data distilled from the encyclopedic database; the encyclopedic database being separate from the multimedia content and having an accumulation of subject matter data about the multimedia content;
- programming causing a similarity file to be accessed using the at least one search result and subsequently filtered using the personal settings relating to filtering content, whereby at least one supplemental search result is created; and
- programming allowing multimedia content from the at least one search result and the at least one supplemental search result to be selected.
9. The system of claim 8, further comprising programming causing the at least one processor to actuate the output device and thereby display the selected multimedia content.
10. A system for identifying and accessing multimedia content from a network, the system comprising:
- at least one non-transitory computer memory;
- at least one processor in data communication with the at least one computer memory, an input device, and an output device;
- programming causing the at least one computer memory to store a user profile; the user profile including personal settings relating to filtering content;
- programming causing a user library content file to be searched using data from the input device, whereby creating preliminary search results; the user library content file being separate from an encyclopedic database and having data distilled from the encyclopedic database; the encyclopedic database being separate from the multimedia content and having an accumulation of subject matter data about the multimedia content;
- programming causing the preliminary search results to be filtered using the personal settings relating to filtering content, whereby creating search results;
- programming causing a similarity file to be accessed using the preliminary search results, whereby creating preliminary supplemental search results;
- programming causing the preliminary supplemental search results to be filtered using the personal settings relating to filtering content, whereby creating supplemental search results; and
- programming allowing multimedia content from the search results and the supplemental search results to be selected.
11. A system for identifying and accessing multimedia content from a network, the system comprising:
- at least one non-transitory computer memory;
- at least one processor in data communication with the at least one computer memory, an input device, and an output device;
- programming causing the at least one computer memory to store a user profile; the user profile including personal settings relating to filtering content;
- programming causing a user library content file to be searched using data from the input device, whereby creating preliminary search results; the user library content file being separate from an encyclopedic database and having data distilled from the encyclopedic database; the encyclopedic database being separate from the multimedia content and having an accumulation of subject matter data about the multimedia content;
- programming causing the preliminary search results to be filtered using the personal settings relating to filtering content, whereby creating search results;
- programming causing a similarity file to be accessed using the search results, whereby creating preliminary supplemental search results;
- programming causing the preliminary supplemental search results to be filtered using the personal settings relating to filtering content, whereby creating supplemental search results; and
- programming allowing multimedia content from the search results and the supplemental search results to be selected.
12. A method for determining similarities among multiple pieces of multimedia content, the method comprising:
- providing at least one non-transitory computer memory;
- providing at least one processor in data communication with the at least one computer memory, an input device, and an output device;
- creating a similarity file by one of: (a) automatically computing correlations from an encyclopedic database and storing correlations over a predetermined threshold in the similarity file; the encyclopedic database being separate from the multimedia content and having an electronically-created accumulation of subject matter data about the multimedia content; or (b) automatically computing correlations from a user library content file and storing correlations over a predetermined threshold in the similarity file; the user library content file being separate from the encyclopedic database and having data automatically distilled from the encyclopedic database; and
- accessing the similarity file.
13. The method of claim 12, wherein the similarity file does not include any user preferences.
4520404 | May 28, 1985 | Von Kohorn |
4605964 | August 12, 1986 | Chard |
5598276 | January 28, 1997 | Cookson |
5664046 | September 2, 1997 | Abecassis |
5778135 | July 7, 1998 | Ottesen et al. |
5835087 | November 10, 1998 | Herz et al. |
6075550 | June 13, 2000 | Lapierre |
6133912 | October 17, 2000 | Montero |
6226793 | May 1, 2001 | Kwoh |
6269216 | July 31, 2001 | Abecassis |
6337947 | January 8, 2002 | Porter |
6351596 | February 26, 2002 | Ostrover |
6393196 | May 21, 2002 | Yamane et al. |
6430357 | August 6, 2002 | Orr |
6481011 | November 12, 2002 | Lemmons |
6519770 | February 11, 2003 | Ford |
6757482 | June 29, 2004 | Ochial et al. |
6771875 | August 3, 2004 | Kunieda et al. |
6813438 | November 2, 2004 | Bates et al. |
6867818 | March 15, 2005 | Bray |
6889383 | May 3, 2005 | Jarman |
6898799 | May 24, 2005 | Jarman |
6954584 | October 11, 2005 | Kashiwagi |
6972802 | December 6, 2005 | Bray |
6976265 | December 13, 2005 | Yang |
7139031 | November 21, 2006 | Bray |
7284202 | October 16, 2007 | Zenith |
7342917 | March 11, 2008 | Mohan et al. |
7360234 | April 15, 2008 | Robson |
7526784 | April 28, 2009 | Jarman |
7540009 | May 26, 2009 | Bryant |
7542951 | June 2, 2009 | Chakrabarti et al. |
7543068 | June 2, 2009 | Aaron et al. |
7543318 | June 2, 2009 | Jarman |
7577970 | August 18, 2009 | Jarman |
7584159 | September 1, 2009 | Chakrabarti et al. |
7634790 | December 15, 2009 | Finseth et al. |
7684438 | March 23, 2010 | Stephens et al. |
7774288 | August 10, 2010 | Acharya et al. |
7844562 | November 30, 2010 | Gong et al. |
7870166 | January 11, 2011 | Lutnick |
7877395 | January 25, 2011 | Sarukkai et al. |
7899813 | March 1, 2011 | Song et al. |
7979426 | July 12, 2011 | Jeong et al. |
8015140 | September 6, 2011 | Kumar et al. |
8019707 | September 13, 2011 | Shani et al. |
8037003 | October 11, 2011 | Zhong et al. |
8065254 | November 22, 2011 | Das et al. |
8156059 | April 10, 2012 | Dunning et al. |
8170971 | May 1, 2012 | Wilson et al. |
8244740 | August 14, 2012 | Gruenhagen et al. |
20010001159 | May 10, 2001 | Ford |
20010039657 | November 8, 2001 | Fopeano et al. |
20020106188 | August 8, 2002 | Crop |
20020147782 | October 10, 2002 | Dimitrova et al. |
20030014407 | January 16, 2003 | Blatter et al. |
20030049014 | March 13, 2003 | Siddiqui |
20030093790 | May 15, 2003 | Logan et al. |
20030122966 | July 3, 2003 | Markman et al. |
20030131352 | July 10, 2003 | Dutta et al. |
20030186645 | October 2, 2003 | Mori |
20030192044 | October 9, 2003 | Huntsman |
20040025180 | February 5, 2004 | Begaja et al. |
20040096188 | May 20, 2004 | Kageyama |
20050015795 | January 20, 2005 | Iggulden |
20050086255 | April 21, 2005 | Schran et al. |
20050086696 | April 21, 2005 | Daniels |
20050086705 | April 21, 2005 | Jarman |
20050132401 | June 16, 2005 | Boccon-Gibod et al. |
20050144641 | June 30, 2005 | Lewis |
20050204380 | September 15, 2005 | Lee |
20050210507 | September 22, 2005 | Hawkins et al. |
20060020973 | January 26, 2006 | Hannum et al. |
20060031870 | February 9, 2006 | Jarman et al. |
20060130119 | June 15, 2006 | Candelore |
20060179455 | August 10, 2006 | Jun et al. |
20060184983 | August 17, 2006 | Casey |
20060212415 | September 21, 2006 | Backer et al. |
20060212900 | September 21, 2006 | Ismail et al. |
20060215990 | September 28, 2006 | Proebstel |
20060282856 | December 14, 2006 | Errico et al. |
20070055980 | March 8, 2007 | Megeid |
20070098362 | May 3, 2007 | Sharma |
20070186235 | August 9, 2007 | Jarman |
20070204287 | August 30, 2007 | Conradt et al. |
20070204288 | August 30, 2007 | Candelore |
20070250863 | October 25, 2007 | Ferguson |
20070260603 | November 8, 2007 | Tuscano et al. |
20080040151 | February 14, 2008 | Moore |
20080147711 | June 19, 2008 | Spiegelman et al. |
20080307339 | December 11, 2008 | Boro et al. |
20090037355 | February 5, 2009 | Brave et al. |
20090049467 | February 19, 2009 | Robson |
20090089251 | April 2, 2009 | Johnston et al. |
20090150246 | June 11, 2009 | Meenakshi et al. |
20090177689 | July 9, 2009 | Song et al. |
20090222849 | September 3, 2009 | Peters |
20090231968 | September 17, 2009 | Ochi et al. |
20090271826 | October 29, 2009 | Lee et al. |
20090310932 | December 17, 2009 | Hseih |
20090313301 | December 17, 2009 | Reed et al. |
20100077428 | March 25, 2010 | Arnold et al. |
20100094799 | April 15, 2010 | Ohashi et al. |
20100114665 | May 6, 2010 | Stengard et al. |
20100138517 | June 3, 2010 | DeLos Reyes et al. |
20100223259 | September 2, 2010 | Mizrahi |
20100235535 | September 16, 2010 | Zhu |
20100262556 | October 14, 2010 | Shaya et al. |
20100287293 | November 11, 2010 | Wright et al. |
20110010307 | January 13, 2011 | Bates et al. |
20110072037 | March 24, 2011 | Lotzer |
20110087649 | April 14, 2011 | Sarukkai et al. |
20110225156 | September 15, 2011 | Pavlik |
20110276993 | November 10, 2011 | Ferguson |
20120030159 | February 2, 2012 | Pilaszy et al. |
20120078829 | March 29, 2012 | Bodor et al. |
- Office Action in related U.S. Appl. No. 13/648,934 dated May 31, 2013 , 32 pages.
- Office Action in related U.S. Appl. No. 13/357,303 dated Jun. 11, 2013, 28 pages.
- U.S. Appl. No. 13/357,303 Office Action dated Oct. 24, 2014, 10 pages.
- U.S. Appl. No. 13/554,660 Office Action dated Nov. 19, 2014.
Type: Grant
Filed: Oct 10, 2012
Date of Patent: Feb 24, 2015
Assignee: Arrabon Management Services LLC (Santa Monica, CA)
Inventors: Dmitriy Vladimirovich Mayorov (Congers, NY), Vladyslav A. Seryakov (Reston, VA), Stuart White (Playa Vista, CA)
Primary Examiner: Joshua Bullock
Application Number: 13/648,934