Multichannel signal coding method, multichannel signal decoding method, encoder, and decoder
By selectively encoding target reverberation gain parameters based on inter-channel coherence and energy differences, the method addresses the inefficiency and quality degradation issues in conventional multi-channel encoding, improving encoding efficiency and maintaining audio quality.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2025-06-05
- Publication Date
- 2026-06-03
AI Technical Summary
Conventional multi-channel signal encoding methods, particularly those using parametric stereo coding, require a large number of bits to encode reverberation gain parameters for each subband, leading to increased bit overhead and potential degradation of auditory quality due to unnecessary reverberation processing.
A method that selectively encodes target reverberation gain parameters based on the coherence and energy differences between channel signals, determining which subbands to encode based on inter-channel coherence and energy comparisons, thereby reducing bit overhead and improving encoding efficiency.
This approach reduces bit overhead by encoding only necessary reverberation gain parameters, allowing more bits for other signal components and maintaining auditory quality, thus enhancing overall encoding performance.
Smart Images

Figure 0007869908000003 
Figure 0007869908000004 
Figure 0007869908000005
Abstract
Description
Technical Field
[0005] ,
[0004] ,
[0001] This application claims the priority of Chinese Patent Application No. 201710236773.3, filed with the China National Intellectual Property Administration on April 12, 2017, and entitled "MULTI-CHANNEL SIGNAL ENCODING METHOD, MULTI-CHANNEL SIGNAL DECODING METHOD, ENCODER, AND DECODER", which is incorporated herein by reference in its entirety.
[0002] This application relates to the field of audio encoding, and more particularly, to multi-channel signal encoding methods, multi-channel signal decoding methods, encoders, and decoders.
Background Art
[0003] As the quality of life improves, people are demanding higher-quality audio. Compared with monaural audio, stereo audio realizes a sense of direction and distribution for each sound source, and realizes improved clarity, intelligibility, and a sense of live audio. Therefore, stereo audio is very popular.
[0004] Stereo processing techniques mainly include mid / side (Mid / Sid, MS) encoding, intensity stereo (IS) encoding, and parametric stereo (PS) encoding.
[0005] In conventional techniques, when PS coding is used to encode a multi-channel signal, the encoder must calculate the reverberation gain parameter corresponding to each subband of the channel signal and encode this parameter. As a result, the decoder can perform reverberation processing on each subband of the channel signal based on the corresponding reverberation gain parameter. However, encoding the reverberation gain parameter for each subband of the channel signal requires a relatively large number of bits to be occupied, and in some cases, performing reverberation processing on each subband of the channel signal can degrade the auditory effect. [Overview of the project] [Means for solving the problem]
[0006] This application provides a multi-channel signal coding method, a multi-channel signal decoding method, an encoder, and a decoder to improve coding efficiency.
[0007] According to a first embodiment, a multichannel signal coding method is provided, the method comprising the steps of: determining downmix signals of a first channel signal and a second channel signal in a multichannel signal, and reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal; determining a target reverberation gain parameter that needs to be coded within the reverberation gain parameter corresponding to different subbands of the first channel signal and the second channel signal; generating parameter indication information, the parameter indication information being used to indicate the subbands corresponding to the target reverberation gain parameter; and coding the target reverberation gain parameter, the parameter indication information, and the downmix signal to generate a bitstream.
[0008] In this application, when the first and second channel signals are encoded, reverberation gain parameters corresponding to only some subbands of the first and second channel signals may be encoded. Compared to the prior art method, which requires that reverberation gain parameters corresponding to all subbands of the first and second channel signals be encoded, bit overhead can be reduced to some extent, and encoding efficiency can be improved. Specifically, when reverberation gain parameters corresponding to some subbands are encoded, a large number of saved bits can be used to encode other parameters or to allocate more bits to the downmix signal, thereby improving overall encoding performance.
[0009] Referring to the first embodiment, in some implementations of the first embodiment, the step of determining a target reverberation gain parameter that needs to be encoded within reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal includes determining the target reverberation gain parameter based on at least one of the energy of the first channel signal and the energy of the second channel signal, the inter-channel coherence IC between the first channel signal and the second channel signal, the energy of the downmix signal, and the inter-channel level difference ILD between the first channel signal and the second channel signal.
[0010] The coherence between the first channel signal and the second channel signal can be determined based on the energy of the channel signal or the energy of the downmix signal, IC, ILD, etc., and the target reverberation gain parameter that needs to be encoded can be appropriately determined from the reverberation gain parameters corresponding to all subbands of the first and second channel signals, based on the coherence between the first and second channel signals. Thus, some bits can be saved considering the quality of the channel signal, and encoding efficiency can be improved. Specifically, when the coherence between the first and second channel signals is relatively low, only the reverberation gain parameters corresponding to the low-frequency subbands of the first and second channel signals may be encoded. When the coherence between the first and second channel signals is relatively high, in addition to the reverberation gain parameters corresponding to the low-frequency subbands of the first and second channel signals, the reverberation gain parameters corresponding to the high-frequency subbands of the first and second channel signals may also be encoded.
[0011] Referring to the first embodiment, in some implementations of the first embodiment, the step of determining a target reverberation gain parameter that needs to be encoded in reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal includes the step of determining the target reverberation gain parameter based on at least one of the coherence between the energy of the first channel signal and the energy of the downmix signal, and the coherence between the energy of the second channel signal and the energy of the downmix signal.
[0012] The energy values of the first channel signal, the second channel signal, and the downmix signal may be values obtained after normalization.
[0013] The coherence between both the first and second channel signals and the downmix signal can be conveniently measured using the energy of the channel signals; that is, the target reverberation gain parameter that needs to be encoded can be conveniently determined by comparing the difference between the energy of the channel signal and the energy of the downmix signal. Specifically, when the difference between the energy of the channel signal and the energy of the downmix signal is relatively large, the coherence between the channel signal and the downmix signal can be considered relatively low, in which case only the reverberation gain parameter corresponding to the low-frequency subband of the channel signal may be encoded.
[0014] Referring to the first embodiment, in some implementations of the first embodiment, each of the first channel signal and the second channel signal includes a plurality of frequency bins, and the step of determining a target reverberation gain parameter based on at least one of the coherence between the energy of the first channel signal and the energy of the downmix signal, includes the step of determining a first difference value between the energy of the first channel signal and the energy of the downmix signal, wherein the first difference value is used to indicate the sum of the absolute values of the difference values between the energy of the first channel signal and the energy of the downmix signal in the plurality of frequency bins, and the step of determining that the reverberation gain parameter corresponding to a subband of a first frequency band is the target reverberation gain parameter when the first difference value is greater than a first threshold, wherein the first frequency band is a portion of all the frequency bands of each of the first channel signal and the second channel signal.
[0015] Referring to the first embodiment, in some implementations of the first embodiment, each of the first channel signal and the second channel signal includes a plurality of frequency bins, and the step of determining a target reverberation gain parameter based on at least one of the coherence between the energy of the first channel signal and the energy of the downmix signal, includes the step of determining a second difference value between the energy of the second channel signal and the energy of the downmix signal, wherein the second difference value is used to indicate the sum of the absolute values of the difference values between the energy of the second channel signal and the energy of the downmix signal in the plurality of frequency bins, and the step of determining that the reverberation gain parameter corresponding to a subband of the first frequency band is the target reverberation gain parameter when the second difference value is greater than a second threshold, wherein the first frequency band is a portion of all the frequency bands of each of the first channel signal and the second channel signal.
[0016] Referring to the first embodiment, in some implementations of the first embodiment, each of the first channel signal and the second channel signal includes a plurality of frequency bins, and the step of determining a target reverberation gain parameter based on at least one of the coherence between the energy of the first channel signal and the energy of the downmix signal, and the coherence between the energy of the second channel signal and the energy of the downmix signal, is the step of determining a first difference value between the energy of the first channel signal and the energy of the downmix signal, wherein the first difference value represents the sum of the absolute values of the difference values between the energy of the first channel signal and the energy of the downmix signal in the plurality of frequency bins. The steps include: a step used for; a step of determining a second difference value between the energy of a second channel signal and the energy of a downmix signal, wherein the second difference value is used to represent the sum of the absolute values of the difference values between the energy of a second channel signal and the energy of a downmix signal in a plurality of frequency bins; and a step of determining that the reverberation gain parameter corresponding to a subband of a first frequency band is the target reverberation gain parameter when the first difference value is greater than a first threshold and the second difference value is greater than a second threshold, wherein the first frequency band is a part of all the frequency bands of the first channel signal and the second channel signal, respectively.
[0017] The difference between the energy of the first channel signal and the energy of the downmix signal in multiple frequency bins, and the difference between the energy of the second channel signal and the energy of the downmix signal in multiple frequency bins, may be values obtained after normalization.
[0018] When the coherence between the first or second channel signal and the downmix signal is relatively high, the first and second channel signals can be considered as two relatively similar channel signals (when two channel signals are relatively similar, the mixed signal obtained by mixing the two channel signals is relatively similar to the two channel signals before mixing). When the coherence between the first or second channel signal and the downmix signal is relatively low, the first and second channel signals can be considered as two relatively different channel signals.
[0019] The coherence between a first channel signal and a downmix signal is used as an example. The coherence between a first channel signal and a downmix signal may be measured by using a first difference value between the energy of the first channel signal and the energy of the downmix signal. When the first difference value is relatively large, the coherence between the first channel signal and the downmix signal may be considered relatively low. When the first difference value is relatively small, the coherence between the first channel signal and the downmix signal may be considered relatively high.
[0020] The difference between the energy of both the first channel signal and the second channel signal and the energy of the downmix signal is the target Reverberation Gain Parameters To further determine this, it can be conveniently determined by comparing the difference between the energy of the first channel signal and the energy of the second channel signal and the energy of the downmix signal in multiple frequency bins. Therefore, it is not necessary to compare the energy of the first channel signal and the energy of the second channel signal across all frequency bands.
[0021] When the energy of the first channel signal and / or the energy of the second channel signal differ relatively from the energy of the downmix signal, encoding reverberation gain parameters corresponding to several frequency band subbands of the first and second channel signals can not only save bits to some extent but also improve encoding performance. However, in the prior art, reverberation gain parameters corresponding to all frequency band subbands of the first and second channel signals are encoded. In this case, since the difference between the first and second channel signals is relatively large, if reverberation gain parameters corresponding to all frequency band subbands are still encoded, reverberation processing is performed based on the reverberation gain parameters of all frequency bands, and the finally restored first and second channel signals have relatively large distortion compared to the original signals.
[0022] Referring to the first embodiment, in some implementations of the first embodiment, the frequencies of the first frequency band are smaller than the frequencies of other frequency bands different from the first frequency band in the first channel signal and the second channel signal.
[0023] Please understand that the first frequency band may be a low-frequency band.
[0024] When the difference between the first and second channel signals is relatively large, the difference between the two channel signals is usually relatively large in the high-frequency portion but relatively small in the low-frequency portion. However, the channel signal in the low-frequency portion has a greater impact on the human auditory experience. Therefore, when the difference between the first and second channel signals is relatively large, only the reverberation gain parameters corresponding to the low-frequency subband may be encoded. In this way, not only can the number of encoded bits be saved, but the auditory experience can also be guaranteed.
[0025] Referring to the first embodiment, in some implementations of the first embodiment, the method is: When the first difference value is less than or equal to the first threshold value and the second difference value is less than or equal to the second threshold value, determining the reverberation gain parameters corresponding to all sub - bands of the first channel signal and the second channel signal as the target reverberation gain parameters further includes.
[0026] Referring to the first aspect, in some implementations of the first aspect, when the first difference value is less than or equal to the first threshold value or the second difference value is less than or equal to the second threshold value, the reverberation gain parameters corresponding to all sub - bands of the first channel signal and the second channel signal are determined as the target reverberation gain parameters.
[0027] When the difference between both the energy of the first channel signal and the energy of the second channel signal and the energy of the down - mixed signal is relatively large, in order to reduce the bit overhead during encoding and avoid the signal distortion that occurs during reverberation processing as much as possible, only the reverberation gain parameters corresponding to some sub - bands may be encoded.
[0028] However, when the difference between both the energy of the first channel signal and the energy of the second channel signal and the energy of the down - mixed signal is relatively small, the signal distortion caused by the reverberation processing for the channel signal is very small. In order to obtain a better auditory effect, the reverberation gain parameters corresponding to all sub - bands may be encoded.
[0029] Referring to the first aspect, in some implementations of the first aspect, a plurality of frequency bins are within the second frequency band of each of the first channel signal and the second channel signal, and the frequencies of the second frequency band are greater than the frequencies of another frequency band different from the second frequency band in the first channel signal and the second channel signal.
[0030] The difference between the energy of both the first channel signal and the energy of the second channel signal and the energy of the downmix signal can be conveniently determined by comparing the difference values between the energy of both the first channel signal and the energy of the second channel signal and the energy of the downmix signal at multiple frequency bins in the high-frequency portion.
[0031] Referring to the first embodiment, in some implementations of the first embodiment, the step of determining a target reverberation gain parameter that needs to be encoded in reverberation gain parameters corresponding to different subbands of a first channel signal and a second channel signal includes the steps of determining the energies of N subbands of the downmix signal; determining M subbands from the N subbands, wherein the energy of any subband among the M subbands is greater than the energy of any subband among NM subbands in the N subbands excluding the M subbands, and both M and N are integers greater than 0, and M is less than N; and determining a target reverberation gain parameter based on the magnitude relationship between the energies of the M subbands and the energies of the NM subbands.
[0032] Please understand that when the downmix signal is a broadband signal, the N subbands may be all the subbands of the downmix signal, and when the downmix signal is an ultra-broadband signal, the N subbands may be subbands of the downmix signal that are in the broadband portion.
[0033] The coherence between the first channel signal and the second channel signal can be determined based on the energies of different subbands of the downmix signal, and furthermore, the target reverberation gain parameter that needs to be encoded is determined based on the coherence between the first channel signal and the second channel signal.
[0034] The downmix signal may be a broadband signal or an ultra-broadband signal. When the downmix signal is a broadband signal, the N subbands may be all the subbands of the downmix signal, and when the downmix signal is an ultra-broadband signal, the N subbands may be subbands of the downmix signal in the broadband portion.
[0035] Alternatively, the M subbands may be determined based on the amplitude of each subband of the downmix signal; that is, the amplitude of any subband among the M subbands of the downmix signal is greater than the amplitude of any subband among the NM subbands of the downmix signal. The value of M may be predetermined.
[0036] Referring to the first embodiment, in some implementations of the first embodiment, the step of determining a target reverberation gain parameter based on the magnitude relationship between the energies of M subbands of a downmix signal and the energies of NM subbands of a downmix signal includes the step of determining that the reverberation gain parameter corresponding to the subbands of the first frequency band of the first channel signal and the second channel signal is the target reverberation gain parameter when the average value of the energies of the M subbands is greater than K times the average value of the energies of the NM subbands, wherein K is a real number greater than 0.
[0037] Referring to the first embodiment, in some implementations of the first embodiment, the step of determining a target reverberation gain parameter based on the magnitude relationship between the energies of M subbands of a downmix signal and the energies of NM subbands of a downmix signal includes the step of determining that the reverberation gain parameter corresponding to the subbands of the first frequency band of the first channel signal and the second channel signal is the target reverberation gain parameter when the sum of the energies of the M subbands is greater than L times the sum of the energies of the NM subbands, wherein L is a real number greater than 0.
[0038] Please understand that K and L may have different values.
[0039] Downmix signal M The energies of the M subbands and the energies of the NM subbands of the downmix signal may be compared by comparing the average energy of the M subbands with the average energy of the NM subbands. To further reduce computational complexity, the sum of the energies of the M subbands may be directly compared with the sum of the energies of the NM subbands. In this way, the computational process is simplified to some extent and efficiency is improved.
[0040] When the energy difference between M subbands with relatively high energy and another subband with relatively low energy is relatively large, the difference between the first channel signal and the second channel signal can be considered relatively large. In this case, reverberation gain parameters corresponding to subbands in several frequency bands in the first and second channel signals may be determined as target reverberation gain parameters that need to be encoded. Specifically, the first frequency band may be a frequency band located in the low-frequency portion of the first and second channel signals.
[0041] Referring to the first embodiment, in some implementations of the first embodiment, the step of determining a target reverberation gain parameter that needs to be encoded in reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal includes the steps of determining the energies of N subbands of the downmix signal; determining M subbands from the N subbands, wherein the energy of any subband among the M subbands is greater than the energy of any subband among the NM subbands in the N subbands excluding the M subbands; and determining that the reverberation gain parameter corresponding to a subband of a first frequency band is the target reverberation gain parameter, where the frequency of any frequency bin in the first subband is greater than the frequency of any frequency bin in another subband among the M subbands excluding the first subband, and the first frequency band is part of all the frequency bands of the first channel signal and the second channel signal, respectively.
[0042] When the index value of the highest-frequency subband among the M subbands with relatively high energy is smaller than the preset index value, the energy distribution of the M subbands in the downmix signal is non-uniform; that is, the coherence between the first channel signal and the second channel signal can be considered relatively small. In this case, only the reverberation gain parameters corresponding to some frequency bands of subbands need to be encoded.
[0043] Referring to the first embodiment, in some implementations of the first embodiment, the step of determining a target reverberation gain parameter that needs to be encoded in reverberation gain parameters corresponding to different subbands of a first channel signal and a second channel signal includes the steps of determining the energies of N subbands of the downmix signal; determining J target subbands from the N subbands based on the energies of the N subbands, wherein the energy of any subband among the J target subbands is greater than the energy of another subband different from the J target subbands, and both N and J are integers greater than 0, and J is less than N; and determining the reverberation gain parameters corresponding to the J target subbands as target reverberation gain parameters.
[0044] Based on the energy of each subband in the downmix signal, a predetermined number of subbands are directly selected from all subbands, and the reverberation gain parameters corresponding to that predetermined number of subbands are determined as the target reverberation gain parameters. As a result, the reverberation gain parameters that need to be encoded can be selected more flexibly.
[0045] Referring to the first embodiment, in some implementations of the first embodiment, the energy of the downmix signal is determined based on the energy of the first channel signal and the energy of the second channel signal.
[0046] The energy of the downmix signal can be estimated or inferred based on the energy of the first channel signal and the energy of the second channel signal, which can reduce the computational complexity to some extent.
[0047] A second aspect provides a multichannel signal decoding method, the method comprising: receiving a bitstream; obtaining downmix signals of a first channel signal and a second channel signal in a multichannel signal, as well as parameter indication information, based on the bitstream, wherein the parameter indication information is used to indicate an encoded target reverberation gain parameter in reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal; obtaining a target reverberation gain parameter from the bitstream according to the parameter indication information; and determining the first channel signal and the second channel signal based on the downmix signals and the target reverberation gain parameter.
[0048] In this application, the target reverberation gain parameter encoded by the encoder can be determined using parameter indication information, and then reverberation processing is performed on the corresponding subbands of the first channel signal and the second channel signal based on the target reverberation gain parameter.
[0049] According to a third aspect, a multichannel signal coding method is provided, the method comprising: determining a downmix signal of a first channel signal and a second channel signal in a multichannel signal, and reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal; determining a target reverberation gain parameter that needs to be coded within the reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal, based on the energies of N subbands of the downmix signal, wherein N is an integer greater than 0; and coding the downmix signal and the target reverberation gain parameter.
[0050] In this application, a specific number of subbands are directly selected from all subbands based on the energy of each subband of the downmix signal, resulting in a more flexible selection of the reverberation gain parameters that need to be encoded. In addition, compared to a method in which the reverberation gain parameters corresponding to subbands in a fixed frequency band are determined as the target reverberation gain parameters, it is possible to directly select reverberation gain parameters corresponding to several subbands that may not be adjacent in the frequency domain as the target reverberation gain parameters.
[0051] Referring to the third aspect, in some implementations of the third aspect, the step of determining target reverberation gain parameters that need to be encoded in reverberation gain parameters corresponding to different subbands of the first and second channel signals based on the energies of N subbands of the downmix signal includes the step of determining J target subbands from the N subbands based on the energies of the N subbands, wherein the energy of any subband among the J target subbands is greater than the energy of another subband different from the J target subbands, and both N and J are integers greater than 0, and J is less than N; and the step of determining the reverberation gain parameters corresponding to the J target subbands as target reverberation gain parameters.
[0052] In this application, a predetermined number of subbands are directly selected from all subbands based on the energy of each subband of the downmix signal, and the reverberation gain parameters corresponding to the predetermined number of subbands are determined as target reverberation gain parameters, thereby allowing for more flexible selection of the reverberation gain parameters that need to be encoded.
[0053] A fourth aspect provides a multichannel signal decoding method, the method comprising: receiving a bitstream; determining downmix signals of a first channel signal and a second channel signal in a multichannel signal based on the bitstream; determining encoded target reverberation gain parameters in reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal based on the energies of N subbands of the downmix signal, wherein N is an integer greater than 0; determining target reverberation gain parameters based on the bitstream; and determining the first channel signal and the second channel signal based on the downmix signal and the target reverberation gain parameters.
[0054] In this application, the decoder can directly determine the encoded target reverberation gain parameter within the reverberation gain parameters corresponding to different subbands of the first and second channel signals based on the energy of multiple subbands of the downmix signal. As a result, the number of bits occupied by the decoder to transmit instruction information indicating the encoded target reverberation gain parameter is reduced, thereby reducing signaling overhead to some extent.
[0055] Referring to the fourth aspect, in some implementations of the fourth aspect, the step of determining encoded target reverberation gain parameters in reverberation gain parameters corresponding to different subbands of a first channel signal and a second channel signal based on the energies of N subbands of a downmix signal includes the step of determining J target subbands from N subbands based on the energies of N subbands, wherein the energy of any subband among the J target subbands is greater than the energy of another subband different from the J target subbands, and both N and J are integers greater than 0, and J is less than N; and the step of determining the reverberation gain parameters corresponding to the J target subbands as target reverberation gain parameters.
[0056] According to a fifth aspect, an encoder is provided, which includes a module or unit configured to perform the method in the first aspect or in various implementations of the first aspect.
[0057] According to the sixth aspect, a decoder is provided, decoder This includes a module or unit configured to perform the method in the second embodiment or in various implementations of the second embodiment.
[0058] According to the seventh aspect, an encoder is provided, which includes a module or unit configured to perform a method in the third aspect or in various implementations of the third aspect.
[0059] According to the eighth aspect, a decoder is provided, decoder This includes a module or unit configured to perform the method in the fourth aspect or in various implementations of the fourth aspect.
[0060] According to the ninth aspect, an encoder is provided which includes memory and a processor, the memory being configured to store a program, and the processor being configured to execute a program, and when the program is executed, the processor performs the method of the first aspect or various implementations of the first aspect.
[0061] According to a tenth aspect, a decoder is provided which includes memory and a processor, the memory being configured to store a program, and the processor being configured to execute the program, and once the program is executed, the processor performs the method of the second aspect or various implementations of the second aspect.
[0062] According to the eleventh aspect, an encoder is provided which includes memory and a processor, the memory being configured to store a program, and the processor being configured to execute the program, and once the program is executed, the processor performs a method in the third aspect or in various implementations of the third aspect.
[0063] According to the twelfth aspect, a decoder is provided which includes memory and a processor, the memory being configured to store a program, and the processor being configured to execute the program, and once the program is executed, the processor performs a method in the fourth aspect or in various implementations of the fourth aspect.
[0064] According to the 13th aspect, a computer-readable medium is provided which stores program code to be executed by a device, and the program code includes instructions used to execute the method in the first aspect or in various implementations of the first aspect.
[0065] According to the 14th aspect, a computer-readable medium is provided which stores program code to be executed by a device, and the program code includes instructions used to execute the method in the second aspect or in various implementations of the second aspect.
[0066] According to the 15th aspect, a computer-readable medium is provided which stores program code to be executed by a device, and the program code includes instructions used to execute the method in the third aspect or in various implementations of the third aspect.
[0067] According to the sixteenth aspect, a computer-readable medium is provided which stores program code to be executed by a device, and the program code includes instructions used to execute the method in the fourth aspect or in various implementations of the fourth aspect. [Brief explanation of the drawing]
[0068] [Figure 1] This is a schematic flowchart illustrating the encoding of the left channel signal and the right channel signal in conventional technology. [Figure 2] This is a schematic flowchart illustrating the decoding of the left channel signal and the right channel signal in conventional technology. [Figure 3] This is a schematic flowchart of a multi-channel signal coding method according to one embodiment of this application. [Figure 4] This is a schematic flowchart of a multi-channel signal decoding method according to one embodiment of this application. [Figure 5] This is a schematic flowchart of a multi-channel signal coding method according to one embodiment of this application. [Figure 6] This is a schematic flowchart of a multi-channel signal decoding method according to one embodiment of this application. [Figure 7] This is a schematic flowchart of a multi-channel signal coding method according to one embodiment of this application. [Figure 8] This is a schematic flowchart of a multi-channel signal decoding method according to one embodiment of this application. [Figure 9] This is a schematic flowchart of a multi-channel signal coding method according to one embodiment of this application. [Figure 10]This is a schematic flowchart of a multi-channel signal decoding method according to one embodiment of this application. [Figure 11] This is a schematic block diagram of an encoder according to one embodiment of the present application. [Figure 12] This is a schematic block diagram of a decoder according to one embodiment of the present application. [Figure 13] This is a schematic block diagram of an encoder according to one embodiment of the present application. [Figure 14] This is a schematic block diagram of a decoder according to one embodiment of the present application. [Figure 15] This is a schematic block diagram of an encoder according to one embodiment of the present application. [Figure 16] This is a schematic block diagram of a decoder according to one embodiment of the present application. [Figure 17] This is a schematic block diagram of an encoder according to one embodiment of the present application. [Figure 18] This is a schematic block diagram of a decoder according to one embodiment of the present application. [Modes for carrying out the invention]
[0069] The technical solutions of this application will be described below with reference to the attached drawings. To better understand the multi-channel signal coding method and multi-channel signal decoding method in the embodiments of this application, a prior art multi-channel signal coding method and multi-channel signal decoding method will be briefly described below with reference to Figures 1 and 2.
[0070] Figure 1 shows the process for encoding the left channel signal and the right channel signal in the prior art. The encoding process shown in Figure 1 specifically includes the following steps.
[0071] 110. Spatial parameter analysis and downmixing are performed on the left channel signal (represented by L in the diagram) and the right channel signal (represented by R in the diagram).
[0072] Specifically, step 110 includes performing spatial parameter analysis on the left channel signal and the right channel signal to obtain the spatial parameters of the left channel signal and the right channel signal, and performing a downmixing process on the left channel signal and the right channel signal to obtain a downmix signal (the downmix signal obtained after the downmixing process is a monaural audio signal, and the two original channels of the audio signal are combined into one channel of the audio signal by the downmixing process).
[0073] Spatial parameters (sometimes called spatial sensing parameters) include inter-channel coherence (IC), inter-channel level difference (ILD), inter-channel time difference (ITD), and inter-channel phase difference (IPD).
[0074] IC describes cross-coherence or coherence between channels. This parameter can determine the detection of the sound field range and improve the spatial detection and stability of the audio signal. ILD is used to distinguish the horizontal angle of a stereo source and describe the intensity difference between channels; this parameter affects the frequency components of the entire spectrum. ITD and IPD are spatial parameters that represent the horizontal direction of the sound source and describe the time difference and phase difference between channels. These parameters mainly affect frequency components below 2 kHz. In the case of a two-channel signal, ITD can represent the time delay between the left and right channel signals of the stereo signal, and IPD can represent the waveform similarity between the left and right channel signals of the stereo signal after time matching. ILD, ITD, and IPD can determine the detection of sound source position by the human ear, effectively determine the sound source position, and play an important role in the reconstruction of the stereo signal.
[0075] 120. Encode the downmixed signal to obtain the bitstream.
[0076] 130. Encode the spatial parameters to obtain the bitstream.
[0077] 140. The bitstream obtained by encoding the downmix signal and the bitstream obtained by encoding the spatial parameters are multiplexed to obtain a new bitstream.
[0078] The bitstream obtained through encoding may be stored or transmitted to the decoder-side device.
[0079] Figure 2 shows the process for decoding the left channel signal and the right channel signal in the prior art. The decoding process shown in Figure 2 specifically includes the following steps.
[0080] 210. The bitstream is demultiplexed to obtain the bitstream obtained by encoding the downmix signal, and the bitstream obtained by encoding the spatial parameters are obtained separately.
[0081] Based on the demultiplexed bitstream, the downmix signal and spatial parameters are obtained by decoding.
[0082] In step 210, the decoder can decode the downmix signal and spatial parameters separately.
[0083] Spatial parameters are used to indicate the IC of the left channel signal and the right channel signal.
[0084] 220. Obtain the decoherence signal.
[0085] Furthermore, the left and right channel signals are obtained based on the decoded downmix signal and the decoherence signal of the current frame.
[0086] 230. Based on the spatial parameters, left channel signal, and right channel signal, obtain the final output left channel signal and right channel signal (represented by L' and R' in Figure 2, respectively).
[0087] It should be understood that the left and right channel signals (represented by L' and R' in Figure 2, respectively) obtained by decoding may be distorted to some extent when compared to the left and right channel signals encoded on the encoder side.
[0088] Specifically, the downmix signal may be filtered, and then the inter-channel coherence parameter is used to modify the filtered downmix signal to obtain a decoherence signal.
[0089] The purpose of generating a decoherence signal is to improve the reverberation of the stereo signal ultimately produced by the decoder, widen the sound field of the stereo signal, and as a result the output audio signal becomes mellower and fuller from an auditory perspective. Reverberation is essentially a delay effect, such as reflecting and refracting the original audio signal differently, and then superimposing the reflected and refracted audio signal onto the original audio signal before it reaches the human ear.
[0090] In conventional techniques, when a multi-channel signal is encoded, the signal is typically divided into multiple subbands, an IC corresponding to each subband is determined, and then each IC corresponding to each subband is encoded. However, encoding an IC corresponding to each subband inevitably increases the number of bits occupied during encoding. In some cases, for example, when the coherence between multiple channel signals is relatively low, the high-frequency portions of the multiple channel signals are relatively different. In this case, if the ICs corresponding to the high-frequency portions of the multiple channel signals are still encoded, and the decoder performs reverberation processing on the high-frequency portions of the multiple channel signals based on the ICs corresponding to the high-frequency portions of the multiple channel signals, the multiple reconstructed channel signals will be greatly distorted.
[0091] Accordingly, one embodiment of the present application provides a multichannel signal coding method that allows for the adaptive selection of reverberation gain parameters of several subbands within a multichannel signal for coding in order to effectively utilize bits. The multichannel signal coding method in this embodiment of the present application will be described in detail below with reference to the accompanying drawings.
[0092] Figure 3 is a schematic flowchart of a multi-channel signal coding method according to one embodiment of the present application. The method in Figure 3 may be performed by an encoder-side device or an encoder. The method in Figure 3 includes the following steps.
[0093] 310. Determine the downmix signals of the first and second channel signals in the multichannel signal, as well as the reverberation gain parameters corresponding to different subbands of the first and second channel signals.
[0094] A multichannel signal may be multiple channel signals. In addition, prior to step 310, the method may include the step of obtaining a first channel signal and a second channel signal within the multichannel signal.
[0095] This embodiment of the present application does not impose any restrictions on the order in which the process of determining the downmix signal and the process of determining the reverberation gain parameters corresponding to different subbands of the first and second channel signals are performed. The processes may be performed simultaneously or sequentially.
[0096] Specifically, the downmix signal may be obtained by performing a downmixing process on the first channel signal and the second channel signal. The spatial parameters of the first channel signal and the second channel signal are obtained by performing a spatial parameter analysis on the first channel signal and the second channel signal. The spatial parameters include reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal, as well as other spatial parameters such as IC, ILD, ITD, and IPD.
[0097] It should be understood that the first channel signal and the second channel signal correspond to the same spatial parameters, and specifically, the first channel signal and the second channel signal correspond to the same initial reverberation gain parameter. That is, the spatial parameters of the first channel signal and the spatial parameters of the second channel signal are the same, and the initial reverberation gain parameter of the first channel signal and the initial reverberation gain parameter of the second channel signal are the same.
[0098] Furthermore, assuming that each of the first and second channel signals contains 10 subbands, and each subband corresponds to one reverberation gain parameter, then the reverberation gain parameters for the first and second channel signals corresponding to subbands with the same index value are the same.
[0099] In addition, the first channel signal, the second channel signal, and the downmix signal may be channel signals obtained after normalization processing.
[0100] 320. Determine the target reverberation gain parameter that needs to be encoded within the reverberation gain parameter corresponding to different subbands of the first channel signal and the second channel signal.
[0101] 330. Parameter indication information is generated, and this parameter indication information is used to indicate the subband corresponding to the target reverberation gain parameter.
[0102] Parameter indication information can indicate subbands corresponding to target reverberation gain parameters by using flag bits. For example, each of the first and second channel signals contains 10 subbands (subband index numbers are 0-9), and the parameter indication information contains 10 flag bits, which sequentially correspond to the 10 subbands of each of the first and second channel signals. When a flag bit corresponding to a subband is 1, the reverberation gain parameter corresponding to that subband is the target reverberation gain parameter that needs to be encoded. However, when a flag bit corresponding to a subband is 0, the reverberation gain parameter corresponding to that subband is not the target reverberation gain parameter. In this way, when encoding is performed, the encoder encodes only the reverberation gain parameters corresponding to subbands where the flag bit is 1.
[0103] Alternatively, the parameter display information may include only one flag bit, which can be either 1 or 0. When the flag bit is 1, it indicates that the reverberation gain parameter of the selected target subband should be encoded. When the flag bit is 0, it indicates that the reverberation gain parameters of all subbands should be encoded.
[0104] Specifically, the index numbers of all subbands of the first and second channel signals are 0-9, and the subbands with index numbers 0-5 are the target subbands. In this case, when the flag bit of the parameter indication information is 1, the reverberation gain parameters of the subbands with index numbers 0-5 should be encoded. When the flag bit of the parameter indication information is 0, the reverberation gain parameters of the subbands with index numbers 0-9 should be encoded.
[0105] 340. Encode the target reverberation gain parameter, parameter instruction information, and downmix signal to generate the bitstream.
[0106] In this application, when the first channel signal and the second channel signal are encoded, reverberation gain parameters corresponding to only some subbands of the first channel signal and the second channel signal may be encoded. Compared to the prior art method, which requires that reverberation gain parameters corresponding to all subbands of the first channel signal and the second channel signal be encoded, bit overhead can be reduced to some extent and encoding efficiency can be improved.
[0107] Specifically, when reverberation gain parameters corresponding to several subbands are encoded, a large number of saved bits can be used to encode another parameter or to allocate more bits to the downmix signal, thereby improving overall encoding performance.
[0108] For example, reverberation gain parameters corresponding to the low-frequency subbands of the first and second channel signals may be selected as target reverberation gain parameters that need to be encoded, while reverberation gain parameters corresponding to the high-frequency subbands of the first and second channel signals should not be encoded.
[0109] In some cases, when reverberation gain parameters are generated for different subbands of the first and second channel signals, reverberation gain parameters may be generated for all subbands of the first and second channel signals, i.e., all reverberation gain parameters for the first and second channel signals are generated, and then during encoding, only the target reverberation gain parameter among all the reverberation gain parameters is encoded.
[0110] Alternatively, to further improve coding efficiency, when spatial parameter analysis is performed on the first and second channel signals, only the target reverberation gain parameters may be generated, while the remaining reverberation gain parameters that should not be coded are not generated. Specifically, if the target reverberation gain parameters correspond to the target subbands of the first and second channel signals, when spatial parameter analysis is performed on the first and second channel signals, only the reverberation gain parameters corresponding to the target subbands of the first and second channel signals may be determined, and the reverberation gain parameters corresponding to other subbands of the first and second channel signals do not need to be determined. In this way, coding efficiency can be further improved.
[0111] In some cases, in one embodiment, the step of determining a target reverberation gain parameter that needs to be encoded within reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal includes determining the target reverberation gain parameter based on at least one of the energies of the first channel signal and the second channel signal, the IC between the first channel signal and the second channel signal, the magnitude of the energies of different subbands of the downmix signal, and the ILD between the first channel signal and the second channel signal.
[0112] Specifically, the coherence between the first channel signal and the second channel signal can be determined based on the energy of the first channel signal and the energy of the second channel signal or the energy of the downmix signal, the inter-channel coherence between the first channel signal and the second channel signal, and the inter-channel level difference between the first channel signal and the second channel signal. In addition, the target reverberation gain parameter that needs to be encoded can be appropriately determined from the reverberation gain parameters corresponding to all subbands of the first and second channel signals, based on the coherence between the first and second channel signals, which can result in some bit saving and improved encoding efficiency.
[0113] For example, when the coherence between the first channel signal and the second channel signal is relatively low, only the reverberation gain parameters corresponding to the low-frequency subbands of the first and second channel signals may be encoded. When the coherence between the first and second channel signals is relatively high, in addition to the reverberation gain parameters corresponding to the low-frequency subbands of the first and second channel signals, the reverberation gain parameters corresponding to the high-frequency subbands of the first and second channel signals may also be encoded. That is, when the coherence between the first and second channel signals is relatively high, the reverberation gain parameters corresponding to all subbands of the first and second channel signals may be encoded.
[0114] Once the target reverberation gain parameter is determined based on the IC between the first channel signal and the second channel signal, the size of the IC value between the first channel signal and the second channel signal may be determined, and the coherence between the first channel signal and the second channel signal is determined based on the size of the IC value. For example, when the IC value between the first channel signal and the second channel signal is relatively small (in this case, the coherence between the first channel signal and the second channel signal may be considered relatively low), the reverberation gain parameter corresponding to the low-frequency subbands of the first channel signal and the second channel signal may be determined as the target reverberation gain parameter. When the IC value between the first channel signal and the second channel signal is relatively large (in this case, the coherence between the first channel signal and the second channel signal can be considered relatively high), the reverberation gain parameters corresponding to the low-frequency subbands and high-frequency subbands of the first and second channel signals (i.e., subbands of all frequency bands of the first and second channel signals) may be determined as the target reverberation gain parameters.
[0115] In some cases, in one embodiment, the step of determining a target reverberation gain parameter that needs to be encoded within reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal includes determining the target reverberation gain parameter based on at least one of the coherence between the energy of the first channel signal and the energy of the downmix signal, and the coherence between the energy of the second channel signal and the energy of the downmix signal.
[0116] That is, when the target reverberation gain parameter is determined, the target reverberation gain parameter may be determined separately based on the coherence between the energy of the first channel signal and the energy of the downmix signal, or between the energy of the second channel signal and the energy of the downmix signal, or the target reverberation gain parameter may be determined together based on the coherence between the energy of the first channel signal and the energy of the downmix signal, and the coherence between the energy of the second channel signal and the energy of the downmix signal.
[0117] Specifically, in some embodiments, each of the first channel signal and the second channel signal includes a plurality of frequency bins, and the step of determining a target reverberation gain parameter based on at least one of the coherence between the energy of the first channel signal and the energy of the downmix signal, includes the step of determining a first difference value between the energy of the first channel signal and the energy of the downmix signal, wherein the first difference value is used to indicate the sum of the absolute values of the difference values between the energy of the first channel signal and the energy of the downmix signal in the plurality of frequency bins; and the step of determining that the reverberation gain parameter corresponding to a subband of a first frequency band is the target reverberation gain parameter when the first difference value is greater than a first threshold, wherein the first frequency band is a portion of all the frequency bands of each of the first channel signal and the second channel signal.
[0118] In other embodiments, each of the first channel signal and the second channel signal includes a plurality of frequency bins, and the step of determining a target reverberation gain parameter based on at least one of the coherence between the energy of the first channel signal and the energy of the downmix signal, includes the step of determining a second difference value between the energy of the second channel signal and the energy of the downmix signal, wherein the second difference value is used to represent the sum of the absolute values of the difference values between the energy of the second channel signal and the energy of the downmix signal in the plurality of frequency bins; and the step of determining that the reverberation gain parameter corresponding to a subband of the first frequency band is the target reverberation gain parameter when the second difference value is greater than a second threshold, wherein the first frequency band is a portion of all the frequency bands of each of the first channel signal and the second channel signal.
[0119] In other embodiments, each of the first channel signal and the second channel signal includes a plurality of frequency bins, and the step of determining a target reverberation gain parameter based on at least one of the coherence between the energy of the first channel signal and the energy of the downmix signal, is the step of determining a first difference value between the energy of the first channel signal and the energy of the downmix signal, wherein the first difference value is used to represent the sum of the absolute values of the difference values between the energy of the first channel signal and the energy of the downmix signal in the plurality of frequency bins. The method includes: a step of determining a second difference value between the energy of a second channel signal and the energy of a downmix signal, wherein the second difference value is used to represent the sum of the absolute values of the difference values between the energy of the second channel signal and the energy of the downmix signal in a plurality of frequency bins; and a step of determining that the reverberation gain parameter corresponding to a subband of a first frequency band is the target reverberation gain parameter when the first difference value is greater than a first threshold and the second difference value is greater than a second threshold, wherein the first frequency band is a part of all the frequency bands of the first channel signal and the second channel signal, respectively.
[0120] The difference between the energy of the first channel signal and the energy of the downmix signal in multiple frequency bins, and the difference between the energy of the second channel signal and the energy of the downmix signal in multiple frequency bins, may be values obtained after normalization.
[0121] The first and second thresholds may be pre-set. In addition, the first and second thresholds may be the same or different.
[0122] The coherence between both the first and second channel signals and the downmix signal can be conveniently measured based on the energy of the channel signals; that is, the target reverberation gain parameter that needs to be encoded can be conveniently determined by comparing the difference between the energy of the channel signal and the energy of the downmix signal.
[0123] For example, when the difference between the energy of the first channel signal and the energy of the downmix signal is relatively large, the coherence between the first channel signal and the downmix signal can be considered relatively low, and in this case, only the reverberation gain parameters corresponding to the low-frequency subband of the first channel signal may be encoded.
[0124] When the coherence between the first or second channel signal and the downmix signal is relatively high, the first and second channel signals can be considered as two relatively similar channel signals (when two channel signals are relatively similar, the mixed signal obtained by mixing the two channel signals is relatively similar to the two channel signals before mixing). When the coherence between the first or second channel signal and the downmix signal is relatively low, the first and second channel signals can be considered as two relatively different channel signals.
[0125] The coherence between a first channel signal and a downmix signal is used as an example. The coherence between a first channel signal and a downmix signal may be measured by using a first difference value between the energy of the first channel signal and the energy of the downmix signal. When the first difference value is relatively large, the coherence between the first channel signal and the downmix signal may be considered relatively low. When the first difference value is relatively small, the coherence between the first channel signal and the downmix signal may be considered relatively high.
[0126] When at least one of the first and second difference values exceeds the corresponding threshold, the coherence between the first and second channel signals can be considered relatively low. In this case, reverberation gain parameters corresponding to some frequency band subbands of the first and second channel signals are encoded, thereby not only saving some bits but also improving encoding performance. However, in this case, the prior art still encodes the reverberation gain parameters corresponding to all frequency band subbands of the first and second channel signals. In this case, since the difference between the first and second channel signals is relatively large, if reverberation gain parameters corresponding to all frequency band subbands are still encoded, reverberation processing is performed based on the reverberation gain parameters of all frequency bands, and the finally restored first and second channel signals have relatively large distortion compared to the original signals.
[0127] Indeed, or only when both the first difference value and the second difference value are greater than the corresponding threshold, can the reverberation gain parameter corresponding to the subband of the first frequency band of the first channel signal and the second channel signal be determined as the target reverberation gain parameter.
[0128] The frequency of the first frequency band may be lower than the frequency of another frequency band different from the first frequency band in the first and second channel signals. Specifically, the first frequency band may be the frequency band having the lowest frequency in the first and second channel signals. That is, the reverberation gain parameter corresponding to the subband of the lowest frequency band in the first and second channel signals may be determined as the target reverberation gain parameter.
[0129] Alternatively, the first frequency band may be the frequency band of the intermediate frequency values in the first channel signal and the second channel signal (where some frequencies in all frequency bands of the first and second channel signals are greater than the frequencies in the first frequency band, and other frequencies in all frequency bands are less than the frequencies in the first frequency band), that is, the reverberation gain parameter corresponding to the subband of the intermediate frequency values of the first and second channel signals may be determined as the target reverberation gain parameter.
[0130] In some cases, multiple frequency bins lie within the second frequency band of the first channel signal and the second channel signal, respectively, and the frequencies of the second frequency band are greater than the frequencies of other frequency bands that are different from the second frequency band in the first channel signal and the second channel signal.
[0131] In other words, multiple frequency bins are located within a second frequency band with relatively high frequencies. Therefore, the difference between the energy of both the first and second channel signals and the energy of the downmix signal can be conveniently determined by comparing the differences between the energy of both the first and second channel signals and the energy of the downmix signal in multiple frequency bins located in the high-frequency portion. Thus, it is not necessary to compare the differences between the energy of both the first and second channel signals and the energy of the downmix signal across the entire frequency band, thereby simplifying the calculation process.
[0132] The difference between the energy of both the first and second channel signals and the energy of the downmix signal can be conveniently determined by comparing the difference between the energy of both the first and second channel signals and the energy of the downmix signal across multiple frequency bins. Furthermore, the target reverberation gain parameter is determined based on the difference between the energy of both the first and second channel signals and the energy of the downmix signal, eliminating the need to compare the difference between the energy of both the first and second channel signals and the energy of the downmix signal across all frequency bands.
[0133] In some cases, in one embodiment, the method of Figure 3 further includes the step of determining the reverberation gain parameters corresponding to all subbands of the first channel signal and the second channel signal as target reverberation gain parameters, when the first difference value is less than or equal to a first threshold and the second difference value is less than or equal to a second threshold.
[0134] When the first difference value is less than or equal to the first threshold and the second difference value is less than or equal to the second threshold, the difference between the energy of both the first channel signal and the second channel signal and the energy of the downmix signal is relatively small. In this case, the coherence between the first channel signal and the second channel signal can be considered relatively large. To improve the reverberation of the output channel signal, reverberation gain parameters corresponding to all subbands may be encoded.
[0135] When the difference between the energy of both the first and second channel signals and the energy of the downmix signal is relatively large, only the reverberation gain parameters corresponding to a few subbands may be encoded to reduce bit overhead during encoding and to avoid signal distortion during reverberation processing as much as possible. When the difference between the energy of both the first and second channel signals and the energy of the downmix signal is relatively small, the signal distortion caused by reverberation processing on the channel signals is very small. To obtain a better auditory effect, the reverberation gain parameters corresponding to all subbands may be encoded.
[0136] Specifically, when the first channel signal is the left channel signal and the second channel signal is the right channel signal, the first difference value and the second difference value may be calculated based on the following formula.
number
number
[0137] diff_l_h is the first difference value, diff_r_h is the second difference value, and each frequency band of the left channel signal and the right channel signal includes a high-frequency portion and a low-frequency portion, M1 is the start frequency bin of the high-frequency portion, M2 is the end frequency bin of the high-frequency portion, mag_l[k] is the energy or amplitude value of the left channel signal at the frequency bin with index k between M1 and M2, mag_r[k] is the energy or amplitude value of the right channel signal at the frequency bin with index k between M1 and M2, and mag_dmx[k] is the energy or amplitude value of the downmix signal at the frequency bin with index k between M1 and M2, where mag_dmx[k] may be calculated using the downmix signal itself or based on the energy or amplitude values of the left channel signal and the right channel signal.
[0138] After the first and second difference values are calculated based on equations (1) and (2), interframe smoothing may be further performed on the first and second difference values (smoothing may be performed on the first difference value, the second difference value, and the difference value calculated in the previous frame), and then the target reverberation gain parameter is determined by using the relationship between both the first and second difference values obtained by the smoothing process and a preset threshold.
[0139] In some cases, in one embodiment, the step of determining a target reverberation gain parameter that needs to be encoded in reverberation gain parameters corresponding to different subbands of a first channel signal and a second channel signal includes the steps of determining the energies of N subbands of the downmix signal; determining M subbands from the N subbands, wherein the energy of any subband among the M subbands is greater than the energy of any subband among NM subbands in the N subbands excluding the M subbands, and both M and N are integers greater than 0, with M being less than N; and determining a target reverberation gain parameter based on the relative magnitudes between the energies of the M subbands and the energies of the NM subbands.
[0140] The coherence between the first channel signal and the second channel signal can be determined based on the energies of different subbands of the downmix signal, and furthermore, the target reverberation gain parameter that needs to be encoded is determined based on the coherence between the first channel signal and the second channel signal.
[0141] Specifically, the step of determining the target reverberation gain parameter based on the relative magnitudes between the energies of M subbands of the downmix signal and the energies of NM subbands of the downmix signal includes the step of determining that the reverberation gain parameter corresponding to the subbands of the first frequency band of the first channel signal and the second channel signal is the target reverberation gain parameter when the sum of the energies of M subbands is greater than K times the sum of the energies of NM subbands, wherein K is a real number greater than 0.
[0142] The step of determining a target reverberation gain parameter based on the relative magnitudes between the energies of M subbands of a downmix signal and the energies of NM subbands of a downmix signal includes the step of determining that the reverberation gain parameter corresponding to the subbands of the first frequency band of the first channel signal and the second channel signal is the target reverberation gain parameter when the average value of the energies of the M subbands is greater than L times the average value of the energies of the NM subbands, wherein L is a real number greater than 0.
[0143] It is important to understand that K and L can have different values. More specifically, when M is greater than NM, K can be less than L, and when M is less than NM, K can be greater than L.
[0144] The energies of N subbands of a downmix signal and the energies of NM subbands of a downmix signal may be compared by comparing the average energy of M subbands of the downmix signal with the average energy of NM subbands of the downmix signal. To further reduce computational complexity, the sum of the energies of M subbands of the downmix signal may be directly compared with the sum of the energies of NM subbands of the downmix signal. In this way, the computational process is simplified to some extent and efficiency is improved.
[0145] When the difference between the energy of M subbands with relatively high energy and the energy of another subband with relatively low energy in the downmix signal is relatively large, the difference between the first channel signal and the second channel signal can be considered relatively large. In this case, reverberation gain parameters corresponding to subbands in several frequency bands in the first and second channel signals can be determined as target reverberation gain parameters that need to be encoded. Specifically, the first frequency band may be a frequency band in the low-frequency portion of the first and second channel signals, or a frequency band in the intermediate frequency portion of the first and second channel signals.
[0146] In some cases, in one embodiment, the step of determining a target reverberation gain parameter that needs to be encoded within reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal includes the steps of determining the energies of N subbands of the downmix signal; determining M subbands from the N subbands, wherein the energy of any subband among the M subbands is greater than the energy of any subband among the NM subbands in the N subbands excluding the M subbands; and determining that the reverberation gain parameter corresponding to a subband of a first frequency band of the first channel signal and the second channel signal is the target reverberation gain parameter, provided that the index value of the first subband among the M subbands is less than a preset index value, wherein the frequency of any frequency bin of the first subband is greater than the frequency of any frequency bin of another subband in the M subbands excluding the first subband, and the first frequency band is part of all the frequency bands of the first channel signal and the second channel signal, respectively.
[0147] When the index value of the highest-frequency subband among the M subbands with relatively high energy is smaller than the preset index value, the energy distribution of the M subbands in the downmix signal is non-uniform; that is, the coherence between the first channel signal and the second channel signal can be considered relatively small. In this case, only the reverberation gain parameters corresponding to some frequency bands of subbands need to be encoded.
[0148] The downmix signal may be a broadband signal or an ultra-broadband signal. When the downmix signal is a broadband signal, the N subbands may be all the subbands of the downmix signal, and when the downmix signal is an ultra-broadband signal, the N subbands may be subbands of the downmix signal in the broadband portion.
[0149] The M subbands may be determined from N subbands based on the amplitude of each subband in the downmix signal, in addition to the magnitude of the energy of each subband in the downmix signal. Specifically, the M subbands may be determined based on the amplitude of each subband in the downmix signal such that the amplitude of any subband among the M subbands is greater than the amplitude of any subband among the NM subbands.
[0150] The value of M may be a value that was set before encoding. For example, the downmix signal contains a total of 10 subbands. In this case, four subbands with the highest energy or amplitude may be selected. When the energy or amplitude values of the four subbands of the downmix signal (which may be the sum of the energy or amplitude values, or the average of the energy or amplitude values) are greater than a predetermined multiple of the energy or amplitude values of the remaining six subbands of the downmix signal, the reverberation gain parameter corresponding to the first frequency band of the first channel signal and the second channel signal is determined to be the target reverberation gain parameter.
[0151] In this embodiment of the present application, it should be understood that the target reverberation gain parameter may be determined based on at least one of the following conditions. When at least one of the following conditions is valid, several reverberation gain parameters may be determined as the target reverberation gain parameter.
[0152] Condition 1: One or more difference values between the energy of the first channel signal and / or the energy of the second channel signal and the energy of the downmix signal are greater than one or more preset thresholds.
[0153] Condition 2: The energy of M subbands of the downmix signal is greater than a predetermined multiple of the energy of NM subbands of the downmix signal.
[0154] Condition 3: The index value of the first subband among the M subbands is greater than the preset index value.
[0155] The frequency of any spectral coefficient in the first subband is greater than the frequency of any spectral coefficient in any other subband among the M subbands excluding the first subband.
[0156] In some cases, in one embodiment, the step of determining a target reverberation gain parameter that needs to be encoded within reverberation gain parameters corresponding to different subbands of a first channel signal and a second channel signal includes the steps of: determining the energies of N subbands of the downmix signal; determining J target subbands from the N subbands based on the energies of the N subbands, wherein the energy of any subband among the J target subbands is greater than the energy of another subband different from the J target subbands, and both N and J are integers greater than 0, with J being less than N; and determining the reverberation gain parameters corresponding to the J target subbands as target reverberation gain parameters. J may be a predetermined number set in advance.
[0157] Based on the energy of each subband in the downmix signal, a predetermined number of subbands are directly selected from all subbands, and the reverberation gain parameters corresponding to that predetermined number of subbands are determined as the target reverberation gain parameters. As a result, the reverberation gain parameters that need to be encoded can be selected more flexibly.
[0158] Compared to a method that determines the target reverberation gain parameter by using a reverberation gain parameter corresponding to a subband of a fixed frequency band, this method allows for the direct and flexible selection of reverberation gain parameters corresponding to several subbands that may not be adjacent within the frequency domain as the target reverberation gain parameter.
[0159] In some cases, in one embodiment, the energy of the downmix signal is determined based on the energy of the first channel signal and the energy of the second channel signal. The energy of the downmix signal may be calculated based on the downmix signal itself, or it may be estimated or inferred using the energy of the first channel signal and the energy of the second channel signal. Determining the energy of the downmix signal using the energy of the first channel signal and the energy of the second channel signal can simplify the calculation process to some extent.
[0160] Figure 4 is a schematic flowchart of a multi-channel signal decoding method according to one embodiment of the present application. The method in Figure 4 may be performed by a decoder-side device or a decoder. The decoding method in Figure 4 corresponds to the encoding method in Figure 3. The decoding method in Figure 4 may be used to decode a bitstream obtained by encoding the first channel signal and the second channel signal in the encoding method in Figure 3. The method in Figure 4 includes the following steps.
[0161] 410. Receive the bitstream.
[0162] 420. Based on the bitstream, the downmix signals of the first and second channel signals within the multichannel signal, as well as parameter indication information, are obtained, and the parameter indication information is used to indicate the encoded target reverberation gain parameter within the reverberation gain parameters corresponding to different subbands of the first and second channel signals.
[0163] Parameter indication information can indicate subbands corresponding to target reverberation gain parameters by using flag bits. For example, each of the first and second channel signals contains 10 subbands (subbands with index numbers 0 to 9), and the parameter indication information contains 10 flag bits, which correspond sequentially to the 10 subbands of each multichannel signal. When the flag bit corresponding to a subband is 1, the reverberation gain parameter corresponding to that subband is the target reverberation gain parameter that needs to be encoded. When the flag bit corresponding to a subband is 0, the reverberation gain parameter corresponding to that subband is not the target reverberation gain parameter. Specifically, if the flag bits corresponding to subbands with index numbers 0 to 5 are 1, and the flag bits corresponding to subbands with index numbers 6 to 9 are 0, the decoder will decode only the reverberation gain parameters corresponding to subbands with index numbers 1 to 5 during decoding.
[0164] 430. Obtain the target reverberation gain parameter from the bitstream according to the parameter instruction information.
[0165] 440. Determine the first channel signal and the second channel signal based on the downmix signal and target reverberation gain parameters.
[0166] In this application, the target reverberation gain parameter encoded by the encoder can be determined using parameter indication information, and then reverberation processing is performed on the corresponding subbands of the first channel signal and the second channel signal based on the target reverberation gain parameter.
[0167] It should be understood that before reverberation processing is performed on the first and second channel signals based on the target reverberation gain parameter, the decoder further acquires a decoherence signal and corrects the decoherence signal using the target reverberation gain parameter. Then, reverberation processing may be further performed on the first and second channel signals using the corrected decoherence signal. If each of the first and second channel signals contains 10 subbands (subbands with index numbers 0 to 9), and the reverberation gain parameter corresponding to the subbands with index numbers 0 to 5 is the target reverberation gain parameter, the decoder acquires only the reverberation gain parameter corresponding to the subbands with index numbers 0 to 5, and not the reverberation gain parameter corresponding to the subbands with index numbers 6 to 10. Therefore, the decoder performs reverberation processing only on the subbands with index numbers 0 to 5 of the first and second channel signals, and does not perform reverberation processing on the subbands with index numbers 6 to 10 of the first and second channel signals.
[0168] When the first channel signal and the second channel signal include a left channel signal and a right channel signal, the step of determining the first channel signal and the second channel signal based on a downmix signal and a target reverberation gain parameter includes the step of determining a decoherence signal based on the downmix signal and target reverberation gain parameter of the frame before the current frame, and the step of determining the left channel signal and the right channel signal based on the decoherence signal and downmix signal of the current frame.
[0169] For example, the first channel signal and the second channel signal include the left channel signal and the right channel signal. The downmix signal of the current frame is dmx, the downmix signal of the frame before the current frame is dmx_pred, and the target downmix gain parameter is gain. Then, based on dmx_pred and gain, the decoherence signal tmp is first obtained. Then, based on the downmix signal and decoherence signal of the current frame, the left channel signal L=dmx+tmp and the right channel signal R=dmx-tmp are obtained.
[0170] Referring to Figures 5 and 6, the entire process of the multi-channel signal encoding and decoding method in the embodiments of this application will be described in detail below, using examples of left-channel and right-channel signals.
[0171] Figure 5 is a schematic flowchart of a multi-channel signal coding method according to one embodiment of the present application. In Figure 5, the multi-channel signal includes a left channel signal and a right channel signal, and the process of coding the left channel signal and the right channel signal specifically includes the following steps.
[0172] 510. Calculate the spatial parameters of the left channel signal and the right channel signal.
[0173] Spatial parameters include reverberation gain parameters corresponding to the subbands of the left and right channel signals, as well as other spatial parameters (such as IC, ILD, ITD, and IPD).
[0174] 520. Downmixing is performed on the left channel signal (represented by L in the diagram) and the right channel signal (represented by R in the diagram) to obtain a downmixed signal.
[0175] 530. Adaptively select the target reverberation gain parameter that needs to be encoded within the reverberation gain parameter corresponding to the subbands of the left channel signal and the right channel signal.
[0176] 540. Quantize the target reverberation gain parameter and the downmix signal separately to obtain the bitstream.
[0177] Figure 6 is a schematic flowchart of a multi-channel signal decoding method according to one embodiment of the present application. In Figure 6, the multi-channel signal includes a left channel signal and a right channel signal. The bitstream generated by the encoding in Figure 5 may be decoded in Figure 6. The decoding process in Figure 6 specifically includes the following steps.
[0178] 610. Obtain the bitstreams of the left channel signal and the right channel signal.
[0179] 620. Decode the bitstream to obtain the downmixed signal.
[0180] 630. Obtain the flag information within the bitstream and determine the target reverberation gain parameter that needs to be decoded based on the flag bits in the flag information.
[0181] 640. Decode the reverberation gain parameters corresponding to the subbands for reverberation processing, from the left channel signal and the right channel signal, as well as other spatial parameters (such as IC, ILD, ITD, and IPD).
[0182] 640. Perform subsequent processing (e.g., smoothing filtering) on the spatial parameters obtained by decoding.
[0183] 650. Upmixing is performed based on the downmix signal and reverberation gain parameters obtained by decoding to obtain the left channel signal and the right channel signal.
[0184] After upmixing is performed to acquire the left channel signal and the right channel signal, reverberation processing may be performed separately on the left channel signal and the right channel signal based on the coherence signal.
[0185] In the method shown in Figure 6, reverberation processing is performed on the left and right channel signals based on the target reverberation gain parameter obtained by decoding, and reverberation processing may be performed on several subbands of the left and right channel signals based on the target reverberation gain parameter, thereby ensuring the quality of the channel signals obtained after reverberation processing.
[0186] Figure 7 is a schematic flowchart of a multi-channel signal coding method according to one embodiment of the present application. The method in Figure 7 may be performed by an encoder-side device or an encoder. The method in Figure 7 includes the following steps.
[0187] 710. Determine the downmix signals of the first and second channel signals in the multichannel signal, as well as the reverberation gain parameters corresponding to different subbands of the first and second channel signals.
[0188] This application does not impose any restrictions on the order in which the process of generating the downmix signal and the process of generating reverberation gain parameters corresponding to different subbands of the first and second channel signals are performed. The processes may be performed simultaneously or sequentially.
[0189] Specifically, the downmix signal may be obtained by performing a downmixing process on the first channel signal and the second channel signal. To obtain the spatial parameters of the first channel signal and the second channel signal, spatial parameter analysis is performed on the first channel signal and the second channel signal. The spatial parameters include reverberation gain parameters corresponding to each subband of the first channel signal and the second channel signal, as well as IC, ILD, ITD, IPD, etc., between the first channel signal and the second channel signal.
[0190] 720. Based on the energies of N subbands of the downmix signal, determine the target reverberation gain parameter that needs to be encoded within the reverberation gain parameter corresponding to different subbands of the first and second channel signals, where N is an integer greater than 0.
[0191] The energies of multiple subbands of a downmix signal may be calculated based on the downmix signal itself, or the energy of the downmix signal may be estimated or inferred using the energy of the first channel signal and the energy of the second channel signal. If the energy of the downmix signal is determined using the energy of the first channel signal and the energy of the second channel signal, the calculation process can be simplified to some extent.
[0192] Specifically, J target subbands may be determined from N subbands based on the energies of N subbands of the downmix signal. The energy of any subband among the J target subbands is greater than the energy of any other subband different from the J target subbands, and both N and J are integers greater than 0, with J being less than N. The reverberation gain parameters corresponding to the J target subbands are determined as the target reverberation gain parameters.
[0193] Based on the energy of each subband in the downmix signal, a predetermined number of subbands are directly selected from all subbands, and the reverberation gain parameters corresponding to that predetermined number of subbands are determined as the target reverberation gain parameters. As a result, the reverberation gain parameters that need to be encoded can be selected more flexibly.
[0194] 730. Encode the downmix signal and target reverberation gain parameters.
[0195] In addition, the downmix signal may be a broadband signal or an ultra-broadband signal. When the downmix signal is a broadband signal, the subbands may be all the subbands of the downmix signal, and when the downmix signal is an ultra-broadband signal, the subbands may be subbands of the downmix signal in the broadband portion.
[0196] In this application, a specific number of subbands are directly selected from all subbands based on the energy of each subband of the downmix signal, resulting in a more flexible selection of the reverberation gain parameters that need to be encoded. In addition, compared to a method in which the reverberation gain parameters corresponding to subbands in a fixed frequency band are determined as the target reverberation gain parameters, it is possible to directly select reverberation gain parameters corresponding to several subbands that may not be adjacent in the frequency domain as the target reverberation gain parameters.
[0197] Figure 8 is a schematic flowchart of a multi-channel signal decoding method according to one embodiment of the present application. The method in Figure 8 may be performed by a decoder-side device or a decoder. The decoding method in Figure 8 corresponds to the encoding method in Figure 7. The decoding method in Figure 8 may be used to decode a bitstream obtained by encoding the first channel signal and the second channel signal in the encoding method in Figure 7. The method in Figure 8 includes the following steps.
[0198] 810. Receive the bitstream.
[0199] 820. Based on the bitstream, obtain a downmix signal of the first channel signal and the second channel signal within the multi-channel signal.
[0200] Specifically, the bitstreams of the first channel signal and the second channel signal may first be demultiplexed, and then the bitstream corresponding to the downmix signal may be decoded in order to obtain the downmix signal.
[0201] 830. Based on the energies of N subbands of the downmix signal, the encoded target reverberation gain parameter is determined within the reverberation gain parameter corresponding to different subbands of the first and second channel signals, where N is an integer greater than 0.
[0202] Specifically, based on the energies of N subbands, J target subbands may be determined from N subbands. The energy of any subband among the J target subbands is greater than the energy of any other subband different from the J target subbands, and both N and J are integers greater than 0, with J being less than N. The reverberation gain parameters corresponding to the J target subbands are determined as the target reverberation gain parameters.
[0203] It should be understood that both the encoder and decoder can determine the encoded target reverberation gain parameters within the reverberation gain parameters corresponding to different subbands of the first and second channel signals, following the same rules based on the energies of multiple subbands of the downmix signal. In this way, the encoder does not need to indicate the encoded reverberation gain parameters in the bitstream, and the decoder can determine the encoded reverberation gain parameters using the same rules.
[0204] For example, the encoder determines, based on the energy of multiple subbands of the downmix signal, that the reverberation gain parameters corresponding to subbands with index numbers 0 to 5 are the target reverberation gain parameters. The encoder then quantizes these reverberation gain parameters, writes the quantized reverberation gain parameters to a bitstream, and sends the bitstream to the decoder. After receiving the bitstream, the decoder similarly determines, based on the energy of multiple subbands of the downmix signal, that the reverberation gain parameters corresponding to subbands with index numbers 0 to 5 are the target reverberation gain parameters. The decoder then decodes these reverberation gain parameters corresponding to subbands with index numbers 0 to 5.
[0205] 840. Determine the target reverberation gain parameter based on the bitstream.
[0206] In addition to the target reverberation gain parameter, other spatial parameters encoded on the encoder side, such as IC, ILD, ITD, and IPD, may be obtained from the bitstream.
[0207] 850. Determine the first channel signal and the second channel signal based on the downmix signal and target reverberation gain parameters.
[0208] In this application, the decoder can directly determine the encoded target reverberation gain parameter within the reverberation gain parameters corresponding to different subbands of the first and second channel signals based on the energy of multiple subbands of the downmix signal. As a result, the number of bits occupied by the decoder to transmit instruction information indicating the encoded target reverberation gain parameter is reduced, thereby reducing signaling overhead to some extent.
[0209] Specifically, before reverberation processing is performed on the first and second channel signals based on the target reverberation gain parameter, the decoder further acquires a decoherence signal and corrects the decoherence signal using the target reverberation gain parameter (the decoherence signal may be acquired by delaying the downmix signal). Then, reverberation processing may be further performed on the first and second channel signals using the corrected decoherence signal. If each of the first and second channel signals contains 10 subbands, and the reverberation gain parameters corresponding to the subbands with index numbers 1, 3, 5, and 7 are the target reverberation gain parameters, the decoder acquires only the reverberation gain parameters corresponding to the subbands with index numbers 1, 3, 5, and 7, and does not acquire the reverberation gain parameters corresponding to the subbands with index numbers 2, 4, 6, 8, 9, and 10. Therefore, the decoder performs reverberation processing only on subbands where the index numbers of the first and second channel signals are 1, 3, 5, and 7, and does not perform reverberation processing on subbands where the index numbers of the first and second channel signals are 2, 4, 6, 8, 9, and 10.
[0210] When the first channel signal and the second channel signal include a left channel signal and a right channel signal, the step of determining the first channel signal and the second channel signal based on a downmix signal and a target reverberation gain parameter includes the step of determining a decoherence signal based on the downmix signal and target reverberation gain parameter of the frame before the current frame, and the step of determining the left channel signal and the right channel signal based on the decoherence signal and downmix signal of the current frame.
[0211] Referring to Figures 9 and 10, the entire process of encoding and decoding a multichannel signal in an embodiment of this application will be described in detail below, using examples of left channel and right channel signals.
[0212] Figure 9 is a schematic flowchart of a multi-channel signal coding method according to one embodiment of the present application. In Figure 9, the multi-channel signal includes a left channel signal and a right channel signal, and the process of coding the left channel signal and the right channel signal specifically includes the following steps.
[0213] 910. Calculate the spatial parameters of the left channel signal and the right channel signal.
[0214] Spatial parameters include reverberation gain parameters corresponding to the subbands of the left and right channel signals, as well as other spatial parameters (such as IC, ILD, ITD, and IPD).
[0215] 920. Downmixing is performed on the left channel signal (represented by L in the diagram) and the right channel signal (represented by R in the diagram) to obtain a downmixed signal.
[0216] 930. Determine the energy of different subbands of the downmix signal.
[0217] The energy of the downmix signal may be calculated based on the downmix signal itself. Left channel signal The energy and Right channel signal It may be estimated or inferred based on the energy of
[0218] 940. Adaptively select the target reverberation gain parameter that needs to be encoded within the reverberation gain parameters corresponding to the subbands of the left and right channel signals, based on the energy of the different subbands of the downmix signal.
[0219] 950. Quantize the target reverberation gain parameter and the downmix signal to obtain the bitstream.
[0220] Figure 10 is a schematic flowchart of a multi-channel signal decoding method according to one embodiment of the present application. In Figure 10, the multi-channel signal includes a left channel signal and a right channel signal. The bitstream generated by the encoding in Figure 9 may be decoded in Figure 10. The decoding process in Figure 10 specifically includes the following steps.
[0221] 1010. Obtain the bitstreams of the left channel signal and the right channel signal.
[0222] 1020. Decode the bitstream to obtain the downmixed signal.
[0223] 1030. Determine the energies of different subbands of the downmix signal.
[0224] The energy of the downmix signal may be calculated based on the downmix signal itself. Left channel signal The energy and Right channel signal It may be estimated or inferred based on the energy of
[0225] 1040. Based on the energy of different subbands of the downmix signal, the subbands of the left channel signal and the right channel signal are adaptively selected for reverberation processing.
[0226] 1050. Decode the reverberation gain parameters corresponding to selected subbands for reverberation processing of the left and right channel signals, as well as other spatial parameters (such as IC, ILD, ITD, and IPD).
[0227] 1060. To obtain the left and right channel signals, an upmixing process is performed based on the downmix signal and reverberation gain parameters obtained by decoding (the reverberation gain parameters are those adjusted by the encoder).
[0228] After upmixing is performed to acquire the left channel signal and the right channel signal, reverberation processing may be performed separately on the left channel signal and the right channel signal based on the coherence signal.
[0229] In the method shown in Figure 10, reverberation processing is performed on the left and right channel signals based on the target reverberation gain parameter obtained by decoding, and reverberation processing may be performed on several subbands of the left and right channel signals based on the target reverberation gain parameter, thereby ensuring the quality of the channel signals obtained after reverberation processing.
[0230] The above describes in detail the multi-channel signal coding method and multi-channel signal decoding method in the embodiments of this application with reference to Figures 3 to 10. Below, the encoder and decoder in the embodiments of this application will be described with reference to Figures 11 to 18. It should be understood that the encoder and decoder in Figures 11 to 18 can implement the steps performed by the encoder and decoder in the coding method and decoding method in the embodiments of this application. For the sake of brevity, repetitive explanations will be appropriately omitted below.
[0231] Figure 11 is a schematic block diagram of an encoder according to one embodiment of the present application. The encoder 1100 in Figure 11 is A processing unit 1110 is configured to determine downmix signals of the first channel signal and the second channel signal in a multichannel signal, as well as reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal, The processing unit 1110 is further configured to determine a target reverberation gain parameter that needs to be encoded within the reverberation gain parameter corresponding to different subbands of the first channel signal and the second channel signal. Processing unit 1110 is further configured to generate parameter indication information, which is used to indicate subbands corresponding to target reverberation gain parameters. An encoding unit 1120 is configured to encode the target reverberation gain parameter, parameter instruction information, and downmix signal in order to generate a bitstream. Includes.
[0232] In this application, when the first and second channel signals are encoded, reverberation gain parameters corresponding to only some subbands of the first and second channel signals may be encoded. Compared to the prior art method, which requires that reverberation gain parameters corresponding to all subbands of the first and second channel signals be encoded, bit overhead can be reduced to some extent, and encoding efficiency can be improved. Specifically, when reverberation gain parameters corresponding to some subbands are encoded, a large number of saved bits can be used to encode other parameters or to allocate more bits to the downmix signal, thereby improving overall encoding performance.
[0233] The encoder 1100 can support the multi-channel signal coding method shown in Figure 3, and the encoder 1100 can perform the multi-channel signal coding method shown in Figure 3.
[0234] In some cases, in one embodiment, the processing unit 1110 is configured to determine a target reverberation gain parameter based specifically on at least one of the coherence between the energy of a first channel signal and the energy of a downmix signal, and the coherence between the energy of a second channel signal and the energy of a downmix signal.
[0235] In some cases, in one embodiment, each of the first channel signal and the second channel signal includes a plurality of frequency bins, and the processing unit 1110 is configured to determine, specifically, a first difference value between the energy of the first channel signal and the energy of the downmix signal, the first difference value being used to indicate the sum of the absolute values of the difference values between the energy of the first channel signal and the energy of the downmix signal in the plurality of frequency bins, and when the first difference value is greater than a first threshold, the reverberation gain parameter corresponding to a subband of the first frequency band is the target reverberation gain parameter, the first frequency band being part of all the frequency bands of each of the first channel signal and the second channel signal.
[0236] In some cases, in one embodiment, each of the first channel signal and the second channel signal includes a plurality of frequency bins, and the processing unit 1110 is configured to determine, specifically, a second difference value between the energy of the second channel signal and the energy of the downmix signal, the second difference value being used to indicate the sum of the absolute values of the difference values between the energy of the second channel signal and the energy of the downmix signal in the plurality of frequency bins, and when the second difference value is greater than a second threshold, the reverberation gain parameter corresponding to a subband of the first frequency band is the target reverberation gain parameter, the first frequency band being part of all the frequency bands of each of the first channel signal and the second channel signal.
[0237] In some cases, in one embodiment, each of the first channel signal and the second channel signal includes a plurality of frequency bins, and the processing unit 1110 is configured to determine, specifically, a first difference value between the energy of the first channel signal and the energy of the downmix signal, the first difference value being used to indicate the sum of the absolute values of the difference values between the energy of the first channel signal and the energy of the downmix signal in the plurality of frequency bins; a second difference value between the energy of the second channel signal and the energy of the downmix signal, the second difference value being used to indicate the sum of the absolute values of the difference values between the energy of the second channel signal and the energy of the downmix signal in the plurality of frequency bins; and when the first difference value is greater than a first threshold and the second difference value is greater than a second threshold, the reverberation gain parameter corresponding to a subband of the first frequency band is the target reverberation gain parameter, the first frequency band being part of all the frequency bands of each of the first channel signal and the second channel signal.
[0238] In some cases, in one embodiment, the frequency of the first frequency band is smaller than the frequency of another frequency band different from the first frequency band in the first channel signal and the second channel signal.
[0239] In some cases, in one embodiment, multiple frequency bins lie within a second frequency band of the first channel signal and the second channel signal, respectively, where the frequencies of the second frequency band are greater than the frequencies of other frequency bands different from the second frequency band in the first channel signal and the second channel signal.
[0240] In some cases, in one embodiment, the processing unit 1110 is configured to determine the energies of N subbands of the downmix signal, to determine M subbands from the N subbands, wherein the energy of any subband among the M subbands is greater than the energy of any subband among the NM subbands in the N subbands excluding the M subbands, and both M and N are integers greater than 0, with M being less than N, and to determine the target reverberation gain parameter based on the magnitude relationship between the energies of the M subbands of the downmix signal and the energies of the NM subbands of the downmix signal.
[0241] In some cases, in one embodiment, the processing unit 1110 is configured to determine, specifically, that when the sum of the energies of M subbands is greater than L times the sum of the energies of NM subbands, the reverberation gain parameter corresponding to the subbands of the first frequency band of the first channel signal and the second channel signal is the target reverberation gain parameter, wherein the first frequency band is part of all the frequency bands of each of the first channel signal and the second channel signal, and L is a real number greater than 0.
[0242] In some cases, in one embodiment, the processing unit 1110 is configured to specifically determine the energies of N subbands of the downmix signal, determine M subbands from the N subbands, and determine that the energy of any subband among the M subbands is greater than the energy of any subband among the NM subbands in the N subbands excluding the M subbands, and determine that when the index value of the first subband among the M subbands is smaller than a preset index value, the reverberation gain parameter corresponding to the subband of the first frequency band of the first channel signal and the second channel signal is the target reverberation gain parameter, and determine that the frequency of any frequency bin in the first subband is greater than the frequency of any frequency bin in another subband among the M subbands excluding the first subband, and that the first frequency band is part of all the frequency bands of the first channel signal and the second channel signal, respectively.
[0243] In some cases, in one embodiment, the processing unit 1110 is configured to determine J target subbands from N subbands, wherein the energy of any subband among the J target subbands is greater than the energy of another subband different from the J target subbands, and both N and J are integers greater than 0, with J being less than N; and to determine the reverberation gain parameters corresponding to the J target subbands as target reverberation gain parameters.
[0244] In some cases, in one embodiment, the energy of the downmix signal is determined based on the energy of the first channel signal and the energy of the second channel signal.
[0245] Figure 12 is a schematic block diagram of a decoder according to one embodiment of the present application. The decoder 1200 in Figure 12 is An acquisition unit 1210 configured to receive a bitstream, The acquisition unit 1210 is further configured to acquire, based on the bitstream, downmix signals of the first and second channel signals in the multichannel signal, as well as parameter indication information, the parameter indication information being used to indicate the encoded target reverberation gain parameter in the reverberation gain parameters corresponding to different subbands of the first and second channel signals. The acquisition unit 1210 is further configured to acquire target reverberation gain parameters from the bitstream according to parameter instruction information, A processing unit 1220 is configured to determine a first channel signal and a second channel signal based on the downmix signal and target reverberation gain parameters. Includes.
[0246] In this application, the target reverberation gain parameter encoded by the encoder can be determined using parameter indication information, and then reverberation processing is performed on the corresponding subbands of the first channel signal and the second channel signal based on the target reverberation gain parameter.
[0247] decoder The 1200 can correspond to the multi-channel signal decoding method shown in Figure 4, and the decoder 1200 can perform the multi-channel signal decoding method shown in Figure 4.
[0248] Figure 13 is a schematic block diagram of an encoder according to one embodiment of the present application. The encoder 1300 in Figure 13 is A processing unit 1310 is configured to determine downmix signals of the first channel signal and the second channel signal in a multichannel signal, as well as reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal, The processing unit 1310 is further configured to determine a target reverberation gain parameter that needs to be encoded within the reverberation gain parameter corresponding to different subbands of the first channel signal and the second channel signal, based on the energy of N subbands of the downmix signal, where N is an integer greater than 0. An encoding unit 1320 configured to encode the downmix signal and target reverberation gain parameters, Includes.
[0249] In this application, a specific number of subbands are directly selected from all subbands based on the energy of each subband of the downmix signal, resulting in a more flexible selection of the reverberation gain parameters that need to be encoded.
[0250] The encoder 1300 is shown in Figure 7. multi The encoder 1300 can support channel signal coding methods, as shown in Figure 7. multi A channel signal coding method can be implemented.
[0251] In some cases, in one embodiment, the processing unit 1310 is configured to determine J target subbands from N subbands, wherein the energy of any subband among the J target subbands is greater than the energy of another subband different from the J target subbands, and both N and J are integers greater than 0, with J being less than N; and to determine the reverberation gain parameters corresponding to the J target subbands as target reverberation gain parameters.
[0252] Figure 14 is a schematic block diagram of a decoder according to one embodiment of the present application. The decoder 1400 in Figure 14 is A first acquisition unit 1410 configured to receive a bitstream, A first processing unit 1420 is configured to determine the downmix signals of the first channel signal and the second channel signal in a multi-channel signal based on the bitstream, A second processing unit 1430 configured to determine an encoded target reverberation gain parameter in the reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal, based on the energies of N subbands of the downmix signal, wherein N is an integer greater than 0. A third processing unit 1440 is configured to determine the target reverberation gain parameter based on the bitstream, A fourth processing unit 1450 is configured to determine a first channel signal and a second channel signal based on the downmix signal and target reverberation gain parameters. Includes.
[0253] In this application, the decoder can directly determine the encoded target reverberation gain parameter within the reverberation gain parameters corresponding to different subbands of the first and second channel signals based on the energy of multiple subbands of the downmix signal. As a result, the number of bits occupied by the decoder to transmit instruction information indicating the encoded target reverberation gain parameter is reduced, thereby reducing signaling overhead to some extent.
[0254] Decoder 1400 can be used with the multi-channel signal decoding method shown in Figure 8, and decoder 1400 is shown in Figure 8 This allows for the execution of a multi-channel signal decoding method.
[0255] In some cases, in one embodiment, the first processing unit 1420Specifically, this involves determining J target subbands from N subbands based on the energies of N subbands, wherein the energy of any subband among the J target subbands is greater than the energy of another subband different from the J target subbands, and both N and J are integers greater than 0, with J being less than N. The system is configured to perform these two steps: determine the reverberation gain parameters corresponding to the J target subbands as target reverberation gain parameters.
[0256] Figure 15 is a schematic block diagram of an encoder according to one embodiment of the present application. The encoder 1500 in Figure 15 is Memory 1510 configured to store programs, A processor 1520 configured to execute a program, wherein when the program is executed, the processor 1520 is configured to determine: downmix signals of a first channel signal and a second channel signal in a multichannel signal, and reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal; determine a target reverberation gain parameter that needs to be encoded within the reverberation gain parameter corresponding to different subbands of the first channel signal and the second channel signal; generate parameter indication information, the parameter indication information being used to indicate the subbands corresponding to the target reverberation gain parameter; and encode the target reverberation gain parameter, the parameter indication information, and the downmix signal in order to generate a bitstream. Includes.
[0257] In this application, when the first and second channel signals are encoded, reverberation gain parameters corresponding to only some subbands of the first and second channel signals may be encoded. Compared to the prior art method, which requires that reverberation gain parameters corresponding to all subbands of the first and second channel signals be encoded, bit overhead can be reduced to some extent, and encoding efficiency can be improved. Specifically, when reverberation gain parameters corresponding to some subbands are encoded, a large number of saved bits can be used to encode other parameters or to allocate more bits to the downmix signal, thereby improving overall encoding performance.
[0258] The encoder 1500 is shown in Figure 3. multi It can support channel signal coding methods, and the encoder 1500 is shown in Figure 3. multi A channel signal coding method can be implemented.
[0259] In some cases, in one embodiment, the processor 1520 is configured to determine a target reverberation gain parameter based specifically on at least one of the coherence between the energy of a first channel signal and the energy of a downmix signal, and the coherence between the energy of a second channel signal and the energy of a downmix signal.
[0260] In some cases, in one embodiment, each of the first channel signal and the second channel signal includes a plurality of frequency bins, and the processor 1520 is configured to determine, specifically, a first difference value between the energy of the first channel signal and the energy of the downmix signal, the first difference value being used to indicate the sum of the absolute values of the difference values between the energy of the first channel signal and the energy of the downmix signal in the plurality of frequency bins, and when the first difference value is greater than a first threshold, the reverberation gain parameter corresponding to a subband of the first frequency band is the target reverberation gain parameter, the first frequency band being part of all the frequency bands of each of the first channel signal and the second channel signal.
[0261] In some cases, in one embodiment, each of the first channel signal and the second channel signal includes a plurality of frequency bins, and the processor 1520 is configured to determine, specifically, a second difference value between the energy of the second channel signal and the energy of the downmix signal, the second difference value being used to indicate the sum of the absolute values of the difference values between the energy of the second channel signal and the energy of the downmix signal in the plurality of frequency bins, and when the second difference value is greater than a second threshold, the reverberation gain parameter corresponding to a subband of the first frequency band is the target reverberation gain parameter, the first frequency band being part of all the frequency bands of each of the first channel signal and the second channel signal.
[0262] In some cases, in one embodiment, each of the first channel signal and the second channel signal includes a plurality of frequency bins, and the processor 1520 is configured to determine, specifically, a first difference value between the energy of the first channel signal and the energy of the downmix signal, the first difference value being used to indicate the sum of the absolute values of the difference values between the energy of the first channel signal and the energy of the downmix signal in the plurality of frequency bins; a second difference value between the energy of the second channel signal and the energy of the downmix signal, the second difference value being used to indicate the sum of the absolute values of the difference values between the energy of the second channel signal and the energy of the downmix signal in the plurality of frequency bins; and when the first difference value is greater than a first threshold and the second difference value is greater than a second threshold, the reverberation gain parameter corresponding to a subband of the first frequency band is the target reverberation gain parameter, the first frequency band being part of all the frequency bands of each of the first channel signal and the second channel signal.
[0263] In some cases, in one embodiment, the frequency of the first frequency band is smaller than the frequency of another frequency band different from the first frequency band in the first channel signal and the second channel signal.
[0264] In some cases, in one embodiment, multiple frequency bins lie within a second frequency band of the first channel signal and the second channel signal, respectively, where the frequencies of the second frequency band are greater than the frequencies of other frequency bands different from the second frequency band in the first channel signal and the second channel signal.
[0265] In some cases, in one embodiment, the processor 1520 is configured to determine the energies of N subbands of the downmix signal, to determine M subbands from the N subbands, wherein the energy of any subband among the M subbands is greater than the energy of any subband among the NM subbands in the N subbands excluding the M subbands, and both M and N are integers greater than 0, with M being less than N, and to determine a target reverberation gain parameter based on the relative magnitudes between the energies of the M subbands and the energies of the NM subbands.
[0266] In some cases, in one embodiment, the processor 1520 is configured to determine, specifically, that the reverberation gain parameter corresponding to the subbands of the first frequency band of the first channel signal and the second channel signal is the target reverberation gain parameter when the sum of the energies of M subbands is greater than L times the sum of the energies of NM subbands, wherein the first frequency band is part of all the frequency bands of each of the first channel signal and the second channel signal, and L is a real number greater than 0.
[0267] In some cases, in one embodiment, the processor 1520 is specifically configured to determine the energy of N sub - bands of the down - mixed signal, and to determine M sub - bands from the N sub - bands, where the energy of any sub - band in the M sub - bands is greater than the energy of any sub - band in the N - M sub - bands excluding the M sub - bands, and when the index value of the first sub - band in the M sub - bands is smaller than the preset index value, to determine that the reverberation gain parameter corresponding to the sub - band of the first frequency band of the first channel signal and the second channel signal is the target reverberation gain parameter, where the frequency of any frequency bin in the first sub - band is greater than the frequency of any frequency bin in another sub - band among the M sub - bands excluding the first sub - band, and the first frequency band is a part of all the frequency bands of each of the first channel signal and the second channel signal.
[0268] In some cases, in one embodiment, the processor 1520 is specifically configured to determine the energy of N sub - bands of the down - mixed signal, and to determine J target sub - bands from the N sub - bands based on the energy of the N sub - bands, where the energy of any sub - band in the J target sub - bands is greater than the energy of another sub - band different from the J target sub - bands, both N and J are integers greater than 0, and J is smaller than N, and to determine the reverberation gain parameter corresponding to the J target sub - bands as the target reverberation gain parameter.
[0269] In some cases, in one embodiment, the energy of the down - mixed signal is determined based on the energy of the first channel signal and the energy of the second channel signal.
[0270] FIG. 16 is a schematic block diagram of a decoder according to an embodiment of the present application. The decoder 1600 in FIG. 16 is Memory 1610 configured to store programs, A processor 1620 configured to execute a program, wherein when the program is executed, the processor 1620 is configured to receive a bitstream, acquire, based on the bitstream, downmix signals of a first channel signal and a second channel signal in a multichannel signal, as well as parameter instruction information, wherein the parameter instruction information is used to indicate an encoded target reverberation gain parameter in the reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal, and determine the first channel signal and the second channel signal based on the downmix signals and the target reverberation gain parameter. Includes.
[0271] In this application, the target reverberation gain parameter encoded by the encoder can be determined using parameter indication information, and then reverberation processing is performed on the corresponding subbands of the first channel signal and the second channel signal based on the target reverberation gain parameter.
[0272] Decoder 1600 can support the multi-channel signal decoding method shown in Figure 4, and Decoder 1600 can perform the multi-channel signal decoding method shown in Figure 4.
[0273] Figure 17 is a schematic block diagram of an encoder according to one embodiment of the present application. The encoder 1700 in Figure 17 is Memory 1710 configured to store programs, A processor 1720 configured to execute a program, wherein when the program is executed, the processor 1720 is configured to determine a downmix signal of a first channel signal and a second channel signal in a multichannel signal, as well as reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal; determine a target reverberation gain parameter that needs to be encoded within the reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal, based on the energy of N subbands of the downmix signal, where N is an integer greater than 0; and encode the downmix signal and the target reverberation gain parameter. Includes.
[0274] In this application, a specific number of subbands are directly selected from all subbands based on the energy of each subband of the downmix signal, resulting in a more flexible selection of the reverberation gain parameters that need to be encoded.
[0275] The encoder 1700 is shown in Figure 7. multi It can support channel signal coding methods, and the encoder 1700 is shown in Figure 7. multi A channel signal coding method can be implemented.
[0276] In some cases, in one embodiment, the processor 1720 is configured to determine J target subbands from N subbands based on the energies of N subbands, wherein the energy of any subband among the J target subbands is greater than the energy of another subband different from the J target subbands, and both N and J are integers greater than 0, with J being less than N; and to determine the reverberation gain parameters corresponding to the J target subbands as target reverberation gain parameters.
[0277] Figure 18 is a schematic block diagram of a decoder according to one embodiment of the present application. The decoder 1800 in Figure 18 is Memory 1810 configured to store programs, A processor 1820 configured to execute a program, wherein when the program is executed, the processor 1820 is configured to: receive a bitstream; determine downmix signals of a first channel signal and a second channel signal in a multichannel signal based on the bitstream; determine encoded target reverberation gain parameters in reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal based on the energy of N subbands of the downmix signal, where N is an integer greater than 0; determine target reverberation gain parameters based on the bitstream; and determine the first channel signal and the second channel signal based on the downmix signal and the target reverberation gain parameters. Includes.
[0278] In this application, the decoder can directly determine the encoded target reverberation gain parameter within the reverberation gain parameters corresponding to different subbands of the first and second channel signals based on the energy of multiple subbands of the downmix signal. As a result, the number of bits occupied by the decoder to transmit instruction information indicating the encoded target reverberation gain parameter is reduced, thereby reducing signaling overhead to some extent.
[0279] Decoder 1800 can be used with the multi-channel signal decoding method shown in Figure 8, and Decoder 1800 is as shown in Figure 8 This allows for the execution of a multi-channel signal decoding method.
[0280] In some cases, in one embodiment, the processor 1820 is configured to determine J target subbands from N subbands based on the energies of N subbands, wherein the energy of any subband among the J target subbands is greater than the energy of another subband different from the J target subbands, and both N and J are integers greater than 0, with J being less than N; and to determine the reverberation gain parameters corresponding to the J target subbands as target reverberation gain parameters.
[0281] Those skilled in the art will recognize, in combination with the examples described in the embodiments disclosed herein, that the units and algorithmic steps may be implemented by electronic hardware, or by a combination of computer software and electronic hardware. Whether the functions are performed by hardware or by software depends on the specific application and design constraints of the technical solution. Those skilled in the art can implement the functions described for each specific application using various methods, but such implementations should not be considered to exceed the scope of this application.
[0282] For the sake of a convenient and concise explanation, please refer to the corresponding processes in the above-described embodiment of the method for detailed operating processes of the above-described systems, apparatus, and units, as it will be clear to those skilled in the art that such details are not described again herein.
[0283] In some embodiments provided in this application, it should be understood that the disclosed systems, apparatus, and methods may be implemented in other ways. For example, the described apparatus embodiments are merely examples. For example, the unit division is merely a logical functional division, and other divisions may be used in actual implementations. For example, multiple units or components may be combined or integrated into another system, or some functions may be ignored or not performed. In addition, the mutual coupling, direct coupling, or communication connection shown or described may be implemented by using some interfaces. Indirect coupling or communication connection between apparatus or units may be implemented in electrical, mechanical, or other forms.
[0284] Units described as separate parts may or may not be physically separate, and parts shown as units may or may not be physical units, may be located in one place, or may be distributed across multiple network units. Some or all of the units may be selected based on actual requirements to achieve the objectives of the solution of the embodiment.
[0285] In addition, the functional units in the embodiments of this application may be integrated into a single processing unit, or each unit may exist physically independently, or two or more units may be integrated into a single unit.
[0286] When the function is implemented in the form of a software functional unit and sold or used as an independent product, the function may be stored in a computer-readable storage medium. Based on such an understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a part of the technical solution, may also be implemented in the form of a software product. The computer software product is stored in a storage medium and contains several instructions for instructing a computer device (which may be a personal computer, server, network device, etc.) to execute all or some of the steps of the method described in the embodiments of this application. The aforementioned storage medium includes any medium capable of storing program code, such as a USB flash drive, removable hard disk, read-only memory (ROM), random access memory (RAM), magnetic disk, or optical disk.
[0287] The above description is only a specific implementation form of this application and does not limit the protection scope of this application. Any deformation or substitution that can be easily conceived by those skilled in the art within the technical scope disclosed in this application should fall within the protection scope of this application. Therefore, the protection scope of this application should follow the protection scope of the claims.
Description of Reference Signs
[0288] 1100 Encoder 1110 Processing Unit 1120 Encoding Unit 1200 Decoder 1210 Acquisition Unit 1220 Processing Unit 1300 Encoder 1310 Processing Unit 1320 Encoding Unit ... 1400 Decoder 1410 First Acquisition Unit 1420 First Processing Unit 1430 Second Processing Unit 1440 Third processing unit 1450 Fourth processing unit 1500 encoders 1510 memory 1520 Processor 1600 Decoder 1610 memory 1620 processor 1700 encoders 1710 memory 1720 Processor 1800 Decoder 1810 memory 1820 processor
Claims
1. A multi-channel signal coding method, The steps include determining the downmix signals of the first channel signal and the second channel signal in the multichannel signal, and the reverberation gain parameters corresponding to different subbands of the first channel signal and the second channel signal, The steps include determining a target reverberation gain parameter that needs to be encoded within the reverberation gain parameter corresponding to the different subbands of the first channel signal and the second channel signal, A step of generating parameter indication information, wherein the parameter indication information is used to indicate a subband corresponding to the target reverberation gain parameter, To generate a bitstream, the steps include encoding the target reverberation gain parameter, the parameter instruction information, and the downmix signal. Equipped with, The step of determining a target reverberation gain parameter that needs to be encoded within the reverberation gain parameter corresponding to the different subbands of the first channel signal and the second channel signal, The step of determining the target reverberation gain parameter based on at least one of the coherence between the energy of the first channel signal and the energy of the downmix signal, and the coherence between the energy of the second channel signal and the energy of the downmix signal. Equipped with, Each of the first channel signal and the second channel signal comprises a plurality of frequency bins, The step of determining the target reverberation gain parameter based on at least one of the coherence between the energy of the first channel signal and the energy of the downmix signal, and the coherence between the energy of the second channel signal and the energy of the downmix signal, A step of determining a first difference value between the energy of the first channel signal and the energy of the downmix signal, wherein the first difference value is used to represent the sum of the absolute values of the difference values between the energy of the first channel signal and the energy of the downmix signal in the plurality of frequency bins, Steps to determine that when the first difference value is greater than the first threshold value, the first threshold value is a preset value and the reverberation gain parameter corresponding to a subband of the first frequency band is the target reverberation gain parameter, wherein the first frequency band is a part of all the frequency bands of the first channel signal and the second channel signal respectively. A multi-channel signal coding method comprising the following features.
2. The method according to claim 1, wherein the frequency of the first frequency band is smaller than the frequency of another frequency band different from the first frequency band in the first channel signal and the second channel signal.
3. The method according to claim 1 or 2, wherein the plurality of frequency bins are within a second frequency band of each of the first channel signal and the second channel signal, and the frequency of the second frequency band is greater than the frequency of another frequency band different from the second frequency band in the first channel signal and the second channel signal.
4. The method according to any one of claims 1 to 3, wherein the energy of the downmix signal is determined based on the energy of the first channel signal and the energy of the second channel signal.
5. A computer-readable storage medium on which a program is recorded, wherein the program causes the computer to execute the method described in any one of Claims 1 to 4.
6. A computer program stored on a medium configured to cause a computer to perform the method described in any one of claims 1 to 4.
7. A multi-channel signal encoder, Memory for storing processor-executable instructions, A processor operably coupled to the memory, configured to execute processor-executable instructions to perform the method according to any one of claims 1 to 4, and A multi-channel signal encoder equipped with the following features.