CN101388210A - Coding and decoding method, coder and decoder - Google Patents

Coding and decoding method, coder and decoder Download PDF

Info

Publication number
CN101388210A
CN101388210A CNA2007101539527A CN200710153952A CN101388210A CN 101388210 A CN101388210 A CN 101388210A CN A2007101539527 A CNA2007101539527 A CN A2007101539527A CN 200710153952 A CN200710153952 A CN 200710153952A CN 101388210 A CN101388210 A CN 101388210A
Authority
CN
China
Prior art keywords
index
pulse
distribution
coding
code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2007101539527A
Other languages
Chinese (zh)
Other versions
CN101388210B (en
Inventor
马付伟
张德军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to CN2007101539527A priority Critical patent/CN101388210B/en
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to PT141849299T priority patent/PT2827327T/en
Priority to DK14184929.9T priority patent/DK2827327T3/en
Priority to EP08734199.6A priority patent/EP2157573B1/en
Priority to EP14184929.9A priority patent/EP2827327B1/en
Priority to JP2010504431A priority patent/JP5221642B2/en
Priority to PCT/CN2008/070841 priority patent/WO2008134974A1/en
Priority to ES08734199.6T priority patent/ES2529292T3/en
Priority to ES14184929T priority patent/ES2817906T3/en
Publication of CN101388210A publication Critical patent/CN101388210A/en
Priority to US12/607,723 priority patent/US8294602B2/en
Application granted granted Critical
Publication of CN101388210B publication Critical patent/CN101388210B/en
Priority to US13/622,207 priority patent/US8988256B2/en
Priority to JP2013046027A priority patent/JP5866307B2/en
Priority to US14/617,585 priority patent/US9225354B2/en
Priority to US14/974,171 priority patent/US9444491B2/en
Priority to JP2016000105A priority patent/JP6239652B2/en
Priority to US15/228,661 priority patent/US9912350B2/en
Priority to US15/880,300 priority patent/US10153780B2/en
Priority to US16/184,240 priority patent/US10425102B2/en
Priority to US16/568,144 priority patent/US10666287B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention discloses a coding method, which sorts and codes pulses which need to be coded according to the distribution of the positions of the pulses on a track. The invention further provides a corresponding decoding method and a codec. Proved by research practice, coding logic can effectively reduce the complexity of calculation, simultaneously because of coding according to sorting, different pulse distribution corresponds to continuous coding, thereby being capable of reducing the redundancy of the coding as possible, and saving the coded bits.

Description

Decoding method and codec
Technical field
The present invention relates to decoding method and corresponding codec.
Background technology
In the vector coding technology, the residual signals after usually using algebraic-codebook to auto adapted filtering carries out quantization encoding.After obtaining the position and symbolic information of best algebraic-codebook pulse on the track through search, calculate corresponding index value by coding, make decoding end to rebuild pulse train according to this index value.Guarantee to reduce the needed bit of code index value under the harmless prerequisite of rebuilding as far as possible, be one of main target of algebraic-codebook pulse code method research and development.
Below with a kind of more excellent coding method in the voice coding---wideband adaptive multi code Rate of Chinese character (AMR_WB+:Adaptive Multi-Rate Wideband) coding method is an example, and a kind of specific coding method that existing algebraic-codebook pulse is adopted is described.According to the difference of encoder bit rate, 1~N the pulse of can encoding on each track supposes that each track has M=2 mIndividual position, the process of 1~6 pulse of encoding on each track among the AMR_WB+ is described below respectively:
1. 1 pulse of each track coding
Because each track has 2 mIndividual position, therefore, the location index of pulse need be encoded with m bit on each track, and 1 bits of encoded need be used in the notation index of pulse.The index value of 1 tape symbol pulse of coding is:
I 1p(m)=p+s×2 m
Wherein p ∈ [0,2 m-1] for the location index of pulse; S is the notation index of pulse, and when impulse code is timing, s is set to 0, when impulse code when negative, s is set to 1; I 1p∈ [0,2 M+1-1].
1 required bit number of pulse of each track coding is: m+1.
2. 2 pulses of each track coding
According to result 1., 1 pulse of each track coding needs m+1 bit, the location index of another pulse encoded needs m bit, because the paired pulses order does not have special requirement, and can be by arranging the symbol that magnitude relationship that the pulse position index obtains be represented another pulse.The index value of 2 pulses of coding is:
I 2p(m)=p1+I 1p0×2 m=p1+p0×2 m+s×2 2m
Wherein p0, p1 ∈ [0,2 m-1] is respectively the location index of 2 pulses; S is the notation index of p0 pulse; The concrete expression rule of p1 impulse code is: p0<p1 represents that 2 impulse codes are identical, p0〉p1 represents that 2 impulse codes are opposite; I 2p∈ [0,2 2m+1-1].
2 required bit numbers of pulse of each track coding are: 2m+1.
3. 3 pulses of each track coding
Each track is divided into two parts: Section A and Section B, each part respectively comprises 2 M-1Individual position.At least comprise 2 pulses in certain part, according to result 2., this part of encoding needs 2 * (m-1)+1=2m-1 bit; Another pulse is then searched on whole rail, according to result 1., needs m+1 bit; In addition, also need to indicate the part that comprises 2 pulses with 1 bit.The index value of 3 pulses of coding is:
I 3p(m)=I 2p(m-1)+k×2 2m-1+I 1p(m)×2 2m
Wherein k is the index of Section; I 3p∈ [0,2 3m+1-1].
3 required bit numbers of pulse of each track coding are: 3m+1.
4. 4 pulses of each track coding
Each track is divided into two parts: Section A and Section B, each part respectively comprises 2 M-1Individual position.The combined situation that comprises pulse number in the each several part is as shown in the table:
Classification Umber of pulse among the Section A Umber of pulse among the Section B Need bit number
0 0 4 4m-3
1 1 3 4m-2
2 2 2 4m-2
3 3 1 4m-2
4 4 0 4m-3
In the last table, the foundation that needs bit number of each classification correspondence is: for classification 0 and classification 4, adopt similar method 3. in the part that 4 pulses are arranged, the pulse number that just carries out whole search is 2, is equivalent to I 2p(m-2)+k * 2 2m-3+ I 2p(m-1) * 2 2m-2For classification 1, be equivalent to I 1p(m-1)+I 3p(m-1) * 2 mFor classification 2, be equivalent to I 2p(m-1)+I 2p(m-1) * 2 2m-1For classification 3, be equivalent to I 3p(m-1)+I 1p(m-1) * 2 3m-2
Regard classification 0 and classification 4 as a kind of possible situation, classification 1~3 then always has 4 kinds of situations respectively as a kind of situation, therefore need represent corresponding situation with 2 bits, and then classification 1~3 all needs 4m-2+2=4m bit; In addition,, also need to distinguish, so classification 0 and classification 4 need 4m-3+2+1=4m bit with 1 bit for the situation that comprises classification 0 and classification 4.
4 required bit numbers of pulse of each track coding are: 4m.
5., 5 pulses of each track coding
Each track is divided into two parts: Section A and Section B, each part respectively comprises 2 M-1Individual position.At least comprise 3 pulses in certain part, according to result 3., this part of encoding needs 3 * (m-1)+1=3m-2 bit; Remaining two pulses are then searched on whole rail, according to result 2., need 2m+1 bit; In addition, also need to indicate the part that comprises 3 pulses with 1 bit.The index value of 5 pulses of coding is:
I 5p(m)=I 3p(m-1)+k×2 3m-2+I 1p(m)×2 3m-1
5 required bit numbers of pulse of each track coding are: 5m.
6. 6 pulses of each track coding
Each track is divided into two parts: Section A and Section B, each part respectively comprises 2 M-1Individual position.The combined situation that comprises pulse number in the each several part is as shown in the table:
Classification Umber of pulse among the Section A Umber of pulse among the Section B Need bit number
0 0 6 6m-5
1 1 5 6m-5
2 2 4 6m-5
3 3 3 6m-4
4 4 2 6m-5
5 5 1 6m-5
6 6 0 6m-5
In the last table, 4. the foundation that needs bit number of each classification correspondence can copy and calculate, repeats no more.
Respectively regard classification 0 and 6, classification 1 and 5, classification 2 and 4 as a kind of possible situation respectively, classification 3 then always has 4 kinds of situations separately as a kind of situation, therefore need represent corresponding situation with 2 bits, and then classification 3 needs 6m-4+2=6m-2 bit; Comprise the situation that merges classification for those, also need to distinguish with 1 bit, therefore other classifications except that classification 3 need 6m-5+2+1=6m-2 bit.
6 required bit numbers of pulse of each track coding are: 6m-2.
In proposing process of the present invention, the inventor finds, the algebraically pulse code method that AMR_WB+ provides, adopt the codimg logic of similar recurrence, the situation that a fairly large number of situation of coded pulse is split as several coded pulse negligible amounts is handled, and computation complexity is bigger, simultaneously, along with the increase of coded pulse number on the track, the redundance of code index will add up gradually, cause the waste of coded-bit easily.
Summary of the invention
The invention provides and a kind ofly can effectively reduce coding/decoding method and the coder/decoder that computation complexity is saved coded-bit simultaneously as far as possible.
A kind of coding method comprises: the pulse that needs on the track to encode is added up according to the position, obtained the position distributed intelligence in orbit of each pulse; Determine distribution index, described distribution index calculates in the following manner: according to the order of setting, under current pulse number, the position of each pulse in orbit all possible distribution situations arrange, with the sequence number of arranging distribution index as the corresponding distribution situation of indication; Generate code index, described code index comprises the information of described distribution index.
A kind of coding/decoding method comprises: the received code index; From described code index, extract distribution index; Determine the position distribution in orbit of each pulse according to described distribution index; According to the pulse train on the position distribution reconstruction track in orbit of each pulse.
A kind of scrambler comprises: first statistic unit, be used for the pulse that needs on the track to encode is added up according to the position, and obtain the position distributed intelligence in orbit of each pulse; The distribution index unit, be used for determining distribution index, described distribution index calculates in the following manner: according to the order of setting, under current pulse number, the position of each pulse in orbit all possible distribution situations arrange, with the sequence number of arranging distribution index as the corresponding distribution situation of indication; The index generation unit is used to generate code index, and described code index comprises the information of described distribution index.。
A kind of demoder comprises: input block is used for the received code index; The distribution extraction unit is used for extracting distribution index from described code index; The distribution solution code element is used for determining according to described distribution index the position distribution in orbit of each pulse; The distribution reconstruction unit is used for according to the pulse train on the position distribution reconstruction track in orbit of each pulse.
Technique scheme adopts the pulse that needs are encoded to sort and Methods for Coding according to the position distribution in orbit of pulse; Research practice proves that this scheme can effectively reduce computation complexity, and simultaneously owing to encode according to ordering, the coding that different distribution of pulses situations is corresponding continuous can reduce the redundance of coding as much as possible, saves coded-bit.
Description of drawings
Fig. 1 is the embodiment of the invention one a coding method schematic flow sheet;
Fig. 2 is 5 pulse code index structure synoptic diagram in the embodiment of the invention one;
Fig. 3 is 4 pulse code index structure synoptic diagram in the embodiment of the invention one;
Fig. 4 is 3 pulse code index structure synoptic diagram in the embodiment of the invention one;
Fig. 5 is in the embodiment of the invention two
Figure A200710153952D0016110941QIETU
The time The tree construction synoptic diagram;
Fig. 6 is the embodiment of the invention three coding method schematic flow sheets;
Fig. 7 is 6 pulse code index structure synoptic diagram in the embodiment of the invention three;
Fig. 8 is the possible combined situation synoptic diagram of SU in the embodiment of the invention three (1);
Fig. 9 is the possible combined situation synoptic diagram of SU in the embodiment of the invention three (2);
Figure 10 is the possible combined situation synoptic diagram of SU in the embodiment of the invention three (3);
Figure 11 is the possible combined situation synoptic diagram of SU in the embodiment of the invention three (4);
Figure 12 is the possible combined situation synoptic diagram of SU in the embodiment of the invention three (5);
Figure 13 is the possible combined situation synoptic diagram of SU in the embodiment of the invention three (6);
Figure 14 is 5 pulse code index structure synoptic diagram in the embodiment of the invention three;
Figure 15 is 4 pulse code index structure synoptic diagram in the embodiment of the invention three;
Figure 16 is 3 pulse code index structure synoptic diagram in the embodiment of the invention three;
Figure 17 is 2 pulse code index structure synoptic diagram in the embodiment of the invention three;
Figure 18 is 1 a pulse code index structure synoptic diagram in the embodiment of the invention three;
Figure 19 is X (N) the tree construction synoptic diagram during N=2 in the embodiment of the invention four;
Figure 20 is X (N) the tree construction synoptic diagram during N=3 in the embodiment of the invention four;
Figure 21 is the embodiment of the invention five coding/decoding method schematic flow sheets;
Figure 22 is the embodiment of the invention seven coding/decoding method schematic flow sheets;
Figure 23 is the embodiment of the invention nine encoder logic structural representations;
Figure 24 is the embodiment of the invention ten encoder logic structural representations;
Figure 25 is the embodiment of the invention 11 decoder logic structural representations;
Figure 26 is the embodiment of the invention 12 decoder logic structural representations;
Figure 27 is the pulse search figure as a result in the application examples two of the embodiment of the invention three, seven methods.
Embodiment
The embodiment of the invention provides a kind of coding method, and the pulse that needs are encoded is sorted and encoded according to the position distribution in orbit of pulse.The embodiment of the invention also provides corresponding coding/decoding method, and coder/decoder.Below respectively the method and apparatus of the embodiment of the invention is elaborated.
Embodiment one, a kind of coding method as shown in Figure 1, comprising:
A1, the pulse that needs on the track to encode is added up according to the position, obtained the position distributed intelligence in orbit of each pulse.
The pulse sum that needs on the same track to encode is determined according to code check usually, needs the pulse number of coding many more, and the bit number that obvious code index needs is also many more, and code check is high more.Herein,
Need on the same track to represent the pulse sum of encoding with pulse_num, suppose
Figure A200710153952D0017100412QIETU
With the distribution of pulses vector
Figure A200710153952D0017100426QIETU
Represent the position distribution in orbit of each pulse; Wherein, q (h) h+1 pulse of expression position number in orbit,
Figure A200710153952D0017100543QIETU
Figure A200710153952D0017100558QIETU
, q (h) ∈ [0, M-1]; M represents the total number of positions on the track in this article, and general M can be 8,16 or the like.
In addition, need the pulse of coding also may have symbol, promptly have the characteristic of plus or minus, when the pulse that needs this moment to encode is added up according to the position, also need to obtain the impulse code information of each pulse on to track.Herein,
With the impulse code vector
Figure A200710153952D0017100632QIETU
The impulse code information of representing each pulse; Wherein, the impulse code of h+1 pulse of ss (h) expression, the notation index that is called q (h) pulse, have or the two-value of plus or minus based on the impulse code of ss (h) representative, generally can adopt following simple coded system: with ss (h)=0 expression positive pulse, ss (h)=1 represents negative pulse.Certainly, for the pulse of needs coding, impulse code is not prerequisite feature, and according to actual needs, pulse can only have position and quantitative characteristics, need not to add up impulse code information this moment.
Obviously,
Figure A200710153952D0017100648QIETU
,
Figure A200710153952D0017100654QIETU
In value have one to one relation.
The parameters that needs the pulse of coding in the statistics acquisition
Figure A200710153952D0018101115QIETU
,
Figure A200710153952D0018101121QIETU
After, just parameters need be encoded to index, set up the corresponding relation between parameter and the index, make decoding enough to recover corresponding parameters according to index.Corresponding relation can adopt two kinds of expression modes, and the one, with the calculated relationship that the algebraically mode is represented, in this case, coding staff carries out forward to parameter and calculates the acquisition index, and decoding Fang Ze carries out backwards calculation to index and obtains parameter; The one, with the query relation that mapping mode is represented, in this case, the encoding and decoding both sides need store the mapping table of relevant parameter and index.Two kinds of corresponding relations can be selected according to the concrete characteristics of parameter, generally speaking, under the big situation of data volume, design the memory space that the corresponding relation of representing with calculated relationship can be saved the encoding and decoding both sides as far as possible, are more favourable.Respectively the coding of parameters is described below.
A2, determine distribution index I4, I4 calculates in the following manner: according to the order of setting, to current pulse number
Figure A200710153952D0018101131QIETU
Down, the position of each pulse in orbit all possible distribution situations arrange, with the sequence number of arranging distribution index I4 as the corresponding distribution situation of indication.
Alleged " order of setting " can be regarded as the encoding and decoding both sides according to same ordering computation rule, and be determined
Figure A200710153952D0018101143QIETU
Order that all may situation.
The distribution of pulses vector
Figure A200710153952D0018101152QIETU
Always may count and be
Figure A200710153952D00181
Wherein,
Figure A200710153952D0018101201QIETU
, number of combinations is asked in " C " expression.The corresponding indication of each I4
Figure A200710153952D0018101212QIETU
In a kind of distribution of pulses situation
Generally speaking
Figure A200710153952D0018101224QIETU
Data volume is bigger, therefore adopts calculated relationship with corresponding relatively being fit to of distribution index I4, and it also is feasible adopting query relation certainly.Obviously
Figure A200710153952D0018101235QIETU
Promptly be all possible value numbers of I4, if the value of I4 then has since 0 counting
Figure A200710153952D0018101252QIETU
A3, generation code index
Figure A200710153952D0018101302QIETU
, code index
Figure A200710153952D0018101313QIETU
The information that comprises distribution index I4.
I4 can decoded side's identification mode be placed in the code index with any, and is for example the simplest, deposits from the desired location of code index.
Certainly, be under the situation of tape symbol pulse in coded pulse,
Figure A200710153952D0018101322QIETU
Also need to comprise the information of the notation index ss (h) of each pulse, can be simply with the impulse code vector
Figure A200710153952D0018101334QIETU
As length be
Figure A200710153952D0018101342QIETU
Field be placed on the fixed position of code index end for example.
To sum up, code index
Figure A200710153952D0018101351QIETU
A kind of make can be expressed as:
Figure A200710153952D00182
Be understood that easily, the above-mentioned code index make that exemplifies only is a kind of optional mode of present embodiment, those skilled in the art can utilize the essential information that constitutes code index, be easy to draw the make of other code index structures, for example carry out the exchange of index position or reconfigure etc., the concrete make of code index does not constitute the qualification to the embodiment of the invention.
For better understanding the make of code index among the embodiment one, enumerate some real example below and describe.Suppose the total number of positions M=16 on the track:
Example one, coding
Figure A200710153952D0019111146QIETU
Individual tape symbol pulse, the code index structure as shown in Figure 2.
Code index Index (5) has 19 bits, and promptly Index (5) ∈ [0,2 19-1], the encoded radio scope of Index (5) is represented with the sexadecimal form among Fig. 2.Before numerical value, represent that titled with " 0x " this numerical value is hexadecimal representation herein; Other numerical value are without specified otherwise, all with decimal representation.
Five notation index ss (0)~ss (4) takies 5 bits at end.
Use 14 bits to place I4 among Fig. 2, the space encoder length that therefore offers I4 is 2 14=16384, because WQ ( 5 ) = C 16 + 5 - 1 5 = 15504 , Obviously enough use.
Example two, coding
Figure A200710153952D0019101415QIETU
Individual tape symbol pulse, the code index structure as shown in Figure 3.
Code index Index (4) has 16 bits, and promptly Index (4) ∈ [0,2 16-1].
Four notation index ss (0)~ss (3) takies 4 bits at end.
Use 12 bits to place I4 among Fig. 3, the space encoder length that therefore offers I4 is 2 12=4096, because WQ ( 4 ) = C 16 + 4 - 1 4 = 3876 , Obviously enough use.
Example three, coding
Figure A200710153952D0019101430QIETU
Individual tape symbol pulse, the code index structure as shown in Figure 4.
Code index Index (3) has 13 bits, and promptly Index (3) ∈ [0,2 13-1].
Three notation index ss (0)~ss (2) takies 3 bits at end.
Use 10 bits to place I4 among Fig. 4, the space encoder length that therefore offers I4 is 2 10=1024, because WQ ( 3 ) = C 16 + 3 - 1 3 = 816 , Obviously enough use.
The codimg logic identical with embodiment one adopted in embodiment two, a kind of coding method, present embodiment, and present embodiment mainly provides a kind of computing method to distribution index I4, feasiblely is convenient to determine pulse distribution in orbit by algebraic manipulation: with
Figure A200710153952D0019101449QIETU
The corresponding relation of I4.
Provide as follows in the present embodiment
Figure A200710153952D0019101457QIETU
The ordering computation rule:
Because
Figure A200710153952D0020103138QIETU
Different situations is that the different combinations of values of passing through to be comprised embody, therefore might as well be right
Figure A200710153952D0020103146QIETU
In each position number of comprising arrange order:
Figure A200710153952D0020103208QIETU
Perhaps
Figure A200710153952D0020103219QIETU
Wherein the position of equal sign indicating impulse can be repeated; Suppose to adopt the former, then have: q (0) ∈ [0, M], q (h) ∈ [q (h-1), M], M is the total number of positions on the track.Right then
Figure A200710153952D0020103238QIETU
Different situations is the size of each dimension relatively successively, according to from small to large or order from big to small to all possible Sort.
Suppose to adopt sortord from small to large, and since 0 to after the ordering
Figure A200710153952D0020103259QIETU
Be numbered, then:
Figure A200710153952D00201
Wherein number of combinations is asked in " C " expression; Σ represents summation.The implication of following formula may be interpreted as:
Figure A200710153952D00202
Represent that the 1st pulse is positioned at q (0) before
Figure A200710153952D0020103310QIETU
The situation sum;
Figure A200710153952D00203
When representing that the 1st pulse is positioned at q (0), the 2nd pulse is positioned at q (1) before
Figure A200710153952D0020103320QIETU
The situation sum;
Figure A200710153952D00204
Implication can analogize.Need to prove, above-mentioned formula be I4 with
Figure A200710153952D0020103329QIETU
Between a kind of form of expression of calculated relationship, according to identical ordering rule, also can be of equal value with other mathematical form this calculated relationship is described; If adopt different ordering rules, also can design similar calculated relationship accordingly, the form of presentation of concrete calculated relationship does not constitute the qualification to the embodiment of the invention.
For better understanding the computing method of above-mentioned I4, can suppose a pulse relative position vector
Figure A200710153952D0020103343QIETU
Figure A200710153952D0020103352QIETU
,
Figure A200710153952D0020103406QIETU
With
Figure A200710153952D0020103414QIETU
Following one-to-one relationship is arranged:
xx(1)=q(0);
xx(i)=q(i-1)-q(i-2);
Xx (i) expression be relative position relation between the position of the position of i pulse and i-1 pulse, Utilize
Figure A200710153952D0020103440QIETU
Can with
Figure A200710153952D0020103445QIETU
All possible situation is configured in one
Figure A200710153952D0020103510QIETU
In the tree construction, the degree of depth of tree is
Figure A200710153952D0020103520QIETU
, the child node of setting the i layer is represented the relative position value xx (i) of i pulse.According to the value that from small to large order is from left to right placed xx (i), at the bottom of tree, promptly from left to right encode to each end-node successively in the end-node place then.Each end-node is to the path correspondence of root node
Figure A200710153952D0020103531QIETU
A kind of situation, so the coding of each end-node be the indication corresponding
Figure A200710153952D0020103539QIETU
The distribution index I4 of situation.
Lift a real example below and describe, suppose the total number of positions M=16 on the track,
Figure A200710153952D0020103548QIETU
, tree construction as shown in Figure 5, corresponding distribution index computing formula is:
I 4 ( 3 ) = C 18 3 - C 18 - q ( 0 ) 3 + C 17 - q ( 0 ) 2 - C 17 - q ( 1 ) 2 + C 16 - q ( 1 ) 1 - C 16 - q ( 2 ) 1
Other
Figure A200710153952D0021103608QIETU
During situation, corresponding tree construction is similar, and the computing formula of I4 can be analogized, and repeats no more.
Present embodiment provides a kind of method with calculated relationship acquisition distribution index I4, because I4 shared data volume in code index is bigger, therefore adopts the present embodiment computing method can reduce encoding and decoding both sides' memory space as far as possible.Simultaneously, because the I4 continuous programming code and with
Figure A200710153952D0021103622QIETU
Strictness is corresponding one by one, therefore can utilize coded-bit to greatest extent, avoids waste.
Embodiment three, a kind of coding method, present embodiment is compared the difference part and is with embodiment one, present embodiment is considered as first coded system with the cataloged procedure described in the embodiment one, in comprising the optional coded system of first coded system, select earlier, encode according to selected coded system again.Present embodiment coding method flow process comprises as shown in Figure 6:
B1, need on the same track to determine the pulse sum of encoding
Figure A200710153952D0021103633QIETU
Usually can determine the pulse sum of needs coding according to encoder bit rate
Figure A200710153952D0021103640QIETU
B2, basis
Figure A200710153952D0021103722QIETU
The row coding mode selection, described coded system comprises first coded system; According to selection result execution in step B3 or B4.
Embodiment one described coded system is called first coded system herein.Optionally coded system can also comprise other forms of coded system except first coded system, for example existing AMR_WB+ etc.A kind of optional second coded system will specifically be provided in the present embodiment.
Coded system is according to fixed
Figure A200710153952D0021103731QIETU
Select, for example, can set in advance some
Figure A200710153952D0021103739QIETU
Adopt first coded system to encode under the situation, and at other
Figure A200710153952D0021103751QIETU
Adopt second coded system to encode under the situation.Studies show that,
Figure A200710153952D0021103801QIETU
Equivalent time adopts the first coded system effect better.
B3, according to the result of coding mode selection, after determining to select first coded system, encode according to first coded system.
The specific coding process can be carried out with reference to the description among the embodiment one.
B4, according to the result of coding mode selection, after determining to select second coded system, encode according to second coded system, comprise the steps:
B41, the pulse that needs on the track to encode is added up according to the position, obtain to have pulse position number, have pulse position in orbit distribution and each pulse number on pulse position is arranged.
Herein,
Represent to have the number of pulse position with pos_num, because
Figure A200710153952D0022103819QIETU
Location overlap may appear in individual pulse distribution in orbit, supposes pos_num=N, obviously has
Figure A200710153952D0022103831QIETU
With pulse position vector P (N)=p (0), p (1) ..., p (N-1) } expression has a pulse position distribution in orbit; Wherein, p (n) expression has pulse position position number in orbit, n ∈ [0, N-1], and p (n) ∈ [0, M-1], M represents the total number of positions on the track in this article, general M can be 8,16 or the like;
With pulse number vector S U (N)=su (0), su (1) ..., su (N-1) } represent that each has the pulse number on the pulse position; Wherein, the pulse number of su (n) expression p (n) position obviously has
Figure A200710153952D0022103846QIETU
In addition, need the pulse of coding also may have symbol, the characteristic that promptly has plus or minus, when the pulse that need to encode this moment on to track is added up according to the position, also need to obtain each impulse code information that pulse position is arranged (generally speaking, be positioned at the pulse of same position, its impulse code is identical, therefore can represent the symbolic information of this locational pulse with the impulse code information that pulse position is arranged).Herein,
With position symbol vector S (N)=s (0), s (1) ..., s (N-1) } represent the impulse code information that each has pulse position; Wherein, the impulse code of s (n) expression p (n) position is called the notation index of p (n) position, has or the two-value of plus or minus based on the impulse code of s (n) representative, generally can adopt following simple coded system: with s (n)=0 expression positive pulse, s (n)=1 represents negative pulse.Certainly, for the pulse of needs coding, impulse code is not prerequisite feature, and according to actual needs, pulse can only have position and quantitative characteristics, need not to add up impulse code information this moment.
Obviously, the value among P (N), SU (N), the S (N) has relation one to one.
Behind parameters N, the P (N) that add up the pulse that obtains the needs coding, SU (N), S (N), just parameters need be encoded to index, set up the corresponding relation between parameter and the index, make decoding enough to recover corresponding parameters according to index.Corresponding relation can adopt two kinds of expression modes, and the one, with the calculated relationship that the algebraically mode is represented, in this case, coding staff carries out forward to parameter and calculates the acquisition index, and decoding Fang Ze carries out backwards calculation to index and obtains parameter; The one, with the query relation that mapping mode is represented, in this case, the encoding and decoding both sides need store the mapping table of relevant parameter and index.Two kinds of corresponding relations can be selected according to the concrete characteristics of parameter, generally speaking, under the big situation of data volume, design the memory space that the corresponding relation of representing with calculated relationship can be saved the encoding and decoding both sides as far as possible, are more favourable.Respectively the coding of parameters is described below.
B42, determine the first index I1 according to the number pos_num=N that pulse position is arranged, the first index I1 is corresponding under the identical pos_num, and pulse position whole possible distribution situations are in orbit arranged.
The numerical value of N variation range of pos_num is little, and therefore corresponding employing calculated relationship or the query relation with the first index I1 all is feasible.When setting up the corresponding relation of pos_num and I1, generally can make them and have relation one to one; Certainly, if under some pos_num numerical value, the index of other parameters only needs less bit number, these pos_num also can merge I1 of use, distinguish by extra market bit again.
The numerical value of N of pos_num has determined the total W (N) that P (N) all may situation, W ( N ) = C M N , Number of combinations is asked in " C " expression; Therefore an I1 is corresponding to the individual possible P of W (N) (N).
B43, according to there being pulse position distribution P (N) in orbit to determine the second index I2, the second index I2 from the whole possible distribution situation of the first index I1 correspondence, indication and the current corresponding distribution situation of distribution that pulse position is arranged.
Always may counting of P (N) is W ( N ) = C M N , Data volume is bigger, therefore adopts calculated relationship with corresponding relatively being fit to of the second index I2, and it also is feasible adopting query relation certainly.Obviously W (N) promptly is all possible value numbers of I2, if the value of I2 then has I2 ∈ [0, W (N)-1] since 0 counting.
B44, there is the pulse number SU (N) on the pulse position to determine the 3rd index I3 according to each.
SU (N) is subject to though be and the vector of P (N) with dimension
Figure A200710153952D0023103943QIETU
Figure A200710153952D0023104002QIETU
And
Figure A200710153952D0023104009QIETU
Numerical value little usually, be generally 1~6, thus SU (N) always may count not quite, all be feasible with corresponding employing calculated relationship or the query relation of the 3rd index I3.And,, under high-dimensional situation, adopt query relation comparatively suitable in view of its vector form; More or less freely in the design of hanging down calculated relationship under the dimension situation, then dual mode all can adopt.Need to prove, under some extreme case, for example N=1 or
Figure A200710153952D0023104021QIETU
SU this moment (N) has only a kind of possibility situation, need not be indicated by concrete I3, I3 can be considered as not influencing the arbitrary value that final code index generates.
B45, generation code index
Figure A200710153952D0023104032QIETU
, code index
Figure A200710153952D0023104039QIETU
The information that comprises first, second and third index I1, I2, I3.
I1, I2, I3 can decoded side's identification mode be placed in the code index with any, and be for example the simplest, can leave in separately in the fixing field respectively.Consider under the certain prerequisite of the pulse sum pulse_num that needs on the same track to encode, the numerical value of N of the pos_num of I1 indication has determined the variation range of I2 and I3, that is, determine the number of coded bits that I2 and I3 need, therefore can construct code index in the following way:
1. be initial value with the first index I1, the information of other index that superpose; The value of I1 is corresponding to one of code index span independently; Like this, decoding side just can directly determine the numerical value of N of pos_num according to the span of code index;
2. further, in the span that I1 delimit (usually corresponding to certain field length), I2, I3 can decoded side's identification mode place with any, and be for example the simplest, can deposit separately respectively.Because I2, I3 generally can not be expressed as 2 integer power,, I2, I3 can be combined as following form and be placed in the span that I1 delimit for save coded-bit as far as possible:
I 23 = I 3 × W ( N ) + I 2 = I 3 × C M N + I 2
I2, I3 all since 0 the coding, I 2 ∈ [ 0 , C M N - 1 ] , I 3 ∈ [ 0 , Class ( N ) - 1 ] , Class (N) always may count for SU's (N).Obviously, it is the part of W (N) that this mode is equivalent to the span that I1 delimit is divided into the individual length of Class (N), a kind of distribution situation of the corresponding SU of each part (N).
3. certain, be under the situation of tape symbol pulse in coded pulse,
Figure A200710153952D0024104108QIETU
Also need to comprise the information of each impulse code index s (n), can be simply be that the field of N is placed on the fixed position of code index with position symbol vector S (N) as length, end for example.
To sum up, code index
Figure A200710153952D0024104116QIETU
A kind of make can be expressed as:
Figure A200710153952D0024104126QIETU
Be understood that easily, the above-mentioned code index make that exemplifies only is a kind of optional mode of present embodiment, those skilled in the art can utilize the essential information that constitutes code index, be easy to draw the make of other code index structures, for example carry out the exchange of index position or reconfigure etc., the concrete make of code index does not constitute the qualification to the embodiment of the invention.
The codimg logic that second coded system provides can consistently adopt for different coded pulse numbers, has avoided adding up of code index redundance under the recursive fashion that AMR_WB+ adopted, and makes full use of coded-bit from total logic design assurance.Simultaneously owing to avoided a plurality of pulses of same position are encoded respectively, make the embodiment of the invention carry out merging back, position Methods for Coding and have the advantage of saving coded-bit, and increase along with coded pulse number on the track, the probability that pulse position overlaps also increases thereupon, and the advantage of embodiment of the invention method is obvious further.
For better understanding the make of code index in second coded system, enumerate some real example below and describe.Suppose the total number of positions M=16 on the track, and have the number pos_num of pulse position and the first index I1 to be relation one to one:
Example one, coding Individual tape symbol pulse, the code index structure as shown in Figure 7.
Code index Index (6) has 21 bits, and promptly Index (6) ∈ [0,2 21-1], expresses under the different value condition of pos_num the shared bit number of each several part index that Index (6) is comprised among Fig. 7 respectively.For clarity sake, below represent respectively that with I1 (N), I2 (N), I3 (N), I23 (N) N is this index under the specific value.Definite employing mapping mode of I1 (N) is respectively,
I1(1)=0x1F0000,I1(2)=0x1E0000,I1(3)=0x1D0000,
I1(4)=0x180000,I1(5)=0x000000,I1(6)=0x100000。
Below Fig. 7 is made a concrete analysis of explanation.
When 1. 6 pulses are on 1 position, N=1, SU (1) may make up as shown in Figure 8;
W(1)=16,I2(1)∈[0,15],
SU(1)={6},Class(1)=1,I3(1)=0,
So I23 (1)=I2 (1) ∈ [0,15];
A notation index s (0) takies 1 bit at end,
The space encoder length that I1 (1) offers I23 (1) is [2 21-I1 (1)]/2 1=32768, obviously enough use.
When 2. 6 pulses are on 2 positions, N=2, SU (2) may make up as shown in Figure 9;
W(2)=120,I2(2)∈[0,119],
SU(2)={5,1},{4,2},{3,3},{2,4},{1,5};Class(2)=5,I3(2)∈[0,4],
So I23 (2)=I3 (2) * 120+I2 (2) ∈ [0,599];
Two notation index s (0), s (1) take 2 bits at end,
The space encoder length that I2 (2) offers I23 (2) is [I1 (1)-I1 (2)]/2 2=16384, obviously enough use.
When 3. 6 pulses are on 3 positions, N=3, SU (3) may make up as shown in figure 10;
W(3)=560,I2(3)∈[0,559],
SU(3)={4,1,1},{1,4,1},{1,1,4},{3,2,1},{3,1,2},{2,3,1},{2,1,3},{1,3,2},{1,2,3},{2,2,2};Class(3)=10,I3(3)∈[0,9],
So I23 (3)=I3 (3) * 560+I2 (3) ∈ [0,5599];
Three notation index s (0)~s (2) takies 3 bits at end,
The space encoder length that I2 (3) offers I23 (3) is [I1 (2)-I1 (3)]/2 3=8192, obviously enough use.
When 4. 6 pulses are on 4 positions, N=4, SU (4) may make up as shown in figure 11;
W(4)=1820,I2(4)∈[0,1819],
SU(4)={3,1,1,1},{1,3,1,1},{1,1,3,1},{1,1,1,3},{2,2,1,1},{2,1,2,1},{2,1,1,2},{1,2,2,1},{1,2,1,2},{1,1,2,2};Class(4)=10,I3(4)∈[0,9],
So I23 (4)=I3 (4) * 1820+I2 (4) ∈ [0,18199];
Four notation index s (0)~s (3) takies 4 bits at end,
The space encoder length that I2 (4) offers I23 (4) is [I1 (3)-I1 (4)]/2 4=20480, obviously enough use.
When 5. 6 pulses are on 5 positions, N=5, SU (5) may make up as shown in figure 12;
W(5)=4368,I2(5)∈[0,4367],
SU(5)={2,1,1,1,1},{1,2,1,1,1},{1,1,2,1,1},{1,1,1,2,1},{1,1,1,1,2};Class(5)=5,I3(5)∈[0,4],
So I23 (5)=I3 (5) * 4368+I2 (5) ∈ [0,21839];
Five notation index s (0)~s (4) takies 5 bits at end,
The space encoder length that I2 (5) offers I23 (5) is [I1 (6)-I1 (5)]/2 5=32768, obviously enough use.
When 6. 6 pulses are on 6 positions, N=6, SU (6) may make up as shown in figure 13;
W(6)=8008,I2(6)∈[0,8007],
SU(6)={1,1,1,1,1,1},Class(6)=1,I3(6)=0,
So I23 (6)=I2 (6) ∈ [0,8007];
Six notation index s (0)~s (5) takies 6 bits at end,
The space encoder length that I2 (6) offers I23 (6) is [I1 (4)-I1 (6)]/2 6=8192, obviously enough use.
Example two, coding
Figure A200710153952D0027104236QIETU
Individual tape symbol pulse, the code index structure as shown in figure 14.
Code index Index (5) has 19 bits, and promptly Index (5) ∈ [0,2 19-1].Express under the different value condition of pos_num the shared bit number of each several part index that Index (5) is comprised among Figure 14 respectively.Definite employing mapping mode of I1 (N) is respectively,
I1(1)=0x78000,I1(2)=0x70000,I1(3)=0x60000,
I1(4)=0x40000,I1(5)=0x00000。
Can copy Fig. 7 to carry out to the concrete analysis of Figure 14, not repeat them here.
Example three, coding
Figure A200710153952D0027104250QIETU
Individual tape symbol pulse, the code index structure as shown in figure 15.
Code index Index (4) has 16 bits, and promptly Index (4) ∈ [0,2 16-1].Express under the different value condition of pos_num the shared bit number of each several part index that Index (4) is comprised among Figure 15 respectively.Definite employing mapping mode of I1 (N) is respectively,
I1(1)=0xE000,I1(2)=0xC000,I1(3)=0x8000,I1(4)=0x0000。
Can copy Fig. 7 to carry out to the concrete analysis of Figure 15, not repeat them here.
Example four, coding
Figure A200710153952D0027104301QIETU
Individual tape symbol pulse, the code index structure as shown in figure 16.
Code index Index (3) has 13 bits, and promptly Index (3) ∈ [0,2 13-1].Express under the different value condition of pos_num the shared bit number of each several part index that Index (3) is comprised among Figure 16 respectively.Definite employing mapping mode of I1 (N) is respectively,
I1(1)=0x1C00,I1(2)=0x1800,I1(3)=0x0000。
Can copy Fig. 7 to carry out to the concrete analysis of Figure 16, not repeat them here.
Example five, coding
Figure A200710153952D0027104314QIETU
Individual tape symbol pulse, the code index structure as shown in figure 17.
Code index Index (2) has 9 bits, and promptly Index (2) ∈ [0,2 9-1].Express under the different value condition of pos_num the shared bit number of each several part index that Index (2) is comprised among Figure 17 respectively.Definite employing mapping mode of I1 (N) is respectively,
I1(1)=0x1E0,I1(2)=0x000。
Can copy Fig. 7 to carry out to the concrete analysis of Figure 17, not repeat them here.
Example six, coding
Figure A200710153952D0028111404QIETU
Individual tape symbol pulse, the code index structure as shown in figure 18.
Code index Index (1) has 5 bits, and promptly Index (1) ∈ [0,2 5-1].Since N ≡ 1, so among Figure 18, Index (2) only comprises index I23 (1)=I2 (1), and the notation index s (0) of p (0).
Embodiment four, a kind of coding method, present embodiment adopts the codimg logic identical with embodiment three, present embodiment mainly provide a kind of in second coded system computing method to the second index I2, make and be convenient to define pulse position distribution in orbit: P (N)={ p (0) by algebraic manipulation, p (1), ..., p (N-1) } with the corresponding relation of I2.
The computing method of I2 are in the present embodiment, and according to the order of setting, under the number N that pulse position is arranged to the first index I1 correspondence, P (N) all possible situations arranges, with the sequence number of the arranging second index I2 as the corresponding distribution situation of indication.
" order of setting " can be regarded as the encoding and decoding both sides according to same ordering computation rule, the order that determined P (N) all may situation.Following ordering computation rule is provided in the present embodiment:
Because the different situation of P (N) is that the different combinations of values of passing through to be comprised embody, therefore might as well arrange order to each position number that comprises among the P (N):
P (0)<p (1)<...<p (N-1), perhaps p (0)〉p (1)〉... p (N-1);
Suppose to adopt the former, then have: p (0) ∈ [0, M-N], p (n) ∈ [p (n-1)+1, M-N+n], M is the total number of positions on the track.Then to the different situation of P (N) size of each dimension relatively successively, according to from small to large or order from big to small all possible P (N) is sorted.
Suppose to adopt sortord from small to large, and be numbered since 0 to the P (N) after the ordering, then:
I 2 = C M N - C M - p ( 0 ) N + Σ n = 1 N - 1 [ C M - p ( n - 1 ) - 1 N - n - C M - p ( n ) N - n ]
Wherein number of combinations is asked in " C " expression; Σ represents summation.The implication of following formula may be interpreted as:
Figure A200710153952D00282
Represent that the 1st pulse is positioned at p (0) P (N) situation sum before;
Figure A200710153952D00283
When representing that the 1st pulse is positioned at p (0), the 2nd pulse is positioned at p (1) P (N) situation sum before; Implication can analogize.Need to prove that above-mentioned formula is a kind of form of expression of calculated relationship between I2 and P (N), according to identical ordering rule, also can be of equal value with other mathematical form this calculated relationship is described; If adopt different ordering rules, also can design similar calculated relationship accordingly, the form of presentation of concrete calculated relationship does not constitute the qualification to the embodiment of the invention.
Be better to understand the computing method of above-mentioned I2, can suppose a pulse relative position vector X (N)=x (1), x (2) ..., x (N) }, X (N) and P (N) have following one-to-one relationship:
x(1)=p(0);
x(i)=p(i-1)-p(i-2);
Being i the individual relative position relation that has between the pulse position of pulse position and i-1, i ∈ [1, N] arranged of x (i) expression.Utilize X (N) all possible situation of P (N) can be configured in the N layer tree construction, the degree of depth of tree is N+1, sets the child node of i layer and represents i the relative position value x (i) that pulse position is arranged.According to the value that from small to large order is from left to right placed x (i), at the bottom of tree, promptly from left to right encode to each end-node successively in the end-node place then.Each end-node is to a kind of situation of the corresponding X in path (N) of root node, so the coding of each end-node is the second index I2 of indication corresponding P (N) situation.
Enumerate some real example below and describe, suppose the total number of positions M=16 on the track.
Example one, the value N=2 of the number pos_num of pulse position is arranged, tree construction as shown in figure 19.
I 2 ( 2 ) = C 16 2 - C 16 - x ( 1 ) 2 + C 16 - x ( 1 ) - 1 1 - C 16 - [ x ( 1 ) + x ( 2 ) ] 1
= C 16 2 - C 16 - p ( 0 ) 2 + C 16 - p ( 0 ) - 1 1 - C 16 - p ( 1 ) 1
Example two, the value N=3 of the number pos_num of pulse position is arranged, tree construction as shown in figure 20.
I 2 ( 3 ) = C 16 3 - C 16 - x ( 1 ) 3 + C 16 - x ( 1 ) - 1 2 - C 16 - [ x ( 1 ) + x ( 2 ) ] 2
+ C 16 - [ x ( 1 ) + x ( 2 ) ] - 1 1 - C 16 - [ x ( 1 ) + x ( 2 ) + x ( 3 ) ] 1
= C 16 3 - C 16 - p ( 0 ) 3 + C 16 - p ( 0 ) - 1 2 - C 16 - p ( 1 ) 2 + C 16 - p ( 1 ) - 1 1 - C 16 - p ( 2 ) 1
As N=4,5,6 the time, corresponding tree construction is similar, and the computing formula of I2 can be analogized, and repeats no more.
Present embodiment provides a kind of and has obtained the method for the second index I2 with calculated relationship, because I2 shared data volume in code index is bigger, therefore adopts the present embodiment computing method can reduce encoding and decoding both sides' memory space as far as possible.Simultaneously, because therefore I2 continuous programming code and corresponding one by one with P (N) strictness can utilize coded-bit to greatest extent, avoid waste.
Below, the advantage of code index make in above-mentioned first coded system and second coded system is analyzed.In theory, under the certain prerequisite of the pulse sum pulse_num that needs on the same track to encode, all pulses whole possible permutation and combination number in orbit, it is exactly the minimum span of code index, the corresponding codes bit number is the theory lower bound value thus, when the permutation and combination number is 2 integer power, the theory lower bound value of number of coded bits is an integer, when the permutation and combination number can not be expressed as 2 integer power, the theory lower bound value of number of coded bits is a decimal, at this moment, there is certain coding redundancy.During total number of positions M=16 on the track, under different pulse_num values, to the theory lower bound value of number of coded bits, the number of coded bits that adopts the AMR_WB+ coded system to need, and adopt the bit number that the code index make needs in first coded system and second coded system to compare, as shown in table 1:
Table 1
Can learn that by table 1 contrast the code index make of second coded system can reach the theory lower bound value when theoretical lower limit is integer; When theoretical lower limit was decimal, the integral part that reaches the theory lower bound value added one.First coded system exists
Figure A200710153952D0030104407QIETU
The time have the coded-bit length identical with second coded system.These two kinds of coded systems are under the situation of high code check, and code efficiency is promptly saved bit more than AMR_WB+ height.
Aspect computation complexity, the whole cycle testss that move with AVS-M in the identifying code of audio standard are tested object, the run time statistics of AMR_WB+, first coded system and second coded system compared (travel through all sample spaces, comprise the Code And Decode process, first coded system adopts the account form among the embodiment two, second coded system adopts the account form among the embodiment four, and the corresponding manner that provides in the subsequent embodiment is provided in decoding), as shown in table 2:
Table 2
Can learn that by table 2 contrast first coded system in most of the cases has lower computational complexity, the computational complexity of second coded system is then suitable with the AMR_WB+ mode.By table 1 and table 2 as can be seen, comprehensively use first coded system and second coded system,
Figure A200710153952D0031104427QIETU
The low computation complexity of Shi Liyong first coded system is at other Utilize the low coded-bit length of second coded system can reach good effect under the situation.
Coding/decoding method to the embodiment of the invention is elaborated below.
Embodiment five, a kind of coding/decoding method, the coding/decoding method that present embodiment provides is decoded to the code index that obtains according to embodiment one coding method, and decode procedure is the anti-process of cataloged procedure, as shown in figure 21, comprising:
C1, received code index
Figure A200710153952D0031104455QIETU
C2, from code index
Figure A200710153952D0031104503QIETU
In extract distribution index I4.
From
Figure A200710153952D0031104511QIETU
In extract distribution index I4, can I4 be constructed into according to coding the time
Figure A200710153952D0031104522QIETU
Opposite process is carried out.For example, if in the field of the setting that I4 deposits, then directly extraction gets final product.
If the coding is the tape symbol pulse, then also need from
Figure A200710153952D0031104532QIETU
In extract and each pulse corresponding symbol index ss (h).Since under the different code checks, total bit number difference of code index, and therefore decoding can be determined the pulse sum of encoding on the same track directly according to the length (bit number) of code index
Figure A200710153952D0031104549QIETU
Basis then From
Figure A200710153952D0031104602QIETU
The middle notation index ss (h) that extracts respective number.According to what provide among the embodiment one Structure,
Figure A200710153952D0032104618QIETU
Individual notation index is positioned at
Figure A200710153952D0032104626QIETU
The end, therefore can be directly from
Figure A200710153952D0032104634QIETU
In isolate each ss (h).
C3, determine the position distribution in orbit of each pulse according to distribution index I4
Figure A200710153952D0032104653QIETU
Decoding I4 adopts the opposite process with coding I4, if I4 adopts calculated relationship to obtain when coding, then utilizes same calculated relationship to carry out inverse operation when decoding and gets final product; If I4 adopts query relation to obtain when coding, then the identical corresponding relation of inquiry gets final product when decoding.
C4, according to the position distribution in orbit of each pulse
Figure A200710153952D0032104703QIETU
Rebuild the pulse train on the track.
For the situation of tape symbol pulse, during pulse train on rebuilding track, the impulse code information of carrying according to each notation index ss (h) is also recovered the characteristic of plus or minus of the impulse code of each pulse.
Embodiment six, a kind of coding/decoding method, present embodiment adopts the decode logic identical with embodiment five, present embodiment mainly provides a kind of computing method that the distribution index I4 that obtains according to embodiment two coding methods is decoded, and the contrary computing method of the computing method of I4 among the embodiment two in decoding side promptly are provided.
For when encoding, according to:
I 4 = C PPT N - C PPT - q ( 0 ) N + Σ h = 1 N - 1 [ C PPT - h - q ( h - 1 ) N - h - C PPT - h - q ( h ) N - h ] The I4 that obtains, adopt when decoding:
1. calculate successively according to q (0) order from small to large Wherein, q (0) ∈ [0, M], M is the total number of positions on the track,
Figure A200710153952D0032104719QIETU
Be the pulse sum of encoding on the same track,
Figure A200710153952D0032104731QIETU
, number of combinations is asked in " C " expression; Write down last and make T[q (0)] greater than the position number v0 of zero q (0) value as the 1st pulse on the track;
2. if
Figure A200710153952D0032104739QIETU
, then continue to calculate successively according to q (1) order from small to large
Figure A200710153952D0032104800QIETU
Figure A200710153952D00324
Wherein, q (1) ∈ [v0, M]; Write down last and make T1[q (1)] greater than the position number v1 of zero q (1) value as the 2nd pulse on the track;
3. by that analogy, calculate successively according to q (h) order from small to large
Figure A200710153952D0032104824QIETU
Figure A200710153952D00326
Wherein, q (h) ∈ [v (h-1), M],
Figure A200710153952D0032104839QIETU
Write down last and make Th[q (h)] greater than the position number vh of zero q (h) value as h+1 pulse on the track.
4. the I4 that decodes finishes, and obtains
Figure A200710153952D0032104851QIETU
Embodiment seven, a kind of coding/decoding method, the coding/decoding method that present embodiment provides is decoded to the code index that obtains according to embodiment three coding methods, and decode procedure is the anti-process of cataloged procedure, as shown in figure 22, comprising:
D1, definite code index that receives
Figure A200710153952D0033105002QIETU
The pulse sum N that on same track, encodes.
Decoding can be determined the pulse sum of encoding on the same track directly according to the length (bit number) of code index
Figure A200710153952D0033105012QIETU
Certainly, decoding side also can be by promptly knowing that with the mode of coding staff agreement code index is corresponding before the received code index
Figure A200710153952D0033105025QIETU
(for example the information interaction by both sides is known before the received code index), present embodiment is right
Figure A200710153952D0033105042QIETU
The mode of specifically knowing do not do qualification.
D2, basis
Figure A200710153952D0033105055QIETU
Carry out decoding process and select, described decoding process comprises first decoding process; According to selection result execution in step D3 or D4.
Embodiment five described decoding processes are called first decoding process herein.Optionally decoding process can also comprise other forms of decoding process except first decoding process, and various optional decoding processes need be corresponding with the coded system that coding staff provides.Second decoding process corresponding with aforementioned second coded system will specifically be provided in the present embodiment.
Decoding side should adopt with the corresponding rule of coding staff and select decoding process, guarantees the consistance of code encoding/decoding mode.
D3, according to the result that decoding process is selected, after determining to select first decoding process, decode according to first decoding process.Carry out the described step that from code index, extracts distribution index.
Concrete decode procedure can be carried out with reference to the description among the embodiment five.
D4, according to the result that decoding process is selected, after determining to select second decoding process, decode according to second decoding process, comprise the steps:
D41, from
Figure A200710153952D0033105108QIETU
In extract the first index I1, define the number pos_num of pulse position according to I1.
Since under the different code checks, total bit number difference of code index, and therefore decoding can be determined the pulse sum of encoding on the same track directly according to the length (bit number) of code index
From In extract the information of each index, can be each index-group is synthetic according to coding the time
Figure A200710153952D0033105146QIETU
Opposite process is carried out.For example, if in the fixing field that each index is deposited separately, then directly extract respectively and get final product.
If
Figure A200710153952D0034105157QIETU
Adopt provide among the embodiment three with I1 as the superpose structure of other index of initial value, then can extract I1 earlier, determine that according to the value N of the pos_num corresponding other index exist with I1
Figure A200710153952D0034105205QIETU
In the position.In this case, because an I1 correspondence
Figure A200710153952D0034105214QIETU
An independent span, therefore, decoding can from set several independently the span, judge
Figure A200710153952D0034105221QIETU
Affiliated span is determined the first index I1 according to the initial value of the span correspondence under this.
D42, from code index
Figure A200710153952D0034105232QIETU
In extract second and third index I2, I3;
Similar with I1, the extraction of I2, I3 also according to be combined into
Figure A200710153952D0034105242QIETU
Opposite process is carried out, and can directly be extracted when independent the placement.If I2, I3 adopt the coded system that superposes after the combination among the embodiment three, then can adopt following steps to separate:
1. from code index
Figure A200710153952D0034105250QIETU
In extract the combined value I23 of I2, I3;
I23 exists
Figure A200710153952D0034105257QIETU
In deposit position can indicate by the N value that I1 determines.
2. isolate I2, I3 in the following manner,
I2=I23%W(N),I3=Int[I23/W(N)];
Wherein, W (N) is under the pos_num=N, and P (N) is the sum of possible situation all, W ( N ) = C M N , M is the total number of positions on the track; % represents to get remainder; Int represents to round.
D43, if the coding be the tape symbol pulse, then also need from
Figure A200710153952D0034105309QIETU
In extract with each pulse position corresponding symbol index s (n) arranged.
According to what provide among the embodiment three Structure, N notation index is positioned at
Figure A200710153952D0034105326QIETU
The end, therefore can be directly after obtaining by the N value of I1 indication from
Figure A200710153952D0034105333QIETU
In isolate each s (n).
D44, definite according to the second index I2 under pos_num=N, has pulse position distribution P (N) in orbit;
Decoding I2 adopts the opposite process with coding I2, if I2 adopts calculated relationship to obtain when coding, then utilizes same calculated relationship to carry out inverse operation when decoding and gets final product; If I2 adopts query relation to obtain when coding, then the identical corresponding relation of inquiry gets final product when decoding.
D45, determine that according to the 3rd index I3 each has the pulse number SU (N) on the pulse position; Principle and the I2 of decoding I3 are similar.
D46, according to have pulse position in orbit distribution P (N) and each pulse number SU (N) on pulse position is arranged, rebuild the pulse train on the track.
For the situation of tape symbol pulse, during pulse train on rebuilding track, the impulse code information of carrying according to each notation index s (n) is also recovered the characteristic of the plus or minus of each impulse code that pulse position is arranged.
Embodiment eight, a kind of coding/decoding method, present embodiment adopts the decode logic identical with embodiment seven, present embodiment mainly provide a kind of in second decoding process second index I2 to obtaining according to embodiment four coding methods, the computing method of decoding promptly provide the contrary computing method in decoding side of the computing method of I2 among the embodiment four.
For when encoding, according to I 2 = C M N - C M - p ( 0 ) N + Σ n = 1 N - 1 [ C M - p ( n - 1 ) - 1 N - n - C M - p ( n ) N - n ] The I2 that obtains, adopt when decoding:
1. from I2, deduct one by one C M - 1 N - 1 , . . . , C M - y 0 N - 1 ,
R ( y 0 ) = I 2 - C M - 1 N - 1 - . . . - C M - y 0 N - 1 ;
Become negative up to the residual value R of I2 (y0) by positive number; Wherein, M is the total number of positions on the track, and N is the number that pulse position is arranged, y0 ∈ [1, M-N+1], and number of combinations is asked in " C " expression; The 1st position number p (0)=y0-1 that pulse position is arranged on the track record;
2. if N〉1, then continue from R[p (0)] deduct one by one C M - p ( 0 ) - 1 N - 2 , . . . , C M - p ( 0 ) - y 1 N - 2 , Up to R[p (0)] residual value R1 (x1) become negative by positive number; The 2nd position number p (1)=y1-1 that pulse position is arranged on the track record;
3. by that analogy, from R (n-1) [p (n-1)], deduct one by one C M - p ( 0 ) - . . . - p ( n - 1 ) - 1 N - n - 2 , . . . , C M - p ( 0 ) - . . . - py ( n - 1 ) - yn N - n - 2 , Residual value Rn (yn) up to R (n-1) [p (n-1)] becomes negative by positive number; Wherein, n≤N-1; N+1 position number p (n)=yn-1 that pulse position is arranged on the track record.
4. the I2 that decodes finishes, acquisition P (N)=p (0), p (1) ..., p (N-1) }.
Should be appreciated that the software of realizing decoding method of the present invention can be stored in the computer-readable medium.
Encoding software when carrying out, comprise the steps: the pulse that needs on the track to encode is added up according to the position, obtain the position distributed intelligence in orbit of each pulse; Determine distribution index, described distribution index calculates in the following manner: according to the order of setting, under current pulse number, the position of each pulse in orbit all possible distribution situations arrange, with the sequence number of arranging distribution index as the corresponding distribution situation of indication; Generate code index, described code index comprises the information of described distribution index.
Decoding software when carrying out, comprise the steps: the received code index; From described code index, extract distribution index; Determine the position distribution in orbit of each pulse according to described distribution index; According to the pulse train on the position distribution reconstruction track in orbit of each pulse.
Described computer-readable recording medium, as: ROM/RAM, magnetic disc, CD etc.
Codec to the embodiment of the invention is elaborated below.
Embodiment nine, a kind of scrambler 10 as shown in figure 23, comprising:
First statistic unit 11 is used for the pulse that needs on the track to encode is added up according to the position, obtains the position distributed intelligence in orbit of each pulse
Figure A200710153952D0036105413QIETU
When pulse was added up to tape symbol, first statistic unit 11 was also according to the characteristic of the plus or minus of the impulse code of each pulse, the information of output and each pulse corresponding symbol index , the impulse code information of the pulse that described notation index indication is corresponding with this index;
Distribution index unit 12, be used for according to Determine distribution index I4, I4 calculates in the following manner: according to the order of setting, under current pulse number, the position of each pulse in orbit all possible distribution situations arrange, with the sequence number of arranging I4 as the corresponding distribution situation of indication;
Index generation unit 13 is used to generate code index
Figure A200710153952D0036105442QIETU
,
Figure A200710153952D0036105449QIETU
The information that comprises distribution index I4; When coding tape symbol pulse, index generation unit 13 also will with the information of each pulse corresponding symbol index Be combined to
Figure A200710153952D0036105504QIETU
In.
The present embodiment code device can be used in the coding method that embodiment one and two provides.
Embodiment ten, a kind of scrambler 20 as shown in figure 24, comprise first coding module 21, second coding module 22 and coding selected cell 23,
Coding selected cell 23 is used for determining needing on the same track pulse sum of encoding
Figure A200710153952D0036105511QIETU
According to
Figure A200710153952D0036105518QIETU
Carry out coding mode selection, optional coded system comprises first coded system and second coded system in the present embodiment; According to the result of described coding mode selection, after determining to select first coded system, trigger first coding module 21 and begin to carry out coding, after determining to select second coded system, trigger second coding module 22 and begin to carry out coding.
First coding module 21 comprises first statistic unit 211, distribution index unit 212, index generation unit 213, and is identical with cellular logic structure of the same name among the embodiment nine.
Second coding module 22 comprises:
Second statistic unit 221 is used for the pulse that needs on the track to encode is added up according to the position, output have pulse position number N, have pulse position in orbit distribution P (N) and each pulse number SU (N) on pulse position is arranged; When pulse was added up to tape symbol, second statistic unit 221 also according to each characteristic of plus or minus that impulse code of pulse position is arranged, was exported corresponding impulse code information S (N);
Index calculating 222 comprises:
First indexing units 2221 is used for exporting the first index I1 according to the number N that pulse position is arranged, and I1 is corresponding under the identical number that pulse position arranged, and pulse position whole possible distribution situations are in orbit arranged;
Second indexing units 2222 is used for according to pulse position distribution P (N) the output second index I2 is in orbit arranged, and I2 indicates and the current corresponding distribution situation of distribution that pulse position is arranged from the whole possible distribution situation of the described first index correspondence;
The 3rd indexing units 2223 is used for having the pulse number SU (N) on the pulse position to export the 3rd index I3 according to each;
Index assembled unit 223, the information that is used to make up described first, second and third index generates code index; When coding tape symbol pulse, index assembled unit 223 also will with each information S (N) that pulse position corresponding symbol index is arranged, be combined in the described code index described notation index indication the impulse code information that pulse position arranged corresponding with this index.
When the code index structure that second coded system provides in according to embodiment three was encoded, index assembled unit 223 can adopt following structure, comprising:
First assembled unit 2231 is used to export second and third index that is combined as I23,
I23=I3×W(N)+I2;
Wherein, W (N) is under the number N that pulse position is arranged of the first index correspondence, and the pulse position sum of all possible distribution situation is in orbit arranged.
Second assembled unit 2232 is used for the output of first assembled unit 2231 and the information stack of other index, output encoder index
Figure A200710153952D0037105552QIETU
The present embodiment code device can be used in the coding method that embodiment three and four provides.
Embodiment 11, a kind of demoder 30 as shown in figure 25, comprising:
Input block 31 is used for the received code index
Figure A200710153952D0037105603QIETU
Distribution extraction unit 32 is used for from code index
Figure A200710153952D0038105612QIETU
In extract distribution index I4;
Distribution solution code element 33 is used for according to distribution index
Figure A200710153952D0038105619QIETU
Determine the position distribution in orbit of each pulse
Figure A200710153952D0038105628QIETU
Distribution reconstruction unit 34 is used for the position distribution in orbit according to each pulse Rebuild the pulse train on the track.
When the pulse of decoding tape symbol, demoder also needs to comprise:
Symbol extraction unit 35 is used for according to the pulse sum of encoding on the same track From code index In extract and each pulse corresponding symbol index
Figure A200710153952D0038105709QIETU
, the impulse code information of the pulse that described notation index indication is corresponding with this index;
This moment distribute reconstruction unit 34 also according to
Figure A200710153952D0038105719QIETU
The impulse code information of indication is recovered the characteristic of plus or minus of the impulse code of each pulse.
The present embodiment decoding device can be used in the coding/decoding method that embodiment five and six provides.
Embodiment 12, a kind of demoder 40 as shown in figure 26, comprise first decoder module 41, second decoder module 42 and decoding selected cell 43:
Decoding selected cell 43 is used for definite code index that receives The pulse sum of on same track, encoding According to
Figure A200710153952D0038105747QIETU
Carry out decoding process and select, optional decoding process comprises first decoding process and second decoding process in the present embodiment; According to the result that described decoding process is selected, after determining to select first decoding process, trigger first decoder module 41 and begin to carry out decoding, after determining to select second decoding process, trigger second decoder module 42 and begin to carry out decoding.
First decoder module 41 comprises distribution extraction unit 412, distribution solution code element 413, distribution reconstruction unit 414, symbol extraction unit 415, and is identical with cellular logic structure of the same name among the embodiment 11.
Second decoder module 42 comprises:
First extraction unit 421 is used for the received code index , from
Figure A200710153952D0038105804QIETU
In extract the first index I1, define the number N of pulse position according to I1;
Second extraction unit 422 is used for from code index
Figure A200710153952D0038105812QIETU
In extract second and third index I2, I3;
When the code index structure that second coded system provides in to embodiment three was decoded, second extraction unit 422 can adopt following structure, comprising:
Segregant unit 4221 is used for extracting from code index the combined value I23 of second and third index;
Resolve subelement 4222, be used for separating in the following manner second and third index of output I2, I3,
I2=I23%W(N),I3=Int[I23/W(N)];
Wherein W (N) is under the number N that pulse position is arranged of the first index correspondence, and the pulse position sum of all possible distribution situation is in orbit arranged; % represents to get remainder; Int represents to round.
First decoding unit 423 is used for determining under the number N that pulse position is arranged of I1 correspondence, pulse position distribution P (N) is in orbit arranged according to the second index I2;
Second decoding unit 424 is used for determining that according to the 3rd index I3 each has the pulse number SU (N) on the pulse position;
Pulse reconstruction unit 425, be used for according to have pulse position in orbit distribution P (N) and each pulse number SU (N) on pulse position is arranged, rebuild the pulse train on the track.
When the pulse of decoding tape symbol, demoder also needs to comprise:
The 3rd extraction unit 426 is used for according to the number N that pulse position is arranged, from
Figure A200710153952D0039105836QIETU
In extract with each pulse position corresponding symbol index s (n) arranged, described notation index indication the impulse code information that pulse position arranged corresponding with this index;
At this moment, pulse reconstruction unit 425 can adopt following structure, comprising:
First reconstruction unit 4251, be used for according to have pulse position in orbit distribution P (N) and with each pulse position corresponding symbol index s (n) is arranged, recover the characteristic of the plus or minus of each impulse code that pulse position is arranged;
Second reconstruction unit 4252 is used for according to the signed distribution that pulse position arranged of each of first reconstruction unit 251 output and each pulse number SU (N) on pulse position being arranged, and rebuilds the pulse train on the track.
The present embodiment decoding device can be used in the coding/decoding method that embodiment seven and eight provides.
For better understanding the foregoing description, below provide concrete encoding and decoding example, coding adopts embodiment three coding methods, and (first coded system adopts embodiment two computing method, second coded system adopts embodiment four computing method), (first decoding process adopts embodiment six computing method to the corresponding embodiment of employing of decoding seven coding/decoding methods, second decoding process adopts embodiment eight computing method), suppose that the alternative condition of the first coding/decoding mode is
Figure A200710153952D0039105854QIETU
, total position number M=16 on the track.
Example one, pulse search result shown in Figure 8 is carried out encoding and decoding.
A, coding
1.
Figure A200710153952D0040110153QIETU
, determine to adopt second coded system to encode,
Figure A200710153952D0040110207QIETU
Need 21 bits
2. add up N, P (N), SU (N), S (N)
N=1;
P(1)={p(0)}={2};
SU(1)={su(0)}={6};
S(1)={s(0)}={0};
3. I1, I2, I3, I23 encode
According to N=1, as shown in Figure 7, I1=0x1F0000;
According to embodiment four computing method, I2=2;
Class (1)=1, I3=0; So I23=I2=2;
4. generate
Figure A200710153952D0040110220QIETU
Figure A200710153952D0040110233QIETU
= 0 x 1 F 0000 + 2 × 2 + 0
= 0 x 1 F 0004
B, decoding
1. receive
Figure A200710153952D0040110358QIETU
, determine according to code length , determine to adopt second decoding process to decode;
2. extract I1, s (n), I23
According to
Figure A200710153952D0040110414QIETU
, as shown in Figure 7, I1=0x1F0000, N=1;
According to N=1, separate
Figure A200710153952D0040110424QIETU
1 bit in end, s (0)=0;
Isolate I23,
Figure A200710153952D0040110435QIETU
"〉〉 k " the expression k position that moves to left;
3. I23 decodes
According to N=1, W ( 1 ) = C 16 1 = 16 ;
I3=Int[I23/W (1)]=0, a kind of situation that corresponding SU (1) is unique: SU (1)={ 6};
I2=I23% W (1)=2; According to embodiment eight computing method, P (1)={ p (0) }={ 2};
4. recover pulse train
By P (1)={ 2}, SU (1)={ 6}, s (0)=0 know that " 6 " individual " just " pulse is arranged on position " 2 ".Decode procedure finishes.
Example two, pulse search result shown in Figure 27 is carried out encoding and decoding.
A, coding
1. , determine to adopt first coded system to encode,
Figure A200710153952D0041110615QIETU
Need 19 bits
2. add up
Figure A200710153952D0041110622QIETU
,
Figure A200710153952D0041110627QIETU
Q(5)={q(0),q(1),q(2),q(3),q(4)}={1,1,4,6,6};
SS(5)={ss(0),ss(1),ss(2),ss(3),ss(4)}={0,0,0,0,0};
3. I4 encodes
According to embodiment two computing method, I 4 = C 20 5 - C 20 - 1 5 + C 19 - 1 4 - C 19 - 1 4 + C 18 - 1 3 - C 18 - 4 3 + C 17 - 4 2 - C 17 - 6 2 + C 16 - 6 1 - C 16 - 6 1 = 4215 ;
4. generate
Figure A200710153952D0041110654QIETU
Index(5)=I4×2 5+ss(0)×2 4+ss(1)×2 4+...+ss(4)
=4215×2 5+0
=0x20EE0
B, decoding
1. receive
Figure A200710153952D0041110711QIETU
, determine according to code length
Figure A200710153952D0041110719QIETU
, determine to adopt first decoding process to decode;
2. extract
Figure A200710153952D0041110727QIETU
,
Figure A200710153952D0041110732QIETU
According to
Figure A200710153952D0041110738QIETU
, separate
Figure A200710153952D0041110744QIETU
5 bits in end, ss (0)~ss (4)=0;
Isolate I4,
3. I4 decodes
According to embodiment six computing method, Q (5)=1,1,4,6,6};
4. recover pulse train
By Q (5)={ 1,1,4,6,6}, ss (0)~ss (4)=0 knows that " 2 " individual " just " pulse is arranged in the set on the throne, and " 1 " individual " just " pulse is arranged on position " 4 ", and " 2 " individual " just " pulse is arranged on position " 6 ".Decode procedure finishes.
By the foregoing description as can be seen, the embodiment of the invention adopts the pulse that needs are encoded to sort and Methods for Coding according to the position distribution in orbit of pulse, can effectively reduce computation complexity, simultaneously owing to encode according to ordering, the coding that different distribution of pulses situations is corresponding continuous, can reduce the redundance of coding as much as possible, save coded-bit.Further, comprehensively adopt the first and second coding/decoding modes that provide in the embodiment of the invention, make two kinds of coded systems in difference
Figure A200710153952D0042111536QIETU
Under advantage replenish mutually, effect is obvious further.
More than decoding method provided by the present invention and codec are described in detail, used specific case herein principle of the present invention and embodiment are set forth, the explanation of above embodiment just is used for helping to understand method of the present invention and core concept thereof; Simultaneously, for one of ordinary skill in the art, according to thought of the present invention, the part that all can change in specific embodiments and applications, in sum, this description should not be construed as limitation of the present invention.

