Patent Publication Number: US-11650784-B2

Title: Adjusting volume levels

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     The present application is a continuation of U.S. application Ser. No. 17/102,873, filed Nov. 24, 2020, and currently pending; U.S. application Ser. No. 17/102,873 is a continuation of U.S. application Ser. No. 16/009,182, filed Jun. 14, 2018, and now abandoned; U.S. application Ser. No. 16/009,182 is a continuation of U.S. application Ser. No. 14/808,875 filed on Jul. 24, 2015, and issued on Jul. 30, 2019 as U.S. Pat. No. 10,365,884; U.S. application Ser. No. 14/808,875 is a continuation of U.S. application Ser. No. 13/907,666 filed on May 31, 2013, and issued on Sep. 22, 2015, as U.S. Pat. No. 9,141,645; U.S. application Ser. No. 13/907,666 is a continuation of U.S. application Ser. No. 13/619,237 filed on Sep. 14, 2012, and issued on Nov. 19, 2013, as U.S. Pat. No. 8,588,949; U.S. application Ser. No. 13/619,237 is a continuation of U.S. application Ser. No. 12/035,112 filed on Feb. 21, 2008, and issued on Oct. 16, 2012, as U.S. Pat. No. 8,290,603; U.S. application Ser. No. 12/035,112 is a continuation-in-part of U.S. application Ser. No. 10/861,653 filed on Jun. 5, 2004, and issued on Aug. 4, 2009, as U.S. Pat. No. 7,571,014; U.S. application Ser. No. 10/861,653 is a continuation-in-part of U.S. application Ser. No. 10/816,217 filed on Apr. 1, 2004, and issued on Jul. 31, 2012, as U.S. Pat. No. 8,234,395; U.S. application Ser. No. 10/816,217 claims priority to U.S. Prov. App. 60/490,768 filed on Jul. 28, 2003. The entire contents of the Ser. Nos. 16/009,182; 14/808,875; 13/907,666; 13/619,237; 12/035,112; 10/861,653; 10/816,217; and 60/490,768 applications are incorporated herein by reference. 
    
    
     BACKGROUND OF THE INVENTION 
     Field of the Invention 
     The invention is generally related to the area of consumer electronics and human-computer interaction. In particular, the invention is related to user interfaces for controlling or manipulating a plurality of multimedia players in a multi-zone system. 
     An enduring passion for quality audio reproduction or system is continuing to drive demands from users. One of the demands includes an audio system in a house in which, for example, one could grill to classic rock on a patio while another one may cook up his/her own music selections in a kitchen. This is all at the same time while a teenager catches a ballgame in a family room, and another one blasts pop in a bedroom. And the best part of such audio system is that each family member does not need his or her own stereo system—one system gives everyone access to all the music sources. 
     Currently, one of the systems that can meet part of such demand is a conventional multi-zone audio system that usually includes a number of audio players. Each of the audio players has its own amplifier(s) and a set of speakers and typically installed in one place (e.g., a room). In order to play an audio source at one location, the audio source must be provided locally or from a centralized location. When the audio source is provided locally, the multi-zone audio system functions as a collection of many stereo systems, making source sharing difficult. When the audio source is provided centrally, the centralized location may include a juke box, many compact discs, an AM or FM radio, tapes, or others. To send an audio source to an audio player demanding such source, a cross-bar type of device is used to prevent the audio source from going to other audio players that may be playing other audio sources. 
     In order to achieve playing different audio sources in different audio players, the traditional multi-zone audio system is generally either hard-wired or controlled by a pre-configured and pre-programmed controller. While the pre-programmed configuration may be satisfactory in one situation, it may not be suitable for another situation. For example, a person would like to listen to broadcast news from his/her favorite radio station in a bedroom, a bathroom and a den while preparing to go to work in the morning. The same person may wish to listen in the den and the living room to music from a compact disc in the evening. In order to satisfy such requirements, two groups of audio players must be established. In the morning, the audio players in the bedroom, the bathroom and the den need to be grouped for the broadcast news. In the evening, the audio players in the den and the living room are grouped for the music. Over the weekend, the audio players in the den, the living room, and a kitchen are grouped for party music. Because the morning group, the evening group and the weekend group contain the den, it can be difficult for the traditional system to accommodate the requirement of dynamically managing the ad hoc creation and deletion of groups. 
     There is a need for dynamic control of the audio players as a group. With a minimum manipulation, the audio players may be readily grouped. There is further a need for user interfaces that may be readily utilized to group and control the audio players. 
     SUMMARY OF THE INVENTION 
     This section is for the purpose of summarizing some aspects of the present invention and to briefly introduce some preferred embodiments. Simplifications or omissions in this section as well as in the abstract or the title of this description may be made to avoid obscuring the purpose of this section, the abstract and the title. Such simplifications or omissions are not intended to limit the scope of the present invention. 
     In general, the present invention pertains to controlling a plurality of multimedia players, or simply players, in groups. According to one aspect of the present invention, a mechanism is provided to allow a user to group some of the players according to a theme or scene, where each of the players is located in a zone. When the scene is activated, the players in the scene react in a synchronized manner. For example, the players in the scene are all caused to play an audio source or music in a playlist, wherein the audio source may be located anywhere on a network. 
     According to another aspect of the present invention, various user interfaces are provided to facilitate a user to create and manage a group and also create, edit or update a playlist for the group. Depending on implementation, the user interfaces may be displayed on a touch screen from which a user may act directly with the screen to group the players, the user interfaces may also be displayed on a display with other means (e.g., a stylus, a scroll wheel, or arrow buttons) to interact. In addition, the user displays are configured to show graphically how many payers in a group versus other individual players. 
     According to still another aspect of the present invention, the scene may be activated at any time or a specific time. A user may activate the scene at any time so that only some selected zones in an entertainment system facilitate a playback of an audio source. When the scene is activated at a specific time, the scene may be used as an alarm or buzzer. 
     According to still another aspect of the present invention, a controlling device (also referred to herein as controller) is provided to facilitate a user to select any of the players in the system to form respective groups each of which is set up per a scene. Although various scenes may be saved in any of the members in a group, commands are preferably sent from the controller to the rest of the members when one of the scenes is executed. Depending on implementation, the commands include parameters pertaining to identifiers of the players, volumes settings, audio source and etc. 
     According to yet another aspect of the present invention, a configurable module is implemented in the controlling device that provides interactive graphic user interface for forming, managing and controlling groups in the system, de-grouping a group or adjusting audio volume of individual players or a group of players. 
     The present invention may be implemented in many forms including software, hardware or a combination of both. According to one embodiment, the present invention is directed to a method for groupings in a multi-zone media system, the method comprises providing a mechanism to allow a user to determine which players in the system to be associated with a theme representing a group; and configuring the theme with parameters pertaining to the players, wherein the theme is activated at anytime or a specific time so that the players react in a synchronized manner. The players in a scene are synchronized to play a multimedia file when the scene is activated. 
     According to another embodiment, the present invention is directed to a method for groupings in a multi-zone media system, the method comprises providing a user interface to allow a user to determine which players in the system to be associated with a theme representing a group, the user interface showing all available players at the time the user interface is created; allowing the user to visually select one of the players to be a first member of the theme; allowing the user to add more of the available players to the theme, if desired; and configuring the theme with parameters pertaining to the players. The theme may be activated at anytime or a specific time so that the players react in a synchronized manner. 
     According to still another embodiment, the present invention is directed to an entertainment system for grouping players, the system comprises; a plurality of players, each located in one zone; and a controller providing a mechanism to allow a user to select which of the players to be associated with a theme representing a group; and configure the theme with parameters pertaining to the selected players, wherein the theme is activated at anytime or a specific time so that the selected players react in a synchronized manner. As a result, the selected players are synchronized to play a multimedia that is in a digital format and retrieved from a source over a network. 
     One of the objects, features, and advantages of the present invention is to remotely control a plurality of multimedia players in a multi-zone system, playing and controlling the audio source synchronously if the players are grouped together, or playing and controlling the audio source individually if the players are disassociated with each other. 
     In general, the present invention pertains to control of audio characteristics of a plurality of multimedia players, or simply players, from a controller. The characteristics include, but are not limited to, an audio source and an audio volume being played in each of the players. In particular, the present invention enables the user to remotely control the audio characteristics of the players either as a group or as an individual player. According to one aspect of the present invention, the same audio source is selected to be played synchronously in a group of players via a controlling device operated by a user. The group may be flexibly formed in a dynamic manner. Within the group, any one of the audio sources may be chosen and made available to each of the players. All audio playback control operations such as pause/play, forward/rewind, next/previous track are synchronously controlled, while the audio volume adjustment may be applied to a selected player or all of the players in the group. 
     According to another aspect of the present invention, a configurable module is implemented in the controlling device that provides interactive graphic user interface for controlling playback of the audio source, grouping a plurality of players together, de-grouping a group or adjusting audio volume of individual players or a group of players. 
     According to yet another aspect of the present invention, a player in a group of players is configured to synchronously play an audio source by selecting a source, making the source available or retrieving the source if the source is not found locally 
     The present invention may be implemented in many forms including software, hardware or a combination of both. According to one embodiment, the present invention is directed to a method for controlling a plurality of players, the method comprising: displaying on a screen a first list showing at least available players, selecting at least one of the players as a zone group head, displaying on the screen a second list showing at least some of the players that are eligible to be grouped with the zone group head, selecting one or more players from the at least some of the players to be a group being formed by the group head, and synchronizing all players in the group. 
     According to another embodiment, the present invention is a method for controlling a plurality of players, the method comprising displaying on a screen a list showing a plurality of volume meters, at least one of the volume meters representing an audio volume of one of the players, and another one of the volume meters representing an audio volume of a group of players, if there is such group, selecting one of the volume meters from the list, and adjusting the one of the volume meters as desired. 
     According to still another embodiment, the present invention is an apparatus for controlling a plurality of players, the apparatus comprises a screen, a screen driver commanding the screen, an input interface, a network interface, a memory for storing code for an application module, a processor coupled to the memory, the input interface, the screen driver and the network interface, the processor executing the code in the memory to cause the application module and the screen driver to perform operations of: displaying on the screen a first list showing at least available players; selecting at least one of the players as a zone group head; displaying on the screen a second list showing at least some of the players that are eligible to be grouped with the zone group head; selecting one or more players from the at least some of the players to be a zone group being formed by the zone group head; and synchronizing all players in the zone group. 
     The operations further include displaying on a screen a list showing a plurality of volume meters, at least one of the volume meters representing an audio volume of one of the players, and another one of the volume meters representing an audio volume of a group of players, if there is such group; selecting one of the volume meters from the list; and adjusting the one of the volume meters as desired. 
     One of the objects, features, and advantages of the present invention is to remotely control a plurality of multimedia players in a multi-zone system, playing and controlling the audio source synchronously if the players are grouped together, or playing and controlling the audio source individually if the players are disassociated with each other. 
     Other objects, features, and advantages of the present invention will become apparent upon examining the following detailed description of an embodiment thereof, taken in conjunction with the attached drawings. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       These and other features, aspects, and advantages of the present invention will become better understood with regard to the following description, appended claims, and accompanying drawings where: 
         FIG.  1    shows an exemplary configuration in which the present invention may be practiced; 
         FIG.  2 A  shows an exemplary functional block diagram of a player in accordance with the present invention; 
         FIG.  2 B  shows an example of a controller that may be used to remotely control one of more players of  FIG.  2 A ; 
         FIG.  2 C  shows an exemplary internal functional block diagram of a controller in accordance with one embodiment of the present invention; 
         FIG.  3 A  provides an illustration of one zone scene, where the left column shows the starting zone grouping—all zones are separate, the column on the right shows the effects of grouping the zones to make a group of 3 zones named after “Morning”; 
         FIG.  3 B  shows that a user defines multiple groups to be gathered at the same time; 
         FIG.  3 C  shows an exemplary user interface (UI) of individual zones in a house; 
         FIG.  3 D  shows a user interface as a result of the use activating “link zones” of  FIG.  3 C ; 
         FIG.  3 E  shows a user interface after the user has selected some of the available zone payers into the scene; 
         FIG.  4    shows an exemplary user interface that may be displayed on a controller or a computer of  FIG.  1   ; 
         FIG.  5 A  shows another user interface to allow a user to form a scene; 
         FIG.  5 B  shows still another user interface to allow a user to form a scene; 
         FIG.  5 C  shows a user interface to allow a user to adjust a volume level of the zone players in a zone scene individually or collectively; and 
         FIG.  6    shows a flowchart or process of providing a player theme or a zone scene for a plurality of players, where one or more of the players are placed in a zone. 
         FIGS.  7 A and  7 B  illustrate a sequence of screen displays in accordance with one embodiment of the present invention for controlling a plurality of players; 
         FIG.  7 C  shows a sequence of screen displays in accordance with one embodiment of the present invention for alternatively controlling players; 
         FIGS.  8 A and  8 B  show a sequence of screen displays in accordance with one embodiment of the present invention for controlling players regarding audio volume; 
         FIG.  9    shows a flowchart or process of controlling a plurality of zones players according to one embodiment of the present invention; 
         FIG.  10    shows a flowchart or process of controlling audio volume of a plurality of players in a zone group according to one embodiment of the present invention; and 
         FIGS.  11 A- 11 D  show a sequence of screen displays in accordance with one embodiment of the present invention on a computing device for alternatively controlling players. 
     
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     The detailed description of the invention is presented largely in terms of procedures, steps, logic blocks, processing, and other symbolic representations that directly or indirectly resemble the operations of data processing devices coupled to networks. These process descriptions and representations are typically used by those skilled in the art to most effectively convey the substance of their work to others skilled in the art. Numerous specific details are set forth in order to provide a thorough understanding of the present invention. However, it will become obvious to those skilled in the art that the present invention may be practiced without these specific details. In other instances, well known methods, procedures, components, and circuitry have not been described in detail to avoid unnecessarily obscuring aspects of the present invention. 
     Reference herein to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment can be included in at least one embodiment of the invention. The appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. Further, the order of blocks in process flowcharts or diagrams representing ore or more embodiments of the invention do not inherently indicate any particular order nor imply any limitations in the invention. 
     Referring now to the drawings, in which like numerals refer to like parts throughout the several views.  FIG.  1    shows an exemplary configuration  100  in which the present invention may be practiced. The configuration may represent, but not be limited to, a part of a residential home, a business building or a complex with multiple zones. There are a number of multimedia players of which three examples  102 ,  104  and  106  are shown as audio devices. Each of the audio devices may be installed or provided in one particular area or zone and hence referred to as a zone player herein. 
     As used herein, unless explicitly stated otherwise, an audio source or audio sources are in digital format and can be transported or streamed over a data network. To facilitate the understanding of the present invention, it is assumed that the configuration  100  represents a home. Thus, the zone player  102  and  104  may be located in two of the bedrooms respectively while the zone player  106  may be installed in a living room. All of the zone players  102 ,  104  and  106  are coupled directly or indirectly to a data network  108 . In addition, a computing device  110  is shown to be coupled on the network  108 . In reality, any other devices such as a home gateway device, a storage device, or an MP3 player may be coupled to the network  108  as well. 
     The network  108  may be a wired network, a wireless network or a combination of both. In one example, all devices including the zone players  102 ,  104  and  106  are coupled to the network  108  by wireless means based on an industry standard such as IEEE 802.11. In yet another example, all devices including the zone players  102 ,  104  and  106  are part of a local area network that communicates with a wide area network (e.g., the Internet). 
     Many devices on the network  108  are configured to download and store audio sources. For example, the computing device  110  can download audio sources from the Internet and store the downloaded sources locally for sharing with other devices on the Internet or the network  108 . The computing device  110  or any of the zone players can also be configured to receive streaming audio. Shown as a stereo system, the device  112  is configured to receive an analog audio source (e.g., from broadcasting) or retrieve a digital audio source (e.g., from a compact disk). The analog audio sources can be converted to digital audio sources. In accordance with the present invention, the audio source may be shared among the devices on the network  108 . 
     Two or more zone players may be grouped together to form a new zone group. Any combinations of zone players and an existing zone group may be grouped together. In one instance, a new zone group is formed by adding one zone player to another zone player or an existing zone group. 
     Referring now to  FIG.  2 A , there is shown an exemplary functional block diagram of a zone player  200  in accordance with the present invention. The zone player  200  includes a network interface  202 , a processor  204 , a memory  206 , an audio processing circuit  210 , a module  212 , and optionally, an audio amplifier  214  that may be internal or external. The network interface  202  facilitates a data flow between a data network (i.e., the data network  108  of  FIG.  1   ) and the zone player  200  and typically executes a special set of rules (i.e., a protocol) to send data back and forth. One of the common protocols used in the Internet is TCP/IP (Transmission Control Protocol/Internet Protocol). In general, a network interface manages the assembling of an audio source or file into smaller packets that are transmittal over the data network or reassembles received packets into the original source or file. In addition, the network interface  202  handles the address part of each packet so that it gets to the right destination or intercepts packets destined for the zone player  200 . 
     The network interface  202  may include one or both of a wireless interface  216  and a wired interface  217 . The wireless interface  216 , also referred to as a RF interface, provides network interface functions by a wireless means for the zone player  200  to communicate with other devices in accordance with a communication protocol (such as the wireless standard IEEE 882.11a, 802.11b or 802.11g). The wired interface  217  provides network interface functions by a wired means (e.g., an Ethernet cable). In one embodiment, a zone player includes both of the interfaces  216  and  217 , and other zone players include only a RF or wired interface. Thus these other zone players communicate with other devices on a network or retrieve audio sources via the zone player. The processor  204  is configured to control the operation of other parts in the zone player  200 . The memory  206  may be loaded with one or more software modules that can be executed by the processor  204  to achieve desired tasks. According to one aspect of the present invention, a software module implementing one embodiment of the present invention is executed, the processor  204  operates in accordance with the software module in reference to a saved zone group configuration characterizing a zone group created by a user, the zone player  200  is caused to retrieve an audio source from another zone payer or a device on the network. 
     According to one embodiment of the present invention, the memory  206  is used to save one or more saved zone configuration files that may be retrieved for modification at any time. Typically, a saved zone group configuration file is transmitted to a controller (e.g., the controlling device  140  or  142  of  FIG.  1   , a computer, a portable device, or a TV) when a user operates the controlling device. The zone group configuration provides an interactive user interface so that various manipulations or control of the zone players may be performed. 
     The audio processing circuit  210  resembles most of the circuitry in an audio playback device and includes one or more digital-to-analog converters (DAC), an audio preprocessing part, an audio enhancement part or a digital signal processor and others. In operation, when an audio source is retrieved via the network interface  202 , the audio source is processed in the audio processing circuit  210  to produce analog audio signals. The processed analog audio signals are then provided to the audio amplifier  214  for playback on speakers. In addition, the audio processing circuit  210  may include necessary circuitry to process analog signals as inputs to produce digital signals for sharing with other devices on a network. 
     Depending on an exact implementation, the module  212  may be implemented as a combination of hardware and software. In one embodiment, the module  212  is used to save a scene. The audio amplifier  214  is typically an analog circuit that powers the provided analog audio signals to drive one or more speakers. 
     Referring now to  FIG.  2 B , there is shown an exemplary controller  240 , which may correspond to the controlling device  140  or  142  of  FIG.  1   . The controller  240  may be used to facilitate the control of multi-media applications, automation and others in a complex. In particular, the controller  240  is configured to facilitate a selection of a plurality of audio sources available on the network, controlling operations of one or more zone players (e.g., the zone player  200 ) through a RF interface corresponding to the RF interface  216  of  FIG.  2 A . According to one embodiment, the wireless means is based on an industry standard (e.g., infrared, radio, wireless standard IEEE 802.11a, 802.11b or 802.11g). When a particular audio source is being played in the zone player  200 , a picture, if there is any, associated with the audio source may be transmitted from the zone player  200  to the controller  240  for display. In one embodiment, the controller  240  is used to synchronize more than one zone players by grouping the zone players. In another embodiment, the controller  240  is used to control the volume of each of the zone players in a zone group individually or together. 
     The user interface for the controller  240  includes a screen  242  (e.g., a LCD screen) and a set of functional buttons as follows: a “zones” button  244 , a “back” button  246  a “music” button  248 , a scroll wheel  250 , “ok” button  252 , a set of transport control buttons  254 , a mute button  262 , a volume up/down button  264 , a set of soft buttons  266  corresponding to the labels  268  displayed on the screen  242 . 
     The screen  242  displays various screen menus in response to a user&#39;s selection. In one embodiment, the “zones” button  244  activates a zone management screen or “Zone Menu”, which is described in more details below. The “back” button  246  may lead to different actions depending on the current screen. In one embodiment, the “back” button triggers the current screen display to go back to a previous one. In another embodiment, the ‘back” button negates the user&#39;s erroneous selection. The “music” button  248  activates a music menu, which allows the selection of an audio source (e.g., a song) to be added to a zone player&#39;s music queue for playback. 
     The scroll wheel  250  is used for selecting an item within a list, whenever a list is presented on the screen  242 . When the items in the list are too many to be accommodated in one screen display, a scroll indicator such as a scroll bar or a scroll arrow is displayed beside the list. When the scroll indicator is displayed, a user may rotate the scroll wheel  250  to either choose a displayed item or display a hidden item in the list. The “ok” button  252  is used to confirm the user selection on the screen  242 . 
     There are three transport buttons  254 , which are used to control the effect of the currently playing song. For example, the functions of the transport buttons may include play/pause and forward/rewind a song, move forward to a next song track, or move backward to a previous track. According to one embodiment, pressing one of the volume control buttons such as the mute button  262  or the volume up/down button  264  activates a volume panel. In addition, there are three soft buttons  266  that can be activated in accordance with the labels  268  on the screen  242 . It can be understood that, in a multi-zone system, there may be multiple audio sources being played respectively in more than one zone players. The music transport functions described herein shall apply selectively to one of the sources when a corresponding one of the zone players or zone groups is selected. 
       FIG.  2 C  illustrates an internal functional block diagram of an exemplary controller  270 , which may correspond to the controller  240  of  FIG.  2 B . The screen  272  on the controller  270  may be a LCD screen. The screen  272  communicates with and is commanded by a screen driver  274  that is controlled by a microcontroller (e.g., a processor)  276 . The memory  282  may be loaded with one or more application modules  284  that can be executed by the microcontroller  276  with or without a user input via the user interface  278  to achieve desired tasks. In one embodiment, an application module is configured to facilitate grouping a number of selected zone players into a zone group and synchronizing the zone players for one audio source. In another embodiment, an application module is configured to control together the audio volumes of the zone players in a zone group. In operation, when the microcontroller  278  executes one of the application modules  284 , the screen driver  274  generates control signals to drive the screen  272  to display an application specific user interface accordingly, more of which will be described below. 
     The controller  270  includes a network interface  280  referred to as a RF interface  280  that facilitates wireless communication with a zone player via a corresponding RF interface thereof. In one embodiment, the commands such as volume control and audio playback synchronization are sent via the RF interfaces. In another embodiment, a saved zone group configuration is transmitted between a zone player and a controller via the RF interfaces. The controller  270  may control one or more zone players, such as  102 ,  104  and  106  of  FIG.  1   . Nevertheless, there may be more than one controllers, each preferably in a zone (e.g., a room) and configured to control any one and all of the zone players. 
     In one embodiment, a user creates a zone group including at least two zone players from the controller  240  that sends signals or data to one of the zone players. As all the zone players are coupled on a network, the received signals in one zone player can cause other zone players in the group to be synchronized so that all the zone players in the group playback an identical audio source or a list of identical audio sources in a timely synchronized manner. Similarly, when a user increases the audio volume of the group from the controller, the signals or data of increasing the audio volume for the group are sent to one of the zone players and causes other zone players in the group to be increased together in volume and in scale. 
     According to one implementation, an application module is loaded in Memory  282  for zone group management. When a predetermined key (e.g. the “zones” button  244 ) is activated on the controller  240 , the application module is executed in the microcontroller  278 . The input interface  278  coupled to and controlled by the microcontroller  276  receives inputs from a user. A “Zone Menu” is then displayed on the screen  272 . The user may start grouping zone players into a zone group by activating a “Link Zones” or “Add Zone”soft button, or de-grouping a zone group by activating an “Unlink Zones” or “Drop Zone” button. The detail of the zone group manipulation will be further discussed below. 
     As described above, the input interface  278  includes a number of function buttons as well as a screen graphical user interface. It should be pointed out that the controller  240  in  FIG.  2 B  is not the only controlling device that may practice the present invention. Other devices that provide the equivalent control functions (e.g., a computing device, a hand-held device) may also be configured to practice the present invention. In the above description, unless otherwise specifically described, it is clear that keys or buttons are generally referred to as either the physical buttons or soft buttons, enabling a user to enter a command or data. 
     One mechanism for ‘joining’ zone players together for music playback is to link a number of zone players together to form a group. To link a number of zone players together, a user may manually link each zone player or room one after the other. For example, there is a multi-zone system that includes the following zones. 
     Bathroom 
     Bedroom 
     Den 
     Dining Room 
     Family Room 
     Foyer 
     If the user wishes to link  5  of the 6 zone players using the current mechanism, he/she must start with a single zone and then manually link each zone to that zone. This mechanism may be sometimes quite time consuming. According to one embodiment, a set of zones can be dynamically linked together using one command. Using what is referred to herein as a theme or a zone scene, zones can be configured in a particular scene (e.g., morning, afternoon, or garden), where a predefined zone grouping and setting of attributes for the grouping are automatically effectuated. 
     For instance, a “Morning” zone scene/configuration command would link the Bedroom, Den and Dining Room together in one action. Without this single command, the user would need to manually and individually link each zone.  FIG.  3 A  provides an illustration of one zone scene, where the left column shows the starting zone grouping—all zones are separate, the column on the right shows the effects of grouping the zones to make a group of 3 zones named after “Morning”. 
     Expanding this idea further, a Zone Scene can be set to create multiple sets of linked zones. For example, a scene creates 3 separate groups of zones, the downstairs zones would be linked together, the upstairs zones would be linked together in their own group, and the outside zones (in this case the patio) would move into a group of its own. 
     In one embodiment as shown in  FIG.  3 B , a user defines multiple groups to be gathered at the same time. For example: an “Evening Scene” is desired to link the following zones:
         Group 1   Bedroom   Den   Dining Room   Group 2   Garage   Garden
 
