Updating properties of remote A/V performance nodes

Information

  • Patent Grant
  • 11172249
  • Patent Number
    11,172,249
  • Date Filed
    Friday, February 9, 2018
    6 years ago
  • Date Issued
    Tuesday, November 9, 2021
    2 years ago
Abstract
Aspects include systems, computer readable media and methods for remotely updating properties of Audio/Visual (A/V) performance nodes that can receive A/V content through a wireless network from a central content source. The central content source can maintain information about properties of such nodes, providing such information to a device configured with remote control software, upon request. The remote control device can accept user inputs relating to properties updates, indications of such being provided to the central content source for distribution to nodes whose properties were updated. Examples of updatable properties include on/off toggling, and volume controls. Updating such properties can be protected by passwords. The central content source can be configured as software executing on a personal computer operable to communicate over the Internet for obtaining access to streaming and/or downloadable A/V content. Remote control device examples include phones that can be networked to receive node properties data, obtain user inputs affecting such data, and transmit that data back to the central source.
Description
BACKGROUND
Field

The following relates to digital media aggregation and distribution, and more particularly to remotely controlling properties of devices at which such media is performed.


Related Art

Currently there exists centralized media distribution from a media storage library to one or more distributed points where the media can be performed. For example, Apple iTunes® running on a personal computer can communicate using wireless networking with one or more remote distribution points for media stored in a library associated with the iTunes application, or otherwise available through the iTunes application. For example, the personal computer can be located in a home office, while points where media can be received can include a station in one or more bedrooms, in a family room, living room, outside, etc. Although this architecture was an advance from whole house audio/visual systems requiring separate cabling for content distribution, further advances in the area remain desirable.


SUMMARY

Aspects include a distributed audio/visual (A/V) content system and components thereof. The system includes a source of data representative of digital A/V content. The source is configured for distributing portions of the data to one or more remote reception devices capable of receiving the data from the source, and using it for performing the A/V content. The system also includes a computer readable medium interfaced with the source of A/V content and storing information descriptive of respective sets of properties for each of the remote reception devices. The system also includes a remote controller device interfaced with the source, and configured to receive the remote reception device property information, produce a user interface displaying a menu based on the received property information, receive input from a user to change one or more device properties, and communicate indications of such changes to the source. The source communicates respective updated property information to remote reception devices whose properties were indicated as having been changed, and the remote reception devices effect those changes. Other aspects include a tangible computer readable medium storing instructions for controlling a computing device to perform certain functions disclosed throughout this specification.


Other aspects include a method relating to remote control of A/V performance devices. The method includes obtaining at a controller, from an A/V content distribution hub, over a wireless network, a set of properties associated with a first A/V performance device that is coupled for reception of A/V content from the distribution hub over the wireless network. The method also includes accepting user input for changing one or properties of the set, forming a message indicative of the changes to the one or more properties; and transmitting the message to the A/V content distribution hub for retransmission to the performance device associated with the changed properties.


Still other aspects include a remote control device for control of A/V performance devices. The device includes a wireless networking interface for interfacing with an A/V content distributor operable for distributing A/V content to a plurality of performance nodes. Each of the performance nodes is associated with a respective set of properties maintained by the A/V content distributor. The device also includes a processing resource; and a computer readable medium storing instructions executable by the processing resource for implementing a method.


The method includes receiving user input indicative of a request to change settings associated with any of a plurality of A/V performance devices that are coupled for receiving A/V content from a distribution hub, obtaining, using the interface and from the distribution hub, data indicative of settings associated with the one or more of the A/V performance devices, displaying a menu including at least portions of the settings data, accepting changes to the settings, and forming one or more messages having data indicative of accepted changes, the messages for transmission over the interface to the distribution hub for distribution to any performance device whose settings were changed.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 illustrates an example system architecture for a A/V system having a centralized content distribution hub with a plurality of A/V performance nodes, and a device configured with remote control software;



FIG. 2 illustrates example components that may be used in implementing remote control devices according to present examples;



FIG. 3 illustrates steps of a method performable in a remote control device according to present examples;



FIGS. 4a-4c illustrate examples of a screen of a remote control device;



FIG. 5 illustrates an example of messages that may be transmitted between different components of systems according to the example of FIG. 1; and



FIG. 6 illustrates an example of properties for A/V performance nodes, which can be controlled by a remote controlled device according to the present description.





DESCRIPTION