Claims (36)

1, a kind of coding method is characterized in that, comprising:
The pulse that needs on the track to encode is added up according to the position, obtained the position distributed intelligence in orbit of each pulse;
Determine distribution index, described distribution index calculates in the following manner: according to the order of setting, under current pulse number, the position of each pulse in orbit all possible distribution situations arrange, with the sequence number of arranging distribution index as the corresponding distribution situation of indication;
Generate code index, described code index comprises the information of described distribution index.
2, coding method according to claim 1 is characterized in that:
Described when the pulse that needs on the track to encode is added up according to the position, also, obtain corresponding impulse code information according to the characteristic of the plus or minus of the impulse code of each pulse;
Described code index also comprises the information with each pulse corresponding symbol index, the impulse code information of the pulse that described notation index indication is corresponding with this index.
3, coding method according to claim 1 is characterized in that, and is described according to the order of setting, and under current pulse number, the whole in orbit possible distribution situations in the position of each pulse are arranged, and carry out in the following manner:
The position distribution in orbit of each pulse is corresponded to one
Figure A200710153952C00021
Dimension distribution of pulses vector
Figure A200710153952C00022
Figure A200710153952C00023
Wherein,
Figure A200710153952C00024
Be the pulse sum that needs on the same track to encode; Q (h) h+1 pulse of expression position number in orbit,
Figure A200710153952C00025
Figure A200710153952C00026
Perhaps
Figure A200710153952C00028
The size of each dimension of distribution of pulses vector relatively successively, according to from small to large or order from big to small to the N dimension down all possible distribution of pulses vectors sort.
4, coding method according to claim 3 is characterized in that, the computing formula of distribution index I4 is:
Figure A200710153952C00029
Wherein,
Figure A200710153952C000210
M is the total number of positions on the track; Q (h) ∈ [0, M]; Number of combinations is asked in " C " expression; ∑ is represented summation.
5, according to any described coding method of claim 1~4, it is characterized in that, also comprise:
Need on the same track to determine the pulse sum of encoding;
Pulse sum according to needs coding on the described same track carries out coding mode selection, and described coded system comprises first coded system;
According to the result of described coding mode selection, after determine selecting first coded system, carry out and described the pulse that needs on the track to encode is added up according to the position, obtain the step of the position distributed intelligence in orbit of each pulse.
6, coding method according to claim 5, it is characterized in that, the step that described pulse sum according to needs coding on the same track carries out coding mode selection comprises: when the pulse that needs on the described same track to encode adds up to 3 or 4 or 5, determine to select first coded system.
7, coding method according to claim 5 is characterized in that, described coded system also comprises second coded system, and described coding method also comprises:
According to the result of described coding mode selection, after determining to select second coded system, carry out described second coded system according to following steps:
The pulse that needs on the track to encode is added up according to the position, obtain to have pulse position number, have pulse position in orbit distribution and each pulse number on pulse position is arranged;
Determine first index according to the number that pulse position is arranged, described first index is corresponding under the identical number that pulse position arranged, and pulse position whole possible distribution situations are in orbit arranged;
According to there being pulse position distribution in orbit to determine second index, described second index is indicated and the current corresponding distribution situation of distribution that pulse position is arranged from the whole possible distribution situation of the described first index correspondence;
There is the pulse number on the pulse position to determine the 3rd index according to each;
Generate code index, described code index comprises the information of described first, second and third index.
8, coding method according to claim 7 is characterized in that:
Described when the pulse that needs on the track to encode is added up according to the position, also, obtain corresponding impulse code information according to each characteristic of plus or minus that impulse code of pulse position is arranged;
Described code index also comprises the information that pulse position corresponding symbol index is arranged with each, described notation index indication the impulse code information that pulse position arranged corresponding with this index.
9, coding method according to claim 7 is characterized in that: described generation code index is, is initial value with first index, the information of other index that superpose; A value of described first index is corresponding to one of code index span independently.
10, coding method according to claim 9 is characterized in that: the described number that pulse position arranged and first index are relation one to one;
Have 16 positions on the described track, needing the pulse number of coding is 6, have the number of pulse position to be respectively at 1,2,3,4,5,6 o'clock, with its order one to one first index be respectively 1F0000,1E0000,1D0000,180000,000000,100000 with hexadecimal representation; Perhaps,
Have 16 positions on the described track, needing the pulse number of coding is 5, have the number of pulse position to be respectively at 1,2,3,4,5 o'clock, with its order one to one first index be respectively 78000,70000,60000,40000,00000 with hexadecimal representation; Perhaps,
Have 16 positions on the described track, needing the pulse number of coding is 4, has the number of pulse position to be respectively at 1,2,3,4 o'clock, with its order one to one first index be respectively E000, C000,8000,0000 with hexadecimal representation; Perhaps,
Have 16 positions on the described track, needing the pulse number of coding is 3, has the number of pulse position to be respectively at 1,2,3 o'clock, with its order one to one first index be respectively 1C00,1800,0000 with hexadecimal representation; Perhaps,
Have 16 positions on the described track, needing the pulse number of coding is 2, has the number of pulse position to be respectively at 1,2 o'clock, with its order one to one first index be respectively 1E0,000 with hexadecimal representation.
11, coding method according to claim 9 is characterized in that: be initial value with first index, during the information of other index that superpose, second and third index-group is combined into following form and superposes:
I3×W(N)+I2;
Wherein, I2, I3 are respectively second index and the 3rd index; W (N) is under the number N that pulse position is arranged of the first index correspondence, and the pulse position sum of all possible distribution situation is in orbit arranged.
12, coding method according to claim 7 is characterized in that, and is described according to there being pulse position distribution in orbit to determine second index, is the calculating of carrying out second index in the following manner:
According to the order of setting, under the number that pulse position is arranged to the first index correspondence, have pulse position in orbit all possible distribution situations arrange, with the sequence number of arranging second index as the corresponding distribution situation of indication.
13, coding method according to claim 12, it is characterized in that, described according to the order of setting, under the number that pulse position is arranged to the first index correspondence, there are the whole in orbit possible distribution situations of pulse position to arrange, carry out in the following manner:
To there be pulse position distribution in orbit to correspond to a N dimension pulse position vector P (N),
P(N)={p(0),p(1),...,p(N-1)};
Wherein, N is the number that pulse position is arranged; P (n) expression has pulse position position number in orbit, n ∈ [0, N-1]; P (0)<p (1)<...<p (N-1), perhaps p (0)〉p (1)〉... p (N-1);
The size of each dimension of pulse position vector relatively successively, according to from small to large or order from big to small to the N dimension down all possible pulse position vectors sort.
14, coding method according to claim 13 is characterized in that, the computing formula of second index is:
I 2 = C M N - C M - p ( 0 ) N + Σ n = 1 N - 1 [ C M - p ( n - 1 ) - 1 N - n - C M - p ( n ) N - n ] ;
Wherein, M is the total number of positions on the track; P (0) ∈ [0, M-N], p (n) ∈ [p (n-1)+1, M-N+n]; Number of combinations is asked in " C " expression; ∑ is represented summation.
15, a kind of coding/decoding method is characterized in that, comprising:
The received code index;
From described code index, extract distribution index;
Determine the position distribution in orbit of each pulse according to described distribution index;
According to the pulse train on the position distribution reconstruction track in orbit of each pulse.
16, coding/decoding method according to claim 15 is characterized in that, also comprises:
From described code index, extract and each pulse corresponding symbol index the impulse code information of the pulse that described notation index indication is corresponding with this index;
During pulse train on rebuilding track,, recover the characteristic of plus or minus of the impulse code of each pulse also according to described impulse code information.
17, coding/decoding method according to claim 15 is characterized in that, the described position distribution employing in orbit of determining each pulse according to distribution index I4:
Calculate successively according to q (0) order from small to large
Figure A200710153952C00061
Wherein, q (0) ∈ [0, M], M is the total number of positions on the track,
Figure A200710153952C00062
Be the pulse sum of encoding on the same track,
Figure A200710153952C00064
Number of combinations is asked in " C " expression; Write down last and make T[q (0)] greater than the position number v0 of zero q (0) value as the 1st pulse on the track;
If
Figure A200710153952C00065
Then continue to calculate successively according to q (1) order from small to large
Figure A200710153952C00067
Wherein, q (1) ∈ [v0, M]; Write down last and make T1[q (1)] greater than the position number v1 of zero q (1) value as the 2nd pulse on the track;
By that analogy, calculate successively according to q (h) order from small to large
Figure A200710153952C00068
Wherein, q (h) ∈ [v (h-1), M],
Figure A200710153952C000610
Write down last and make Th[q (h)] greater than the position number vh of zero q (h) value as h+1 pulse on the track.
18, according to any described coding/decoding method of claim 15~17, it is characterized in that, also comprise:
Determine the pulse sum that the code index of described reception is encoded on same track;
Carry out decoding process according to the pulse sum of encoding on the described same track and select, described decoding process comprises first decoding process;
Result according to described decoding process is selected after determining to select first decoding process, carries out the described step that extracts distribution index from code index.
19, coding/decoding method according to claim 18, it is characterized in that, describedly carry out the step that decoding process selects according to the pulse sum of encoding on the same track and comprise: when the pulse of encoding on the described same track adds up to 3 or 4 or 5, determine to select first decoding process.
20, coding/decoding method according to claim 19 is characterized in that, described decoding process also comprises second decoding process, and described coding/decoding method also comprises:
Result according to described decoding process is selected, after determining to select second decoding process, carry out described second decoding process according to following steps:
From described code index, extract first index, define the number of pulse position according to first index;
From described code index, extract second and third index;
Determine under the number that pulse position is arranged of the described first index correspondence, pulse position distribution is in orbit arranged according to second index;
Determine that according to the 3rd index each has the pulse number on the pulse position;
According to having pulse position distribution in orbit and each that pulse number on pulse position is arranged, rebuild the pulse train on the track.
21, coding/decoding method according to claim 20, it is characterized in that: after defining the number of pulse position, also extracting from described code index with each has pulse position corresponding symbol index, described notation index indication the impulse code information that pulse position arranged corresponding with this index;
During pulse train on rebuilding track,, recover the characteristic of the plus or minus of each impulse code that pulse position is arranged also according to described impulse code information.
22, coding/decoding method according to claim 20, it is characterized in that, described first index that extracts from code index adopts: from set several independently the span, judge the span that described code index is affiliated, determine described first index according to the initial value of the span correspondence under this.
23, coding/decoding method according to claim 22 is characterized in that, described second and third index that extracts from code index adopts: from code index, extract the combined value I23 of second and third index, isolate second and third index in the following manner,
I2=I23%W(N),I3=Int[I23/W(N)];
Wherein, I2, I3 are respectively second index and the 3rd index; W (N) is under the number N that pulse position is arranged of the first index correspondence, and the pulse position sum of all possible distribution situation is in orbit arranged; % represents to get remainder; Int represents to round.
24, coding/decoding method according to claim 20 is characterized in that, describedly defines pulse position distribution in orbit according to second index and adopts:
From the second index I2, deduct one by one
Figure A200710153952C00071
Become negative up to the residual value R of I2 (y0) by positive number; Wherein, M is the total number of positions on the track, and N is the number that pulse position is arranged, y0 ∈ [1, M-N+1], and number of combinations is asked in " C " expression; The 1st position number p (0)=y0-1 that pulse position is arranged on the track record;
If N〉1, then continue from R[p (0)] deduct one by one C M - p ( 0 ) - 1 N - 2 , . . . , C M - p ( 0 ) - y 1 N - 2 , Up to R[p (0)] residual value R1 (y1) become negative by positive number; The 2nd position number p (1)=y1-1 that pulse position is arranged on the track record;
By that analogy, from R (n-1) [p (n-1)], deduct one by one
Figure A200710153952C00081
Residual value Rn (yn) up to R (n-1) [p (n-1)] becomes negative by positive number; Wherein, n≤N-1; N+1 position number p (n)=yn-1 that pulse position is arranged on the track record.
25, a kind of scrambler is characterized in that, comprising:
First statistic unit is used for the pulse that needs on the track to encode is added up according to the position, obtains the position distributed intelligence in orbit of each pulse;
The distribution index unit, be used for determining distribution index, described distribution index calculates in the following manner: according to the order of setting, under current pulse number, the position of each pulse in orbit all possible distribution situations arrange, with the sequence number of arranging distribution index as the corresponding distribution situation of indication;
The index generation unit is used to generate code index, and described code index comprises the information of described distribution index.
26, scrambler according to claim 25, it is characterized in that: described first statistic unit is also according to the characteristic of the plus or minus of the impulse code of each pulse, the information of output and each pulse corresponding symbol index, the impulse code information of the pulse that described notation index indication is corresponding with this index; Described index generation unit also will with the information of each pulse corresponding symbol index, be combined in the described code index.
27, according to claim 25 or 26 described scramblers, it is characterized in that, also comprise:
The coding selected cell is used for determining needing on the same track pulse sum of encoding; Pulse sum according to needs coding on the described same track carries out coding mode selection, and described coded system comprises first coded system; According to the result of described coding mode selection, after determining to select first coded system, trigger described first statistic unit and begin to carry out coding.
28, scrambler according to claim 27 is characterized in that, also comprises:
Second statistic unit is used for the pulse that needs on the track to encode is added up according to the position, output have pulse position number, have pulse position in orbit distribution and each pulse number on pulse position is arranged;
Index calculating, described index calculating comprises: first indexing units, be used for exporting first index according to the number that pulse position is arranged, described first index is corresponding under the identical number that pulse position arranged, and pulse position whole possible distribution situations are in orbit arranged; Second indexing units is used for according to there being pulse position distribution in orbit to export second index, and described second index is indicated and the current corresponding distribution situation of distribution that pulse position is arranged from the whole possible distribution situation of the described first index correspondence; The 3rd indexing units is used for having the pulse number on the pulse position to export the 3rd index according to each;
The index assembled unit, the information that is used to make up described first, second and third index generates code index;
The selectable coded system of described coding selected cell also comprises second coded system, and described coding selected cell, triggers described second statistic unit and begins to carry out coding after determining to select second coded system according to the result of described coding mode selection.
29, scrambler according to claim 28 is characterized in that: described second statistic unit also according to each characteristic of plus or minus that impulse code of pulse position is arranged, is exported corresponding impulse code information; Described index assembled unit also will with each information that pulse position corresponding symbol index is arranged, be combined in the described code index impulse code information that pulse position is arranged that the indication of described notation index is corresponding with this index.
30, scrambler according to claim 28 is characterized in that, described index combination unit pack is drawn together:
First assembled unit is used to export second and third index that is combined as following form,
I3×W(N)+I2;
Wherein, I2, I3 are respectively second index and the 3rd index; W (N) is under the number N that pulse position is arranged of the first index correspondence, and the pulse position sum of all possible distribution situation is in orbit arranged;
Second assembled unit is used for the output of described first assembled unit and the information stack of other index, output encoder index.
31, a kind of demoder is characterized in that, comprising:
Input block is used for the received code index;
The distribution extraction unit is used for extracting distribution index from described code index;
The distribution solution code element is used for determining according to described distribution index the position distribution in orbit of each pulse;
The distribution reconstruction unit is used for according to the pulse train on the position distribution reconstruction track in orbit of each pulse.
32, demoder according to claim 31 is characterized in that, also comprises:
The symbol extraction unit is used for according to the pulse sum of encoding on the same track, extracts from described code index and each pulse corresponding symbol index, the impulse code information of the pulse that described notation index indication is corresponding with this index;
Described distribution reconstruction unit is also according to described impulse code information, recovers the characteristic of plus or minus of the impulse code of each pulse.
33, according to claim 31 or 32 described demoders, it is characterized in that, also comprise:
The decoding selected cell is used for determining the pulse sum that the code index of described reception is encoded on same track; Carry out decoding process according to the pulse sum of encoding on the described same track and select, described decoding process comprises first decoding process; Result according to described decoding process is selected after determining to select first decoding process, triggers described distribution extraction unit and begins to carry out decoding.
34, demoder according to claim 33 is characterized in that, also comprises:
First extraction unit is used for the received code index, extracts first index from described code index, defines the number of pulse position according to first index;
Second extraction unit is used for extracting second and third index from described code index;
First decoding unit is used for determining under the number that pulse position is arranged of the described first index correspondence, pulse position distribution is in orbit arranged according to second index;
Second decoding unit is used for determining that according to the 3rd index each has the pulse number on the pulse position;
The pulse reconstruction unit is used for rebuilding the pulse train on the track according to having pulse position distribution in orbit and each that pulse number on pulse position is arranged;
The selectable decoding process of described decoding selected cell also comprises second decoding process, and the result that described decoding selected cell is selected according to described decoding process after determining to select second decoding process, triggers described first extraction unit and begins to carry out decoding.
35, demoder according to claim 34, it is characterized in that, also comprise: the 3rd extraction unit, be used for according to the number that pulse position is arranged, extracting from described code index with each has pulse position corresponding symbol index, described notation index indication the impulse code information that pulse position arranged corresponding with this index;
Described pulse reconstruction unit comprises: first reconstruction unit, be used for according to have pulse position in orbit distribution and with each pulse position corresponding symbol index is arranged, recover the characteristic of the plus or minus of each impulse code that pulse position is arranged; Second reconstruction unit is used for according to each signed distribution that pulse position arranged and each pulse number on pulse position being arranged, and rebuilds the pulse train on the track.
36, demoder according to claim 34 is characterized in that, described second extraction unit comprises: the segregant unit is used for extracting from code index the combined value I23 of second and third index;
Resolve subelement, be used for separating in the following manner second and third index of output,
I2=I23%W(N),I3=Int[I23/W(N)];
Wherein, I2, I3 are respectively second index and the 3rd index; W (N) is under the number N that pulse position is arranged of the first index correspondence, and the pulse position sum of all possible distribution situation is in orbit arranged; % represents to get remainder; Int represents to round.
CN2007101539527A 2007-04-29 2007-09-15 Coding and decoding method, coder and decoder Active CN101388210B (en)

