Abstract:
A monitoring and notification system detects and informs vehicle occupants of sirens. The system may adjust radio, phone, or other device settings in the vehicle in conjunction with the notification. The notification may take an audible or visual form, and the monitoring system may perform its analysis across multiple types of sirens. In addition, the system may adapt its processing based on location to take into account locally expected siren formats.

Description:
BACKGROUND OF THE INVENTION 
     1. Technical Field 
     This disclosure relates to signal processing systems, and in particular, to a system that detects a siren and provides a siren notification. 
     2. Related Art 
     Rapid developments in modern technology have led to the widespread adoption of car phones, hi-fidelity car stereo systems, and vehicle multi-media systems. These systems greatly increase passenger and driver comfort, convenience, and enjoyment of the vehicle. At the same time, the driver and passengers must take care to remain alert to surrounding circumstances. For example, when the stereo system is playing at a high volume, it may be difficult to hear the warning siren of an approaching emergency vehicle. In general, increased cognitive loading from any source such as excessive background noise, listening to loud music, or engaging in conversation, may result in greater response times to changes in the driving environment. 
     Complicating the issue is that there are many different types of warning sirens in use in many different locations around the world. In other words, there is no widely accepted and completely consistent implementation of warning siren content. Accordingly, even if a vehicle occupant was fully aware of all external environmental sounds, the lack of signal standardization would frustrate recognition of any given sound as a warning siren. 
     Therefore, a need exists for a siren detection system that addresses the concerns noted above and other previously encountered. 
     SUMMARY 
     A siren detection and notification system provides notification of nearby sirens. When used in a vehicle such as an automobile, the siren detection and notification system may adjust radio, phone, or other device settings in the vehicle. For example, the system may reduce the radio volume. In conjunction with the adjustment, the system may provide a notification of siren detection to the passengers. The notification may take an audible, visual, or other form, and the system may perform its analysis across multiple types of sirens. The system may engage in a dynamic analysis based on location. 
     In one implementation, a siren detection and notification system includes a vehicle bus interface, a memory, and a processor. The memory stores a siren model, a vehicle environment sound signal, and a siren processing program. The siren processing program analyzes the vehicle environment sound signal with respect to the siren model to determine whether a siren sound is detected in the vehicle environment sound signal. The siren processing program also issues a vehicle system control command (e.g., a radio volume attenuation command) over the vehicle bus interface when the siren sound is detected in the vehicle environment sound signal. The processor executes the siren processing program. 
     In another implementation, the memory stores multiple geographical location siren models. Each siren model may characterize siren signal content applicable in any particular geographic region (e.g., France and Spain, or Illinois and Iowa). The siren processing program analyzes a vehicle location to select between the geographical location siren models, thereby obtaining a selected geographical location siren model. The siren processing program also analyzes the vehicle environment sound signal with respect to the selected geographical location siren model to detect whether a siren sound is present in the vehicle environment sound signal. When the siren sound is detected, the siren processing program issues a siren detection notification (e.g., makes an audible announcement or illuminates a warning indicator). 
     The system may also include echo suppression logic that obtains a source reference signal prior to audible reproduction and that suppress the source reference signal in a vehicle environment sound signal to obtain a siren analysis signal. A signal sensor such as a microphone may obtain the vehicle environment sound signal. The siren processing system may then analyze the siren analysis signal with respect to the siren model to determine whether a siren sound is detected in the siren analysis signal. 
     Other systems, methods, features and advantages will be, or will become, apparent to one with skill in the art upon examination of the following figures and detailed description. All such additional systems, methods, features and advantages are included within this description, are within the scope of the claimed subject matter, and are protected by the following claims. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The systems may be better understood with reference to the following drawings and description. The elements in the figures are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the capability analysis techniques. In the figures, like-referenced numerals designate corresponding parts throughout the different views. 
         FIG. 1  shows a siren detection and notification system. 
         FIG. 2  shows a siren model table. 
         FIG. 3  shows processing flow for generating siren models. 
         FIG. 4  shows a siren detection and notification system. 
         FIG. 5  shows processing flow for a dynamic siren detection and notification system. 
         FIG. 6  shows a siren detection and notification system. 
         FIG. 7  shows processing flow for a dynamic siren detection and notification system. 
         FIG. 8  shows a map and a route through different geographic regions. 
         FIG. 9  shows a siren detection and notification system. 
         FIG. 10  shows processing flow for a dynamic siren detection and notification system. 
     
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
       FIG. 1  shows a dynamic siren detection and notification system  100 . As an overview, the system  100  includes input sources  102  that provide data to the processing logic  104 . The input sources  102  may include a microphone, microphone array, or other vehicle environment sensor; a satellite positioning system, dead-reckoning system, or other vehicle location system; or other input sources. The processing logic  104  analyzes the data obtained from the input sources  102  to detect and notify vehicle occupants of sirens. 
     To that end, the processing logic  104  accesses the siren models  106 . The siren models  106  include information that characterizes one or more sirens, such as police sirens, fire department sirens, ambulance sirens, public warning or emergency sirens, or any other type of warning signal. Examples of characteristics that the siren models may store or represent include frequency content and changes in frequency content (e.g., stored in a spectrogram template or other representation); change, rate of change, or duration of frequency or time characteristics of a siren; amplitude, relative amplitude between portions of the siren in time or frequency; or other characteristics. The siren models  106  may span any number of different geographical areas. Each siren model may include geographical identifier that specifies for which geographical region or regions any given siren model is applicable. The geographical identifier may be satellite positioning system coordinates; latitude or longitude coordinates; city, state, country, region, county, area, roadway, facility (e.g., industrial, nuclear, or petrochemical plant) or other geographical area identifier; or any other type of coordinates or range of coordinates. 
     When the processing logic  104  recognizes a particular siren, the processing logic  104  takes a preconfigured action. As one example, the processing logic  104  may issue a siren detection notification using the notification logic  108 . The notification logic  108  may be an indicator light, tone or alarm, audible announcement, or another type of notification. 
     Alternatively or additionally, the processing logic  104  may take action through the control interface  110 . For example, the control interface  110  may be a vehicle bus interface, or other direct or indirect connection to other processing modules in the vehicle. In the case of a vehicle bus interface, the processing logic  104  may issue vehicle system control commands through the vehicle bus interface to any processing module also connected to the bus interface. In one implementation, the processing logic  104  communicates a volume control command to an audio electronics module. The volume control command may direct the audio electronics module to reduce the audio output volume so that the detected siren may more easily be heard by vehicle passengers. The processing logic  104  may also apply command decision filters to determine whether or not to send any particular vehicle control command. One example of a command decision filter is to suppress volume control commands when a hands-free phone call is in progress. Another example of a command decision filter is to suppress volume control commands when radio, CD, DVD, or other entertainment system volume is already below a loudness threshold. 
       FIG. 2  shows a siren model table  200 . The siren model table  200  gives examples of sirens that are applicable for the United States. The siren model table  200  includes the following sirens, their content, and their durations: the Alert siren  202 , Attack siren  204 , Hi/Lo siren  206 , Air-Horn siren  208 , and Fire siren  210 . The siren model table  200  also includes the following additional sirens: the Growl siren  212 , the Hazard siren  214 , the Chime siren  216 , the Scream siren  218 , and the Wail siren  220 . Table 1, below, and  FIG. 2  explain the siren content and duration of each siren  202 - 220 . 
     
       
         
               
             
               
               
               
             
           
               
                 TABLE 1 
               
             
             
               
                   
               
               
                 Siren Signal Format 
               
             
          
           
               
                 Siren Name 
                 Siren Content 
                 Siren Duration 
               
               
                   
               
               
                 Alert 
                 670 Hz Steady Tone 
                 3 minutes 
               
               
                 Attack 
                 740 Hz Tone, ramping up and down, 
                 6 sec. up and 5 sec. down for 3 
               
               
                   
                 :06 up and :05 down 
                 minutes 
               
               
                 Hi/Lo 
                 550 Hz Tone alternating with a 740 Hz 
                 0.75 sec. duration per tone for 3 
               
               
                   
                 Tone 
                 minutes 
               
               
                 Air-Horn 
                 740 Hz Tone 
                 2 sec. on, 2 sec. off for 3 minutes 
               
               
                 Fire 
                 740 Hz Tone, ramping up and down, 
                 16 sec. up base, down for 1.5 
               
               
                   
                 minimum during down ramp 
                 minutes 
               
               
                 Growl 
                 533 Hz Tone burst with fade up and 
                 0.5 sec. (for siren test) 
               
               
                   
                 down 
               
               
                 Hazard 
                 500 Hz Tone ramping up to 850 Hz 
                 1 sec. repeating for 3 minutes 
               
               
                 Chime 
                 533 Hz Tone bursts 
                 2 sec. intervals of 6 cycles 
               
               
                 Scream 
                 850 Hz Tone, ramping down to 500 Hz, 
                 0.8 sec. down, 0.2 sec. up for 3 
               
               
                   
                 then back up to 850 Hz 
                 minutes 
               
               
                 Wail 
                 850 Hz Tone, ramping down to 500 Hz, 
                 0.8 sec. down, 0.2 sec. up for 3 
               
               
                   
                 then back up to 850 Hz 
                 minutes 
               
               
                   
               
             
          
         
       
     
     Taking a specific example from Table 1, the Hazard siren  214  is characterized by a 500 Hz tone that ramps up to 850 Hz, with a one second ‘on’ duration repeated over 3 minutes. The siren models  106  characterize the sirens that the processing logic  104  attempts to match. 
       FIG. 3  shows processing flow  300  for generating the siren models  106 . The processing flow  300  may be executed by the system  100 , or by a separate system that prepares siren models  106  for the system  100 . The system identifies a particular geographical region. The geographical region may be one in which the vehicle is expected to operate, for example. Given the geographical region, the system obtains siren characteristics for that geographical region. To that end, the system may consult official government information sources, industry specific siren definitions, or any other source of siren characteristic information. 
     The system then creates a model of a siren applicable to the selected geographical region. For example, with regard to the Scream siren  218 , the system may create the siren waveform by generating a sign wave sweep from Fmax=850 Hz to Fmin=500 Hz. During the sweep, the amplitude is held constant, the ramp down time is set to 0.8 seconds, and the ramp up time is set to 0.2 seconds. 
     After creating the siren waveform, the system may then parameterize the waveform. As one example, the system may determine discrete coefficients of the waveform and creates a discrete coefficient vector that characterizes the waveform. The discrete coefficients may be chosen by sampling the waveform at specific intervals (e.g., at twice the maximum frequency in the waveform). One benefit of employing the discrete coefficient representation is compression of the waveform into a significantly reduced memory footprint for accurately representing the waveform. However, other representations may be used. For example the system may alternatively or additionally store the siren models as spectrogram templates, waveform defining equations, or with other representations. 
     The system may add a region identifier to the discrete coefficient vector. The siren model is thereby tagged with the particular geographical region in which the siren is expected to be encountered. Each siren model may be tagged with any number of geographical region identifies. The system then stores each siren model for future reference. The system may continue to create siren models for each siren expected to be encountered in the geographical region. As one example, the system may create siren models for ambulances, police vehicles, and fire department vehicles within the selected geographical region. The system may also create siren models for each geographical region through which the vehicle is expected to travel. For example, system may create siren models for regions throughout Italy, France, and Spain. 
       FIG. 4  shows a dynamic siren detection and notification system  400  (“system  400 ”) connected to a vehicle bus  402  through the vehicle bus interface  404 . The vehicle bus  402  may interconnect a diverse array of vehicle electronics modules. The vehicle bus interface  404  may include logic that sends or receives information to and from the modules  406 - 418  and the system  400  through the vehicle bus  402 . The vehicle bus interface  404  may process data (e.g., bus packets containing vehicle control commands) transmitted over the vehicle bus  402 . The vehicle bus interface  404  and vehicle bus  402  may adhere to bus architectures such as the Local Interconnect Network (LIN), Controller Area Network (CAN), J1939, ISO11783, FlexRay, Media Oriented Systems Transport (MOST), Keyword Protocol 2000 (KWP2000), Vehicle Area Network (VAN), DC-BUS, IDB-1394, or SMARTwireX architectures. 
     As examples, the vehicle electronics modules shown in  FIG. 4  include a vehicle entertainment module  404 , an audio electronics module  406 , a Satellite Positioning System (SPS) electronics module  408 , and video game systems  410 . The modules also include a seating electronics module  412 , a video electronics module  414 , and a climate electronics module  416 . Such modules may be connected to the system  400  over the vehicle bus  402 , or as represented by the vehicle systems  422 , by a different connection, such as a direct, local, integrated or other type of connection to the system  400 . 
     The system  400  may receive operator input from directly connected input sources  420 , or vehicle bus connected input sources  418 . The input sources  418  and  420  may include buttons, joysticks, rotational or translational controls located on the dashboard, steering wheel, or in other locations; voice recognition systems employing one or more microphones, headsets, or other input devices; wireless receivers (e.g., for receiving inputs from a remote vehicle monitoring facility); or any other operator input source. 
     The audio electronics module  406  may include media access, control, and sound reproduction logic such as physical media access mechanisms, amplifiers and speakers for a CD player, SACD player, tape player, MP3 player, carphone (e.g., a hands-free car phone system), or other audio device. The SPS electronics module  408  may include a satellite positioning information receiver, location determination logic, location displays, announcement logic (e.g., speakers and audio signal reproduction logic to announce upcoming turns or points of interest), or other SPS processing logic. The video game systems  410  may include audio/visual reproduction logic and operator inputs for controlling a video game. 
     The seating electronics module  412  may control seat functions. Examples of seat functions include seat heating, seat cooling, seat positioning (e.g., forward, back, up, and down), lumbar support activation, massage or vibration mechanisms, or other electronic seat controls. The video electronics module  414  may include media access, control, and video and audio reproduction logic for a DVD player, video tape player, or other video device. The climate control electronics module  416  may include control logic for air conditioning functions, heating functions, front and rear window defogging, single or multiple zone temperature selection, window opening/closing, interior lighting, or other vehicle environment features. 
     The dynamic siren detection and notification system  400  includes a processor  424  connected to a memory  426 . The memory  426  stores one or more siren models, such as the siren model  428  and the siren model  430 . The siren model  428  encodes a siren waveform in a discrete coefficient vector  432 , however, other siren waveform representations may be employed additionally or alternatively. 
     The memory  426  stores a vehicle environment sound signal  434 . The input sources  418  and  420  may provide the vehicle environment sound signal  434  in analog or digital form. As examples, the input sources  418  and  420  may include microphones or microphone arrays, and may sample the ambient sounds within the vehicle. The processor  424  or other sampling logic may convert an analog sound signal to digital form and store the samples in the memory  426  as the vehicle environment sound signal  434 . 
     The siren processing program  436  analyzes the vehicle environment sound signal  434  against the siren models  428 - 430 . In that regard, the siren processing program  436  may operate according to siren processing parameters  438 . Examples of siren processing parameters include a confidence level parameter  440  and an analysis duration parameter  442 . The confidence level parameter  440  may specify the degree of confidence (e.g., 80%) needed that vehicle environment sound signals match any given siren model, and may help reduce the possibility of false positive matches to a siren model. The analysis duration parameter may specify the length of time (e.g., 5 second) over which the siren processing program determines a confidence measure, for example by continuing to analyze incoming vehicle environment sound signals against the siren models  428 - 430 . Thus, for example, the siren processing program  436  may repeatedly analyze vehicle environment sound signals received over time against the siren models  428 - 430  to build a confidence measure over 5 seconds and determine whether the confidence measure exceeds 80%. Other examples of parameters include: how frequently to check for sirens (e.g., once per minute or continuously) and whether to disable siren detection. 
     In the event that the siren processing program  436  detects a siren, the siren processing program  436  may issue a vehicle system control command  444 . One alternative is that the siren processing program  436  issues the vehicle system control command  444  through the vehicle bus interface  404  to one or more of the vehicle electronics modules  406 - 416 . However, the siren processing program  436  may instead issue the vehicle system control command  444  to locally connected vehicle system  422 . 
     Table 2 shows examples of vehicle system control commands  444  that the system  400  may employ to directly or indirectly signal, notify, advise, or aid recognition by the vehicle passengers that a siren signal has been detected. The system  400  may send additional, fewer, or different vehicle system control commands. 
     
       
         
               
             
               
               
             
           
               
                 TABLE 2 
               
             
             
               
                   
               
               
                 Vehicle System Control Commands 
               
             
          
           
               
                 Command 
                 Example 
               
               
                   
               
               
                 Mute 
                 Disable audio output - may be sent to the audio electronics module, SPS 
               
               
                   
                 electronics module, video game systems, video electronics module, or 
               
               
                   
                 other modules. 
               
               
                 Reduce Volume 
                 Lower audio output by a specified amount, to a specified amount, or to no 
               
               
                   
                 greater than a specified amount, optionally for a specified duration - may 
               
               
                   
                 be sent to the audio electronics module, SPS electronics module, video 
               
               
                   
                 game systems, video electronics module, or other modules. 
               
               
                 Illuminate 
                 Activate a light, display, or other indicator that signals that a siren has 
               
               
                 Indicator 
                 been detected - may be sent to a head unit control module that controls 
               
               
                   
                 dashboard indicators, or SPS, video game, or video electronics modules to 
               
               
                   
                 instruct that a notification message be displayed on a screen. 
               
               
                 Audible 
                 Generate a specified audio signal - may be sent to the audio electronics 
               
               
                 Announcement 
                 module, SPS electronics module, video game systems, video electronics 
               
               
                   
                 module, or other modules. 
               
               
                 Activate Seat 
                 Activate a seat vibration function - may be sent to the seating electronics 
               
               
                 Vibration 
                 module, or other modules. 
               
               
                 Activate 
                 Activate a heater or air conditioner - may be sent to the climate control 
               
               
                 Climate Control 
                 electronics module, or other modules. 
               
               
                   
               
             
          
         
       
     
     The siren processing program  436  may also exercise control over whether or not to send a vehicle system control command. To that end, the siren processing program may employ command decision filters  446  that affect whether or not the siren processing program  436  sends the vehicle system control command. The command decision filters  446  may take the form of logical tests. Examples of command decision filters  446  are shown below in Table 3. 
     
       
         
               
             
               
               
             
           
               
                 TABLE 3 
               
             
             
               
                   
               
               
                 Command Decision Filters 
               
             
          
           
               
                 Filter 
                 Example 
               
               
                   
               
               
                 Hands-Free 
                 If a hands-free phone call is in progress, do not send a 
               
               
                   
                 Mute or Reduce Volume command. 
               
               
                 Low Volume 
                 If the current audio system volume is below a 
               
               
                   
                 pre-determined threshold, do not send a Mute or Reduce 
               
               
                   
                 Volume command. 
               
               
                 High Volume 
                 If the current ambient noise level (e.g., including audio 
               
               
                   
                 generated by the stereo system) is above a pre-determine 
               
               
                   
                 threshold, send multiple commands to multiple systems, 
               
               
                   
                 including an Activate Seat Vibration Command and a 
               
               
                   
                 Reduce Volume command. 
               
               
                   
               
             
          
         
       
     
       FIG. 5  shows processing flow  500  for the system  400 . The siren processing program  436  samples the vehicle environmental sound using, for example, a microphone in the vehicle compartment ( 502 ). The siren processing program  436  also reads the siren processing parameters  438  ( 504 ). Using the vehicle environment sound signal  434  obtained by sampling the vehicle environment sound, the siren processing program  436  analyzes sounds in the vehicle against the siren models  428 - 430  ( 506 ). The analysis may proceed in many different manners. In one implementation, the siren processing program correlates time or frequency content present in the vehicle environment sound signal  434  against each siren model  428 - 430 . Other signal comparison and matching techniques (e.g., spectrogram template matching) may be employed additionally or alternatively. The correlation over time updates a confidence measure ( 508 ), such as a degree of correlation between the discrete coefficient vector  432  and the vehicle environment sound signal  434 . The analysis and updating of the confidence measure may extend over the analysis duration  442  established by the siren processing parameters  438 . If no siren is detected the siren processing program  436  continues to sample the vehicle environmental sound and analyze the sound for sirens. 
     On the other hand, if the siren processing program  436  detects a siren, the siren processing program may then determine whether the confidence measure meets or exceeds the confidence level  440  established in the siren processing parameters  438 . If the confidence threshold is met, the siren processing program  436  may also apply one or more of the command decision filters  446  ( 510 ). If a siren is detected with the requisite confidence level and no command decision filter blocks sending a control command, then the siren processing program  436  may proceed by generating and sending a selected vehicle system control command ( 510 ). For example, the siren processing program  436  may send a Reduce Volume vehicle system control command to reduce the level of ambient noise in the vehicle cabin, thereby making the siren more noticeable. 
       FIG. 6  shows a dynamic siren detection and notification system  600  (“system  600 ”). The system  600  maintains location data  602  in the memory  426 . The location data  602  may originate from many different sources. For example, the SPS electronics module  408  may supply vehicle location information to the system  600  over the vehicle bus  402 . Alternatively or additionally, a dead reckoning or directly connected positioning system may communicate the location data  602  to the system  600 . 
       FIG. 7  shows processing flow  700  for the system  600 . The siren processing program  436  may take the location data  602  into consideration when analyzing whether or not a siren sound exists in the environment. The siren processing program  436  reads the location data  602  which gives the current geographical location of the vehicle ( 702 ). The siren processing program  436  may then search the memory  426  for siren models applicable in the current geographical location ( 704 ). As noted above, the siren models may include a geographical location identifier to tag the siren model with one or more geographical locations in which the siren model applies. The siren processing program  436  proceeds with its analysis of the specific siren models applicable for the current geographical location. As the vehicle continues travel, the siren processing program  436  may repeatedly check the current location data and identify the applicable siren models given the continually changing position of the vehicle. 
       FIG. 8  shows a map  800  and a route  802  through different geographic regions. A driver starts in Rome, Italy. The location data  602  locates the vehicle in Rome and the siren processing program  436  responsively begins analyzing vehicle environmental sound data against the siren models that apply for Rome. As the vehicle moves to San Marino, the location data  602  updates accordingly. The siren processing program  436  recognizes that the vehicle has entered the San Marino geographical area by checking the location data  602  and checks the siren models to determine whether any special siren models are applicable. In response, the siren processing program  436  may switch to a set of siren models applicable for San Marino or may make no change with regard to the currently applicable set of siren models. 
     As the vehicle continues on toward Paris, the vehicle eventually crosses the border between Italy and France. The satellite positioning system in the car updates the location data  602  on a regular basis. Accordingly, the siren processing program  436  may monitor the location data  602  and determine that the vehicle has crossed the border into France. As with any change in vehicle location, the siren processing program  436  may continue to check the current location against the siren models to determine which siren models are applicable in the current geographical area. Thus, if a different set of siren models is applicable in France, the siren processing program  436  may switch to analysis of the siren models that apply. Similarly, as the vehicle moves from France into Spain, the location data  602  reflects the change and the siren processing program  436  may determine whether a different set of siren models is applicable. The siren processing program  436  proceeds with analysis using the siren models applicable for the current graphical location. 
       FIG. 9  shows a dynamic siren detection and notification system  900  (“system  900 ”). The system  900  includes echo suppression logic  902 . The echo suppression logic  902  may obtain a source reference signal  904  from any of the vehicle electronics modules prior to audible reproduction. As examples, the source reference signal  904  may be a stereo, DVD, or audio signal from any other source prior to application to a transducer that converts the audio signal to sound. 
     The echo suppression logic  902  may identify similarities or differences between the source reference signal and the vehicle environment sound signal  434 . The echo suppression logic  902  may also dampen or cancel the similarities to obtain a siren analysis signal  906  that is an echo-suppressed version of the vehicle environment sound signal  434 . Alternatively, separate noise cancellation logic may provide an echo-suppressed vehicle environment signal as a siren analysis signal  906  to the system  900  for processing. The echo suppression logic  902  may be implemented using a coherence processor and a cancellation processor as described in U.S. patent application Ser. Nos. 11/771,258 and 90/916,493, or using other echo cancellation or suppression techniques. 
     Music, video content, or other multimedia content sometimes includes siren sounds. One benefit of employing the echo suppression logic  902  is that the siren sounds (and other reference sounds) are suppressed or removed from the vehicle environment sound signal  434  prior to analysis against the siren models  428 - 430 . As a result, the system  900  reduces the chances of false positive siren detections caused by multimedia content playing in the vehicle. 
       FIG. 10  shows processing flow for the system  900 . The siren processing program  436  operates in conjunction with the echo suppression logic  902 . To that end, the echo suppression logic  902  obtains a source reference signal  904  ( 1002 ). The echo suppression logic  902  also suppresses all or part of the source reference signal  904  in the vehicle environment sound signal  434  to obtain a siren analysis signal  906  ( 1004 ). The siren processing program  436  proceeds generally as noted above, and executes its analysis against the siren analysis signal ( 1006 ). 
     The systems  400 ,  600 , and  900  may also implement operator configurability. In that regard, the systems may accept input from any input source (e.g., the input source  418  or  420 ) and responsively modify, add, or remove selected processing parameters for the siren detection techniques. The systems may permit or deny changes to any particular parameter. 
     As one example, the input source  420  may include a circular controller such as a trackball or rotating knob, and selectable keys that the operator manipulates to choose from system generated and displayed menus and lists of siren processing parameters. The system may then query the operator for a configuration input that specifies a new setting of the chosen processing parameter, that selects from specific pre-stored parameter values or setting, that activates or deactivates a parameter, or that specifies other actions. In this way, the operator may set, select, or change a wide range of different parameters. Additionally or alternatively, the system may include a service connector, ordinarily inaccessible to the owner of the vehicle, through which authorized service centers may connect to the systems and add, change, delete, set, activate, or deactivate parameters. 
     Specific examples include setting a relative or absolute volume attenuation amount for the ‘Reduce Volume’ command; activating or deactivating command decision filters such as the ‘Hands-Free’ filter; selecting which vehicle system control commands to send when a siren is detected (e.g., send a Reduce Volume command, an Activate Seat Vibration command, and an Illuminate Indicator command); setting the type of indicator (e.g., a message on a display, or lighting a warning light) or audible announcement, specifying the announcement content, volume level, duration of display, or number of repetitions of announcement. Additional examples include activating or de-activating the siren detection processing program; specifically activating or selecting the currently applicable geographical siren models; uploading new siren models (which may be read from an attached stored device, such as a USB flash drive, or read from a CD or DVD); activating or deactivating the echo suppression logic  902  or the location based analysis for choosing geographically applicable siren models; and setting the confidence level  440  and/or analysis duration  442 . 
     The systems may be implemented in many different ways. For example, although some features are shown stored in computer-readable memories (e.g., as logic implemented as computer-executable instructions or as data structures in memory), all or part of the system, logic, and data structures may be stored on, distributed across, or read from other machine-readable media. The media may include hard disks, floppy disks, CD-ROMs, a signal, such as a signal received from a network or received over multiple packets communicated across the network. The systems may be implemented in software, hardware, or a combination of software and hardware. 
     Furthermore, the systems may be implemented with additional, different, or fewer components. As one example, a processor or any other logic may be implemented with a microprocessor, a microcontroller, a DSP, an application specific integrated circuit (ASIC), program instructions, discrete analog or digital logic, or a combination of other types of circuits or logic. As another example, memories may be DRAM, SRAM, Flash or any other type of memory. The systems may be distributed among multiple components, such as among multiple processors and memories, optionally including multiple distributed processing systems. Logic, such as programs or circuitry, may be combined or split among multiple programs, distributed across several memories and processors, and may be implemented in or as a function library, such as a dynamic link library (DLL) or other shared library. 
     While various embodiments of the system have been described, it will be apparent to those of ordinary skill in the art that many more embodiments and implementations are possible within the scope of the invention. Accordingly, the invention is not to be restricted except in light of the attached claims and their equivalents.