The following description is presented to enable any person skilled in the art to make and use an A/V system including a centralized A/V distribution point, a plurality of performance nodes, and a remote control for configuring properties of the performance nodes through the distribution point. Various modifications will be readily apparent to those skilled in the art based on the disclosures here, and principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the invention. Moreover, in the following description, numerous details are set forth for the purpose of explanation. However, one of ordinary skill in the art will realize from these disclosures that the invention might be practiced without the use of these specific details. In other instances, well-known structures and processes are shown in block diagram form in order not to obscure the description of the invention with unnecessary detail. Thus, the present invention is not intended to be limited to the examples shown, but is to be accorded the widest scope consistent with the claims appended hereto.



FIG. 1 illustrates aspects of a system 100 including a personal computer 105, such as an HP Pavilion, iMac™, Dell Vostro, or a Macbook Pro, configured for running a Audio/Visual (A/V) content distribution and storage program, such as iTunes. Computer 105, as configured with such software provides a centralized A/V content distribution point.


Computer 105 communicates with a wireless access point 135, which in turn can communicate with wireless access points 112, 116, and 122. In some examples, each of the access points 112, 116, 122, and 135 operate according to one or more 802.11x series protocols (e.g., 802.11g, 802.11n, and so on). Each of the access points 112, 116, and 122 respectively provide wireless network access to one of A/V performance nodes 110, 115, and 120. A/V performance node 110 is operable for outputting visual content to display 111 and audio content to speaker 113. A/V performance node 115 is operable for outputting audio content to speaker 117, but does not output information to any display. Likewise, A/V performance node 120 outputs visual content to display 121, and audio to speaker 118.


Each of these performance nodes can receive A/V content from computer 105. Generally, such content is distributed digitally, decoded, and converted into a format appropriate for the display and/or speaker(s) attached thereto.