Priority Applications (19)

Application Number Priority Date Filing Date Title
CN2007101539527A CN101388210B (en) 2007-09-15 2007-09-15 Coding and decoding method, coder and decoder
DK14184929.9T DK2827327T3 (en) 2007-04-29 2008-04-29 Method for excitation pulse coding
EP08734199.6A EP2157573B1 (en) 2007-04-29 2008-04-29 An encoding and decoding method
EP14184929.9A EP2827327B1 (en) 2007-04-29 2008-04-29 Method for Excitation Pulse Coding
PT141849299T PT2827327T (en) 2007-04-29 2008-04-29 Coding method, decoding method, coder, and decoder
JP2010504431A JP5221642B2 (en) 2007-04-29 2008-04-29 Encoding method, decoding method, encoder, and decoder
PCT/CN2008/070841 WO2008134974A1 (en) 2007-04-29 2008-04-29 An encoding method, a decoding method, an encoder and a decoder
ES08734199.6T ES2529292T3 (en) 2007-04-29 2008-04-29 Encoding and decoding method
ES14184929T ES2817906T3 (en) 2007-04-29 2008-04-29 Pulse coding method of excitation signals
US12/607,723 US8294602B2 (en) 2007-04-29 2009-10-28 Coding method, decoding method, coder and decoder
US13/622,207 US8988256B2 (en) 2007-04-29 2012-09-18 Coding method, decoding method, coder, and decoder
JP2013046027A JP5866307B2 (en) 2007-04-29 2013-03-07 Encoding method, decoding method, encoder, and decoder
US14/617,585 US9225354B2 (en) 2007-04-29 2015-02-09 Coding method, decoding method, coder, and decoder
US14/974,171 US9444491B2 (en) 2007-04-29 2015-12-18 Coding method, decoding method, coder, and decoder
JP2016000105A JP6239652B2 (en) 2007-04-29 2016-01-04 Encoding method and encoding apparatus
US15/228,661 US9912350B2 (en) 2007-04-29 2016-08-04 Coding method, decoding method, coder, and decoder
US15/880,300 US10153780B2 (en) 2007-04-29 2018-01-25 Coding method, decoding method, coder, and decoder
US16/184,240 US10425102B2 (en) 2007-04-29 2018-11-08 Coding method, decoding method, coder, and decoder
US16/568,144 US10666287B2 (en) 2007-04-29 2019-09-11 Coding method, decoding method, coder, and decoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2007101539527A CN101388210B (en) 2007-09-15 2007-09-15 Coding and decoding method, coder and decoder

