Audio signal phase correction system, method, device and medium

Through the coordinated work of the application processor and the digital signal processor, the phase of the audio signal is corrected according to the microphone identification and preset mapping relationship, and the phase interference problem caused by phase differences in multi-microphone systems is solved, and the quality and stability of the sound signal are improved.

CN119854698AActive Publication Date: 2025-04-18GOERTEK INC

Patent Information

Application Number
CN202411859399.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-17
Publication Date
2025-04-18
Estimated Expiration
2044-12-17

AI Technical Summary

Technical Problem

When multiple microphones capture the same sound source, if the sound signal is deviated in time, it may cause a difference in the phase of the sound signal picked up by each microphone, and then phase interference occurs during synthesis, resulting in some or all of the sound signal being lost, affecting the spatial sense and clarity of the sound.

Method used

The application processor obtains the microphone identification of the microphone to be phase-corrected, and determines the microphone input pin identification according to the preset mapping relationship, and sends it to the digital signal processor, which corrects the audio signal picked up by the microphone.

Benefits of technology

The phase correction of the audio signal picked up by the microphone is realized, phase interference is avoided, spatial sense and clarity of the synthesized sound signal is improved, and phase correction is automatically completed, without interfering with the microphone recording process, and new computing power and low power consumption are added.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119854698A_ABST
    Figure CN119854698A_ABST
Patent Text Reader

Abstract

The invention discloses an audio signal phase correction system, method and device and a medium, and relates to the technical field of audio processing. The system comprises an application processor which is used for acquiring a microphone identifier of any microphone to be subjected to phase correction, determining a microphone input pin identifier according to the microphone identifier and a preset mapping relation, and sending the microphone input pin identifier to a digital signal processor, the preset mapping relationship is used for reflecting a corresponding relationship between the microphone identifier and the corresponding microphone input pin identifier; and the digital signal processor is used for acquiring the microphone input pin identifier from the application processor, determining the storage space of the audio signal picked up by the microphone corresponding to the microphone input pin identifier, and correcting the audio signal in the storage space. The system can complete phase correction of the audio signal picked up by the microphone.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of audio processing technology, and more specifically, to a phase correction system, method, device and medium for an audio signal. Background Art

[0002] As a device for collecting sound signals, the working performance of the microphone has a crucial impact on the sound quality of the final collected sound signals.

[0003] When multiple microphones capture the same sound source, if the sound signals picked up by the multiple microphones are deviated in time, or the sound signals arrive at each microphone at different times, the phase of the sound signals picked up by each microphone may be different. This difference will cause phase interference when the sound signals picked up by multiple microphones are synthesized, that is, when the waveforms of two or more sound signals have opposite phases at certain frequencies, they will cancel each other out, resulting in partial or complete loss of the synthesized sound signal. This will seriously affect the spatial perception and clarity of the synthesized sound signal when it is played.

[0004] Therefore, in order to ensure that the sound signals recorded by multiple microphones can be synthesized correctly, the phase of the sound signal picked up by the microphones needs to be corrected. Summary of the invention

[0005] An object of the present application is to provide a new technical solution for phase correction of audio signals.

[0006] According to a first aspect of the present application, a phase correction system for an audio signal is provided, comprising:

[0007] An application processor, for obtaining, for any microphone to be phase corrected, a microphone identifier of the microphone to be phase corrected, determining a microphone input pin identifier according to the microphone identifier and a preset mapping relationship, and sending the microphone input pin identifier to a digital signal processor, wherein the preset mapping relationship is used to reflect a correspondence between the microphone identifier and a corresponding microphone input pin identifier;

[0008] The digital signal processor is used to obtain the microphone input pin identifier from the application processor, determine the storage space where the audio signal picked up by the microphone corresponding to the microphone input pin identifier is located, and correct the audio signal in the storage space.

[0009] Optionally, the application processor is specifically used for:

[0010] Determine, according to the microphone identifier and the first preset mapping sub-relationship, a channel identifier corresponding to the microphone identifier;

[0011] Determine a microphone input pin identifier according to the channel identifier and the second preset mapping sub-relationship;

[0012] Among them, the preset mapping relationship includes the first preset mapping sub-relationship and the second preset mapping sub-relationship, the first preset mapping sub-relationship is used to reflect the correspondence between the microphone identifier and the corresponding channel identifier, and the second preset mapping sub-relationship is used to reflect the correspondence between the channel identifier and the microphone input pin identifier.

[0013] Optionally, the application processor is further used to obtain a phase correction parameter of a microphone to be phase corrected, and send the phase correction parameter to the digital signal processor;

[0014] The digital signal processor is specifically configured to correct the audio signal in the storage space according to the phase correction parameter.

[0015] Optionally, the application processor is specifically used for:

[0016] Receiving an input operation of a microphone identifier for a microphone to be phase corrected in a display interface;

[0017] In response to the input operation, a microphone identification of a microphone to be phase corrected is determined.

[0018] Optionally, the application processor is specifically used to configure a hardware abstraction layer deployed in the application processor to obtain a microphone identifier of the microphone to be phase corrected for any microphone to be phase corrected, and a kernel layer deployed in the application processor determines a microphone input pin identifier based on the microphone identifier and a preset mapping relationship, and sends the microphone input pin identifier to a digital signal processor.

[0019] Optionally, the application processor is specifically used for:

