Pulse encoding and decoding method and pulse codec
First Claim
1. A pulse audio encoding method performed by a pulse encoder which is implemented by hardware, comprising:
- obtaining algebraic codebook pulses that are on T tracks and to be encoded, wherein T is an integer greater than or equal to 2;
separately collecting, according to positions, statistics about at least one pulse that is on each track and to be encoded, to obtain the number Nt of positions that have at least one pulse on each track, distribution of the positions that have at least one pulse on each track, and the number of pulses on each position that has at least one pulse, wherein the subscript t represents a tth track, and tε
[0, T−
1];
according to a {N0, N1, . . . , NT-1} combination of the number of positions that have at least one pulse on the T tracks, determining a first index I1, wherein the first index I1 corresponds to all possible distribution situations of positions that have at least one pulse and are on each track;
determining a second index I2t of each track separately according to distribution of positions that have at least one pulse and are on each track, wherein the second index indicates, among all possible distribution situations corresponding to the first index I1, a distribution situation which corresponds to distribution of current positions having at least one pulse on a corresponding track;
determining a third index I3t of each track separately according to the number of pulses on each position that has at least one pulse and is on each track; and
generating a code index Ind, wherein the code index comprises information of the first index, the second index of each track and the third index of each track.
1 Assignment
0 Petitions
Accused Products
Abstract
In a pulse encoding and decoding method and a pulse codec, more than two tracks are jointly encoded, so that free codebook space in the situation of single track encoding can be combined during joint encoding to become code bits that may be saved. Furthermore, a pulse that is on each track and required to be encoded is combined according to positions, and the number of positions having pulses, distribution of the positions that have pulses on the track, and the number of pulses on each position that has a pulse are encoded separately, so as to avoid separate encoding performed on multiple pulses of a same position, thereby further saving code bits.
26 Citations
19 Claims
-
1. A pulse audio encoding method performed by a pulse encoder which is implemented by hardware, comprising:
-
obtaining algebraic codebook pulses that are on T tracks and to be encoded, wherein T is an integer greater than or equal to 2; separately collecting, according to positions, statistics about at least one pulse that is on each track and to be encoded, to obtain the number Nt of positions that have at least one pulse on each track, distribution of the positions that have at least one pulse on each track, and the number of pulses on each position that has at least one pulse, wherein the subscript t represents a tth track, and tε
[0, T−
1];according to a {N0, N1, . . . , NT-1} combination of the number of positions that have at least one pulse on the T tracks, determining a first index I1, wherein the first index I1 corresponds to all possible distribution situations of positions that have at least one pulse and are on each track; determining a second index I2t of each track separately according to distribution of positions that have at least one pulse and are on each track, wherein the second index indicates, among all possible distribution situations corresponding to the first index I1, a distribution situation which corresponds to distribution of current positions having at least one pulse on a corresponding track; determining a third index I3t of each track separately according to the number of pulses on each position that has at least one pulse and is on each track; and generating a code index Ind, wherein the code index comprises information of the first index, the second index of each track and the third index of each track. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A pulse audio decoding method performed by a pulse decoder which is implemented by hardware, comprising:
-
obtaining an algebraic codebook code index Ind, extracting a first index from the code index, and determining, according to the first index, a {N0, N1, . . . , NT-1} combination of the number of positions that have at least one pulse on T tracks, wherein the subscript t of Nt represents a tth track, tε
[0, T−
1], and T is an integer greater than or equal to 2;extracting a second index I2t of the tth track and a third index I3t of the tth track from the code index; according to the second index, determining distribution of positions that have at least one pulses on the tth track under the number of positions having at least one pulse on the tth track, Nt which is determined according to the first index; according to the third index, determining the number of pulses on each position that has at least one pulse on the tth track; and according to distribution of the positions that have at least one pulse on the tth track and the number of pulses on each position that has at least one pulse, reconstructing a pulse sequence on the tth track. - View Dependent Claims (11, 12, 13)
-
-
14. A pulse audio encoder implemented by hardware comprising:
-
a pulse statistics unit, configured to obtain algebraic codebook pulses that are on T tracks and to be encoded, wherein T is an integer greater than or equal to 2; and
separately collect, according to positions, statistics about at least one pulse that is on each track and to be encoded, to obtain the number Nt of positions that have at least one pulse on each track, distribution of the positions that have at least one pulse on each track, and the number of pulses on each position that has at least one pulse, wherein the subscript t represents a tth track, and tε
[0, T−
1];an index calculation unit, wherein the index calculation unit comprises;
a first index unit, configured to, according to a {N0, N1, . . . , NT-1} combination of the number of positions that have at least one pulse on the T tracks, determine a first index I1, wherein the first index I1 corresponds to all possible distribution situations of positions that have at least one pulse and are on each track;
a second index unit, configured to output a second index I2t of each track separately according to distribution of positions that have at least one pulses and are on each track, wherein the second index indicates, among all possible distribution situations corresponding to the first index, a distribution situation which corresponds to distribution of current positions having at least one pulse on a corresponding track; and
a third index unit, configured to output a third index I3t of each track separately according to the number of pulses on each position that has at least one pulse and is on the track; andan index combination unit, configured to combine information of the first index I1, the second index of each track and the third index of each track to generate a code index Ind. - View Dependent Claims (15, 16)
-
-
17. A pulse audio decoder implemented by hardware executing comprising:
-
a first extraction unit, configured to obtain an algebraic codebook code index Ind, extract a first index from the code index, and determine, according to the first index, a {N0, N1, . . . , NT-1} combination of the number of positions that have at least one pulse on T tracks, wherein the subscript t of Nt represents a tth track, tε
[0, T−
1], and T is an integer greater than or equal to 2;a second extraction unit, configured to extract a second index I2t of each track and a third index I3t of each track from the code index; a first decoding unit, configured to, according to the second index, determine distribution of the positions that have at least one pulse on the tth track under the number of positions having at least one pulses on the tth track, Nt which is determined according to the first index; a second decoding unit, configured to, according to the third index, determine the number of pulses on each position that has at least one pulse on the tth track; and a pulse reconstruction unit, configured to, according to distribution of the positions that have at least one pulse on the tth track and the number of pulses on each position that has at least one pulse, reconstruct a pulse sequence on the tth track. - View Dependent Claims (18, 19)
-
Specification