Abstract:
Methods, systems, and subsystems for identifying and accessing multimedia content are provided. One system is specifically provided for automatically selecting a content source for accessing a movie that is accessible from multiple content sources. Account log-in information for at least one of the content sources, cost preferences, and quality preferences are stored in computer memory. A processor is in data communication with the account log-in information and the stored cost and quality preferences. Programming causes the processor to automatically select between the content sources through which the movie is accessible; the automatic selection is restricted to: (a) content sources for which the account log-in information is stored, and (b) content sources for which no account log-in information is necessary. The automatic selection is based on a comparison of the stored cost and quality preferences to actual cost and quality information associated with the content sources.

Description:
RELATED APPLICATIONS 
     This application is a continuation-in-part claiming priority to U.S. patent application Ser. No. 13/357,279 filed Jan. 24, 2012 now U.S. Pat. No. 8,996,543. This application is also a continuation-in-part claiming priority to U.S. patent application Ser. No. 13/357,303 filed Jan. 24, 2012 now U.S. Pat. No. 9,026,544. The disclosure of each is incorporated herein in its entirety by reference. 
    
    
     BACKGROUND 
     Although 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. 
     SUMMARY 
     Methods, systems, and subsystems for identifying and accessing multimedia content are set forth herein. In one embodiment, a system for identifying multimedia content, automatically selecting a content source from multiple content sources, and displaying the multimedia content from the selected content source includes a server, a user library content file, a user local setting file, and a local device. The server has an encyclopedic database, and the encyclopedic database has an accumulation of subject matter data about the multimedia content. The user library content file has data distilled from the encyclopedic database. The user local settings file has personal profile settings relating to filtering content and at least some of the multiple content sources. The local device is in data communication with the server, the user library content file, and the user local settings 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 based on the personal profile settings; (b) one of the content sources to be automatically selected based on the personal profile settings; and (c) user-selected multimedia content to be displayed from the automatically-selected content source. 
     In another embodiment, a system for automatically selecting a content source from multiple content sources and displaying multimedia content from the selected content source includes a user&#39;s account log-in information for at least two of the multiple content sources. The account log-in information is stored in non-transitory computer memory. Further, the user&#39;s cost and quality preferences are stored in non-transitory computer memory, and a processor is in data communication with the stored account log-in information and the stored cost and quality preferences. Programming causes the processor to automatically select between the content sources which have multimedia content selected by the user; the automatic selection is based on the stored cost and quality preferences, and the automatic selection is restricted to: (a) content sources for which the account log-in information is stored, and (b) content sources for which no account log-in information is necessary. Programming also causes the user-selected multimedia content to be displayed from the automatically-selected content source. 
     In still another embodiment, a system is provided for automatically selecting a content source for accessing a movie that is accessible from multiple content sources. The system includes non-transitory computer memory storing account log-in information for at least one of the content sources, and the non-transitory computer memory or additional non-transitory computer memory stores cost and quality preferences. A processor is in data communication with the account log-in information and the stored cost and quality preferences. Programming causes the processor to automatically select between the content sources through which the movie is accessible; the automatic selection is restricted to: (a) content sources for which the account log-in information is stored, and (b) content sources for which no account log-in information is necessary. The automatic selection is based on a comparison of the stored cost and quality preferences to actual cost and quality information associated with the content sources. 
     In yet another embodiment, a system for automatically selecting a content source from multiple content sources and displaying the multimedia content from the selected content source is provided. The system includes at least one non-transitory computer memory and at least one processor in data communication with the at least one computer memory, an input device, and an output device. Programming causes the at least one computer memory to store a first user profile and a second user profile. The first user profile includes: (a) personal settings relating to filtering content based on data for a first user received through the input device; and (b) a selected hierarchy of content source attributes based on data for the first user received through the input device. The second user profile includes: (a) personal settings relating to filtering content based on data for a second user received through the input device; and (b) a selected hierarchy of content source attributes based on data for the second user received through the input device. Programming allows the first user to select multimedia content from a plurality of multimedia content meeting the personal settings relating to filtering content of the first user profile, and programming causes the at least one processor to automatically select a content source for the multimedia content selected by the first user (with the content source being one of a plurality of content sources through which the multimedia content is accessible). The automatically selecting is at least partially executed by the at least one processor comparing the selected hierarchy of content source attributes of the first user profile to actual content source attributes associated with the plurality of content sources. Programming causing the at least one processor to actuate the output device and thereby display the multimedia content selected by the first user from the automatically-selected content source for that multimedia content. Programming allows the second user to select multimedia content from a plurality of multimedia content meeting the personal settings relating to filtering content of the second user profile, and programming causes the at least one processor to automatically select a content source for the multimedia content selected by the second user (with the content source being one of a plurality of content sources through which the multimedia content is accessible). The automatically selecting is at least partially executed by the at least one processor comparing the selected hierarchy of content source attributes of the second user profile to actual content source attributes associated with the plurality of content sources. Programming causes the at least one processor to actuate the output device and thereby display the multimedia content selected by the second user from the automatically-selected content source for that multimedia content. 
     In still yet another embodiment, a system for automatically selecting a content source from multiple content sources and displaying the multimedia content from the selected content source includes at least one non-transitory computer memory and at least one processor in data communication with the at least one computer memory, an input device, and an output device. Instructions are stored in the at least one computer memory, and the instructions (when executed by the at least one processor) perform steps for storing a first user profile in the at least one computer memory. The first user profile includes: personal settings relating to filtering content based on data for a first user received through the input device; personal settings relating to name, address, and payment information based on data for the first user received through the input device; and a selected hierarchy of content source attributes based on data for the first user received through the input device. The instructions further perform steps for: automatically (upon selection by the first user) accessing and completing an account registration of a third party content source using the personal settings; allowing the first user to select multimedia content from a plurality of multimedia content meeting the personal settings relating to filtering content of the first user profile; automatically selecting a content source for the multimedia content selected by the first user, the content source being one of a plurality of content sources through which the multimedia content is accessible; and actuating the output device and thereby displaying the multimedia content selected by the first user from the automatically-selected content source for that multimedia content. The automatically selecting is at least partially executed by the at least one processor comparing the selected hierarchy of content source attributes of the first user profile to actual content source attributes associated with the plurality of content sources. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  shows a schematic overview of a system according to the current invention. 
         FIG. 2  shows a more detailed view of the system of  FIG. 1 , according to one embodiment. 
         FIG. 3  shows various modules in the system of  FIG. 2 . 
         FIG. 4   a  shows high level steps associated with the server of the system of  FIG. 2  when in use. 
         FIG. 4   b  shows high level steps associated with the local device of the system of  FIG. 2  when in use. 
         FIG. 5   a  shows creating/maintaining an encyclopedic database in the system of  FIG. 2 , according to one embodiment. 
         FIG. 5   b  shows creating/maintaining a user library content file in the system of  FIG. 2 , according to one embodiment. 
         FIG. 6  shows an exemplary screen shot illustrating various preferences in the system of  FIG. 2 . 
         FIG. 7  shows a more detailed view of the system of  FIG. 1 , according to another embodiment. 
         FIG. 8  shows a more detailed view of the system of  FIG. 1 , according to still another embodiment. 
         FIG. 9  shows a more detailed view of the system of  FIG. 1 , according to yet another embodiment. 
         FIGS. 10   a  and  10   b  collectively show an exemplary set of steps performed by the system of  FIG. 9 . 
         FIG. 11  shows another exemplary set of steps performed by the system of  FIG. 9 . 
         FIG. 12  shows an exemplary profile of a user of the system of  FIG. 9 . 
         FIG. 13  shows an exemplary profile of another user of the system of  FIG. 9 . 
     
    
    
     DETAILED DESCRIPTION 
       FIG. 1  shows a schematic overview of a system  100  for identifying and accessing multimedia content according to the current invention. In broad terms, the system  100  includes a server  110 , a local device  120 , and a network  130 . 
       FIGS. 2 through 6  show one embodiment  1000  of the inventive system  100 . With specific reference to  FIG. 2 , the system  1000  includes a server  1100 , a local device  1200 , and a network  1300  (e.g., the Internet, a wide area network, et cetera) having content  1310  and content data  1320  (i.e., information relating to the substance of the content  1310 ). 
     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 S 1150  in  FIG. 4   a  and in  FIG. 5   a .  FIG. 5   a  specifically shows the encyclopedic database  1150  obtaining content data  1320  from various websites  1301 ,  1302 ,  1303  on the network  1300 , such as through web crawler software instructions, and also through the input device  1115 . 
     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 S 1160  in  FIG. 4   a  and in  FIG. 5   b .  FIG. 5   b  specifically shows the user library content file  1160  distilled from the encyclopedic database  1150  according to one embodiment. There, content data  1320  such as title data  1320   a , MPAA rating data  1320   b , release date  1320   c , run time  1320   d , language (or country of origin) data  1320   e , genre data  1320   f , plot summary data  1320   g , director data  1320   h , writer data  1320   i , cast and crew data  1320   j , soundtrack data  1320   o , and picture data  1320   r  is substantially copied to the user library content file  1160 ; other content data  1320  such as detailed plot data  1320   k , quotation data  1320   l , content advisory data  1320   m , box office data  1320   n , and review data  1320   q  is transformed, for example, into key word data  1320 ′ and ranking data  1320 ″. In some embodiments, at least a portion of the ranking data  1320 ″ is derived from content data  1320  that respectively includes rankings. 
     Returning to  FIG. 2 , the user software file  1170  includes computer instructions for operating the local device  1200 , as discussed in further detail below, and the server software file  1180  includes computer instructions for operating the server  1100  as discussed above and below. Creating/maintaining the user software file  1170  in the server  1100  is illustrated at step S 1170  in  FIG. 4   a . And among the various other instructions in the server software file  1180  may be instructions causing the processor  1105  to provide the updated user library content file  1160  and the updated user software file  1170  to the local device  1200  (via the communication device  1110 ), as illustrated at step S 1180  in  FIG. 4   a . Alternately, the user software file  1170  may include instructions causing the user library content file  1160  and the user software file  1170  to be updated; or the files  1160 ,  1170  may be updated at the local device  1200  in other traditional manners. 
     Turning now to the local device  1200 , though still with primary reference to  FIG. 2 , the local device  1200  may include a television with a set-top box, a personal computer, a tablet computer, et cetera. The local device  1200  includes a processor  1205  in data communication with a communication device  1210 , an input device  1215 , an output device  1220 , and computer memory  1225 . As noted above, reference to elements in the singular is used herein to refer to one or more of the elements unless specifically indicated to the contrary or apparent due to inoperativeness. 
     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  FIG. 4   b  at step S 1210 , the user library content file  1160  and the user software file  1170  may be obtained from the server  1100  and stored in the computer memory  1225 . 
     The various files in the computer memory  1225  are illustrated in  FIG. 3  as conceptually separated into a profile module  1201 , a user library access module  1202 , and an external library access module  1203 ; each is addressed in turn. The profile module  1201  associates users with subject matter preferences  1295  and utilizes the user software file  1170  and the local settings file  1290 . For example, each user may have a unique profile (inside the local settings file  1290 ) accessible using a unique login (e.g., passwords, biometric markers such as fingerprints, et cetera), and the user software file  1170  may be used to associate various preferences  1295  with the user profiles in the local settings file  1290 . The various preferences  1295  may include, for example, settings related to violence  1295   a , language  1295   b , sex  1295   c , mature themes  1295   d , and an amount of content that may be viewed, preferences for how content is displayed, preferences for various genres, preferences for various actors, et cetera. Some of the preferences  1295  (e.g., settings  1295   a ,  1295   b ,  1295   c ,  1295   d , displaying preferences, et cetera) may be input by the user, while other of the preferences (e.g., genre preferences, actor preferences, et cetera) may be input by the user and/or by the profile module  1201  (e.g., based on viewing history, search history, et cetera). An exemplary screen shot showing a user profile having various preferences  1295  selected is set forth in  FIG. 6 , and use of the profile module  1201  to associate users with subject matter preferences is illustrated in  FIG. 4   b  at step S 1220 . 
     Moving on, the user library access module  1202  ( FIG. 3 ) allows a user to search for and access a portion of the content  1310  on the network  1300 , in accordance with his profile settings in the local settings file  1290 . This is illustrated in  FIG. 4   b  at step S 1230 . The user library access module  1202  utilizes the user library content file  1160 , the user software file  1170 , and the local settings file  1290 ; and the user software file  1170  specifically allows a user to search for and access content that is associated with data in the user library content file  1160 , limited only by the user&#39;s particular profile settings in the local settings file  1290 . Content that does not meet the requirements of the user&#39;s profile settings may be filtered out and thus not presented to the user. Content presented to the user may be displayed in accordance with preferences  1295  for how content is displayed. In some embodiments, preferences  1295  may affect the order in which content is displayed. 
     Once the user identifies content 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  ( FIG. 3 ) complements the user library access module  1202  and allows a user to search for and access a separate portion of the content  1310  on the network  1300 , with consideration given to his profile settings in the local settings file  1290 . This is illustrated in  FIG. 4   b  at step S 1240 . The external library access module  1203  utilizes the external library content file  1265 , the user software file  1170 , and the local settings file  1290 ; and the user software file  1170  and the external library content file  1265  specifically allow a user to search for and access content that is not associated with data in the user library content file  1160  (or content that is associated with insufficient data in the user library content file  1160 ). For example, content  1310  that is accessible through YouTube and that has little or no associated content data  1320  (and thus little or no associated data in the user library content file  1160 ) may be searched and accessed. 
     Because of insufficient data about the content  1310  accessed through the external library access module  1203 , the user&#39;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&#39;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&#39;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&#39;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&#39;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&#39;s profile settings based on such factors as the degree to which the user&#39;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&#39;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  1220 , a user may create a profile through the profile module  1201 , associating the user with subject matter preferences  1295 . As shown in  FIG. 6 , for example, levels of violence  1295   a , language  1295   b , sexual content  1295   c , and mature themes  1295   d  may be selected. 
     At the step S 1150 , the encyclopedic database  1150  may be created/maintained to include, among a myriad of other data, the following data  1320  about every movie and TV show in which Tom Hanks acted, directed, produced, wrote, or performed in a soundtrack, and about every movie and TV show in which the name “Tom Hanks” is used or mentioned: title data  1320   a , MPAA rating data  1320   b , release date  1320   c , run time  1320   d , language (or country of origin) data  1320   e , genre data  1320   f , plot summary data  1320   g , director data  1320   h , writer data  1320   i , cast and crew data  1320   j , detailed plot data  1320   k , quotation data  1320   l , content advisory data  1320   m , box office data  1320   n , soundtrack data  1320   o , filming location data  1320   p , review data  1320   q , ranking data, and script data. 
     From there, at the step S 1160 , the user library content file  1160  is distilled from the encyclopedic database  1150 . In the distilling process, some of the content data  1320  may be substantially copied to the user library content file  1160  (e.g., title data  1320   a , MPAA rating data  1320   b , release date  1320   c , run time  1320   d , language (or country of origin) data  1320   e , genre data  1320   f , plot summary data  1320   g , director data  1320   h , writer data  1320   i , cast data  1320   j , soundtrack data  1320   o , and filming location data  1320   p ); and other content data  1320  (e.g., detailed plot data  1320   k , quotation data  1320   l , content advisory data  1320   m , box office data  1320   n , review data  1320   q , ranking data, and script data) may be transformed (e.g., into key word data  1320 ′ and ranking data  1320 ″). 
     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 film 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&#39;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 . 
       FIG. 7  shows another embodiment  2000  of the inventive system  100  that is substantially similar to the embodiment  1000 , except as specifically noted and/or shown, or as would be inherent. Further, those skilled in the art will appreciate that the embodiment  1000  (and thus the embodiment  2000 ) may be modified in various ways, such as through incorporating all or part of any of the various described elements, for example. For uniformity and brevity, corresponding reference numbers may be used to indicate corresponding parts, though with any noted deviations. 
     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  FIG. 7 , those skilled in the art will appreciate that the local settings file  1290  may be located on the server  1100  in addition to, or instead of, on the local device  1200 . 
       FIG. 8  shows still another embodiment  3000  of the inventive system  100  that is substantially similar to the embodiment  1000 , except as specifically noted and/or shown, or as would be inherent. Further, those skilled in the art will appreciate that the embodiment  1000  (and thus the embodiment  3000 ) may be modified in various ways, such as through incorporating all or part of any of the various described elements, for example. For uniformity and brevity, corresponding reference numbers may be used to indicate corresponding parts, though with any noted deviations. 
     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  FIG. 8 , those skilled in the art will appreciate that the content  1310 ′ may be located in the local device  1200 , may be accessed through a cable television service or a satellite television service, or may otherwise be located remote from the server  1100  and the local device  1200 . Further, the content data  1320 ′ may be located on the local device  1200 , may be accessed from a remote location outside the network  1300  (e.g., through a cable television service or a satellite television service), or may be present on the network  1300 . 
       FIG. 9  shows yet another embodiment  4000  of the inventive system  100  that is substantially similar to the embodiment  1000 , except as specifically noted and/or shown, or as would be inherent. Further, those skilled in the art will appreciate that the embodiment  1000  (and thus the embodiment  4000 ) may be modified in various ways, such as through incorporating all or part of any of the various described elements, for example. For uniformity and brevity, corresponding reference numbers may be used to indicate corresponding parts, though with any noted deviations. 
     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&#39;s preferences. 
     Specifically, as discussed above, the profile module  1201  ( FIG. 3 ) may allow a user to search for specific content  1310  by using the user library access module  1202  and the external library access module  1203 . This content  1310  may be retrieved for playback on the output device  1220  from various sources; for example, the content  1310  may be retrieved from a variety of websites and web servers (e.g., Netflix, iFilms, Hulu, and Vudu), cable television providers (e.g., AT&amp;T, Comcast, and Verizon), satellite television providers (e.g., Direct TV, Dish, and Mr. Satellite), et cetera. For sources such as cable, satellite, and over-the-air television broadcasts, digital video recorders (DVRs) may be employed to capture desired content for subsequent viewing. 
     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  FIGS. 10   a  and  10   b . The profile module  120  ( FIG. 3 ) may be configured to run an automatic playback program  4002 . The automatic playback program  4002  may be stored in the user software file  1170 ′ or may reside elsewhere within the computer memory  1225 , or may be otherwise accessible by the computer memory  1225  (e.g., over a network or via one or more external drives). A user may utilize the input device  1215  to run the automatic playback program  4002 , though it may be preferable for the local device  1200  to automatically run the program  4002  (e.g., when the user initially sets up and configures the local device  1200  for use). 
     As shown in  FIG. 10   a , the automatic playback program  4002  may start at step  4004 , and at step  4006  may ask the user to enter his name, age, gender, and address. These (and other) queries may, for example, be displayed on the output device  1220 , and the user may enter his information via the input device  1215 . The program  4002  may also ask the user at step  4006  to enter his user identification (e.g., a user number or name). As will become clear from the disclosure below, the program  4002  may allow multiple users to save their information and preferences to the local setting file  1290 ′. In some embodiments, the user may enter that he is the primary user (i.e., user  1 ), the secondary user (i.e., user  2 ), et cetera. 
     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  4007 A, Hulu  4007 B, Hulu Plus  4007 C, Direct TV  4007 D, Amazon  4007 E, YouTube  4007 F, and Vudu  4007 G. 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  4007 A. The program  4002  may then move on to step  5000  ( FIG. 11 ). 
     Specifically, once the user selects a specific source  4007  (e.g., Netflix  4007 A) 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  4007 A). If the user indicates that he already has an account set up on Netflix  4007 A, the program  4002  may move to step  5004 A and ask the user to enter his Netflix username and password. Then, at step  5006 A, the program  4002  may save the user&#39;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  4007 A, the program  4002  at step  5004  may ask whether the user wishes to set up an account on Netflix  4007 A. If the user indicates that he does not want to set up an account on Netflix  4007 A, the program  4002  may move to step  5006 B 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  4007 A). If, on the other hand, the user indicates at step  5004  that he would like to set up an account on Netflix  4007 A, the program  4002  may ask the user at step  5006  whether the user would like to set up the account on Netflix  4007 A 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  4007 A manually, the program  4002  at step  5008 M 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&#39;s Netflix username and password in the local settings file  1290 ′ and return to step  4008  ( FIG. 10   a ). If, however, the user indicates that he would like the account on Netflix  4007 A to be setup automatically, the program  4002  at step  5008 A may save in the local settings file  1290 ′ the user&#39;s preference to set up automatically the Netflix account and return to step  4008 . 
     It will be appreciated by those skilled in the art that while  FIG. 11  refers to Netflix, the user&#39;s preferences and information regarding other sources  4007  may similarly be gathered by the program  4002 . For example, the user may also choose Direct TV  4007 D, in which case, the program  4002  may prompt the user to enter his video on-demand pin. The program  4002  may also allow the user at step  4008  to enter any other sources  4007 O which the user would like to be searched for the content  1310 . The other sources  4007 O option may allow the user to enter any sources  4007  for the content  1310  that have not already been considered or automatically identified by the program  4002 . The user may, for example, after selecting the other option  4007 O, enter the website address for Fastpasstv. Or, for example, the user may have an account on iFilms; and by selecting the other option  4007 O, he may set up his iFilm account for use by the local device  1200 . 
     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  4007 O. 
     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  4012 H 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  4012 L 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  4012 L. 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&#39;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&#39;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&#39;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  4007 A, a Hulu Plus account  4007 C, a YouTube account  4007 F, 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  ( FIG. 3 ) and/or the external library access module  1203 , may be used to find this content  1310 ; and then, in accordance with the various preferences  1295  of the user as saved in the local settings file  1290 , the content  1310  may be listed for selection by the user (e.g., the content  1310  may be listed in the order that it meets the user&#39;s preferences). In embodiment  4000 , on the other hand, by utilizing the user&#39;s information as obtained by the program  4002 , the content  1310  may automatically be displayed on the output device  1220 . 
     Consider, for example, a user John Doe having a profile  6000  as shown in  FIG. 12 . As can be seen, John Doe is a male of age 20, and John Doe is the primary user of the device  1200 . John Doe wants Netflix  4007 A, Hulu Plus  4007 C, Direct TV  4007 D, and Fastpasstv to be searched for the content  1310 . Higher quality of the content  1310  is more important to John Doe as compared to lower cost. His output device  1220  is capable of playing full HD (1080P). John Doe is comfortable with intense violence, pervasive strong language, sex scenes, and all mature themes. John Doe&#39;s preferred method of payment is a PayPal account, unless the content  1310  costs more than $5, in which case he wants his credit card to be charged. 
     Assume now that John Doe searches for the movie “Drive.” The module  1202  and/or  1203  may thus search for this movie on Netflix  4007 A, Hulu Plus  4007 C, Direct TV  4007 D, and Fastpasstv. Assume that Netflix  4007 A includes this movie in 720p resolution, Hulu Plus  4007 C includes this movie in 420p resolution, Direct TV  4007 D includes this movie in 1080p resolution, and that Fastpasstv does not include this movie. The user software file  1290 ′, based on John Doe&#39;s preferences, may select this movie from Direct TV  4007 D. For example, the user software file  1170  may access Direct TV and automatically enter John Doe&#39;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&#39;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  FIG. 13 . As can be seen, Jane Doe is an 18 year old female, and is the secondary user of the device  1200 . Various settings in the setup process may be “box-level”, meaning that the information is constant across all user profiles and need only be entered once (e.g., address, cable television provider, TV resolution). Jane Doe is more concerned with cost of the content  1310  than its quality, and does not wish to pay over $2 for the content  1310 . Her output device  1220  displays up to 420p resolution. She is comfortable with mild fighting (with respect to violence), kissing (with respect to sexual content), and smoking (with respect to mature themes). Jane Doe is not comfortable with any offensive language. 
     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  4007 A, Hulu Plus  4007 C, Direct TV  4007 D, and YouTube  4007 F. 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&#39;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  4007 A, Hulu Plus  4007 C, Direct TV  4007 D, and YouTube  4007 F. Assume that Netflix  4007 A includes this movie in 1080i resolution, Hulu Plus  4007 C includes this movie in 1080p resolution for free, Direct TV  4007 D includes this movie in 480p resolution for $5, and that YouTube includes this movie in 420p resolution for free. Based on Jane Doe&#39;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&#39;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&#39;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  4007 A, Direct TV  4007 D, and You Tube  4007 F 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.