[0020] The hardware abstraction layer deployed in the application processor reads a phase correction configuration file, obtains a microphone identifier and a phase correction identifier of a microphone to be phase corrected, encapsulates the microphone identifier and the phase correction identifier of the microphone to be phase corrected into a kcontrol node, and transmits the kcontrol node to a kernel layer deployed in the application processor through an ioctl system, wherein the phase correction identifier is used to instruct the application processor to determine a microphone input pin identifier according to the microphone identifier at the kernel layer, and sends the microphone input pin identifier to a digital signal processor;

[0021] The kernel layer deployed in the application processor calls the put function registered by the kcontrol node to obtain the microphone identifier and phase correction identifier of the microphone to be phase corrected encapsulated in the kcontrol node, and determines the microphone input pin identifier according to the microphone identifier and a preset mapping relationship under the indication of the phase correction identifier, and sends the microphone input pin identifier to the digital signal processor.

[0022] According to a second aspect of the present application, a method for phase correction of an audio signal is provided, comprising:

[0023] The application processor obtains the microphone identifier of the microphone to be phase corrected for any microphone to be phase corrected, determines the microphone input pin identifier according to the microphone identifier and a preset mapping relationship, and sends the microphone input pin identifier to the digital signal processor, wherein the preset mapping relationship is used to reflect the correspondence between the microphone identifier and the corresponding microphone input pin identifier;

[0024] The digital signal processor obtains the microphone input pin identifier from the application processor, determines a storage space where an audio signal picked up by a microphone corresponding to the microphone input pin identifier is located, and corrects the audio signal in the storage space.

[0025] Optionally, determining the microphone input pin identifier according to the microphone identifier includes:

[0026] Determine, according to the microphone identifier and the first preset mapping sub-relationship, a channel identifier corresponding to the microphone identifier;

[0027] Determine a microphone input pin identifier according to the channel identifier and the second preset mapping sub-relationship;

[0028] Among them, the preset mapping relationship includes the first preset mapping sub-relationship and the second preset mapping sub-relationship, the first preset mapping sub-relationship is used to reflect the correspondence between the microphone identifier and the corresponding channel identifier, and the second preset mapping sub-relationship is used to reflect the correspondence between the channel identifier and the microphone input pin identifier.

[0029] Optionally, the method further comprises:

[0030] The application processor obtains a phase correction parameter of a microphone to be phase corrected, and sends the phase correction parameter to the digital signal processor;

[0031] The digital signal processor corrects the audio signal stored in the storage space according to the phase correction parameter.

[0032] Optionally, obtaining the microphone identifier of the microphone to be phase corrected includes:

[0033] Receiving an input operation of a microphone identifier for a microphone to be phase corrected in a display interface;

[0034] In response to the input operation, a microphone identification of a microphone to be phase corrected is determined.

[0035] Optionally, the application processor obtains a microphone identifier of the microphone to be phase corrected for any microphone to be phase corrected, determines a microphone input pin identifier according to the microphone identifier, and sends the microphone input pin identifier to a digital signal processor, including:

[0036] The hardware abstraction layer deployed in the application processor obtains the microphone identifier of any microphone to be phase corrected, and the kernel layer deployed in the application processor determines the microphone input pin identifier based on the microphone identifier and a preset mapping relationship, and sends the microphone input pin identifier to the digital signal processor.

[0037] Optionally, the hardware abstraction layer deployed in the application processor obtains the microphone identifier of the microphone to be phase corrected for any microphone to be phase corrected, and the kernel layer deployed in the application processor determines the microphone input pin identifier according to the microphone identifier and a preset mapping relationship, and sends the microphone input pin identifier to the digital signal processor, including:

[0038] The hardware abstraction layer deployed in the application processor reads a phase correction configuration file, obtains a microphone identifier and a phase correction identifier of a microphone to be phase corrected, encapsulates the microphone identifier and the phase correction identifier of the microphone to be phase corrected into a kcontrol node, and transmits the kcontrol node to a kernel layer deployed in the application processor through an ioctl system, wherein the phase correction identifier is used to instruct the application processor to determine a microphone input pin identifier according to the microphone identifier at the kernel layer, and sends the microphone input pin identifier to a digital signal processor;

[0039] The kernel layer deployed in the application processor calls the put function registered by the kcontrol node to obtain the microphone identifier and phase correction identifier of the microphone to be phase corrected encapsulated in the kcontrol node, and determines the microphone input pin identifier according to the microphone identifier and a preset mapping relationship under the indication of the phase correction identifier, and sends the microphone input pin identifier to the digital signal processor.

[0040] According to a third aspect of the present application, an electronic device is provided, the electronic device comprising the phase correction system for an audio signal as described in any one of the first aspects; or,

[0041] The electronic device comprises a memory and a processor, the memory being used to store computer instructions, and the processor being used to call the computer instructions from the memory to execute the method as described in any one of the second aspects.

[0042] According to a fourth aspect of the present application, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the method according to any one of the second aspects is implemented.