where Bathroom, Family Room and Foyer should be separated from any group if they were part of a group before the Zone Scene was invoked.
       

     One of the important features, benefits and objects in the present invention is that that zones do not need to be separated before a zone scene is invoked. In one embodiment, a command is provided and links all zones in one step, if invoked. The command is in a form of a zone scene. After linking the appropriate zones, a zone scene command could apply the following attributes: 
     Set volumes levels in each zones (each zone can have a different volume) 
     Mute/Unmute zones. 
     Select and play specific music in the zones. 
     Set the play mode of the music (Shuffle, Repeat, Shuffle-repeat) 
     Set the music playback equalization of each zone (e.g., bass treble). 
     A further extension of this embodiment is to trigger a zone scene command as an alarm clock function. For instance the zone scene is set to apply at 8:00 am. It could link appropriate zones automatically, set specific music to play and then stop the music after a defined duration. Although a single zone may be assigned to an alarm, a scene set as an alarm clock provides a synchronized alarm, allowing any zones linked in the scene to play a predefined audio (e.g., a favorable song, a predefined playlist) at a specific time or for a specific duration. If, for any reason, the scheduled music faded to be played (e.g., an empty playlist, no connection to a share, failed UPnP, no Internet connection for an Internet Radio station), a backup buzzer will sound. This buzzer will be a sound file that is stored in a zone player. 
       FIG.  3 C  shows an exemplary user interface (UI)  330  to show all available individual zones in a house. Each zone player can play a type of media (such as music, photographs and video) independently. Each zone player in the UI may be highlighted on the screen using either a touch screen or an input device such as a stylus, a scroll wheel, or arrow buttons. If a user wishes to link players in some rooms together to form a group so that players in these rooms are playing the same media in a synchronized fashion, the user may activate the grouping function by activating “link zones”  332  that leads to a user interface  340  as shown in  FIG.  3 D . 
     The UI  340  shows that the zone players available for grouping are selectable. In one embodiment, the UI  340  is displayed (e.g., a touch screen) to allow the user to choose what zone players to be included in a group named after “Bedroom” so that they are all playing the same song “The Beatles”. It should be noted that the user may have an option to name the scene, for example, “afternoon”, or “light music”. In the example shown in  FIGS.  3 C and  3 D , the user selects the Bedroom zone and then the “Link Zones” button  332 , as a result, the default name for the scene being created is named after “Bedroom”. As shown  FIG.  3 D , a zone player may be selected or highlighted by “checking” it into the group. In another embodiment, the selection action could also be achieved through pressing the “+˜” icon next to each zone. 
       FIG.  3 E  shows a user interface  350  after the user has selected some of the available zone players into the scene. The display  350  is so displayed that a user can easily tell a group of linked players from the isolated players. According to one embodiment, a display may be provided to visually tell a user what have been grouped and what are not grouped. The display may even show various groups by size to indicate a number of zone players in each of the groups, for example, the larger a group appears, the more zone players there are in the group. 
     In general, all players in a group are caused to play the media being played in the first member used to form the group. In the case of  FIG.  3 E , the zone player in the bedroom is used to initiate the group or the first one in the group. At the time of forming the group, the zone player in the bedroom is playing “the Beatles”, as soon as a second zone player joins the group, the second zone player starts to be synchronized with the one already in the group and thus to play “the Beatles” in this case. As will be described below, the user now can switch the group of players to any other type of media or a different piece of music and all of the zone players in the group will play the selected media at the same time. 
       FIG.  4    shows an exemplary user interface  400  that may be displayed on a controller  142  or a computer  110  of  FIG.  1   . The interface  400  shows a list of items that may be set up by a user to cause a scene to function at a specific time. In the embodiment shown in  FIG.  4   , the list of items includes “Alarm”, “Time”, “Zone”, “Music”, “Frequency” and “Alarm length”. “Alarm” can be set on or off. When “Alarm” is set on, “Time” is a specific time to set off the alarm. “Zone” shows which zone players are being set to play a specified audio at the specific time. “Music” shows what to be played when the specific time arrives. “Frequency” allows the user to define a frequency of the alarm. “Alarm length” defines how long the audio is to be played. It should be noted that the user interface  400  is provided herein to show some of the functions associated with setting up an alarm. Depending on an exact implementation, other functions, such es time zone, daylight savings, time synchronization, and time/date format for display may also be provided without departing from the present invention. 
     According to one embodiment, each zone player in a scene may be set up for different alarms. For example, a “Morning” scene includes three zone players, each in a bedroom, a den, and a dining room. After selecting the scene, the user may set up an alarm for the scene as whole. As a result, each of the zone players will be activated at a specific time. 
       FIG.  5 A  shows a user interface  500  to allow a user to term a scene. The panel on the left shows the available zones in a household. The panel on the right shows the zones that have been selected and be grouped as part of this scene. Depending on an exact implementation of a user interface, Add/Remove buttons may be provided to move zones between the panels, or zones may be dragged along between panels. 
       FIG.  5 B  shows another user interface  520  to allow a user to form a scene. The user interface  520  that may be displayed on a controller or a computing device, lists available zones in a system. A checkbox is provided next to each of the zones so that a user may check in the zones to be associated with the scene. 
       FIG.  5 C  Shows a user interface  510  to allow a user to adjust a volume level of the zone players in a zone scene individually or collectively. As shown in the user interface  510 , the ‘Volumes . . . ’ button (shown as sliders, other forms are possible) allows the user to affect the volumes of the associated zone players when a zone scene is invoked. In one embodiment, the zone players can be set to retain whatever volume that they currently have when the scene is invoked. Additionally the user can decide if the volumes should be unmuted or muted when the scene is invoked. 
       FIG.  6    shows a flowchart or process  600  of providing a player theme or a zone scene for a plurality of players, where one or more of the players are placed in a zone. The process  600  is presented in accordance with one embodiment of the present invention and may be implemented in a module to be located in the memory  282  of  FIG.  2 C . 
     The process  600  is initiated only when a user decides to proceed with a zone scene at  602 . The process  600  then moves to  604  where it allows a user to decide which zone players to be associated with the scene. For example, there are ten players in a household, and the scene is named after “Morning”. The user may be given an interface to select four of the ten players to be associated with the scene. At  606 , the scene is saved. The scene may be saved in any one of the members in the scene. In the example of  FIG.  1   , the scene is saved in one of the zone players and displayed on the controller  142 . In operation, a set of data pertaining to the scene includes a plurality of parameters. In one embodiment, the parameters include, but may not be limited to, identifiers (e.g., IP address) of the associated players and a playlist. The parameters may also include volume/tone settings for the associated players in the scene. The user may go back to  602  to configure another scene if desired. 
     Given a saved scene, a user may activate the scene at any time or set up a timer to activate the scene at  610 . The process  600  can continue when a saved scene is activated at  610 . At  612 , upon the activation of a saved scene, the process  600  checks the status of the players associated with the scene. The status of the players means that each of the players shall be in condition to react in a synchronized manner. In one embodiment, the interconnections of the players are checked to make sure that the players communicate among themselves and/or with a controller if there is such a controller in the scene. 
     It is assumed that all players associated with the scene are in good condition. At  614 , commands are executed with the parameters (e.g., pertaining to a playlist and volumes). In one embodiment, data including the parameters is transported from a member (e.g., a controller) to other members in the scene so that the players are caused to synchronize an operation configured in the scene. The operation may cause all players to play back a song in identical or different volumes or to play back a pre-stored file. 
     One of the features, benefits and advantages in the present invention is to allow sets of related devices (controllers and operating components) to exist as a group without interfering with other components that are potentially visible on the same wired or wireless network. Each of the sets is configured to a theme or a scene. 
       FIGS.  7 A and  7 B  illustrate a sequence of screens in accordance with one embodiment of the present invention for manipulating a plurality of zone players for an exemplary four-zone distributed audio system. There are four zone players in four zones and referred to as: “Zone  1 ”, “Zone  2 ”, “Zone  3 ” and “Zone  4 ”. 
       FIG.  7 A  shows a grouping process. A first “Zone Menu”  702  shows a first list  703  of available zone players. One of the zone players or existing zone group is selected as a zone group head  704 , which is indicated with uniformly highlighted texts. It is noted the highlighted texts may also be expressed as grouped icons, concatenated texts or other representations of a current selection on the screen. The highlighted texts react to a user&#39;s scrolling selection (e.g., via a scroll wheel  250  of  FIG.  2 B ). Also shown as one of the bottom labels on the first “Zone Menu”  702  is the “Link Zones” or “Add Zone” label  706  that corresponds to a soft button (e.g., soft button  266  of  FIG.  2 B ). A scroll indicator is displayed beside the first display  702  when the number of items is too many to be accommodated in one display. 
     When the soft button corresponding to “Link Zones” or “Add Zone”  706  is activated, a second “Zone Menu”  708  is displayed. A second list shows eligible zone groups or zone players  709  for the zone group head  704 . Since “Zone  2 ” has been selected as the zone group head to form a zone group, the eligible zone groups and zone players are now “Zone  1 ”, “Zone  3 ” and “Zone  4 ”. As shown as highlighted texts, the zone player (Zone  4 )  710  is selected to be grouped with the zone group head (Zone  2 )  704  to form a new zone group. 
     After the user confirms the selection, the newly formed zone group configuration is updated and the audio source can be played synchronously for all of the zone players in the newly formed zone group as shown in  FIG.  7 A . The first “Zone menu”  712  is displayed again with the newly formed zone group  714  as one of the choices along with other available zone players. Depending on implementation, any zone players that have been used in a group may or may not be used in another group. As shown in  FIG.  7 A , the zone players  2  and  4  are in a zone group started by the zone player  2 , the zone player  4  (even the zone player  2 ) can be in another zone group, for example, while a player in a living room is grouped with a player in a dining room, the same player in the living room can be grouped with a player in a family room. 
     In another embodiment, a display shows a list of available zone players for grouping. An interactive graphic interface allows a user to interactively select some of the available zone players that are automatically grouped. Anyone of the selected zone players in the group may be elected to be a group head such that other players in the group are synchronized to follow the group head. 
     According to one embodiment, the synchronization of all zone players in the new zone group is achieved with the following steps: 1) choosing an audio source from one of the zone players in the group, 2) checking if the chosen audio source is available locally on each of the zone players, 3) retrieving the audio source from another device (e.g., other zone players) which has the audio source via the data network, if the audio source is not available locally, and 4) playing the audio source on each of the zone players synchronously. In another embodiment, the audio source in the group or player to be added is chosen as default for other zone players. As shown in  FIG.  7 A , the audio source for “Zone  4 ” is track  10  with artist D. Accordingly, the zone player “Zone  2 ” will play track  10  with artist D synchronously with “Zone  4 ” after the new zone group is formed. 
       FIG.  7 B  shows a de-grouping process in reference to  FIG.  7 A . A first “Zone Menu”  722  shows a first list  723  of available zone players and zone groups, if there is any. One of the zone groups (“Zone  2 +Zone  4 ”) to be de-grouped is selected as shown in highlight texts  724 . When the “Unlink Zones” or “Drop Zone” soft button  726  is activated, the second “Zone Menu”  728  displays a list  729  that shows all of the member zone players in the selected zone group. One of the zone players  730  (Zone  4 ) in the selected zone group is chosen to be disassociated from the zone group  724 . When the de-grouping is confirmed by user, the “Zone Menu”  732  is presented to reflect the de-grouping of a zone group (e.g., “Zone  2 ”)  734 . When zone players are grouped together, all of the zone players play the same audio source synchronously. If a zone player is disassociated or dropped from the zone group, the remaining zone players in the zone group continue playing the audio source. In the “Zone Menu”  732 , it shows the zone player (Zone  4 ) has no music  736  after the disassociation from the zone group, while the remaining player (Zone  2 ) continues to play the same music-track  10  with artist D. 
     Referring now to  FIG.  7 C , there shows a sequence of screens depicting alternative steps of creating a zone group. An exemplary five-zone audio system is used to describe these alternative steps. There are five zone players located in a living room, a dining room, a kitchen, an office and a master bedroom. It is assumed that three of the five rooms, the living room, the dining room and the kitchen, are grouped to form a zone group called “LivingRoom+DiningRoom+Kitchen”. The Screen display  750  shows that an audio source called “Counting Crows”  752  is being played on all the zone players in the group. When a user activates the “music” button  248  on a controller  240  of  FIG.  2 B , the screen display  760  shows a “Music Menu” page which shows a list of choices  762 . One of the choices is “Play Music From Other Rooms”  764 . When the user selects this option, the screen display  770  for “Play Same Music As Other Rooms” displays a list  772  of eligible rooms or zone players to be grouped with the current group “Living Room+Dining Room+Kitchen”. In this example the eligible rooms are Office  774  and Master Bedroom  776 . It is assumed that the “Office”  774  which is indicated with the highlighted bar is chosen. As a result, the zone player “Office” is grouped with the original zone group to become a new group called “LivingRoom+DiningRoom+Kitchen+Office” as shown in screen display  780 . And the audio source “Miles Davis”  782  from the zone player “Office” is played synchronously on all zone players in the new group. 
     Referring now to  FIGS.  8 A and  8 B , there is shown a sequence of screens in accordance with one embodiment of the present invention for controlling audio volume of zone players in a zone group. These screens are activated and displayed when one of the volume control buttons is activated. According to one embodiment, the volume control buttons are “mute” button  262  and “volume up/down” button  264  on the controller  240  of  FIG.  2 B . 
       FIG.  8 A  shows that the current active zone player is in a living room of a house. The “Volume” panel  810  is displayed for the current zone player “Living Room”. A volume meter  812  is included to indicate a volume adjustment made by a user. A mute icon  814  is shown when the “mute” button is activated while the audio is on. 
       FIG.  8 B  shows that the current active zone group includes five rooms: living room, dining room, kitchen, den and study. A “Volume” panel  830  for the zone group is displayed for the convenience of a user. In the display, a plurality of volume meters  831  is shown. One of the volume meters is for the entire zone group  832 . Other volume meters are for all the zone players in the group, one for each room or zone player. A scroll indicator is shown as a downward arrow  836  that indicates the screen is too small to hold all volume meters in one screen display. There are more hidden choices that can be viewed by scrolling down. The scrolling cursor  836  is highlighted (e.g., Den  834 ). As a user scrolls down the list of volume meters  831 , the contents on “Volume” panel  840  includes the volume meter of the next zone player on the list (e.g., Study  844 ). Similarly, when the scroll indicator is an upward arrow  842 , other hidden choices within the list can be viewed by scrolling up. 
     When a user adjusts the audio volume, only the highlighted zones or zone players are affected. If the highlighted selection is one zone player, the audio adjustment will only apply to that particular chosen player. If multiple zone players are selected, the adjustment applies to all of the chosen players similar to the volume adjustment to the group volume meter described below. The audio volume of all zone players in the zone group will be affected, if the highlighted selection is at the volume meter of the entire group  832 . Any audio volume adjustment to the zone group applies to all of the zone players equally within the entire zone group. Depending on implementation, the relative difference of the audio volume among zone players in the group remains unchanged either in percentage or graphic strength. 
       FIG.  9    shows a flowchart or process  900  of implementing one embodiment of the present invention for manipulating zone players. The process  900 , which is preferably understood in conjunction with the previous figures especially with  FIGS.  2 B,  2 C,  7 A and  7 B , may be implemented in software, hardware, or a combination of both. According to one embodiment, an application module implementing the process  900  is embedded in a controller, for example, the device  240  of  FIG.  2 C . The module may be loaded in the memory  282  to be executed by the microcontroller (processor)  276  and operating in conjunction with user input commands via the input interface  278 . 
     The process  900  starts with a display at  902  showing a list of zone players or existing zone groups, if there are any. When the available zone players and zone groups in the list is too long to be presented on the display, a scroll indicator will be displayed beside the list. A user may access the hidden items within the list by scrolling either upward or downward. At  903 , the process  900  splits into two branches based on the following tasks: 1) grouping a plurality of zone players to form a zone group, or 2) de-grouping a zone group. 
     If the process  900  performs the grouping task, the process moves onto  904 . The user selects one of the zone players as a zone group head or the zone groups from the list. Once the selection is made and a key is activated (e.g., a soft button  706  as shown in  FIG.  7 A ), a new list (e.g., screen  708  as shown in  FIG.  7 A ) showing all of the zone players and zone groups that are eligible to be grouped with the selection at  904  is displayed at  908 . In one embodiment as shown in  FIG.  7 A , when the zone player “Zone  2 ” is selected as the zone group head in a four-zone audio system, the eligible zone players are all other zone players (“Zone  1 ”, “Zone  3 ” and “Zone  4 ”) except for the zone player “Zone  2 ”. At  910 , the end user is then given the option to select one or more of the eligible zone players (e.g., “Zone  4 ” in  FIG.  7 A ) or one of the eligible zone groups to be grouped into the selection at  904 . 
     At  912 , the user has the option to confirm to accept or to discard the selection made at  910 . When a confirmation is made, the process  900  creates the zone group by synchronizing all of the zone players in the zone group at  914 . In one embodiment, the synchronization is performed first to determine the audio source in the selected player to be grouped (e.g., Zone  4  in  FIG.  7 A ). Then the audio source is transmitted to all other zone players in the same zone group before playing the audio source synchronously. In the meantime, this newly formed zone group configuration is updated. For example, the zone group configuration is saved to the memory  208  on the zone player  200  of  FIG.  2 A  via the wireless communication. After the zone player in the newly formed zone group has been synchronized, the process  900  moves back to  902 . An updated list of available zone players and zone groups is displayed. As an example shown in “Zone Menu”  712  of  FIG.  7 A , the newly formed zone group is listed as one of the items. 
     Going back to  912 , if the selection made at  910  can not be confirmed or is to be discarded, the process  900  goes back to  902  without updating any zone group configuration. In this case, the original list is intact (e.g., “Zone Menu”  702  of  FIG.  7 A ). 
     Going back to the grouping task test at  903 , when the process  900  performs the de-grouping task, the process  900  moves to  924 . A user selects one zone group from the first list. Once the selection is made, a list (e.g., screen  728  as shown in  FIG.  7 B ) showing all of the zone players in the selected zone group is displayed at  928 . In one embodiment as shown in  FIG.  7 B , “Zone  2 +Zone  4 ” is the selected zone group, the zone players in the selected zone group are “Zone  2 ” and “Zone  4 ”. At  930 , the end user selects one or more of the zone players (e.g., Zone  4 ) from the list to be disassociated from the zone group. At  932 , the user has the option to confirm or to discard the selection made at  930 . 
     When the selection is confirmed, the process  900  updates the selected zone group by disassociating the zone player from the zone group at  934 . As a result of the disassociation, the audio source being played in the zone group is no longer available to the disassociated zone player. In the meantime, the updated zone group configuration is saved. For example, the zone configuration is saved to the memory  206  on the zone player  200  ( FIG.  2 A ). After the zone player has been disassociated, the process  900  moves back to  902 . The list of available zone players and zone groups is displayed. This time the newly updated zone group is listed as one of the items (e.g., “Zone Menu”  732  of  FIG.  7 B ). 
     Going back to  932 , if the selection made at  930  is to be discarded, the process  900  moves back to  902  directly without updating the zone group configuration. In this case, the original list is presented (e.g., “Zone Menu”  722  of  FIG.  7 B ). 
     Referring now to  FIG.  10   , there is shown a flowchart or process  1000  of controlling audio volume of a plurality of zone players in a zone group. The process  1000 , which is preferably understood in conjunction with the previous figures especially with  FIGS.  2 B,  2 C,  8 A and  8 B , may be implemented in software, hardware, or a combination of both. According to one embodiment, an application module implementing the process  1000  is embedded in a controller, for example, the device  240  of  FIG.  2 C . The module may be loaded in the memory  282  to be executed by the microcontroller (processor)  276  and operating in conjunction with user input commands. In one embodiment, the module is configured to control the audio volume of a group of zone players. It should be noted that zone group and a group of zone players are used interchangeably in the description for  FIG.  10   . 
     At  1005 , the process  1000  starts when one of the volume control buttons, for example, “mute” button  262  or “volume up/down” button  264 , on the controller  240  of  FIG.  2 B , is activated. The process  1000  splits into two branches depending on whether a single zone player or a group of zone players is to be controlled at  1010 . 
     If it is for a single zone player, a volume meter (e.g., “Volume” panel  810  in  FIG.  8 A ) is presented at  1012 . At  1014 , the end user has option to adjust the volume for the zone player with one of the volume control buttons. The volume control signals are sent from the controller  240  ( FIG.  2 C ) to the zone player  200  ( FIG.  2 A ). In one embodiment, the volume panel displays a moving volume meter showing an increasing or decreasing bar as the audio volume of the selected zone player is adjusted up or down. In another embodiment, the mute icon is shown instead of a volume meter, when the “mute” button is activated while the audio is on. 
     At  1016 , the process  1000  is waiting for a user&#39;s command. If a predetermined amount of time (e.g., 1 second) has lapsed, the process  1000  ends, which means the user is not going to change the volume. Otherwise, the process  1000  goes back to  1012  waiting for another action from the end user. 
     Referring back to  1010 , if process  1000  is for a group of zone players, then the process  1000  moves to the zone group branch at  1022 , in which a plurality of volume meters is presented. The plurality of volume meters includes one for each of the zone players in the zone group, plus one more for the entire zone group. In one embodiment as shown in  FIG.  8 B , a “Volume” panel  830  for a plurality of zone players in a zone group is presented. When the screen is too small to display all the zone players, a scroll indicator is displayed beside the list of the volume meters to indicate that there are hidden volume meters. At  1024 , the user selects one of the volume meters. At  1026 , the audio volume is adjusted with one of the volume control buttons. When the volume adjustment is made to one of the zone players, only the selected zone player is affected. The audio volume of the rest of the zone players remains unchanged. However, when the volume adjustment is made to the zone group, the entire group will respond to the volume adjustment in an identical scale. In one embodiment, the identical scale is based on percentage of the audio volume. In another embodiment, the identical scale is based on graphic representation of the volume meter. 
     In one embodiment, an end user increases the audio volume for the zone group by 5%. The volume for each of the zone players in the zone group will be increased by 5%, and the relative volume loudness difference among each of the zone players remains unchanged. In another embodiment, if a user had muted one of the zone players of the zone group, the volume of all other zone players would have been unchanged. 
     The group audio volume is calculated based on a predetermined formula. In one embodiment, the group audio volume is the averaged value of the audio volume of all the zone players within the zone group. In another embodiment, the median value may be chosen as the group audio volume. The user uses a scrolling device (e.g., scroll wheel  250  of  FIG.  2 B ) to select a zone player or the entire zone group and then adjust the volume with one of the volume control buttons. 
     At  1028 , the process  1000  is waiting for a user&#39;s command. If a predetermined amount of time has lapsed, the process  1000  ends, which means the user is not going to change the volume of the zone group. Otherwise, the process  1000  goes back to  1022  waiting for another action from the end user. 
       FIGS.  11 A- 11 D  are a series of screenshots according to one embodiment of the present invention on a computing device on a network. The computing device may correspond to the device  110  of  FIG.  1    and be configured to control operations of the zone players installed in a complex. With a larger screen of the computing device than that of a portable controller, the graphic user interface on the larger screen appears different from that, for example, shown in  FIGS.  7 A- 7 B , the underlying principle nevertheless does not depart from the above description for the portable controller. A user is able to control any one or all of the zone players from the computing device.  FIG.  11 A  shows all individual available zone players with the one in the Dining Room being selected to play a track entitled “A Charlie Brown Christmas”.  FIG.  11 B  shows a pop-up window listing remaining available players to be grouped with the one in the Dining Room. Depending on a desirable group, the user can select from the remaining available players to be grouped with the one in the Dining Room to form a zone group.  FIG.  11 C  shows, as a result, the players in the Dining Room and the living room are in one group and play synchronously a song entitled “Christmas time is here”.  FIG.  11 D  shows the control of some exemplary acoustic characteristics of the zone players in a group with the volume being controlled. 
     The present invention can be implemented in many ways, each of which may yield one or more of the following benefits, advantages or features. One of them is a mechanism provided to enable a user to remotely control audio characteristics of the zone players either as a group or as an individual player. Second, an interactive graphic user interface is provided to enable a user to manage, create, delete or modify zone groups. Another one of the benefits, advantages or features is to provide a user interface to facilitate a user to control audio characteristics of an individual zone player or a group of zone players. Other benefits, advantages or features can be appreciated by those skilled in the art given the detailed description herein. 
     The present invention has been described in sufficient detail with a certain degree of particularity. It is understood to those skilled in the art that the present disclosure of embodiments has been made by way of examples only and that numerous changes in the arrangement and combination of parts may be resorted without departing from the spirit and scope of the invention as claimed. While the embodiments discussed herein may appear to include some limitations as to the presentation of the information units, in terms of the format and arrangement, the invention has applicability well beyond such embodiment, which can be appreciated by those skilled in the art. Accordingly, the scope of the present invention is defined by the appended claims rather than the forgoing description of embodiments.