Computer 105 may contain an add-in card, or have an integrated MAC/PHY to enable communication between those devices, and their respective computer 105 and access point 135 (computer 105 would be operate to communicate with others of the access points). Each of the A/V performance nodes may be coupled directly (e.g., by an Ethernet cable or another cabling or direct connection mechanism to access points 112, 116, and 122. In some examples, the access points 112, 116, and 122 can be built into containers also having integrated their respective nodes, such that the container would include a power connection, audio and audio/video outputs, wireless LAN functionality and appropriate decoding circuitry for supported media types.


A phone 140, such as a Blackberry or an iPhone, also equipped with an 802.11 MAC/PHY, is shown as communicating with access point 135. This example shows a phone 140 equipped with wireless LAN as a device equipped with software enabling the device to control functionality remotely, however, any device having a wireless communication capability and capable of operation according to the following disclosures can be used.


Computer 105 maintains data relating to properties of the performance nodes 110, 115, and 120. In one example, each performance node can provide data to computer 105 (or whatever device is being used as a centralized content distribution point in a particular implementation) relating to whether it can provide only audio output, or video output (i.e., whether it is connected to speakers and/or a display). Various implementations according to system 100 include dedicated hardware, rather than a multi-purpose computer (computer 105), for implementing the content distribution point.


Thus, in system 100, computer 105 maintains information pertaining to characteristics of A/V performance nodes available for sending A/V content from the distribution point. The A/V content is transmitted digitally over the network, and decoded at each receiving performance node.


In systems according to system 100, points where content is performed are often located in different rooms of a house, for example, and being able to control settings for A/V performance nodes in a given system, without directly accessing the central distribution point (e.g., computer 105) would be desirable. Providing such functionality on a device capable of wirelessly networking to exchange information with the centralized distribution point (e.g., computer 105) advantageously would allow using a device that some consumers already have to function as a remote control for their home A/V system.


Computer 105 provides storage for a media library that can be associated with a library manager such as iTunes. Computer 105 can communicate through a firewall 165 and over the Internet 175 with any of a variety of sources for content. Content can be downloaded and stored at computer 105, and computer 105 also can obtain streams of content from Internet-based hosts. In such circumstances, computer 105 can function as a relay for such information to be received from Internet 175, sent through the wireless network (composed of base stations 135, 112, 116, and 122), for performance at one or more selected performance nodes.


In example system 100, each base station 135, 112, etc. can be a connection point for phone 140 to communicate with computer 105. For example, phone 140 can connect with base station 112, which would relay data to and from base station 135 for transmission to and reception from computer 105. Because phone 140 can connect to any base station, phone 140 and the base stations in the system would attempt to allow phone 140 to connect to the base station to which it has the best signal strength.


In sum, system 100 includes a centralized point from which A/V content can be distributed via wireless networking to a plurality of A/V content performance devices, located in disparate positions, and capable of wirelessly receiving such A/V content from the centralized point.



FIG. 2 illustrates further implementation details concerning potential embodiments of phone 140, which can be configured to function as a remote control for A/V performance nodes.



FIG. 2 illustrates that phone 140 includes a processor 205, which is coupled to receive user interface 215 inputs, produce visual output to display interface 210, which in turn uses such visual output to drive display 235. Processor 205 also is operable to read and write data from working RAM 225, and non-volatile storage 230, such as flash memory, and the like. Processor 205 also is coupled for sending and receiving data over a wireless network using 802.11x MAC/PHY 220. Processor 205 can be configured to execute programs specified by computer readable instructions stored in non-volatile storage 230 and/or in working RAM 225, or received over MAC/PHY 220.


The constituent components and arrangement of same in FIG. 2 can differ in implementations. For example, non-volatile storage may function as a working RAM for certain applications. As memory technology advances, a notion of maintaining separate RAM and non-volatile memory in portable devices may largely recede. Non-volatile memory also can be a hard drive or another kind of magnetic or optical storage. The components shown in FIG. 2 also can be integrated; for example, processor 205 can be an ARM core formed with MAC/PHY 220 (or the MAC only, with discrete magnetics, etc.), and some or all of RAM 225. As such, it would be understood that a variety of devices implemented in any number of ways can be used as a controlling device in system 100 (FIG. 1).



FIG. 2 also can represent example components of computer 105, except that certain components would generally be more full-featured in computer 105. For example, processor 205 would be more powerful, and non-volatile storage 230 would be larger. User interfaces may include larger keyboards, separate mice, and so on. Display 235 may be larger, and there may be a more power discrete graphics processor interfacing with processor 205 for driving display 235.


A/V performance nodes may have a variety of implementations. Simpler A/V nodes may include a wireless LAN transmitter and receiving, one or more speakers, and logic for decoding received digital audio data and transforming it into analog signals for performance. Such logic can include a codec appropriate for a compression technology being used, decryption technology appropriate for a digital rights management technology being used, if any, a digital to analog converter (for analog speakers), and one or more output ports, including digital and/or analog output ports. Other functionality can include amplification circuitry, filtering circuitry, power conversion transformers, and so on. Output ports can include stereo capability, or multiple channel outputs, such as Dolby® Digital audio (e.g. 5.1 or 6.1 channel audio), and so on. Although A/V performance nodes could be, in some examples, fully functional computers, it is preferable to realize more advantages of the present disclosures by implementing A/V performance nodes as devices that self-configure with computer 105, and can be managed remotely from and/or through computer 105.



FIG. 3 shows steps of a method 300 executable by a remote control device, such as phone 140. Depictions of example user interface screens for phone 140 during execution of some steps of method 300 are shown in FIGS. 4a-4c. At 310, there is decision as to whether there currently is a performance node of performance nodes 110, 115, and 120 (FIG. 1) being sent output from computer 105 (e.g., determine whether music being performed by any of such nodes). If so, then phone 140 can display an indication of such activity.


For example, FIG. 4a illustrates a touch sensitive display 401 for phone 140, having content displayed according to the following examples. Display 401 includes a playbar 420, a back arrow that allows navigation to one screen previous for any menu navigation context, and an album art portion 410. Display 401 also includes an indication 415 that a node currently performing A/V content in the system is a “Bedroom” node. In an absence of a currently performing node, display 401 can display a menu selection allowing retrieval of performance nodes recognized by computer 105.


Thus, a user of phone 140 can immediately access configuration information for a currently performing node. Where multiple such nodes are performing, then either all such nodes can be displayed, which would cause some addition occlusion of album art 410, or a most recently accessed node can be shown (e.g., one most recently turned on); other node display selection functionality also can be provided, as explained below.


If a user selects the currently performing node indication, e.g., Bedroom 415 of FIG. 4a , then phone 140 can obtain 330 information for listing controlled devices (e.g., performance nodes) currently identified by computer 105, or phone 140 can navigate directly to settings for the currently performing node, as shown in FIG. 4c . For the example, where a touch in the location of display 401 showing the current node (i.e., Bedroom 415) navigates to a listing of controlled devices, a list of such devices are displayed to the user, as shown in FIG. 4b , where performance nodes in the bedroom 415, a living room 416, an office 418 and a kitchen 419 are shown. Alternatively, signal strength measures used to determine to what base station phone 140 connects also can be used to select what performance node should be initially displayed. For example, signal strength can be used to determine that the phone is in the living room, and thus phone 140 would first display an indication of that location.



FIG. 4b illustrates that each performance node (bedroom, living room, office, and kitchen) can be associated with a respective additional properties arrow 416, 417, 418, and 419. A user can select any of these arrows to navigate to a respective display in accordance with FIG. 4c. Selection of such an arrow can correspond with the step 340 (method 300, FIG. 3) of selecting a device, which causes the phone 140 to respond by obtaining, from computer 105, properties for that selected device. Thus, in this example, phone 140 does not maintain a comprehensive view of what controlled devices exist in a particular network or system, or what properties such controlled devices have. Rather, information can be obtained by phone 140 from computer 105 responsive to user actions that cause such information to be relevant. So, in systems according to such an example, computer 105 can maintain information about controlled devices, including admitting or excluding additional controlled devices, without having to update information at phone 140 that may not be used at known particular time.


Another interaction that can be supported by display 401 is that a user's directly selecting the area of the respective tab section (e.g., the text area) for a particular node, can be interpreted as input to toggle a state of that node (e.g., as the bedroom currently is on, tapping the area where “Bedroom” is displayed will toggle that node to an off state).


Some of the properties that can be supported by controlled devices (here, performance nodes) are shown in FIG. 4c, and include an on/off toggle area 426, and information about a current state of such a property can be shown (e.g., that the Bedrom performance node currently is “on”). Also apparent is that this property can be adjusted in multiple ways, in that it can be adjusted by tapping in area 426, or as described above.


Another property is a relative volume 427, which can be adjusted by the slider bar control illustrated. A user can manipulate such a slider by sliding an appendage across the area occupied by the slider bar. The relative volume is interpreted on a relative scale such that the performance node itself translates that relative volume information into an actual volume.


Another property for performance nodes includes a parental control password protection 428. In some usage models, a number of family members may each be in possession of a phone capable of controlling performance nodes according to these examples. Because a parent may desire to restrict a child's ability to adjust any controlled property, such as turning a node off or one, verification of a password may be required prior to accepting property changes from a given phone (or other device configured with functionality according to these disclosures).


In this example, a user would enter a password in the area provided; phone 140 would formulate a message having that password, and computer 105 would validate such password. Thus, information sufficient to validate the password need not be stored at phone 140. A message from computer 105 indicating acceptance or rejection of a given password attempt may be acknowledged within parental control area 428, or via another suitable means. Upon password verification, changes to properties made at phone 140 would be accepted as valid changes at computer 105.


In some examples, each performance node has separate passwords. In other examples, one password is provided for all nodes. In still further examples, the system uses a hierarchy of passwords, such that a parent's password can function as a master password for all nodes, while a child's password can function only for a node that a parent wishes to give that child additional control over, such as that child's bedroom. In still further examples, validity of passwords can be restricted to certain properties.


Method 300 then also includes detecting 355 whether changes have been made to any property (assuming authorization for making such changes). If changes have been made, then one or more messages including information indicative of such changes are composed 360 and sent by phone 140 to computer 105.


Upon message transmission, or when no changes were detected, back navigation is detected 370 (e.g., detection of selection of back arrow 405). If back navigation is detected, then an earlier screen is displayed (e.g., navigation from the display shown in FIG. 4c to that of FIG. 4b is accomplished, which is the particular example shown in method 300). Where updates where effected, back navigation can also cause phone 140 to obtain refreshed information displayed from computer 105 (e.g., if Bedroom node were turned off, then that information would be reflected by removal of speaker icon 433).


Also, it can be detected whether the user wishes to exit from the controlled devices menu entirely, by detecting selection of exit indicator 440. Exit indicator 440 can appear whenever a plurality of user interface levels were navigated to reach a current display (e.g., two levels were navigated to reach the display of FIG. 4c), so that a user can exit without having to repeatedly select back arrow 405.


The method 300 and example displays of phone 140 primarily were for illustrating user interaction with phone 140 for effecting control over performance nodes, such as performance nodes 110, 115, and 120 of FIG. 1. Such control involves from computer 105 properties of performance nodes to be controlled, as well as communicating updates to such properties back to computer 105 for distribution to controlled nodes.



FIG. 5 illustrates a signal ladder 500 that shows an example of what messages can flow between components in a system including a central A/V distribution point (e.g., computer 105), one or more controlled A/V performance nodes (e.g. nodes 110, 115, and 120), and a controlling device (e.g., phone 140). Signal ladder 500 is shown from the point where all communicating devices already have established LAN wireless communication capability such that information can be exchanged between devices as described. Such establishment can include each device authenticating with a wireless base station using pre-shared keys (e.g., WPA or WPA2). A user's configuring the devices with specific keys allows the establishment of communication only with devices authorized to participate in that network (i.e., configuring phone 140 with the same key that the user programmed into base stations 112, 116, 122, and 135 allows exclusion of devices not having that key, while permitting phone 140 to communicate with any such base station).


Also, further encryption or other content control of each session can be effected to prevent a user having a device authorized to be on the network from snooping communications relating to updating properties of controlled performance nodes. Thus, where parental controls are in force, this additional control reduces a chance that such communications can be sniffed and used to determine a parental password.


Now, turning to signal ladder 500, initial communications 505, 506, 507 can be between each of the performance nodes (labeled Node 1, Node 2, Node 3), to register reach node with a source of A/V Data. These communications 505, 506, and 507 may include multiple sets of messages where nodes 1, 2, and 3 describe their capabilities (e.g., audio or audio/video capability) to the source of A/V data, and otherwise become aware to the A/V data source. Such communications 505-507 can be initiated either from the A/V data Source or by each node, depending on implementation.


Between the A/V data source and the controller, a first message can be a request (515) to change one or more properties of any of nodes 1-3, which can be generated at a start of an application for such editing. For example, within a music performance application, there can be provisions made for allowing changing of one or more properties of devices for performing A/V content. The A/V data source responds with a message (516) containing a list of devices identified by it that can be controlled. The controller provides a message indicating user selection of one of the devices (517), and the source responds with a message (518) identifying properties that can be updated for the selected device. With a list of updated properties for a selected device shown, the user may enter a password for obtaining access to updating the properties, and such entered password is provided in a message (519) to the source, which can respond with a message (520) indicating password acceptance.


Then, the controller can receive a change to one of the updatable properties from the user, and then sends a message (521) describing the updatable property to the source. The source acknowledges reception of the changed property with a message (522). After receiving message (522), the source can then determine which node had a property updated, and provide an indication 535 (node 2 being the affected node in this example) to that node as to which property of it was updated, so that the node can affect the update.


Other functionality that can be implemented by using messages sent from/to performance nodes relates to confirming requests for changing settings, reporting error messages, or rejecting a setting change request. For example, if there was an error in the nature of the changed property, such that node 2 could not make a change indicated by message 535, then node 2 can return an error message 545 indicating a problem with making the change. In turn, this error message can be propagated to the controller as a message 546, where a user can determine a response. In absence of an error, such as where node 2 made the change requested by message 535, message 545 can include a confirmation of such change. Then, message 546 in turn can include a confirmation of such change to the controller, which can effect a status update for display to a user. For example, if volume adjustment was requested, the controller would update its volume display in response to message 546. Thus, embodiments preferably include that the controller reflects a confirmed updated status of the device, based on acknowledged updates, rather than requested changes, or based on acknowledgements of requests from the A/V data source (which still may in some cases not result in actual settings changes). Any such acknowledgements settings also can include warnings that can request a further confirmation from a user via the controller, which would further result in an exchange of messages for that purpose.


Although updates to some node properties need to be effected by that node, other properties can be maintained by the source, and so messages relating to updates to those properties would not need to be transmitted to nodes, and can be implemented, and acknowledged by the data source to the controller. Further examples concerning properties that may be associated with A/V performance nodes are described with respect to FIG. 6.



FIG. 6 illustrates a table 600 that represents examples of properties that can be associated with A/V performance nodes (e.g., 110 and 115 of FIG. 1), and which can be maintained at the A/V source in a computer readable medium (e.g. computer 105).



FIG. 6 illustrates that a matrix of A/V performance nodes and respectively associated properties 625 can include a row for each node (rows 605, 610, 615, and 620) and a column for each property, such that a value located at row/column intersections identifies a value for that property for node associated with that row. Properties can include on/off status, capability information, parental control activation, content limitations, mood presets, equalizer settings, and relative volume. Some of these properties were described above.


Parental control can take a number of forms, and the present example illustrates a situation where each performance node is indicated as being protected or not protected by a parental password. Content limitations also can be expressed as properties stored with the A/V source, and the A/V source can enforce and maintain such properties. For example, while there may be no content limitation for a performance node located in a home office, a restrictive limitation may be enforced in a child's bedroom (row 610), while a less restrictive limitation may be enforced in a common living space (row 615). The limitations can be used to compare content ratings in content storage to determine whether performance of a given program at a given node is permitted.


Other examples of properties that can be included are properties that affect how a given item of content would be performed by a given A/V performance node. For example, properties affecting playback can be grouped into a common mood/content setting. For example, if movies are usually played in the living room, then a mood preset for audio and video settings appropriate for movies can be set for that A/V performance node.


By further example, a given A/V performance node may have access to an equalizer that allows adjust of relative volume components for different audio spectral levels. For example, a node can be associated with a 5 channel equalizer, such that a user wishing to adjust spectral content for that node would be presented with an option to select the equalizer property (an additional property shown in a screen according to the examples of FIG. 4a-4c). Input from the user may be obtained by drawing an appropriate equalizer with separately selectable spectral controls, detecting user inputs, and providing them to the appropriate node.


By further example, it may be provided that different speakers at a given node can be turned on and off separately. For example, a subwoofer may be turned off separately. These settings also can be comprehended in the mood presets. For example, a subwoofer for a “talk” preset may be off, and a relative volume set low. Because the changes to properties of each of the nodes come through computer 105, computer 105 can maintain accurate state information for each node.


Other properties that can be maintained and remotely updated for video-enabled performance nodes includes properties associated with its video display. Such properties include screen brightness, contrast, color balance, hue/saturation, and so on. Other video-specific properties that can be remotely updated include aspect ratio, refresh rate and resolution, which can vary among displays. Some content may be better presented in one aspect ratio or another, and in some cases, a display, and/or a performance node associated with a display, can reject or offer a different recommendation for adjustment of such settings.


In the above examples, various functionality and capabilities were attributed to computer 105, and such capabilities can be readily implemented by computer readable instructions stored in a computer readable medium available to a computer having one or more processing resources for executing such instructions.


Similarly, an example of a phone configured for software for communicating with computer 105, and providing user interface screens for obtaining user input concerning properties updates to A/V performance nodes was illustrated. However, a person of ordinary skill also would be able to understand based on these disclosures that other devices having wireless networking capability, and which can be programmed or otherwise configured to obtain property information from an A/V source concerning one or more remote A/V performance nodes, solicit user inputs for updating such properties, and communicate such updates to the A/V source can be used as a remote controller in accordance with these examples.


For sake of clarity, certain functionality and/or other capabilities were attributed to specific portions of a device, in some cases. However, such attribution does not imply a requirement that such functionality be implemented in that device portion, but rather as technological innovation continues variations on implementations of devices would be expected by those of ordinary skill based on these examples. For example, those of ordinary skill can make decisions concerning whether to implement a given function in hardware or as software configuring a processor, whether to use multiple different processors in a given system, one larger processor, and so on.


Embodiments within the scope of the present invention may also include computer-readable media for carrying or having computer-executable instructions or data structures stored thereon. Such computer-readable media can be any available media that can be accessed by a general purpose or special purpose computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to carry or store desired program code means in the form of computer-executable instructions or data structures. When information is transferred or provided over a network or another communications connection (either hardwired, wireless, or combination thereof) to a computer, the computer properly views the connection as a computer-readable medium. A “tangible” computer-readable medium expressly excludes software per se (not stored on a tangible medium) and a wireless, air interface. Thus, any such connection is properly termed a computer-readable medium. Combinations of the above should also be included within the scope of the computer-readable media.


Computer-executable instructions include, for example, instructions and data which cause a general purpose computer, special purpose computer, or special purpose processing device to perform a certain function or group of functions. Computer-executable instructions also include program modules that are executed by computers in stand-alone or network environments. Generally, program modules include routines, programs, objects, components, and data structures, etc. that perform particular tasks or implement particular abstract data types. Computer-executable instructions, associated data structures, and program modules represent examples of the program code means for executing steps of the methods disclosed herein. The particular sequence of such executable instructions or associated data structures represents examples of corresponding acts for implementing the functions described in such steps. Program modules may also comprise any tangible computer-readable medium in connection with the various hardware computer components disclosed herein, when operating to perform a particular function based on the instructions of the program contained in the medium.


Those of skill in the art will appreciate that other embodiments of the invention may be practiced in network computing environments with many types of computer system configurations, including personal computers, hand-held devices, multi-processor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, and the like. Embodiments may also be practiced in distributed computing environments where tasks are performed by local and remote processing devices that are linked (either by hardwired links, wireless links, or by a combination thereof) through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.


Although the above description may contain specific details, they should not be construed as limiting the claims in any way. Other configurations of the described embodiments of the invention are part of the scope of this invention. Accordingly, the appended claims and their legal equivalents should only define the invention, rather than any specific examples given.

Claims
  • 1. A tangible, non-transitory, machine-readable medium, comprising machine-readable instructions that, when executed by one or more processors, cause the one or more processors to: retrieve, from a central content source that provides digital content, one or more specific settings associated with an audio/visual (A/V) performance node communicatively coupled to the one or more processors;display, on a graphical user interface (GUI), the one or more specific settings via one or more modifiable options of the GUI;receive, via the GUI, a modification to the one or more modifiable options;provide, to the central content source, an update to the one or more specific settings based upon the modification to cause the A/V performance node to present the digital content according to the one or more specific settings that are updated in a storage of the central content source; andin response to providing the update, confirm the modification is implemented by receipt of: a confirmation originating from the A/V performance node when the modification pertains to a setting implemented by the A/V performance node; andotherwise, a confirmation originating from the central content source when the modification pertains to a setting implemented by the central content source.
  • 2. The machine-readable medium of claim 1, wherein the one or more modifiable options comprise screen brightness, contrast, color balance, hue/saturation, aspect ratio, refresh rate, resolution, or any combination thereof.
  • 3. The machine-readable medium of claim 2, wherein the one or more modifiable options comprise a playback activation setting.
  • 4. The machine-readable medium of claim 2, wherein the one or more modifiable options comprise a volume level setting.
  • 5. The machine-readable medium of claim 2, wherein the one or more modifiable options comprise a parental control setting.
  • 6. The machine-readable medium of claim 2, wherein the one or more modifiable options comprise a password that is required to modify at least a subset of other modifiable options.
  • 7. The machine-readable medium of claim 6, wherein the password is applied to each of a plurality of A/V performance nodes communicatively coupled to the one or more processors including the A/V performance node.
  • 8. The machine-readable medium of claim 2, wherein the one or more modifiable options comprise an equalizer setting or a mood preset.
  • 9. The machine-readable medium of claim 1, wherein the machine-readable instructions, when executed by the one or more processors, cause the one or more processors to: retrieve, from the storage of the central content source, a data record for each of a plurality of A/V performance nodes communicatively coupled to the one or more processors including the A/V performance node, the data record comprising a state of each of one or more modifiable options for the plurality of A/V performance nodes including the one or more modifiable options.
  • 10. The machine-readable medium of claim 1, wherein the central content source comprises one of: a wireless networking hub; a base station; or a relay.
  • 11. The machine-readable medium of claim 1, wherein the one or more specific settings comprise capability-specific settings that vary based upon capabilities of the A/V performance node, wherein the capability-specific settings comprise audio-specific settings when the A/V performance node is audio capable and video-specific settings when the A/V performance node is video capable.
  • 12. The machine-readable medium of claim 1, wherein the machine-readable instructions, when executed by the one or more processors, cause the one or more processors to: display, via the GUI, the confirmation.
  • 13. An electronic device, comprising: A processor,Memory, storing instruction that when executed by the processor, cause the electronic device to: configured to:retrieve, from a central content source that provides digital content, one or more specific settings associated with an audio/visual (A/V) performance node communicatively coupled to one or more processors;display, on a graphical user interface (GUI), the one or more specific settings via one or more modifiable options of the GUI;receive, via the GUI, a modification to the one or more modifiable options;provide, to the central content source, an update to the one or more specific settings based upon the modification to cause the A/V performance node to present the digital content, wherein presentation of the digital content is altered according to the one or more specific settings, by providing a message to the A/V performance node that indicates the one or more specific settings that are updated; andin response to providing the update, confirm the modification is implemented by receipt of: a confirmation originating from the A/V performance node when the modification pertains to a setting implemented by the A/V performance node; andotherwise, a confirmation originating from the central content source when the modification pertains to a setting implemented by the central content source.
  • 14. The electronic device of claim 13, wherein the one or more modifiable options comprise screen brightness, contrast, color balance, hue/saturation, aspect ratio, refresh rate, resolution, or any combination thereof.
  • 15. The electronic device of claim 14, wherein the one or more modifiable options comprise a password that is required to modify at least a subset of other modifiable options.
  • 16. The electronic device of claim 15, wherein the password is applied to each of a plurality of A/V performance nodes communicatively coupled to the one or more processors including the A/V performance node.
  • 17. The electronic device of claim 14, wherein the one or more modifiable options comprise an equalizer setting or a mood preset.
  • 18. (The electronic device of claim 13, configured to: retrieve a data record for each of a plurality of A/V performance nodes communicatively coupled to the one or more processors including the A/V performance node, the data record comprising a state of each of the one or more modifiable options for the plurality of A/V performance nodes.
  • 19. A computer-implemented method, comprising: retrieving a plurality of specific settings associated with an audio/visual (A/V) performance node communicatively coupled to one or more processors, the plurality of specific settings comprising: a first setting implemented by the A/V performance node; anda second setting implemented by a central content source that provides digital content to a plurality of A/V performance nodes including the A/V performance node;displaying, on a graphical user interface (GUI), the plurality of specific settings via one or more modifiable options of the GUI;receiving, via the GUI, a modification to the one or more modifiable options;providing, to the central content source, an update to the plurality of specific settings based upon the modification to cause the A/V performance node to present the digital content, wherein presentation of the digital content is altered according to the plurality of specific settings, by providing a message to the A/V performance node that indicates the plurality of specific settings that are updated; andconfirm the modification is implemented by receipt of: a confirmation originating from the A/V performance node when the modification pertains to the first setting implemented by the A/V performance node; anda confirmation originating from the central content source when the modification pertains to the second setting implemented by the central content source.
  • 20. The computer-implemented method of claim 19, wherein the one or more modifiable options comprise screen brightness, contrast, color balance, hue/saturation, aspect ratio, refresh rate, resolution, or any combination thereof.
RELATED APPLICATION

The application is a continuation of, and hereby claims priority to, pending U.S. patent application Ser. No. 14/825,909, which was filed on 13 Aug. 2015 and is a continuation of U.S. patent application Ser. No. 13/949,070, which was filed on 23 Jul. 2013, and which issued on 18 Aug. 2015 as U.S. Pat. No. 9,113,223. The instant application also claims priority to U.S. patent application Ser. No. 12/171,278, which was filed on 10 Jul. 2008, and which issued as U.S. Pat. No. 8,505,056 on 6 Aug. 2013, of which application Ser. No. 13/949,070 is a continuation. These applications are incorporated by reference.

US Referenced Citations (50)
Number Name Date Kind
4170782 Miller Oct 1979 A
4264924 Freeman Apr 1981 A
4280148 Saxena Jul 1981 A
5845203 Ladue Dec 1998 A
6124804 Kitao et al. Sep 2000 A
6127941 Ryzin Oct 2000 A
6225938 Hayes et al. May 2001 B1
6229700 Liu et al. May 2001 B1
6260148 Aggarwal et al. Jul 2001 B1
6424660 Jacobson Jul 2002 B2
6563430 Kemink et al. May 2003 B1
6792323 Krzyzanowski et al. Sep 2004 B2
7064675 Zigmond et al. Jun 2006 B2
7158757 Buttet Jan 2007 B2
7301463 Paterno Nov 2007 B1
7492278 Zigmond et al. Feb 2009 B2
7933968 Zimmerman Apr 2011 B1
8006263 Ellis et al. Aug 2011 B2
8054294 Sakai et al. Nov 2011 B2
8544045 Iwamura Sep 2013 B2
20030122876 Berlad Jul 2003 A1
20030140345 Fisk Jul 2003 A1
20040123327 Fai Ma Jun 2004 A1
20040154040 Ellis Aug 2004 A1
20050028208 Ellis et al. Feb 2005 A1
20050091493 Hirata Apr 2005 A1
20050165918 Wantanabe Jul 2005 A1
20050166230 Gaydou Jul 2005 A1
20050174987 Raghav et al. Aug 2005 A1
20060026279 Zigmond Feb 2006 A1
20060085401 Anderson Apr 2006 A1
20060125652 Zigmond et al. Jun 2006 A1
20070089055 Ko et al. Apr 2007 A1
20080107405 Chen et al. May 2008 A1
20080108330 O'Neil et al. May 2008 A1
20080178214 Shivaji-Rao Jul 2008 A1
20080201754 Arling et al. Aug 2008 A1
20090153288 Hope Jun 2009 A1
20090201420 Brown Aug 2009 A1
20090201422 Eshleman Aug 2009 A1
20090300686 Quigley Dec 2009 A1
20090300698 Quigley Dec 2009 A1
20100052847 Mortensen Mar 2010 A1
20100283586 Ikeda et al. Nov 2010 A1
20110128451 Easterhaus Jun 2011 A1
20110167456 Kokenos Jul 2011 A1
20120076409 Guo Mar 2012 A1
20140006946 Robbin et al. Jan 2014 A1
20140331135 Sukoff Nov 2014 A1
20170214960 Kim Jul 2017 A1
Foreign Referenced Citations (3)
Number Date Country
2006055484 May 2006 WO
2006097861 Sep 2006 WO
2007075376 Jul 2007 WO
Non-Patent Literature Citations (1)
Entry
Nichols et al., “Demonstrating the Viability of Automatically Generated User Interfaces,” Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, Apr. 28-May 3, 2007, San Jose, California, ACM, New York, NY, pp. 1283-1292, 2007.
Related Publications (1)
Number Date Country
20180167672 A1 Jun 2018 US
Continuations (3)
Number Date Country
Parent 14825909 Aug 2015 US
Child 15893277 US
Parent 13949070 Jul 2013 US
Child 14825909 US
Parent 12171278 Jul 2008 US
Child 13949070 US