[0043] The present application provides a phase correction system for an audio signal, comprising: an application processor, for obtaining a microphone identifier of a microphone to be phase corrected for any microphone to be phase corrected, determining a microphone input pin identifier according to the microphone identifier and a preset mapping relationship, and sending the microphone input pin identifier to a digital signal processor, wherein the preset mapping relationship is used to reflect the correspondence between the microphone identifier and the corresponding microphone input pin identifier; the digital signal processor, for obtaining the microphone input pin identifier from the application processor, determining a storage space where an audio signal picked up by the microphone corresponding to the microphone input pin identifier is located, and correcting the audio signal in the storage space. The phase correction system for an audio signal can complete the phase correction of an audio signal picked up by a microphone. Specifically, the application processor transmits the microphone input pin identifier corresponding to the microphone to be phase corrected to the digital signal processor, and the digital signal processor corrects the audio signal of the microphone to be phase corrected based on the microphone input pin identifier. In this way, on the one hand, phase correction is avoided in the HAL layer, KERNEL layer or codec driver of the application processor, thereby avoiding the problem of being unable to perform phase correction due to the inability to obtain the audio signal of a single-channel microphone. On the other hand, it can be freed from the limitations of recording scenarios and cover all recording scenarios. This avoids the problem that, for example, only the correction algorithm for a specific recording scenario is integrated in the digital signal processor, resulting in audio correction only being able to be performed in the specific recording scenario where the algorithm is loaded. On the other hand, phase correction is automatically completed without interfering with the recording process of the microphone and is imperceptible to the user. On the other hand, by correcting the audio signal in the storage space where the audio signal of the microphone to be phase corrected is located, the added computing power and power consumption are low.

[0044] Other features and advantages of the present application will become apparent from the following detailed description of exemplary embodiments of the present application with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0045] The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments of the application and, together with the description, serve to explain the principles of the application.

[0046] Figure 1 This is a schematic diagram of the structure of a phase correction system for an audio signal provided by the present application. Figure 1 ;

[0047] Figure 2 This is a schematic diagram of the structure of a phase correction system for an audio signal provided by the present application. Figure 2 ;

[0048] Figure 3 This is a schematic diagram of the structure of a phase correction system for an audio signal provided by the present application. Figure 3 ;

[0049] Figure 4 It is a method flow chart of a phase correction system for an audio signal provided by the present application;

[0050] Figure 5 It is a structural schematic diagram of an electronic device provided by this application. DETAILED DESCRIPTION

[0051] Various exemplary embodiments of the present application will now be described in detail with reference to the accompanying drawings. It should be noted that unless otherwise specifically stated, the relative arrangement of components and steps, numerical expressions and numerical values ​​set forth in these embodiments do not limit the scope of the present application.

[0052] The following description of at least one exemplary embodiment is merely illustrative in nature and is in no way intended to limit the present application, its application, or uses.

[0053] Technologies, methods, and equipment known to ordinary technicians in the relevant art may not be discussed in detail, but where appropriate, the technologies, methods, and equipment should be considered part of the specification.

[0054] In all examples shown and discussed herein, any specific values ​​should be interpreted as merely exemplary and not limiting. Therefore, other examples of the exemplary embodiments may have different values.

[0055] It should be noted that like reference numerals and letters refer to similar items in the following figures, and therefore, once an item is defined in one figure, it need not be further discussed in subsequent figures.

[0056] The present application provides a phase correction system 100 for an audio signal, such as Figure 1 As shown, including:

[0057] The application processor 101 is used to obtain a microphone identifier of the microphone to be phase corrected for any microphone to be phase corrected, determine a microphone input pin identifier according to the microphone identifier and a preset mapping relationship, and send the microphone input pin identifier to a digital signal processor, wherein the preset mapping relationship is used to reflect a correspondence between the microphone identifier and the corresponding microphone input pin identifier;

[0058] The digital signal processor 102 is used to obtain the microphone input pin identifier from the application processor 101, determine the storage space where the audio signal picked up by the microphone corresponding to the microphone input pin identifier is located, and correct the audio signal in the storage space.

[0059] In this embodiment, for the same electronic device, the microphone to be phase corrected among all the microphones included in the electronic device is determined in advance based on acoustic experiments, for example, the microphone to be phase corrected in the microphone array included in the electronic device is determined. Further, after the microphone to be phase corrected is determined, the microphone identifier of the microphone to be phase corrected is input into the application processor 101. It can be understood that one electronic device corresponds to at least one microphone to be phase corrected. The following embodiment takes a microphone to be phase corrected as an example to illustrate the phase correction process.

[0060] Based on the above content, the application processor 101 may specifically obtain the microphone identifier of the microphone to be phase corrected through the following steps S11 and S12.

[0061] Step S11, receiving an input operation of a microphone identifier of a microphone to be phase corrected on a display interface.

[0062] Step S12: in response to the input operation, determining the microphone identifier of the microphone to be phase corrected.

[0063] In one embodiment of the present application, the application processor 101 provides a display interface, and an input interface is provided on the display interface, and the input interface is used by the user to input the microphone identifier of the microphone to be phase corrected. The user inputs the microphone identifier of the microphone to be phase corrected in the input interface. The application processor 101 recognizes the operation of the user inputting the microphone identifier of the microphone to be phase corrected in the input interface as an input operation. Further, the application processor 101 parses the input operation and determines the microphone identifier of the microphone to be phase corrected.

[0064] In one example, the microphone identifier may be, for example, a microphone number.

[0065] In one embodiment of the present application, after the application processor 101 obtains the microphone identifier of the microphone to be phase corrected based on the above steps S11 and S12, the microphone identifier of the microphone to be phase corrected and the phase correction identifier are written into the phase correction configuration file. The phase correction identifier is used to instruct the application processor 101 to determine the microphone input pin identifier according to the microphone identifier and the preset mapping relationship after reading the microphone identifier, and send the microphone input pin identifier to the digital signal processor 102.

[0066] Through the above steps S11 and S12, in the phase correction system 100 for audio signals provided by the present application, the user can specify the microphone identifier of the microphone to be phase corrected, which improves the flexibility of the phase correction system 100 for audio signals provided by the present application.