Publications (2)

Publication Number Publication Date
CN101388210A true CN101388210A (en) 2009-03-18
CN101388210B CN101388210B (en) 2012-03-07

Family

ID=40477580

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007101539527A Active CN101388210B (en) 2007-04-29 2007-09-15 Coding and decoding method, coder and decoder

Country Status (1)

Country Link
CN (1) CN101388210B (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010145474A1 (en) * 2009-06-19 2010-12-23 华为技术有限公司 Method and device for pulse encoding, method and device for pulse decoding
WO2011160537A1 (en) 2010-06-24 2011-12-29 华为技术有限公司 Pulse encoding and decoding method and pulse codec
WO2012100596A1 (en) 2011-01-26 2012-08-02 华为技术有限公司 Vector joint encoding/decoding method and codec
CN103460284A (en) * 2011-02-14 2013-12-18 弗兰霍菲尔运输应用研究公司 Encoding and decoding of pulse positions of tracks of an audio signal
CN103886862A (en) * 2010-06-24 2014-06-25 华为技术有限公司 Pulse encoding and decoding method and pulse coder-decoder
US9037457B2 (en) 2011-02-14 2015-05-19 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio codec supporting time-domain and frequency-domain coding modes
US9047859B2 (en) 2011-02-14 2015-06-02 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for encoding and decoding an audio signal using an aligned look-ahead portion
US9153236B2 (en) 2011-02-14 2015-10-06 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio codec using noise synthesis during inactive phases
US9384739B2 (en) 2011-02-14 2016-07-05 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for error concealment in low-delay unified speech and audio coding
US9536530B2 (en) 2011-02-14 2017-01-03 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Information signal representation using lapped transform
US9583110B2 (en) 2011-02-14 2017-02-28 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for processing a decoded audio signal in a spectral domain
US9595262B2 (en) 2011-02-14 2017-03-14 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Linear prediction based coding scheme using spectral domain noise shaping
US9620129B2 (en) 2011-02-14 2017-04-11 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for coding a portion of an audio signal using a transient detection and a quality result
US10153780B2 (en) 2007-04-29 2018-12-11 Huawei Technologies Co.,Ltd. Coding method, decoding method, coder, and decoder

Cited By (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10666287B2 (en) 2007-04-29 2020-05-26 Huawei Technologies Co., Ltd. Coding method, decoding method, coder, and decoder
US10153780B2 (en) 2007-04-29 2018-12-11 Huawei Technologies Co.,Ltd. Coding method, decoding method, coder, and decoder
US10425102B2 (en) 2007-04-29 2019-09-24 Huawei Technologies Co., Ltd. Coding method, decoding method, coder, and decoder
CN101931414B (en) * 2009-06-19 2013-04-24 华为技术有限公司 Pulse coding method and device, and pulse decoding method and device
CN101931414A (en) * 2009-06-19 2010-12-29 华为技术有限公司 Pulse coding method and device, and pulse decoding method and device
WO2010145474A1 (en) * 2009-06-19 2010-12-23 华为技术有限公司 Method and device for pulse encoding, method and device for pulse decoding
US8723700B2 (en) 2009-06-19 2014-05-13 Huawei Technologies Co., Ltd. Method and device for pulse encoding, method and device for pulse decoding
US9349381B2 (en) 2009-06-19 2016-05-24 Huawei Technologies Co., Ltd Method and device for pulse encoding, method and device for pulse decoding
US10026412B2 (en) 2009-06-19 2018-07-17 Huawei Technologies Co., Ltd. Method and device for pulse encoding, method and device for pulse decoding
CN103886862A (en) * 2010-06-24 2014-06-25 华为技术有限公司 Pulse encoding and decoding method and pulse coder-decoder
US9020814B2 (en) 2010-06-24 2015-04-28 Huawei Technologies Co., Ltd. Pulse encoding and decoding method and pulse codec
US8959018B2 (en) 2010-06-24 2015-02-17 Huawei Technologies Co.,Ltd Pulse encoding and decoding method and pulse codec
CN103886862B (en) * 2010-06-24 2018-09-28 华为技术有限公司 Pulse decoding method and pulse codec
WO2011160537A1 (en) 2010-06-24 2011-12-29 华为技术有限公司 Pulse encoding and decoding method and pulse codec
US9858938B2 (en) 2010-06-24 2018-01-02 Huawei Technologies Co., Ltd. Pulse encoding and decoding method and pulse codec
US9508348B2 (en) 2010-06-24 2016-11-29 Huawei Technologies Co., Ltd. Pulse encoding and decoding method and pulse codec
US10446164B2 (en) 2010-06-24 2019-10-15 Huawei Technologies Co., Ltd. Pulse encoding and decoding method and pulse codec
EP3174048A1 (en) 2011-01-26 2017-05-31 Huawei Technologies Co., Ltd. Method and encoder for vector joint encoding of a speech signal
US9704498B2 (en) 2011-01-26 2017-07-11 Huawei Technologies Co., Ltd. Vector joint encoding/decoding method and vector joint encoder/decoder
WO2012100596A1 (en) 2011-01-26 2012-08-02 华为技术有限公司 Vector joint encoding/decoding method and codec
US8930200B2 (en) 2011-01-26 2015-01-06 Huawei Technologies Co., Ltd Vector joint encoding/decoding method and vector joint encoder/decoder
US10089995B2 (en) 2011-01-26 2018-10-02 Huawei Technologies Co., Ltd. Vector joint encoding/decoding method and vector joint encoder/decoder
US9404826B2 (en) 2011-01-26 2016-08-02 Huawei Technologies Co., Ltd. Vector joint encoding/decoding method and vector joint encoder/decoder
US9881626B2 (en) 2011-01-26 2018-01-30 Huawei Technologies Co., Ltd. Vector joint encoding/decoding method and vector joint encoder/decoder
US9595263B2 (en) 2011-02-14 2017-03-14 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Encoding and decoding of pulse positions of tracks of an audio signal
US9384739B2 (en) 2011-02-14 2016-07-05 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for error concealment in low-delay unified speech and audio coding
CN103460284B (en) * 2011-02-14 2016-05-18 弗劳恩霍夫应用研究促进协会 The encoding and decoding of audio signal track pulse position
US9620129B2 (en) 2011-02-14 2017-04-11 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for coding a portion of an audio signal using a transient detection and a quality result
US9153236B2 (en) 2011-02-14 2015-10-06 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio codec using noise synthesis during inactive phases
US9047859B2 (en) 2011-02-14 2015-06-02 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for encoding and decoding an audio signal using an aligned look-ahead portion
US9595262B2 (en) 2011-02-14 2017-03-14 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Linear prediction based coding scheme using spectral domain noise shaping
US9037457B2 (en) 2011-02-14 2015-05-19 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio codec supporting time-domain and frequency-domain coding modes
US9583110B2 (en) 2011-02-14 2017-02-28 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for processing a decoded audio signal in a spectral domain
CN103460284A (en) * 2011-02-14 2013-12-18 弗兰霍菲尔运输应用研究公司 Encoding and decoding of pulse positions of tracks of an audio signal
US9536530B2 (en) 2011-02-14 2017-01-03 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Information signal representation using lapped transform

Also Published As

Publication number Publication date
CN101388210B (en) 2012-03-07

Similar Documents

Publication Publication Date Title
CN101388210B (en) Coding and decoding method, coder and decoder
CN101295506B (en) Pulse coding and decoding method and device
Leinster Entropy and diversity: the axiomatic approach
CN102122966B (en) Channel-polarization-based encoder for staggered structure duplication code, and encoding and decoding methods thereof
CN102164025B (en) Coder based on repeated coding and channel polarization and coding/decoding method thereof
CN103995887A (en) Bitmap index compressing method and bitmap index decompressing method
Ryabko et al. Compression-based methods of statistical analysis and prediction of time series
CN101483043A (en) Code book index encoding method based on classification, permutation and combination
CN101604977B (en) Encoders and methods for encoding digital data with low-density parity check matrix
CN1183683C (en) Position adaptive coding method using prefix prediction
Wu et al. Structural entropy guided graph hierarchical pooling
CN105656604A (en) Bit interleaved polar code modulation method and apparatus
d’Alessandro et al. Hierarchical approach to complexity with applications to dynamical systems
Das et al. Distributed matrix-vector multiplication: A convolutional coding approach
CN102394661A (en) LDPC (low density parity check) decoder and decoding method based on layer decoding processing
CN101981618A (en) Reduced-complexity vector indexing and de-indexing
CN102299760B (en) Pulse coding and decoding method and pulse codec
CN111276187B (en) Gene expression profile feature learning method based on self-encoder
Rissanen An introduction to the MDL principle
CN101431335B (en) Modulation coding and decoding method, device and system
CN101594152A (en) Realize the LDPC code coding method that operation of horizontal and vertical computing move simultaneously
CN101304254A (en) Method and apparatus for encoding/decoding vector as well as flow medium player
Park et al. Irregular product coded computation for high-dimensional matrix multiplication
Leinster Entropy and Diversity: The Axiomatic Approach
CN104657749A (en) Method and device for classifying time series

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant