An embodiment of the invention relates to a wireless audio system that dynamically assigns a master responsibility amongst a network of loudspeaker cabinets in the wireless audio system, for thermal and power mitigation.
A wireless audio system is a system in which several wireless speakers receive audio signals (for rendering and playback) using radio frequency (“RF”) waves that are transmitted over the air by an RF transmitter unit, rather than over audio cables. Such systems are becoming more prevalent inside and outside users' homes, as these systems give users the flexibility to project sound from nearly any location, within transmission range of the RF transmitter unit. Furthermore, such a system is advantageous for conventional wired home theater systems, as users can position the wireless speakers without concerns about tripping over or hiding the audio cables that lead back to the home theater system's receiver.
An embodiment of the invention is a method for operating a wireless audio system that is distributed in that it includes several loudspeaker cabinets, all of which can communicate with each other wirelessly as part of a computer network, by dynamically re-assigning a network master responsibility from a first (e.g., “master”) loudspeaker cabinet to a second (e.g., “slave”) loudspeaker cabinet, when the first loudspeaker cabinet reaches a thermal threshold. The first loudspeaker cabinet has the network master responsibility of (1) obtaining an audio signal from an audio source and (2) wirelessly transmitting some of the audio signal to at least one other loudspeaker cabinet (here, the second loudspeaker cabinet) for playback by the second loudspeaker cabinet, while the first loudspeaker cabinet also plays back some of the audio signal. The method includes receiving temperature data (e.g., an internal temperature measurement) from the first loudspeaker cabinet. The method determines whether the thermal threshold of the first loudspeaker cabinet has been reached, based on the temperature data. In response to the thermal threshold being reached, the method gives up the network master responsibility from the first loudspeaker cabinet to the second loudspeaker cabinet, where doing so is expected to result in a reduction in temperature in the first loudspeaker cabinet.
In one embodiment, a master rank variable is used to determine whether the second loudspeaker cabinet can be given the network master responsibilities. For instance, assume that the first loudspeaker cabinet has a “high enough” master rank that is associated with performing the network master responsibility. Based on the temperature data being used to determine whether the thermal threshold has been reached, the master rank variable is set to a new master rank, e.g., lowers its master rank in response to its temperature rising above the threshold. If the second loudspeaker cabinet now has a higher master rank than the new master rank of the first loudspeaker cabinet (based on a comparison of the new master rank and the master rank of the second loudspeaker cabinet), then the first loudspeaker cabinet gives up the network master responsibilities to the second loudspeaker cabinet. As the first loudspeaker cabinet no longer has the network master responsibilities, it ceases to obtain and wirelessly transmit the audio signal to the second loudspeaker cabinet. Instead, the second loudspeaker cabinet, acting now as master, performs the duties (e.g., obtaining the audio signal from the audio source and wirelessly transmitting the audio signal to other cabinets, including the first loudspeaker cabinet) that were previously assigned to the first loudspeaker cabinet, such that the first loudspeaker cabinet now receives, from the second loudspeaker cabinet, some of the audio signal for playback at the first loudspeaker cabinet. In order to know when the second loudspeaker cabinet has a higher master rank than the first loudspeaker cabinet, messages (e.g., data packets) are repeatedly transmitted between the cabinets (e.g., the first and second loudspeaker cabinets exchange messages). These messages may include not only a current master rank of the cabinet transmitting the message, but also additional information (e.g., temperature data). By knowing the second loudspeaker cabinet's master rank, through the use of these messages, the cabinets know implicitly who should be master, without requiring any explicit communication in order to make such a determination (e.g., each cabinet having to request another cabinet's master rank).
In another embodiment, in conjunction with, or instead of, giving up the network master responsibility in response to the thermal threshold being reached, the first loudspeaker cabinet gives up the network master responsibility in response to and when an energy or power consumption threshold (e.g., power budget) has been met by the first loudspeaker cabinet. The first loudspeaker cabinet receives power consumption data (e.g., measured or sensed current power consumption) of the first loudspeaker cabinet. Once energy or power consumption of the first loudspeaker cabinet rises to the threshold (e.g., because of continuously (1) obtaining and wirelessly transmitting audio content and (2) playing back of the audio signal), the network master responsibility can be given up to reduce its energy or power consumption. For example, similar to the thermal threshold, when the energy or power consumption threshold has been met, due to increasing power consumption by the first loudspeaker cabinet, the network master responsibility may be given up due to a reduction of the master rank. Otherwise, the first loudspeaker cabinet will need to decrease its energy or power consumption through other means (e.g., by reducing audio quality, which may cause an undesirable listening experience for a user) to maintain its power consumption below the threshold. In one embodiment, the energy or power consumption threshold is variable and varies based on the temperature data from the first loudspeaker cabinet, such that when temperature data is indicative of a high (e.g., internal) temperature reading of the first loudspeaker cabinet, the energy or power consumption threshold will be reduced. With a reduction of the energy or power consumption threshold, the first loudspeaker cabinet may relinquish the network master responsibility sooner, in order to ensure that the cabinet's energy or power consumption remains below the threshold and that the user's listening experience of audio output by the first loudspeaker cabinet is less likely to be adversely impacted.
In one embodiment, rather than relinquishing the master responsibility entirely, the master loudspeaker cabinet may share the master responsibility with at least one slave loudspeaker cabinet. By sharing the master responsibility, the slave loudspeaker cabinet is tasked to distribute at least some of the audio signal to other slave loudspeaker cabinets, thereby changing the topology of the computer network by routing the audio signal through the slave loudspeaker cabinet. The decision to whom the master responsibility is shared may be based on at least one of temperature, power consumption, and master rank. In another embodiment, the master responsibility is shared with a slave loudspeaker cabinet based on the cabinet's location and/or current tasks being performed at the cabinet (e.g., whether audio is being played through a transducer of the slave loudspeaker cabinet).
The above summary does not include an exhaustive list of all aspects of the present invention. It is contemplated that the invention includes all systems and methods that can be practiced from all suitable combinations of the various aspects summarized above, as well as those disclosed in the Detailed Description below and particularly pointed out in the claims filed with the application. Such combinations have particular advantages not specifically recited in the above summary.
The embodiments of the invention are illustrated by way of example and not by way of limitation in the figures of the accompanying drawings in which like references indicate similar elements. It should be noted that references to “an” or “one” embodiment of the invention in this disclosure are not necessarily to the same embodiment, and they mean at least one. Also, in the interest of conciseness and reducing the total number of figures, a given figure may be used to illustrate the features of more than one embodiment of the invention, and not all elements in the figure may be required for a given embodiment.
Several embodiments of the invention with reference to the appended drawings are now explained. Whenever the shapes, relative positions and other aspects of the parts described in the embodiments are not explicitly defined, the scope of the invention is not limited only to the parts shown, which are meant merely for the purpose of illustration. Also, while numerous details are set forth, it is understood that some embodiments of the invention may be practiced without these details. In other instances, well-known circuits, structures, and techniques have not been shown in detail so as not to obscure the understanding of this description.
The distributed wireless audio system 125 includes a wireless audio source 120 and several wireless loudspeaker cabinets 130a-130d. The wireless loudspeaker cabinets 130a-130d are in a peer-to-peer (“P2P”) distributed wireless computer network, using e.g., BLUETOOTH protocol or a wireless local area network. For instance, each of the wireless loudspeaker cabinets 130a-130d communicate (e.g., using IEEE 802.11x standards) with each of the other wireless loudspeaker cabinets by transmitting and receiving data packets (e.g., Internet Protocol (IP) packets). In order for the wireless loudspeaker cabinets to communicate efficiently, they communicate with each other over the P2P distributed wireless computer network in a “master-slave” configuration. In particular, loudspeaker cabinet 130a is designated as the “master” and loudspeaker cabinets 130b-130d are designated as the “slaves”. As will be described later, the role of master is accompanied with specific operations that are performed by the master cabinet (e.g., distributing an audio signal to slave cabinets). Each cabinet, however, regardless of designation, performs some similar operations. For instance, each cabinet will render and playback audio signals; rendering may include digital processing of some or all of the input audio signal, to for example perform spectral shaping or dynamic range control upon some of the audio signal, create a downmix from multiple channels in the audio signal, performing beamformer processing to produce speaker driver signals for a loudspeaker transducer array (in the loudspeaker cabinet), or other digital processing to produce speaker driver signals that may better “match” the acoustic environment of the loudspeaker cabinet or its transducer capabilities; while playback refers to conversion of the resulting digital speaker drivers signals into sound by acoustic transducers that may also be integrated within the cabinet.
Acting as the master, however, loudspeaker cabinet 130a performs additional operations. Cabinet 130a wirelessly communicates with the wireless audio source 120, over the wireless computer network, in order to (1) retrieve an audio signal, (which may include multiple audio channels or audio objects of a piece of sound program content) and (2) distribute at least some of the audio signal to the other loudspeaker cabinets for playback. The audio source 120 may provide a digital audio signal or an analog audio signal to the loudspeaker cabinet 130a. Once received, the loudspeaker cabinet 130a may perform various operations in order to decode the signal. This is further described in
The wireless audio source 120 may be any device that is capable of streaming an audio signal to the loudspeaker cabinet 130a, while the audio signal is being played back by at least the loudspeaker cabinet 130a. For example, the wireless audio source 120 may be a desktop computer, a laptop, or a mobile device (e.g., a smartphone). To stream the audio signal, the wireless audio source 120 may retrieve the audio signal locally (e.g., from an internal or external hard drive; or from an audio playback device, such as a cassette tape player) or remotely (e.g., over the Internet). If the audio signal is retrieved remotely, the wireless audio source 120 may retrieve the audio signal through an access point (e.g., wireless router) or over the air (e.g., a cellular network). In one embodiment, rather than being wireless, the audio source may be connected to at least the loudspeaker cabinet 130a through a wired connection (e.g., a Universal Serial Bus connection).
In one embodiment, the master loudspeaker cabinet streams an audio signal from the audio source, upon receiving a request from a listener 140 to playback the audio content (e.g., a musical work or movie soundtrack). Once the audio signal is retrieved, the master loudspeaker cabinet 130a distributes at least some of the audio signal to the other loudspeaker cabinets 130b-130d in order for each of the loudspeaker cabinets (including the master) to render and playback the audio signal. In addition, to distributing the audio signal, the master may also designate loudspeaker cabinets to playback certain audio channels contained within the audio signal (e.g., loudspeaker 130d may be directed to play a right audio channel of a piece of audio content, while loudspeaker cabinet 130a plays a left audio channel of the same piece of audio content) or perform certain signal processing operations (e.g., adjusting spectral shape of an audio channel within the audio signal). Along with performing tasks similar to the slave loudspeaker cabinets (e.g., rendering and playing back the audio signal), the additional tasks performed by the master loudspeaker cabinet previously described, may result in an increase in its internal temperature. In order to ensure that the loudspeaker cabinet does not overheat, in one embodiment of the invention, the distributed wireless audio system 125 delegates the network master responsibility between other loudspeaker cabinets within the system. Otherwise, if the master loudspeaker cabinet did not relinquish its network master responsibility, the increased temperature may have adverse effects on the overall performance of the cabinet (e.g., a reduction of audio quality, automatic shutoff, or damage to internal components). In one embodiment, the increase in internal temperature is a result of normal audio playback operations performed by the cabinet.
Stage 105 illustrates the distributed wireless audio system 125 operating with loudspeaker cabinet 130a as master and the other loudspeaker cabinets 130b-130d as slaves (as previously described). Loudspeaker cabinet 130a may be streaming an audio signal from the audio source 120 to loudspeakers 130b-130d for playback. Acting as master, loudspeaker 130a communicates with the audio source 120 to (1) retrieve the audio signal (e.g., either locally or remotely stored, as previously described) and (2) distribute the audio signal to the other loudspeaker cabinets. In this example, the listener 140 is listening to an audio signal being streamed and played through loudspeakers 130a and 130d in room 102. As previously described, the audio signal may include at least two audio channels, a left channel and a right channel. In this case, as loudspeaker cabinet 130a distributes at least some of the audio signal (e.g., the right channel) to loudspeaker 130d, both loudspeaker cabinets playback their respective audio channels. The other loudspeaker cabinets 130b-130c may be playing back the same audio signal in rooms 103-104, respectively. For example, since room 103 includes a single loudspeaker cabinet 130b, the audio signal (which may include the right channel and left channel) may be downmixed, in order to playback a mono version of the audio signal. In other embodiments, the other loudspeaker cabinets 130b-130c may be playing different pieces of audio content contained within the audio signal with respect to 130a (and with respect to each other) or may not be playing anything at all.
As illustrated in stage 105, each loudspeaker cabinet 130a-130d includes internal thermometer 135a-135d, respectively, represented as a traditional hermetically sealed glass tube with mercury. Internal temperatures 135a-135b of loudspeaker cabinets 130a-130b are low or below a thermal threshold, which is illustrated by the mercury being contained within the bulb of the glass tube. The internal temperatures 135c-135d of loudspeakers 130c-130d are slightly higher than internal temperatures 135a-135b (illustrated by the mercury being contained within the bottom of the glass tube). These internal thermometers may indicate the overall ambient internal temperature of the loudspeaker cabinets. In other embodiments, the thermometers indicate a particular component temperature (e.g., a central processing unit (“CPU”)) of the loudspeaker cabinet.
Stage 110 illustrates loudspeaker 130a relinquishing the network master responsibility to loudspeaker cabinet 130b, thereby taking on a slave role. The transition between stages 105 and 110 is a result of the internal temperature of the loudspeaker cabinet 130a meeting or exceeding the thermal threshold, as illustrated by the mercury of the internal thermometer 135a reaching almost the top of the glass tube. The internal temperature measured by the internal thermometer 135a may have increased for various reasons. For example, the loudspeaker cabinet performing the additional tasks previously described (e.g., fetching and distributing the audio signal to other loudspeaker cabinets) is causing the increase in temperature. With conducting these tasks, at least one component of the loudspeaker cabinet 130a (e.g., the CPU) may have increased its performance, thereby increasing the internal temperature of the cabinet.
However, the internal temperature of the loudspeaker cabinet may rise for other reasons. For example, the increase in temperature may be due to performing normal audio playback operations after a period of time (e.g., heat caused by the cabinet's transducer while it produces sound). On the other hand, the loudspeaker cabinet (in response to a request from the listener 140) may drive its transducer to produce more low frequency sound (e.g., bass) or to increase the overall volume. In either case, a driver of the transducer will work harder to produce the sound, thereby increasing the temperature of the loudspeaker cabinet in which it resides. Another reason may be that the external temperature (e.g., the temperature of the room in which the loudspeaker cabinet resides) may increase. For instance, the loudspeaker cabinet may be under a window in which at certain times of the day the sun is directly shining on the loudspeaker cabinet. And yet another reason may be that cabinet has been placed next to a heating element (e.g., oven, stove, heat vent). Although the overall performance of the loudspeaker cabinet may be sustainable, its internal temperature may increase due to this external heat. Regardless of the reason, once the internal temperature reaches a thermal threshold, operations performed by the loudspeaker cabinet may be delegated, otherwise performance (e.g., audio quality) may need to be degraded in order to relieve operational stress on the cabinet.
If the cabinet 130a does not relinquish the network master responsibility, there may be adverse consequences. For instance, as the internal temperature increases, the cabinet 130a may reduce the audio quality in order to avoid any component damage that may be caused by excessive heat. To reduce audio quality, the cabinet 130a may reduce the amount of low frequency components within the audio or may lower the entire volume of the sound produced by the cabinet. Lowering the low frequency components or the volume will lessen the work being performed by a driver of the transducer of the cabinet 130a. By managing the driver, which exerts heat during audio playback, the cabinet 130a may reduce the internal temperature. However, reducing audio quality to decrease internal temperature is not preferable, as a listener's audio experience will suffer.
Turning back to stage 110, as the internal temperature of the internal thermometer 135a meets or exceeds the thermal threshold, the network master responsibility has been shifted from loudspeaker cabinet 130a to 130b, which itself has a lower internal temperature than the other two loudspeaker cabinets 130c-130d. By doing this, cabinet 130a ceases to obtain the audio signal from the audio source 120 and wirelessly transmit the audio signal to the other cabinets 130b-130d. The distributed wireless audio system 125 decides who should take over the network master responsibility based on a master rank of each of the loudspeaker cabinets. The master rank (or desire to be master) may be based on several criteria. For instance, the rank may be based on at least one of a current internal temperature of the cabinet, an available power budget of the cabinet, and tasks currently being performed by the cabinet. Once a master rank is computed, the cabinet with the highest master rank may ultimately take over the network master responsibility, in one embodiment. More about the process of how a new loudspeaker cabinet is chosen to take over the network master responsibility is described in
The controller 210 may be a special purpose processor such as an application specific integrated circuit (ASIC), a general purpose microprocessor, a field-programmable gate array (FPGA), a digital signal controller, or a set of hardware logic structures (e.g., filters, arithmetic logic units, and dedicated state machines). While the cabinet 130a acts as master, controller 210 is to perform several management functions (previously described) that include at least fetching and distributing an audio signal of a piece of sound program content to other cabinets. To do so, the controller 210 interacts with the network interface 205 to send and receive data over the P2P distributed wireless network, using antenna 245. For instance, if the controller 210 wants to fetch an audio signal of a particular piece of audio program content for streaming to other loudspeaker cabinets, the controller 210 sends a request to the audio source 120 (as shown in
The audio signal of the piece of sound program content received by the controller 210 may be digital data that requires signal processing. In particular, the digital data received by the controller 210 may be encoded using any suitable audio codec, e.g., Advanced Audio Coding (AAC), MPEG Audio Layer II, MPEG Audio Layer III, and Free Lossless Audio Codec (FLAC). In order to process the digital data, the controller 210 may include a decoder that is for producing a digital audio input to the signal processor 225. The audio signal in this case may be a single input audio channel. Alternatively, however, there may be more than one input audio channel, such as a two-channel input, namely left and right channels of a stereophonic recording of a music work, or there may be more than two input audio channels, such as for example the entire audio soundtrack in 5.1-surround format of a motion picture film or movie. In the case in which the audio signal may include multiple channels, the controller 210 may also include an encoder for re-encoding the processed digital audio for subsequent transmission to other loudspeaker cabinets to decode and playback other audio channels (or the same audio channel as this cabinet). In other embodiments, the audio signal of the piece of sound program content is distributed to other loudspeaker cabinets within the P2P distributed wireless network without any processing. In other words, as soon as the audio signal is received, it is immediately distributed to the other cabinets.
In one embodiment, the controller 210 is to receive digital information (e.g., temperature data) from the thermal sensor 215 that indicates a current internal temperature of the loudspeaker cabinet 130a. In one embodiment, the temperature data represents the temperature in any standard temperature unit (e.g., degrees of Fahrenheit or Celsius). As previously described, the thermal sensor 215, in some embodiments, may measure temperature of a component (e.g., the network interface 205, the controller 210, the signal processor 225, or PA 235) or a combination of components within the loudspeaker cabinet 130a. In one embodiment, the thermal sensor 215 measures a temperature of the speaker driver (e.g., voice coil) of the transducer 240. The thermal sensor 215, in other embodiments, measures the ambient internal temperature of the loudspeaker cabinet 130a, as opposed to the temperature of a particular component. A virtual temperature of a location in the cabinet at which there is no temperature sensor may also be computed. The controller 210 may use all of this digital temperature information for determining a master rank that is used to decide whether the cabinet should maintain the network master responsibility or relinquish it to another cabinet. More about the master rank and determining whether the network master responsibility should be maintained is further described in
The signal processor 225 is to receive the digital audio signal from the controller 210 for audio signal processing. Like the controller 210, the signal processor 225 may be a separate special purpose processor. In one embodiment, rather than being separate, the signal processor 225 is a part of the same microelectronic processor as controller 210 (just running a different software program). Upon receiving digital audio, the signal processor 225 may adjust the digital audio based on several factors. For instance, the digital audio may be modified according to user preferences (e.g., a particular spectral shape of the audio or a particular volume of the audio) in order for this particular cabinet to output modified audio. In one embodiment, the signal processor 225 may adjust the digital audio in order to alleviate other cabinets from performing this task. For instance, the signal processor 225 may adjust the spectral shape of a portion of the digital audio (e.g., based on user preferences) where the network interface 205 is to then distribute this adjusted portion of the digital audio to the other cabinets. Performing audio signal processing on behalf of other cabinets reduces computational operations required to process the digital audio in the other cabinets, thereby allowing these other cabinets to use their available power consumption budget for other operations. Reducing the audio signal processing operations in the other cabinets helps lower their respective internal temperatures.
The DAC is to receive a digital audio signal that is produced by the signal processor 225 and is to convert it into an analog input. The PA 235 is to receive the analog input from the DAC 230 and is to provide a drive signal to the transducer 240. Although the DAC 230 and the PA 235 are shown as separate blocks, in one embodiment the electronic circuit components for these may be combined, not just for the loudspeaker driver but also for multiple loudspeaker drivers (such as part of a loudspeaker array), in order to provide for a more efficient digital to analog conversion and amplification operation of the individual driver signals, e.g., using for each class D amplifier technologies.
The transducer 240 is to receive the driver signals from the PA 235 and is to use the driver signals to produce sound. The transducer 240 may be an electrodynamic driver that may be specifically designed for sound output at a particular frequency bands, such as a subwoofer, tweeter, or midrange driver, for example. In one embodiment, as previously described, the loudspeaker cabinet 130a may have integrated therein several loudspeaker transducers, e.g., forming a loudspeaker array. Each of the loudspeaker transducers in the array may be arranged side by side in a single row in the style of a sound bar, for example.
The process 300 chooses (at block 315) one of the loudspeaker cabinets within the network as the master loudspeaker cabinet that will fetch and distribute an audio signal to the other loudspeaker cabinets. As the network has recently been initialized, the loudspeaker cabinets may have been dormant (e.g., in a power save mode). As loudspeaker cabinets in power save mode have not been performing rigorous operations, they do not have high internal temperatures. Therefore, as most cabinets will have high master ranks (or a high desire to be master), in response to having low internal temperatures, the master may be chosen at random, as each of the cabinets are potential candidates. However, in one embodiment, the master may be chosen based on the master rank; and if there are ties in the master rank, the system may use various means as tie breakers. For instance, if several loudspeaker cabinets have the same master rank, the loudspeaker cabinet with the highest (or lowest) MAC address (or last four bytes of the MAC address) may be chosen.
The selection of the master loudspeaker cabinet may be performed implicitly between the loudspeaker cabinets, rather than explicitly. For instance, as the loudspeaker cabinets are communicating, they are exchanging data (e.g., “keep-alive”) packets in order to maintain the network. Within these keep-alive packets includes information, such as a current master rank (or desire to be master) of the loudspeaker cabinet emitting the packet. More about the keep-alive packets are discussed in
The master rank (or desire to be master) 415, as previously described, indicates how likely a particular cabinet will take on the role as master, with respect to the other cabinets within the network. The master rank 415 may be a number (e.g., between 1-10; “1” being least likely or least desire to be master and “10” being most likely or most desire to be master), a ratio, or any type of indication that the cabinet may (or may not) want to be master. The master rank 415 may be computed based on internal temperature, power consumption data of the cabinet, or both. For example, the master rank 415 may be proportional to the difference between one of (1) a current internal temperature and a threshold temperature and (2) current energy of true power or power consumption and a power budget (e.g., an energy or power consumption threshold). In one embodiment, the master rank may be predefined based on the current temperature and/or the current power usage. More about defining the master rank is discussed in
As the parameters described in the data structure 400 of
In one embodiment, keep-alive data packets are distributed repeatedly upon initialization of the P2P distributed wireless network. For instance, in order to ensure that the network is maintained, each cabinet sends the keep-alive data packets in regular intervals (e.g., every second). In another embodiment, these packets are transmitted after the establishment of the network, regardless of whether an audio signal is being streamed.
As shown in
The process 500 determines (at block 510) whether to adjust the master rank and by how much. The process 500 makes this determination based on either the current internal temperature or current power consumption or both. For instance, if the current internal temperature exceeds a thermal threshold, the master rank may be reduced in order to indicate to other cabinets that this particular cabinet is least likely to take on (or continue to take on) the master role. The thermal threshold, in one embodiment, is a temperature limit of the same element in which the thermal sensor 215 took the temperature measurement. For example, if the thermal sensor 215 measured the ambient internal temperature of the loudspeaker cabinet 130a, then the thermal threshold would be a temperature limit of the ambient internal temperature. In one embodiment, if the measured ambient internal temperature meets (or exceeds) the thermal threshold, the cabinet may be deemed too hot to continue as the master, and therefore, may reduce its master rank in order to relinquish its role as master to another cooler cabinet. On the other hand, if the current power consumption meets a maximum amount of power budget that the device may exert (e.g., based on a power supply of the cabinet), then the master rank may also be reduced. In one embodiment, the current power consumption is related to the internal temperature. For example, as internal temperature increases (e.g., based on component performance or external heating), the power budget of the device may decrease to reduce the possibility of over heating due to additional component performance. An example of this is further discussed in
Otherwise, once the determination has been made that the master rank must be adjusted (e.g., based on exceeding the thermal threshold or the power consumption meeting the power budget, or both), the process 500 determines how much the master rank must be adjusted. This may be performed in many ways. For instance, the master rank may be adjusted by a predefined amount, or in proportion to the difference between at least one of (1) a current internal temperature and a threshold temperature and (2) a current power consumption and a power budget. In one embodiment, the reduction of the master rank may be exponential. For example, once the master determines the internal temperature exceeds (or is about to exceed) the thermal threshold, it may reduce the master from 10 (being more likely to be master) to 9. As time goes on, and the internal temperature does not decrease (or rather continues to increase), the master rank may then be adjusted from 9 to 6. In another embodiment, the master rank may increase due to changes to the internal temperature, power consumption, or both, rather than decrease. For instance, as the current internal temperature decreases, getting further away from the thermal threshold, the master rank will increase (e.g., from 6 to 7).
The process 500 determines (at block 515) whether there is another cabinet with a higher master rank than the current cabinet. This determination may be based on a numerical comparison between other master ranks that the current cabinet receives with the keep-alive packets described in
Some embodiments perform variations of the process 500. For example, the specific operations of the process 500 may not be performed in the exact order shown and described. The specific operations may not be performed in one continuous series of operations, and different specific operations may be performed in different embodiments. For instance, in one embodiment, rather than the process 500 proceeding to block 505 once a determination has been made that the master rank does not need to be adjusted (at block 510), the process 500 determines whether there is another cabinet with a higher master rank (at block 515). This may occur because although the master rank may not change in a current cabinet, a different cabinet may have adjusted its master rank (e.g., due to experiencing better conditions).
The master loudspeaker 130a includes the internal temperature reading 135a, a power budget 630a, and a power usage 635a. Similar to the master loudspeaker, the slave loudspeaker 130b includes the internal temperature reading 135b, a power budget 630b, and a power usage 635b. The internal temperature readings 135, as described in
Stage 605 illustrates the internal temperature and power consumption of loudspeaker cabinets 130a-130b while an audio signal is being streamed. In this case, master cabinet 130a is fetching and distributing the audio signal to slave cabinet 130b, as described in
Stage 610 illustrates that the internal temperature 135a of the master 130a has increased, and in response, the budget 630a has been decreased. Examples of what may cause the increase in internal temperature include (1) increased performance of the driver of the transducer within the cabinet (e.g., caused by volume being increased), (2) additional signal processing tasks being performed by the cabinet, (3) the additional network master responsibility, (4) increased external temperature, and (5) an accumulation of heat caused by operations currently being performed. In response to the increased internal temperature (e.g., the internal temperature meeting or exceeding the thermal threshold), the power budget 630a of the master 130a has been reduced from 10 Watts to 2 Watts. By varying (e.g., decreasing or increasing) the budget, the cabinet is managing the internal temperature. For instance, as any additional potential tasks that the master 130a takes on will require components within the master to use more power, these components will emit additional heat. Therefore, the cabinet 130a reduces the budget 630a in response to the increased internal temperature 135a to limit its internal components from (i) performing these additional tasks and/or (ii) increasing current performance. Otherwise, if the budget is not reduced, in one embodiment, there may be adverse effects on the performance of the cabinet or even damage. The amount in which the budget 630a is reduced may be computed in various ways. For instance, the reduced amount may be (1) a predefined amount or (2) proportional to a difference between the increased temperature and the thermal threshold, or both. In this case, the power usage 635a is now the same as the power budget 630a, 2 Watts. Unlike the master 130a that is experiencing an increase in internal temperature, the internal temperature 135b of the slave 130b remains relatively the same.
As a result of the reduced budget 630a meeting the power usage 635a, of 2 Watts, in the stage 615, cabinet 130a has relinquished the master role to cabinet 130b. Now that cabinet 130a is no longer performing the network master responsibility, the power usage 635a is reduced to 1 Watt. Although the internal temperature 135a is still high, the reduction in computations being performed by cabinet 130a may reduce this temperature over time. As cabinet 130b is now the master, the power usage 635b has increased from 1 Watt to 2 Watts.
In addition to the master role moving between cabinets based on the internal temperature and power consumption, as previously described, the master role may also be given (or shared) between one or several cabinets based on additional factors (e.g., secondary considerations). For instance, rather than a master role moving from one cabinet to another, the master role may be shared between a master cabinet and at least one slave cabinet in order to change the topology of the P2P distributed wireless network, such that the slave cabinet distributes at least some of the audio signal to other cabinets in order to reduce stress on the master cabinet. In another embodiment, the master role may be rotated (e.g., switched) between two or more cabinets according to a predetermined schedule (e.g., being maintained by a particular cabinet for a certain amount of time). Or, a cabinet may maintain the master role, even though doing so may degrade audio quality. To make these decisions, cabinets may consider, for example, at least one of (1) the audio signal being streamed, (2) whether other cabinets have the ability to share the role (e.g., can take on a portion of the role without exceeding a power budget or a thermal threshold, as previously described), and (3) the fact that no other cabinet can take on the responsibility without creating adverse consequences (e.g., reduction in audio quality).
Stage 810 illustrates that cabinet 130a has shared some (e.g., a portion) of the network master responsibility with cabinet 130d, allowing cabinet 130a to still distribute at least some of the audio signal to slave cabinets 130b and 130d (e.g., a first subset of cabinets) and allowing cabinet 130d to distribute at least some of the audio signal received from cabinet 130a to slave cabinet 130c (e.g., a second subset of cabinets). Cabinet 130d will perform this responsibility in addition to any other tasks that it has already performed, or going to perform (e.g., playing back audio through its transducer). By allowing cabinet 130d to take on some of the network master responsibility, this will reduce power usage (and thereby reduce internal temperature) at cabinet 130a. For example, looking at the distribution of cabinets 130a-130d in
Referring back to
When the process 700 determines that the cabinet is in a group, however, the process 700 (at block 730) determines whether there is another single cabinet within the P2P distributed wireless network. When there is a single cabinet, the process 700 chooses (at block 735) the single cabinet to take on the master role and decrease its output power (as described at block 745) if necessary to perform the master role. In one embodiment, if there are several single cabinets, this determination may be based on any of the previously mentioned criteria. For instance, the cabinet with the highest master rank or most available power may take on this role. It is preferable for a single cabinet to decrease its output power, rather than a cabinet within a group. For example, looking at
When the process 700 determines however that there isn't another single cabinet, the process 700 rotates (at block 740) the network master responsibility between two or more cabinets within the group according to a predetermined schedule. Rather than maintaining a single cabinet as master, in one embodiment, the role as master may switch between at least two cabinets to reduce the total power required for performing master responsibilities. To illustrate, looking at
Some embodiments perform variations of the process 700 of
Other embodiments of the invention perform other operations to manage the internal temperature of cabinets either in lieu of or in addition to distributing the master role described in processes 300 and 700 of
As previously explained, an embodiment of the invention may be a non-transitory machine-readable medium (such as microelectronic memory) having stored thereon instructions, which program one or more data processing components (generically referred to here as a “processor”) to perform the digital signal processing operations previously described including receiving temperature data, determining whether a thermal threshold has been met, giving up network master responsibility, spectral shaping, filtering, addition, subtraction, inversion, comparisons, and decision making. In other embodiments, some of these operations might be performed by specific hardware components that contain hardwired logic (e.g., dedicated digital filter blocks). Those operations might alternatively be performed by any combination of programmed data processing components and fixed hardwired circuit components.
While certain embodiments have been described and shown in the accompanying drawings, it is to be understood that such embodiments are merely illustrative of and not restrictive on the broad invention, and that the invention is not limited to the specific constructions and arrangements shown and described, since various other modifications may occur to those of ordinary skill in the art. The description is thus to be regarded as illustrative instead of limiting.
This is a continuation application which claims priority to U.S. patent application Ser. No. 15/612,904 filed on Jun. 2, 2017, which is incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
Parent | 15612904 | Jun 2017 | US |
Child | 16033020 | US |