[0067] In one embodiment of the present application, Figure 2 As shown, a hardware abstraction layer (HAL) and a kernel layer are deployed in the application processor 101. In this regard, the application processor 101 specifically implements the following steps S21 and S22 to obtain the microphone identifier of the microphone to be phase corrected for any microphone to be phase corrected, determine the microphone input pin identifier according to the microphone identifier, and send the microphone input pin identifier to the digital signal processor 102.

[0068] Step S21 : The hardware abstraction layer deployed in the application processor 101 obtains the microphone identifier of any microphone to be phase corrected.

[0069] Step S22 , the kernel layer deployed in the application processor 101 determines the microphone input pin identifier according to the microphone identifier and the preset mapping relationship, and sends the microphone input pin identifier to the digital signal processor 102 .

[0070] In one embodiment of the present application, the above step S21 is implemented by the following step S210.

[0071] In step S210, the hardware abstraction layer deployed in the application processor 101 reads the phase correction configuration file, obtains the microphone identifier and the phase correction identifier of the microphone to be phase corrected, encapsulates the microphone identifier and the phase correction identifier of the microphone to be phase corrected into a kcontrol node, and passes the kcontrol node to the kernel layer deployed in the application processor through the ioctl system. The phase correction identifier is used to instruct the application processor to determine the microphone input pin identifier according to the microphone identifier in the kernel layer, and send the microphone input pin identifier to the digital signal processor 102.

[0072] In one embodiment of the present application, the above step S22 is implemented by the following step S220.

[0073] In step S220, the kernel layer deployed in the application processor 101 calls the put function registered by the kcontrol node to obtain the microphone identifier and phase correction identifier of the microphone to be phase corrected encapsulated in the kcontrol node, and determines the microphone input pin identifier according to the microphone identifier and the preset mapping relationship under the indication of the phase correction identifier, and sends the microphone input pin identifier to the digital signal processor 102.

[0074] In this embodiment, after the application processor 101 reads the phase correction configuration file at the HAL layer to obtain the microphone identifier and the correction identifier of the microphone to be phase corrected, the microphone identifier and the phase correction identifier of the microphone to be phase corrected are encapsulated into a kcontrol node, and the aforementioned kcontrol node is passed to the KERNEL layer through the ioctl system. Among them, the phase correction identifier is used to instruct the application processor 101 to determine the microphone input pin identifier according to the microphone identifier at the KERNEL layer, and then send the microphone input pin identifier to the digital signal processor 102, and the phase correction identifier can be exemplarily true. On this basis, the application processor 101 responds to the aforementioned ioctl system at the KERNEL layer, calls the put function registered by the aforementioned kcontrol node, to obtain the microphone identifier and the phase correction identifier of the microphone to be phase corrected in the kcontrol node, and under the indication of the phase correction identifier, according to the microphone identifier and the preset mapping relationship, determines the microphone input pin identifier, and then sends the microphone input pin identifier to the digital signal processor 102.

[0075] Among them, the kcontrol node is the control interface in the sound card, which is used to implement various control functions of the audio device. And the ioctl (Input / Output Control) system is an input / output control system, which is a system call widely used in UNIX and UNIX-like operating systems (such as Linux, BSD, etc.). Its main function is to provide a mechanism to allow user programs to communicate with kernel drivers or device drivers at a low level.

[0076] In one embodiment of the present application, different microphone identifiers correspond to different microphone input pin identifiers. On this basis, the application processor 101 records a preset mapping relationship between the microphone identifier of each microphone and the microphone input pin identifier. In this regard, the application processor 101 searches for a microphone input pin identifier that matches the acquired microphone identifier of the microphone to be phase corrected in the aforementioned preset mapping relationship, so as to achieve the above-mentioned determination of the microphone input pin identifier based on the microphone identifier.

[0077] In one embodiment of the present application, in actual application, there is a situation where the channel to which the microphone is configured changes. In order to avoid the problem of determining an erroneous microphone input pin identifier due to the change in the channel to which the microphone is configured, the application processor 101 determines the microphone input pin identifier according to the microphone identifier according to the following steps S31 and S32.

[0078] Step S31: Determine a channel identifier corresponding to the microphone identifier according to the microphone identifier and the first preset mapping sub-relationship.

[0079] Step S32: Determine the microphone input pin identifier according to the channel identifier and the second preset mapping sub-relationship.

[0080] Among them, the preset mapping relationship includes a first preset mapping sub-relationship and a second preset mapping sub-relationship. The first preset mapping sub-relationship is used to reflect the correspondence between the microphone identifier and the corresponding channel identifier, and the second preset mapping sub-relationship is used to reflect the correspondence between the channel identifier and the microphone input pin identifier.

[0081] In this embodiment, different microphones are configured to different channels in different scenarios, and the application processor 101 records a first preset mapping sub-relationship between the microphone identifier of each microphone in the current scenario and the channel identifier of the configured channel. In this regard, the channel identifier matching the acquired microphone identifier of the microphone to be phase corrected is searched in the first preset mapping sub-relationship to implement the above step S31.

[0082] And, the correspondence between the channel and the microphone input pin is fixed. The application processor 101 records the second preset mapping sub-relationship between the microphone input pin identifiers (i.e., AFE pin identifiers) corresponding to the channel identifiers of different channels. In this regard, the microphone input pin identifier matching the channel identifier obtained based on the above step S31 is searched in the above second preset mapping sub-relationship to implement the above step S32.

[0083] In one embodiment of the present application, the application processor 101 may obtain any of the above mapping relationships in the mixer path configuration.

