Suppression of noise caused by switching audio sources
The application manager in the head unit manages audio channel switching to suppress noise in vehicles by muting the first application, reserving a second channel, and switching to the second application, achieving rapid and efficient noise suppression.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- TOYOTA JIDOSHA KK
- Filing Date
- 2025-01-23
- Publication Date
- 2026-07-29
AI Technical Summary
Audio output devices in vehicles experience noise generation when switching between applications due to mismatched bitrates or characteristics, leading to misleading audio outputs.
An application manager in the head unit communicates with current and new applications to mute the first application, reserve a second channel, and switch to the second application, ensuring low-latency noise suppression by managing audio channels efficiently.
This approach reduces noise suppression latency to less than one second, minimizing buffer requirements and effectively preventing audio misalignment during source switching.
Smart Images

Figure 0007896709000001 
Figure 0007896709000002 
Figure 0007896709000003
Abstract
Description
Background Art
[0001] An audio output device installed in a vehicle, such as a speaker or a speaker system, is used by a plurality of applications. Some applications are non-flutter applications that generate a continuous audio stream from a radio, a pre-recorded physical medium, the Internet, etc. Some applications are flutter applications that generate intermittent audio data related to navigation, warnings, etc. At any given time, multiple applications may be generating audio for output by the output device. At a particular time, the sound emitted from the audio output device changes from one application to another.
Brief Description of the Drawings
[0002] Aspects of the present disclosure are best understood by reading the following detailed description with the accompanying drawings. Note that various features are not drawn to scale according to standard practice in the industry. In fact, for clarity of explanation, the dimensions of various features may be arbitrarily increased or decreased.
[0003] [Figure 1] FIG. 1 is a schematic diagram of a system related to suppression of noise caused by switching of an audio source according to at least some embodiments of the present invention. [Figure 2] FIG. 2 is a schematic diagram of a head unit related to suppression of noise caused by switching of an audio source according to at least some embodiments of the present invention. [Figure 3] FIG. 3 is an operation flow related to suppression of noise caused by switching of an audio source according to at least some embodiments of the present invention. [Figure 4]Figure 4 is a block diagram of a hardware configuration for suppressing noise caused by switching audio sources, according to at least some embodiments of the present invention. [Modes for carrying out the invention]
[0004] The following disclosure provides numerous different embodiments or examples to implement different features of the subject matter provided. For the sake of brevity of this disclosure, specific examples relating to components, values, operations, materials, arrangements, or similars are described below. Of course, these are merely examples and are not intended to be limiting. Other components, values, operations, materials, arrangements, or similars are conceivable. In addition, this disclosure may repeat reference numbers and / or reference letters in various examples. This repetition is for the sake of simplification and clarity and does not in itself define the relationships between the various embodiments and / or configurations described.
[0005] In some cases, digital noise is generated when the sound emitted from an audio output device is changed from one application to another. In some cases, the noise is caused by the current application continuing to output after the bitrate or other characteristics of the audio output have been changed. For example, if a navigation application attempts to provide a reminder to turn right over the sound of a radio application, the navigation application's voice may become misleading.
[0006] In at least some embodiments described herein, the application manager mutes the audio output in response to receiving a command to switch to an active audio application, communicates with the current application and the new application to implement the switch, and then unmutes the audio output.
[0007] In at least some embodiments, implementation by the application manager provides low-latency noise suppression resulting from audio source switching. In at least some embodiments, the head unit requires less than one second to perform noise suppression resulting from audio source switching, which reduces the required buffer capacity for the audio channels in the amplifier, which is typically less than one second. In at least some embodiments, implementation by the head unit is faster than many amplifiers, in particular, as such amplifiers do not have sufficient computational resources to perform noise suppression resulting from audio source switching without exceeding their buffer limits.
[0008] In at least some embodiments, the head unit instructs the amplifier to reserve a second channel by associating it with a second application before instructing the first application to disable audio generation, so that the amplifier does not detect an error. In at least some embodiments, reserving a second channel before instructing the first application to disable audio generation also reserves resources such as a channel buffer and gives the amplifier time to establish any permissions to the second application while the head unit communicates with the application.
[0009] Figure 1 is a schematic diagram of a system for suppressing noise caused by switching audio sources, according to at least some embodiments of the present invention. The system includes a head unit 100, an amplifier 110, and a speaker 118.
[0010] The head unit 100 communicates with the amplifier 110. The head unit 101 includes a controller 102 and a storage 104. In at least some embodiments, the head unit 100 uses the controller 102 and the storage 104 to run an application manager. In at least some embodiments, the head unit 100 further uses the controller 102 and the storage 104 to run a first application and a second application. In at least some embodiments, the head unit 100 is an in-dash media device for the vehicle. In at least some embodiments, the head unit 100 issues commands to the amplifier 110 to perform actions such as "mute" and "change channel". In at least some embodiments, the head unit 100 utilizes a channel identifier. In at least some embodiments, the head unit 100 communicates with other vehicle devices, such as an electronic control unit (ECU), through a network such as a controller area network (CAN), Ethernet, or other wireless or wired network. In at least some embodiments, the head unit 100 communicates with an ECU that runs an arbitration manager. In at least some embodiments, the controller 102 is a processor or programmable circuit, such as an ECU, that executes instructions to cause a processor or programmable processor to act, for example, to run an application manager, a first application, and a second application. In at least some embodiments, the storage 104 includes a volatile or non-volatile computer-readable medium that can store executable and non-executable data accessed by the controller 102 during the execution of instructions.
[0011] The amplifier 110 communicates with the head unit 100 and the speaker 118. The amplifier 110 includes channels 112, 114, and 116. In at least some embodiments, the amplifier 110 outputs an audio signal to the speaker 118. In at least some embodiments, each of channels 112, 114, and 116 is configured to route audio data from an application to the speaker 118. In at least some embodiments, each of channels 112, 114, and 116 is associated with a path identifier, such as "radio" or "media player". In at least some embodiments, each of channels 112, 114, and 116 has a pre-configured audio bitrate, sampling rate, buffer size, equalizer level, etc. In at least some embodiments, each of channels 112, 114, and 116 is configured when associated with a path identifier. In at least some embodiments, each of channels 112, 114, and 116 is configured and associated by the head unit 100 using a path identifier. In at least some embodiments, the amplifier 110 is configured to increase the amplitude of the audio signal before transmitting the audio signal to the speaker 118. In at least some embodiments, the amplifier 110 is configured to convert audio data received from the head unit 100 into an audio signal before amplifying the audio signal. In at least some embodiments, the amplifier 110 receives commands and audio transmissions through a digital interface.
[0012] The speaker 118 communicates with the amplifier 110. In at least some embodiments, the speaker 118 receives an audio signal from the amplifier 110. In at least some embodiments, the speaker 118 is a transducer configured to convert an electrical signal into a compressed wave. In at least some embodiments, the speaker 118 includes a plurality of transducers. In at least some embodiments, the speaker 118 includes a plurality of speakers, for example, left and right speakers, front and rear speakers, etc.
[0013] Figure 2 shows an information flow regarding noise suppression caused by audio source switching, according to at least some embodiments of the present invention. The information flow is between the arbitration manager 220, the application manager 222, the first application 224, and the second application 226.
[0014] In at least some embodiments, the mediation manager 220 is configured to determine audio priority among applications running in the vehicle. In at least some embodiments, the application manager 222 is configured to facilitate and switch audio outputs from applications running in the vehicle. In at least some embodiments, the first application 224 is a non-flutter application configured to generate audio data from music sources such as radio, pre-recorded physical media, and the internet. In at least some embodiments, the second application 226 is a flutter application configured to generate intermittent audio data related to navigation, warnings, etc. In at least some embodiments, the first application 224 and the second application 226 are any combination of flutter and non-flutter applications. In at least some embodiments, the first application 224 and the second application 226 are flutter applications. In at least some embodiments, the first application 224 and the second application 226 are non-flutter applications. In at least some embodiments, the application manager 222, the first application 224, and the second application 226 are executed by the head unit's ECU, for example, the controller 102 of the head unit 100 in Figure 1. In at least some embodiments, the arbitration manager 220 is executed by an ECU that communicates with the head unit's ECU. In at least some embodiments, the head unit's ECU communicates with the ECU running the arbitration manager 220 via CAN.
[0015] Prior to the information flow shown in Figure 2, the application manager 222 has already configured the first channel of the amplifier to the first application 224 via the path identifier.
[0016] In S230, the arbitration manager 222 sends an output request to the application manager 222. In at least some embodiments, the arbitration manager sends a command to the application manager 220 to output audio from the second application while the speaker is outputting audio from the first application. In at least some embodiments, the arbitration manager 220 sends an output request in response to determining that the second application 226 has priority over the first application 224. In at least some embodiments, the arbitration manager 220 sends an output request in response to determining that the second application 226 has absolute priority.
[0017] In S232, the application manager 222 sends a disable request to the first application 224. In at least some embodiments, the application manager 222 instructs the first application 224 to disable audio transmission. In at least some embodiments, the application manager 222 sends a disable request in response to muting the audio output.
[0018] In S233, the first application 224 sends a deactivation confirmation to the application manager 222. In at least some embodiments, the first application 224 approves the deactivation request. In at least some embodiments, the first application 224 sends a deactivation confirmation in response to having disabled audio transmission to the amplifier.
[0019] In S235, the application manager 222 sends an enable request to the second application 226. In at least some embodiments, the application manager 222 instructs the second application to enable audio transmission. In at least some embodiments, the application manager 222 sends an enable request in response to switching the input to the speaker. In at least some embodiments, the second application 226 does not generate audio until instructed by the application manager 222.
[0020] In S236, the second application 226 sends an activation confirmation to the application manager 222. In at least some embodiments, the second application 226 approves the activation request. In at least some embodiments, the second application 226 sends an activation confirmation in response to enabling audio transmission to the amplifier.
[0021] Figure 3 is an operational flow relating to noise suppression caused by audio source switching, according to at least some embodiments of the present invention. The operational flow provides a method for suppressing noise caused by audio source switching. In at least some embodiments, the method is performed by a controller of the head unit, for example, controller 102 in Figure 1 or controller 402 in Figure 4.
[0022] In S340, the controller or a section thereof receives a command to output audio from the second application. In at least some embodiments, the controller receives a command to output audio from the second application while the speaker is outputting audio from the first application. In at least some embodiments, the controller receives a command from the arbitration manager. In at least some embodiments, the controller receives a command from the ECU via CAN. In at least some embodiments, the command identifies the first application. In at least some embodiments, the operation flow is triggered when the controller receives a command from the arbitration manager to switch audio from the first application to the second application.
[0023] In S341, the controller or its mute section mutes the audio output. In at least some embodiments, the controller mutes the audio output in response to the receipt of a command. In at least some embodiments, the controller suppresses audio transmission from the first application. In at least some embodiments, the controller suppresses audio transmission to the amplifier. In at least some embodiments, the controller commands the amplifier to set the speaker volume to zero. In at least some embodiments, muting with respect to the audio output includes at least one of suppressing audio transmission from the first application, suppressing audio transmission to the amplifier, or commanding the amplifier to set the speaker volume to zero.
[0024] In S343, the controller or its associated section associates a second channel with a second application. In at least some embodiments, the controller instructs an amplifier that communicates with a speaker to associate the second channel with the second application. In at least some embodiments, the second channel has at least one of an audio bitrate, a sampling rate, a buffer size, or an equalizer setting corresponding to the second application. In at least some embodiments, the controller instructs the amplifier to adjust at least one of an audio bitrate, a sampling rate, a buffer size, or an equalizer setting to a predetermined level. In at least some embodiments, the instruction includes an identifier of the second application and a predetermined level for each of at least one of an audio bitrate, a sampling rate, a buffer size, or an equalizer setting. In at least some embodiments, the second channel is secured but not selected for output to the speaker.
[0025] In S344, the controller or its instruction section instructs the first application to disable audio transmission. In at least some embodiments, the controller instructs the first application to disable audio transmission. In at least some embodiments, the controller instructs the first application to disable audio transmission after instructing the amplifier to associate the second channel with the second application. In at least some embodiments, the controller transmits a disabling request such as the disabling request S232 in FIG. 2.
[0026] In S345, the controller or its switching section switches to the second channel. In at least some embodiments, the controller instructs the amplifier to switch the speaker input from the first channel associated with the first application to the second channel. In at least some embodiments, the instruction identifies the second channel.
[0027] In S347, the controller or its instruction section instructs the second application to enable audio transmission. In at least some embodiments, the controller instructs the second application to enable audio transmission. In at least some embodiments, the controller instructs the amplifier to switch to the second channel and then instructs the second application to enable audio transmission. In at least some embodiments, the controller transmits an activation request such as the activation request S235 in FIG. 2.
[0028] In S348, the controller or its section determines whether the second application is transmitting audio data. In at least some embodiments, the controller detects whether audio data is being transmitted to the amplifier. In at least some embodiments, the controller determines whether the second application has queued audio data for the amplifier. In response to the controller determining that the second application is transmitting audio data, the operation flow proceeds to unmute in S349. In response to the controller determining that the second application is not transmitting audio data, the operation flow returns to the audio activation instruction in S347.
[0029] In S349, the controller or its unmute section unmutes the audio output. In at least some embodiments, the controller unmutes the audio output. In at least some embodiments, the unmute is performed in response to determining that the second application is transmitting audio data.
[0030] FIG. 4 is a block diagram of a hardware configuration related to suppression of noise caused by switching of an audio source according to at least some embodiments of the present invention.
[0031] A preferred hardware configuration includes a head unit 400, which communicates with input devices 408 directly or via a network 407, and with an ECU 419 via the network 407. In at least some embodiments, the head unit 400 is a computer or other computing device that receives input or commands from input devices 408. In at least some embodiments, the head unit 400 is integrated into input devices 408. In at least some embodiments, the head unit 400 is a computer system that executes computer-readable instructions for performing operations related to suppressing noise caused by switching audio sources.
[0032] The head unit 400 includes a controller 402, a storage unit 404, an input / output interface 406, and a communication interface 409. In at least some embodiments, the controller 402 includes a processor or programmable circuit that executes instructions to cause the processor or programmable circuit to operate according to those instructions. In at least some embodiments, the controller 402 includes analog or digital programmable circuitry, or any combination thereof. In at least some embodiments, the controller 402 includes physically isolated storage or circuitry that communicates via communication. In at least some embodiments, the storage unit 404 includes a non-volatile computer-readable medium that can store executable and non-executable data accessed by the controller 402 during instruction execution. The communication interface 409 transmits and receives data from the network 407. The input / output interface 406 connects to various input and output units such as an input device 408 via a parallel port, serial port, keyboard port, mouse port, monitor port, and similar, to accept commands and present information. In some embodiments, the storage unit 404 is located outside the head unit 400.
[0033] The controller 402 includes a mute section 450, an association section 452, an instruction section 454, and a switching section 456. The storage unit 404 includes a switching parameter 460, a channel association 462, and an instruction parameter 464.
[0034] The mute section 450 is a circuit or instruction of the controller 402 configured to mute the audio output. In at least some embodiments, the mute section 450 is configured to mute the audio output upon receiving an instruction. In at least some embodiments, the mute section 450 utilizes information in the storage unit 404, such as the channel association 462. In at least some embodiments, the mute section 450 includes subsections for performing additional functions as shown in the flowchart above. In at least some embodiments, such subsections are referred to by names associated with their corresponding functions.
[0035] The association section 452 is a circuit or instruction of the controller 402 configured to associate channels. In at least some embodiments, the association section 452 is configured to instruct an amplifier communicating with a speaker to associate a second channel with a second application. In at least some embodiments, the association section 452 utilizes information in the storage unit 404, such as channel associations 462 and instruction parameters 464. In at least some embodiments, the association section 452 includes subsections for performing additional functions as shown in the flowchart above. In at least some embodiments, such subsections are referred to by names associated with their corresponding functions.
[0036] The instruction section 454 is a circuit or instruction of the controller 402 configured to issue instructions. In at least some embodiments, the instruction section 454 is configured to instruct a first application to disable audio transmission and a second application to enable audio transmission. In at least some embodiments, the association section 452 utilizes information in the storage unit 404, such as instruction parameters 464. In at least some embodiments, the instruction section 454 includes subsections for performing additional functions as shown in the flowchart above. In at least some embodiments, such subsections are referred to by names associated with the corresponding functions.
[0037] The switching section 456 is a circuit or instruction of the controller 402 configured to switch audio channels. In at least some embodiments, the switching section 456 is configured to instruct an amplifier to switch the speaker input from a first channel associated with a first application to a second channel. In at least some embodiments, the switching section 456 utilizes information in the storage unit 404, such as switching parameters 460. In at least some embodiments, the instruction section 454 includes subsections for performing additional functions as shown in the flowchart above. In at least some embodiments, such subsections are referred to by names associated with the corresponding functions.
[0038] In at least some embodiments, the apparatus is another device capable of processing logical functions to perform the operations described herein. In at least some embodiments, the controller and the storage unit do not need to be entirely separate devices, and in some embodiments, they share circuitry or one or more computer-readable media. In at least some embodiments, the storage unit includes a hard drive that stores both computer-executable instructions and data accessed by the controller, and the controller includes a combination of a central processing unit (CPU) and RAM, where the computer-executable instructions are copyable in whole or in part so that they are executed by the CPU during the performance of the operations described herein.
[0039] In at least some embodiments where the device is a computer, a program installed on the computer can be caused to function as or perform an operation associated with the device of the embodiments described herein. In at least some embodiments, such a program is executable by a processor to cause the computer to perform a specific operation associated with some or all of the blocks of the flowcharts and block diagrams described herein.
[0040] At least some embodiments are described with reference to flowcharts and block diagrams, where blocks represent (1) steps in a process in which an operation is performed, or (2) sections of a controller responsible for performing the operation. In at least some embodiments, specific steps and sections are implemented by dedicated circuits, programmable circuits supplied with computer-readable instructions stored on a computer-readable medium, and / or processors supplied with computer-readable instructions (computer programs) stored on a computer-readable medium. In at least some embodiments, the dedicated circuits include digital and / or analog hardware circuits, including integrated circuits (ICs) and / or discrete circuits. In at least some embodiments, the programmable circuits include reconfigurable hardware circuits, such as field-programmable gate arrays (FPGAs) and programmable logic arrays (PLAs), which include logical AND, OR, XOR, NAND, NOR, and other logical operations, flip-flops, registers, memory elements, etc.
[0041] In at least some embodiments, a computer-readable storage medium includes a tangible device capable of holding and storing instructions used by an instruction execution device. In some embodiments, the computer-readable storage medium includes, but is not limited to, electronic storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, or any preferred combination thereof. A non-exhaustive list of more specific examples of computer-readable storage mediums includes, namely, portable computer diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disk read-only memory (CD-ROM), digital versatile disk (DVD), memory sticks, floppy disks, mechanically encoded devices such as punch cards or grooved raised structures on which instructions are recorded, and any preferred combination thereof. Computer-readable media as used herein should not be construed as transient signals themselves, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmitting media (e.g., light pulses passing through optical fiber cables), or electrical signals transmitted through wires.
[0042] In at least some embodiments, the computer-readable program instructions described herein are downloadable from a computer-readable storage medium to each computing / processing device, or downloadable via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network, to an external computer or external storage device. In at least some embodiments, the network includes copper transmission cables, optical transmission fibers, wireless transmitters, routers, firewalls, switches, gateway computers, and / or edge servers. In at least some embodiments, a network adapter card or network interface within each computing / processing device receives computer-readable program instructions from the network and transfers the computer-readable program instructions for storage in a computer-readable storage medium within each computing / processing device.
[0043] In at least some embodiments, the computer-readable program instructions for performing the operations described above are any of the following: assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code, the source code or object code being written in any combination of one or more programming languages, including object-oriented programming languages such as Smalltalk, C++, or similar, and conventional procedural programming languages such as the C programming language or similar. In at least some embodiments, the computer-readable program instructions are executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or fully on a remote computer or server. In at least some embodiments, in the latter scenario, the remote computer is connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or a connection is made to an external computer (for example, via the Internet using an Internet service provider). In at least some embodiments, an electronic circuit including, for example, a programmable logic circuit, a field-programmable gate array (FPGA), or a programmable logic array (PLA) executes a computer-readable program instruction by individualizing the electronic circuit using state information of the computer-readable program instruction in order to carry out an aspect of the present invention.
[0044] While embodiments of the present invention are described, the technical scope of any subject matter claimed is not limited to the embodiments described above. Those skilled in the art will understand that various modifications and improvements are possible to the embodiments described above. They will also understand from the claims that embodiments added by such modifications or improvements are included within the technical scope of the present invention.
[0045] Unless the order is indicated by “before,” “prior,” or similar, and unless the output from a prior process is used in a later process, the operations, procedures, steps, and stages of each process performed by the apparatus, system, program, and method shown in the claims, embodiments, or figures may be performed in any order. Even if the process flow is described in the claims, embodiments, or figures using phrases such as “first” or “next,” such description does not necessarily mean that the processes must be performed in the order described.
[0046] In at least some embodiments, noise suppression caused by switching audio sources is achieved by receiving a command to output audio from a second application while the speaker is outputting audio from a first application; muting the audio output from the speaker in response to the command; commanding an amplifier communicating with the speaker to associate the second channel with the second application; commanding the first application to disable audio transmission; commanding the amplifier to switch the speaker input from the first channel associated with the first application to the second channel; commanding the second application to enable audio transmission; and unmuting the audio output from the speaker. In at least some embodiments, muting the audio output from the speaker includes at least one of suppressing audio transmission from the first application, suppressing audio transmission to the amplifier, or commanding the amplifier to set the speaker volume to zero. In at least some embodiments, the command to the first application to disable audio transmission is given after the command to the amplifier to associate the second channel with the second application. In at least some embodiments, unmuting occurs when a second application determines that it is transmitting audio data. In at least some embodiments, the first and second applications are any combination of flutter applications and non-flutter applications. In at least some embodiments, the amplifier receives commands and audio transmissions through a digital interface. In at least some embodiments, the second channel has at least one of the following: audio bitrate, sampling rate, buffer size, or equalizer setting, corresponding to the second application.
[0047] In at least some embodiments, the suppression of noise caused by switching audio sources is performed by a device comprising a processor that executes instructions in accordance with the above operations, or a controller that includes circuits configured to perform the above operations.
[0048] The foregoing outlines some features of embodiments so that those skilled in the art may better understand aspects of this disclosure. Those skilled in the art should understand that this disclosure is readily available as a basis for designing or modifying other processes and structures to perform the same purposes and / or achieve the same advantages as embodiments incorporated herein. Those skilled in the art should also understand that such equivalent structures do not depart from the spirit and scope of this disclosure, and that various changes, substitutions, and modifications of this specification are possible without departing from the spirit and scope of this disclosure.
Claims
1. A computer program for causing at least one processor to perform an operation, wherein the operation is: The speaker receives a command to output audio from a second application while it is outputting audio from a first application, Upon receiving the aforementioned command, the audio output from the speaker is muted, Commanding an amplifier that communicates with the speaker to associate the second channel with the second application, Instructing the first application to disable audio transmission, Commanding the amplifier to switch the speaker input from the first channel associated with the first application to the second channel, Instructing the second application to enable audio transmission, Unmuting the audio output from the speaker to the second application, Includes, A computer program that includes, with respect to the audio output from the speaker, at least one of suppressing audio transmission from the first application, suppressing audio transmission to the amplifier, or instructing the amplifier to set the speaker volume to zero.
2. The computer program according to claim 1, wherein the instruction to the first application for disabling audio transmission is given after the instruction to the amplifier for associating the second channel with the second application.
3. The computer program according to claim 1, wherein the unmuting is performed in response to the second application determining that it is transmitting audio data.
4. The computer program according to claim 1, wherein the first application and the second application are any combination of a flutter application and a non-flutter application.
5. The computer program according to claim 1, wherein the amplifier receives commands and audio transmissions through a digital interface.
6. The computer program according to claim 1, wherein the second channel has at least one of the following: audio bitrate, sampling rate, buffer size, or equalizer setting, corresponding to the second application.
7. A method that is executed by a processor, The speaker receives a command to output audio from a second application while it is outputting audio from a first application, Upon receiving the aforementioned command, the audio output from the speaker is muted, Commanding an amplifier that communicates with the speaker to associate the second channel with the second application, Instructing the first application to disable audio transmission, Commanding the amplifier to switch the speaker input from the first channel associated with the first application to the second channel, Instructing the second application to enable audio transmission, Unmuting the audio output from the speaker to the second application, Includes, A method for muting the audio output from the speaker, comprising at least one of suppressing audio transmission from the first application, suppressing audio transmission to the amplifier, or instructing the amplifier to set the speaker volume to zero.
8. The method according to claim 7, wherein the instruction to the first application to disable audio transmission is given after the instruction to the amplifier to associate the second channel with the second application.
9. The method according to claim 7, wherein the unmuting is performed in response to the second application determining that it is transmitting audio data.
10. The method according to claim 7, wherein the first application and the second application are any combination of a flutter application and a non-flutter application.
11. The method according to claim 7, wherein the amplifier receives commands and audio transmissions through a digital interface.
12. The method according to claim 7, wherein the second channel has at least one of the following: audio bitrate, sampling rate, buffer size, or equalizer setting, corresponding to the second application.
13. A device comprising a controller including a circuit configured to perform an operation, wherein the operation is The speaker receives a command to output audio from a second application while it is outputting audio from a first application, Upon receiving the aforementioned command, the audio output from the speaker is muted, Commanding an amplifier that communicates with the speaker to associate the second channel with the second application, Instructing the first application to disable audio transmission, Commanding the amplifier to switch the speaker input from the first channel associated with the first application to the second channel, Instructing the second application to enable audio transmission, Unmuting the audio output from the speaker to the second application, Includes, The device includes, with respect to the audio output from the speaker, at least one of suppressing audio transmission from the first application, suppressing audio transmission to the amplifier, or instructing the amplifier to set the speaker volume to zero.
14. The device according to claim 13, wherein the instruction to the first application to disable audio transmission is made after the instruction to the amplifier to associate the second channel with the second application.
15. The device according to claim 13, wherein the unmuting is performed in response to the second application determining that it is transmitting audio data.
16. The device according to claim 13, wherein the amplifier is configured to receive commands and audio transmissions through a digital interface.
17. The device according to claim 13, wherein the second channel has at least one of the following: audio bitrate, sampling rate, buffer size, or equalizer setting, corresponding to the second application.