[0084] After acquiring the microphone input pin identifier, the application processor 101 sends the microphone input pin identifier to the digital signal processor 102. In one embodiment of the present application, the digital signal processor 102 may be specifically a digital audio signal processor.

[0085] And, in order to send the microphone input pin identifier to the digital signal processor 102, the microphone input pin identifier is encapsulated into an APR message, and the APR message is sent to the digital signal processor 102. After receiving the APR message, the digital signal processor 102 parses the APR message to obtain the microphone input pin identifier. Furthermore, on the basis that the sound signal picked up by the microphone is stored in the corresponding storage space via the microphone input pin connected to the corresponding channel, the storage space of the audio signal picked up by the microphone corresponding to the microphone input pin identifier can be determined according to the microphone input pin identifier. Furthermore, the audio data stored in the aforementioned storage space is corrected. In one example, when the microphone to be phase corrected is a microphone whose phase needs to be adjusted by 180°, the audio data data in the aforementioned storage space is corrected to 0-data.

[0086] Based on the above content, it can be known that the phase correction system 100 of the audio signal provided in the present application can complete the phase correction of the audio signal picked up by the microphone. Specifically, the microphone input pin identifier corresponding to the microphone to be phase corrected is transmitted from the application processor 101 to the digital signal processor 102, and the digital signal processor 102 corrects the audio signal of the microphone to be phase corrected based on the microphone input pin identifier. In this way, on the one hand, phase correction is avoided in the HAL layer, KERNEL layer or codec driver of the application processor 101, thereby avoiding the problem that the phase correction cannot be performed because the audio signal of a single-channel microphone cannot be obtained. On the other hand, it can be separated from the limitation of the recording scene and cover all recording scenes, which avoids the problem that, for example, only the correction algorithm for a specific recording scene is integrated in the digital signal processor 102, resulting in the problem that audio correction can only be performed in a specific recording scene where the algorithm is loaded. On the other hand, the phase correction is automatically completed without interfering with the recording process of the microphone, and the user is not aware of it. On the other hand, by correcting the audio signal in the storage space where the audio signal of the microphone to be phase corrected is located, the newly added computing power and power consumption are low.

[0087] The present application provides a phase correction system for an audio signal, comprising: an application processor, for obtaining a microphone identifier of a microphone to be phase corrected for any microphone to be phase corrected, determining a microphone input pin identifier according to the microphone identifier and a preset mapping relationship, and sending the microphone input pin identifier to a digital signal processor, wherein the preset mapping relationship is used to reflect the correspondence between the microphone identifier and the corresponding microphone input pin identifier; a digital signal processor, for obtaining the microphone input pin identifier from the application processor, determining a storage space where an audio signal picked up by the microphone corresponding to the microphone input pin identifier is located, and correcting the audio signal in the storage space. The phase correction system for an audio signal can complete the phase correction of the audio signal picked up by the microphone. Specifically, the application processor transmits the microphone input pin identifier corresponding to the microphone to be phase corrected to the digital signal processor, and the digital signal processor corrects the audio signal of the microphone to be phase corrected based on the microphone input pin identifier. In this way, on the one hand, phase correction is avoided in the HAL layer, KERNEL layer or codec driver of the application processor, thereby avoiding the problem of being unable to perform phase correction due to the inability to obtain the audio signal of a single-channel microphone. On the other hand, it can be freed from the limitations of recording scenarios and cover all recording scenarios. This avoids the problem that, for example, only the correction algorithm for a specific recording scenario is integrated in the digital signal processor, resulting in audio correction only being able to be performed in the specific recording scenario where the algorithm is loaded. On the other hand, phase correction is automatically completed without interfering with the recording process of the microphone and is imperceptible to the user. On the other hand, by correcting the audio signal in the storage space where the audio signal of the microphone to be phase corrected is located, the added computing power and power consumption are low.

[0088] In one embodiment of the present application, in order to accurately correct the audio phase of the microphone to be phase corrected, the phase correction parameters corresponding to the audio signal of the microphone to be phase corrected can be determined in advance according to acoustic experiments. The phase correction parameters include the phase correction direction and the phase correction amplitude. On this basis, the application processor 101 is also used to perform the following step S41.

[0089] Step S41 , obtaining a phase correction parameter of the microphone to be phase corrected, and sending the phase correction parameter to the digital signal processor 102 .

[0090] Corresponding to the above step S41, the digital signal processor 102 is specifically configured to modify the audio signal in the storage space according to the following step S42.

[0091] Step S42: correcting the audio signal in the storage space according to the phase correction parameter.

[0092] It should be noted that the method for the application processor 101 to obtain the phase correction parameter of the microphone in the above step S41 can be the same as the method for the application processor to obtain the microphone identifier, and the method for sending the phase correction parameter to the digital signal processor 102 can be the same as the method for the application processor to send the microphone input pin identifier to the digital signal processor 102. No further details will be given here.

[0093] Based on the above content, in one embodiment of the present application, the present application provides a phase correction system 100 for an audio signal, such as Figure 3 As shown. The application processor 101 includes a phase correction indication module 1011, a kcontrol node configuration module 1012, a microphone identification and channel identification mapping module 1013, a channel identification and microphone input pin identification mapping module 1014, and an APR message sending module 1015, wherein the phase correction indication module 1011 and the kcontrol node configuration module 1012 are implemented through the HAL layer, and the microphone identification and channel identification mapping module 1013, the channel identification and microphone input pin identification mapping module 1014, and the APR message sending module 1015 are implemented through the KERNEL layer. The digital signal processor 102 includes an APR message receiving module 1021 and a phase correction module 1022.

[0094] Specifically, the phase correction indication module 1011 is used to obtain the microphone identifier of the microphone to be phase corrected, and write the microphone identifier of the microphone to be phase corrected and the phase correction identifier into the phase correction configuration file;

[0095] The kcontrol node configuration module 1012 is used to read the phase correction configuration file to obtain the microphone identifier and the correction identifier of the microphone to be phase corrected, encapsulate the microphone identifier and the phase correction identifier of the microphone to be phase corrected into a kcontrol node, and pass the aforementioned kcontrol node to the KERNEL layer through the ioctl system;

[0096] The microphone identifier and channel identifier mapping module 1013 is used to determine the channel identifier corresponding to the microphone identifier according to the microphone identifier;

[0097] The channel identifier and microphone input pin identifier mapping module 1014 is used to determine the microphone input pin identifier according to the channel identifier;

[0098] The APR message sending module 1015 is used to encapsulate the microphone input pin identifier into an APR message and send the APR message to the digital signal processor 102;

[0099] The APR message receiving module 1021 is used to parse the APR message after receiving the APR message sent by the APR message sending module 1015 to obtain the microphone input pin identifier;

[0100] The phase correction module 1022 is used to determine the storage space of the audio signal picked up by the microphone corresponding to the microphone input pin identifier according to the microphone input pin identifier, and correct the audio data stored in the aforementioned storage space.

[0101] The present application also provides a method for phase correction of an audio signal, such as Figure 4 As shown, the process includes the following steps S410 and S420.

[0102] Step S410, the application processor obtains the microphone identifier of the microphone to be phase corrected for any microphone to be phase corrected, determines the microphone input pin identifier according to the microphone identifier and a preset mapping relationship, and sends the microphone input pin identifier to the digital signal processor, wherein the preset mapping relationship is used to reflect the correspondence between the microphone identifier and the corresponding microphone input pin identifier;

[0103] Step S420: the digital signal processor obtains the microphone input pin identifier from the application processor, determines a storage space where an audio signal picked up by a microphone corresponding to the microphone input pin identifier is located, and corrects the audio signal in the storage space.

[0104] In one embodiment of the present application, the step of determining the microphone input pin identifier according to the microphone identifier in the above step S410 includes the following steps S411 and S412.

[0105] Step S411, determining a channel identifier corresponding to the microphone identifier according to the microphone identifier and a first preset mapping sub-relationship;

[0106] Step S412, determining a microphone input pin identifier according to the channel identifier and the second preset mapping sub-relationship;

[0107] Among them, the preset mapping relationship includes the first preset mapping sub-relationship and the second preset mapping sub-relationship, the first preset mapping sub-relationship is used to reflect the correspondence between the microphone identifier and the corresponding channel identifier, and the second preset mapping sub-relationship is used to reflect the correspondence between the channel identifier and the microphone input pin identifier.

[0108] In one embodiment of the present application, the phase correction method of the audio signal provided by the present application further includes the following step S430.

[0109] Step S430, the application processor obtains a phase correction parameter of the microphone to be phase corrected, and sends the phase correction parameter to the digital signal processor;

[0110] In this embodiment, the step S420 of correcting the audio signal in the storage space is specifically implemented by the following step S421.

[0111] Step S421: The digital signal processor corrects the audio signal stored in the storage space according to the phase correction parameter.

[0112] In one embodiment of the present application, the step of obtaining the microphone identifier of the microphone to be phase corrected in the above step S410 is implemented by the following steps S413 and S414.

[0113] Step S413, receiving an input operation of a microphone identifier for a microphone to be phase corrected in the display interface;

[0114] Step S414: In response to the input operation, determine the microphone identifier of the microphone to be phase corrected.

[0115] In one embodiment of the present application, the above step S410 is specifically implemented through the following step S415.

[0116] Step S415, the hardware abstraction layer deployed in the application processor obtains the microphone identifier of the microphone to be phase corrected for any microphone to be phase corrected, and the kernel layer deployed in the application processor determines the microphone input pin identifier based on the microphone identifier and a preset mapping relationship, and sends the microphone input pin identifier to the digital signal processor.

[0117] In one embodiment of the present application, the above step S415 is specifically implemented by the following step S4151.

[0118] Step S4151, the hardware abstraction layer deployed in the application processor reads the phase correction configuration file, obtains the microphone identifier and the phase correction identifier of the microphone to be phase corrected, encapsulates the microphone identifier and the phase correction identifier of the microphone to be phase corrected into a kcontrol node, and transmits the kcontrol node to the kernel layer deployed in the application processor through the ioctl system, wherein the phase correction identifier is used to instruct the application processor to determine the microphone input pin identifier according to the microphone identifier at the kernel layer, and send the microphone input pin identifier to the digital signal processor;

[0119] The kernel layer deployed in the application processor calls the put function registered by the kcontrol node to obtain the microphone identifier and phase correction identifier of the microphone to be phase corrected encapsulated in the kcontrol node, and determines the microphone input pin identifier according to the microphone identifier and a preset mapping relationship under the indication of the phase correction identifier, and sends the microphone input pin identifier to the digital signal processor.

[0120] The present application also provides an electronic device, which includes the phase correction system 100 for audio signals provided by any of the above embodiments.

[0121] Or, if Figure 5 As shown, the electronic device 500 includes a memory 510 and a processor 520, wherein the memory 510 is used to store computer instructions, and the processor 520 is used to call the computer instructions from the memory 510 to execute any one of the phase correction methods for audio signals provided in the above method embodiments.

[0122] In the above embodiment, the processor 520 includes an application processor and a digital signal processor.

[0123] The present application also provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the computer program implements any one of the audio signal phase correction methods provided in the above method embodiments.

[0124] The present application may be a system, a method and / or a computer program product. The computer program product may include a computer-readable storage medium carrying computer-readable program instructions for causing a processor to implement various aspects of the present application.

[0125] A computer-readable storage medium may be a tangible device that can hold and store instructions used by an instruction execution device. A computer-readable storage medium may be, for example, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples of computer-readable storage media (a non-exhaustive list) include: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a static random access memory (SRAM), a portable compact disk read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanical encoding device, such as a punch card or a raised structure in a groove on which instructions are stored, and any suitable combination of the foregoing. As used herein, a computer-readable storage medium is not to be interpreted as a transient signal per se, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or other transmission medium (e.g., a light pulse through a fiber optic cable), or an electrical signal transmitted through a wire.

[0126] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to each computing / processing device, or downloaded to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network can include copper transmission cables, optical fiber transmissions, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. The network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in the computer-readable storage medium in each computing / processing device.

[0127] The computer program instructions for performing the operation of the present application can be assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages, such as Smalltalk, C++, etc., and conventional procedural programming languages, such as "C" language or similar programming languages. Computer-readable program instructions can be executed completely on a user's computer, partially on a user's computer, executed as an independent software package, partially on a user's computer, partially on a remote computer, or completely on a remote computer or server. In the case of a remote computer, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computer (for example, using an Internet service provider to connect through the Internet). In some embodiments, by using the state information of a computer-readable program instruction to personalize an electronic circuit, such as a programmable logic circuit, a field programmable gate array (FPGA) or a programmable logic array (PLA), the electronic circuit can execute a computer-readable program instruction, thereby realizing various aspects of the present application.

[0128] Various aspects of the present application are described herein with reference to the flowcharts and / or block diagrams of the methods, devices (systems) and computer program products according to the embodiments of the present application. It should be understood that each box in the flowchart and / or block diagram and the combination of each box in the flowchart and / or block diagram can be implemented by computer-readable program instructions.

[0129] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine, so that when these instructions are executed by the processor of the computer or other programmable data processing device, a device that implements the functions / actions specified in one or more boxes in the flowchart and / or block diagram is generated. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable medium storing the instructions includes a manufactured product, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes in the flowchart and / or block diagram.

[0130] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operating steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.

[0131] The flowchart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to multiple embodiments of the present application. In this regard, each box in the flowchart or block diagram can represent a part of a module, program segment or instruction, and the part of the module, program segment or instruction contains one or more executable instructions for realizing the specified logical function. In some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flowchart, and the combination of the boxes in the block diagram and / or flowchart can be implemented by a dedicated hardware-based system that performs the specified function or action, or can be implemented by a combination of dedicated hardware and computer instructions. It is well known to those skilled in the art that it is equivalent to implement it by hardware, implement it by software, and implement it by combining software and hardware.

[0132] The embodiments of the present application have been described above, and the above description is exemplary, not exhaustive, and is not limited to the disclosed embodiments. Many modifications and changes will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The selection of terms used herein is intended to best explain the principles of the embodiments, practical applications, or technical improvements to the technology in the market, or to enable other persons of ordinary skill in the art to understand the embodiments disclosed herein. The scope of the present application is defined by the appended claims.

Claims

1. A phase correction system for an audio signal, characterized in that: include: An application processor, for obtaining, for any microphone to be phase corrected, a microphone identifier of the microphone to be phase corrected, determining a microphone input pin identifier according to the microphone identifier and a preset mapping relationship, and sending the microphone input pin identifier to a digital signal processor, wherein the preset mapping relationship is used to reflect a correspondence between the microphone identifier and a corresponding microphone input pin identifier; The digital signal processor is used to obtain the microphone input pin identifier from the application processor, determine the storage space where the audio signal picked up by the microphone corresponding to the microphone input pin identifier is located, and correct the audio signal in the storage space.

2. The system according to claim 1, characterized in that The application processor is specifically used for: Determine, according to the microphone identifier and the first preset mapping sub-relationship, a channel identifier corresponding to the microphone identifier; Determine a microphone input pin identifier according to the channel identifier and the second preset mapping sub-relationship; Among them, the preset mapping relationship includes the first preset mapping sub-relationship and the second preset mapping sub-relationship, the first preset mapping sub-relationship is used to reflect the correspondence between the microphone identifier and the corresponding channel identifier, and the second preset mapping sub-relationship is used to reflect the correspondence between the channel identifier and the microphone input pin identifier.

3. The system according to claim 1, characterized in that The application processor is also used to obtain a phase correction parameter of the microphone to be phase corrected, and send the phase correction parameter to the digital signal processor; The digital signal processor is specifically configured to correct the audio signal in the storage space according to the phase correction parameter.

4. The system according to claim 1, characterized in that The application processor is specifically used for: Receiving an input operation of a microphone identifier for a microphone to be phase corrected in a display interface; In response to the input operation, a microphone identification of a microphone to be phase corrected is determined.

5. The system according to claim 1, characterized in that The application processor is specifically used to enable a hardware abstraction layer deployed in the application processor to obtain a microphone identifier of the microphone to be phase corrected for any microphone to be phase corrected, and a kernel layer deployed in the application processor to determine a microphone input pin identifier based on the microphone identifier and a preset mapping relationship, and send the microphone input pin identifier to a digital signal processor.

6. The system according to claim 5, characterized in that The application processor is specifically used for: The hardware abstraction layer deployed in the application processor reads a phase correction configuration file, obtains a microphone identifier and a phase correction identifier of a microphone to be phase corrected, encapsulates the microphone identifier and the phase correction identifier of the microphone to be phase corrected into a kcontrol node, and transmits the kcontrol node to a kernel layer deployed in the application processor through an ioctl system, wherein the phase correction identifier is used to instruct the application processor to determine a microphone input pin identifier according to the microphone identifier at the kernel layer, and sends the microphone input pin identifier to a digital signal processor; The kernel layer deployed in the application processor calls the put function registered by the kcontrol node to obtain the microphone identifier and phase correction identifier of the microphone to be phase corrected encapsulated in the kcontrol node, and determines the microphone input pin identifier according to the microphone identifier and a preset mapping relationship under the indication of the phase correction identifier, and sends the microphone input pin identifier to the digital signal processor.

7. A method for phase correction of an audio signal, characterized in that: include: The application processor obtains the microphone identifier of the microphone to be phase corrected for any microphone to be phase corrected, determines the microphone input pin identifier according to the microphone identifier and a preset mapping relationship, and sends the microphone input pin identifier to the digital signal processor, wherein the preset mapping relationship is used to reflect the correspondence between the microphone identifier and the corresponding microphone input pin identifier; The digital signal processor obtains the microphone input pin identifier from the application processor, determines a storage space where an audio signal picked up by a microphone corresponding to the microphone input pin identifier is located, and corrects the audio signal in the storage space.

8. The method according to claim 7, characterized in that The step of determining the microphone input pin identifier according to the microphone identifier includes: Determine, according to the microphone identifier and the first preset mapping sub-relationship, a channel identifier corresponding to the microphone identifier; Determine a microphone input pin identifier according to the channel identifier and the second preset mapping sub-relationship; Among them, the preset mapping relationship includes the first preset mapping sub-relationship and the second preset mapping sub-relationship, the first preset mapping sub-relationship is used to reflect the correspondence between the microphone identifier and the corresponding channel identifier, and the second preset mapping sub-relationship is used to reflect the correspondence between the channel identifier and the microphone input pin identifier.

9. The method according to claim 8, characterized in that The method further comprises: The application processor obtains a phase correction parameter of a microphone to be phase corrected, and sends the phase correction parameter to the digital signal processor; The digital signal processor corrects the audio signal stored in the storage space according to the phase correction parameter.

10. The method according to claim 7, characterized in that The step of obtaining the microphone identifier of the microphone to be phase corrected includes: Receiving an input operation of a microphone identifier for a microphone to be phase corrected in a display interface; In response to the input operation, a microphone identification of a microphone to be phase corrected is determined.

11. The method according to claim 7, characterized in that The application processor obtains a microphone identifier of the microphone to be phase corrected for any microphone to be phase corrected, determines a microphone input pin identifier according to the microphone identifier, and sends the microphone input pin identifier to a digital signal processor, including: The hardware abstraction layer deployed in the application processor obtains the microphone identifier of any microphone to be phase corrected, and the kernel layer deployed in the application processor determines the microphone input pin identifier based on the microphone identifier and a preset mapping relationship, and sends the microphone input pin identifier to the digital signal processor.

12. The method according to claim 11, characterized in that The hardware abstraction layer deployed in the application processor obtains the microphone identifier of the microphone to be phase corrected for any microphone to be phase corrected, and the kernel layer deployed in the application processor determines the microphone input pin identifier according to the microphone identifier and a preset mapping relationship, and sends the microphone input pin identifier to the digital signal processor, including: The hardware abstraction layer deployed in the application processor reads a phase correction configuration file, obtains a microphone identifier and a phase correction identifier of a microphone to be phase corrected, encapsulates the microphone identifier and the phase correction identifier of the microphone to be phase corrected into a kcontrol node, and transmits the kcontrol node to a kernel layer deployed in the application processor through an ioctl system, wherein the phase correction identifier is used to instruct the application processor to determine a microphone input pin identifier according to the microphone identifier at the kernel layer, and sends the microphone input pin identifier to a digital signal processor; The kernel layer deployed in the application processor calls the put function registered by the kcontrol node to obtain the microphone identifier and phase correction identifier of the microphone to be phase corrected encapsulated in the kcontrol node, and determines the microphone input pin identifier according to the microphone identifier and a preset mapping relationship under the indication of the phase correction identifier, and sends the microphone input pin identifier to the digital signal processor.

13. An electronic device, characterized in that: The electronic device comprises the phase correction system for audio signals according to any one of claims 1 to 6; or, The electronic device comprises a memory and a processor, wherein the memory is used to store computer instructions, and the processor is used to call the computer instructions from the memory to execute the method as claimed in any one of claims 7 to 12.

14. A computer-readable storage medium, characterized in that: A computer program is stored thereon, which implements the method according to any one of claims 7 to 12 when executed by a processor.

Citation Information

Patent Citations

  • Microphone package and method for providing a microphone package

    CN104936115A

  • Audio mixing processing method and device, computer equipment and storage medium

    CN108198565A

  • Microphone test device, calibration method thereof and readable storage medium

    CN111683333A

  • Electronic equipment and signal processing method and device

    CN114095834A

  • Sound field spatial stabilizer with spectral coherence compensation

    EP2816817A1

Cited By

  • Control method and apparatus, and head-mounted display device, and medium

    WO2026130023A1