CN101030951B - Drop-out compensating method and compensator - Google Patents
Drop-out compensating method and compensator Download PDFInfo
- Publication number
- CN101030951B CN101030951B CN2007100075741A CN200710007574A CN101030951B CN 101030951 B CN101030951 B CN 101030951B CN 2007100075741 A CN2007100075741 A CN 2007100075741A CN 200710007574 A CN200710007574 A CN 200710007574A CN 101030951 B CN101030951 B CN 101030951B
- Authority
- CN
- China
- Prior art keywords
- packet loss
- data
- offset data
- time
- primitive period
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The method comprises: A) deciding if the current frame loses packet; if yes, according to the times of continually-losing packet and the data in buffer, calculating the compensating data of currently-lost packet, and then ending the process; otherwise, entering into step B; B) deciding if the previous frame loses packet; if yes, entering into step C; otherwise, according to the data contained in the current frame, renewing the data buffer, and then ending the process; C) according to the times of continually-lost packet and the data in the data buffer, recalculating the compensating data of each time of packet losing.
Description
Technical field
The present invention relates to speech coding technology, refer to a kind of lost packet compensation method and device especially.
Background technology
In existing speech coding technology, the Discarded Packets compensation algorithm calculates current data of losing mainly according to the data of current a period of time of having play.In the prior art, mainly, realize two bigger static data buffer memorys by being set.These two data buffer memorys are respectively: history buffer (history) and primitive period phase buffer memory (pitchbuf), size is 390 16bit spaces, corresponding to the speech data of 48.75ms.Wherein, history is used to preserve the current data of having play, and the data among the history need real-time update.Under the situation of 10ms as a data frame length, the every 10ms of the data among the history upgrades once.Data among the pitchbuf are just used when packet loss takes place, by data among the copy history when for the first time packet loss taking place at every turn, utilize from history backed up data to the first time packet loss and continuous packet loss afterwards carry out compensation data.
Suppose to exist three continuous packet losses, then in first time during packet loss, pitchbuf copies out the data of preserving before the packet loss for the first time from history, and according to these data that copy out this and the second and the 3rd packet loss is afterwards calculated offset data.Simultaneously, after calculating offset data, all with the data among the offset data renewal history that calculates at every turn.This shows, history then is the offset data that calculates when relying on each packet loss, and the data that comprised in the present frame when packet loss not upgrade the data of self, and to remain the data of self preserving be current and the data in a period of time of playing.And then when each packet loss, pitchbuf then can compensate out current data of losing according to the data of preserving among the history.
But, because each voice channel all needs to take history and these two bigger buffer memorys of pitchbuf, therefore under multichannel, highdensity situation, a large amount of static spaces is occupied, influenced the performance of speech processing device greatly, even when the speech processing device performance is low, can not carry out the compensation data of packet loss.
Summary of the invention
In view of this, the main purpose of the embodiment of the invention is to provide a kind of lost packet compensation method, uses this method and can reduce the static space that takies in the Discarded Packets compensation process.
In addition, the another main purpose of the embodiment of the invention is to provide a kind of Discarded Packets compensation device, and this device can take less static space in the process of carrying out Discarded Packets compensation.
For achieving the above object, the technical scheme of the embodiment of the invention is achieved in that
A kind of lost packet compensation method, this method is applicable in the voice communication system with a data buffer memory, may further comprise the steps:
A, judge whether packet loss of present frame, if, according to current continuous packet loss number of times and the data in the metadata cache, calculating the offset data of current packet loss, the offset data that need not calculate is upgraded metadata cache, finishes current handling process; Otherwise, execution in step B;
B, judge whether packet loss of previous frame, if, execution in step C then; Otherwise the Data Update metadata cache according to present frame comprises finishes current handling process;
C, according to next-door neighbour's continuous packet loss number of times of present frame and the data in the metadata cache, recomputate the offset data of each time packet loss, and the data that comprise according to the offset data and the present frame of each time packet loss, the renewal metadata cache.
In addition, the embodiment of the invention also provides a kind of Discarded Packets compensation device, and this device is applicable in the voice communication system with a data buffer unit, comprises: control unit, and compensating unit and data buffer storage unit:
Described control unit is used to judge whether packet loss of present frame, when the present frame packet loss, indicates described compensating unit to calculate the offset data of current packet loss, and the offset data that need not calculate is upgraded metadata cache; When present frame does not have packet loss, judge whether packet loss of former frame; When former frame does not have packet loss, the described data buffer storage unit of Data Update that comprises according to present frame; When the former frame packet loss, indicate described compensating unit to recomputate the offset data of each time packet loss in next-door neighbour's present frame continuous packet loss, and the offset data of each time packet loss that obtains according to described compensating unit and the described data buffer storage unit of Data Update that present frame comprises;
Described compensating unit is used for the indication according to described control unit, calculates the offset data of current packet loss; Or recomputate the offset data of each time packet loss in next-door neighbour's present frame continuous packet loss;
Described data buffer storage unit is used for storing the data that are used for calculating offset data according to the principle of first in first out.
A kind of lost packet compensation method provided by the present invention not during packet loss, utilizes the data in the Data Update metadata cache entrained in the present frame at present frame; And when the present frame packet loss, utilize metadata cache to calculate the offset data of present frame, the offset data that need not calculate this moment is upgraded metadata cache; But, after continuously packet loss finishes, run into the frame of a good bag, the offset data of each time packet loss in the packet loss continuously before recomputating again, and according to the offset data of each time packet loss and entrained data of packet loss frame not, renewal metadata cache.In addition, the present invention also provides a kind of Discarded Packets compensation device.Method provided by the present invention and device, only use a metadata cache identical to realize Discarded Packets compensation to data with static storage size in the prior art, therefore with in the prior art use two static storages to compare, reduce the static space that takies in the Discarded Packets compensation process, can be good at being applicable to multichannel, highdensity application scenario.
Description of drawings
To make clearer above-mentioned and other feature and advantage of the present invention of those of ordinary skill in the art by describe exemplary embodiment of the present invention in detail with reference to accompanying drawing below, in the accompanying drawing:
Fig. 1 is the exemplary process diagram of the inventive method;
Fig. 2 is the exemplary block diagram of apparatus of the present invention;
Fig. 3 is the flow chart of preferred embodiment method of the present invention;
Fig. 4 is the structure chart of preferred embodiment device of the present invention;
Fig. 5-A is the design sketch of Discarded Packets compensation technical scheme in the prior art;
Fig. 5-B is the design sketch of the Discarded Packets compensation technical scheme of preferred embodiment of the present invention.
Embodiment
For the purpose, technical scheme and the advantage that make the embodiment of the invention is clearer, below with reference to the accompanying drawing embodiment that develops simultaneously, the present invention is described in further detail.
In embodiments of the present invention, in order to reduce employed static storage in the lost packet compensation method, remove a static storage among history or the pitchbuf, or these two static storages are all removed, other opens up a static storage, and storage is used for calculating the data of Discarded Packets compensation data.The size of a static storage of opening up in addition here is big or small identical with history or pitchbuf's.In the present invention, the static storage that keeps or open up in addition is referred to as data buffer storage unit.
Owing to only there is a static storage, therefore for consistent with existing Discarded Packets compensation algorithm, data in this data buffer storage unit promptly will be consistent with the data of current broadcast, also will make the data of preserving in this data buffer storage unit can be used for calculating offset data.
Fig. 1 is the exemplary process diagram of the inventive method.Referring to Fig. 1, be described in detail as follows:
In step 101, judge whether packet loss of present frame, if, execution in step 105; Otherwise, execution in step 102.
In step 102, judge whether packet loss of previous frame, if, execution in step 103; Otherwise, execution in step 106.
In step 103~104,, recomputate the offset data of each time packet loss according to the continuous packet loss number of times of next-door neighbour's present frame and the data in the metadata cache; And, upgrade metadata cache according to the data that the offset data and the present frame of each time packet loss comprises.Finish current handling process.Here, the data buffer storage unit that just is meant of metadata cache.
In step 105,, calculate the offset data of current packet loss according to current continuous packet loss number of times and the data in the metadata cache.Finish current handling process.
In step 106, the Data Update metadata cache that comprises according to present frame.Finish current handling process.
According to the description of Fig. 1 flow process as can be known in technical scheme of the present invention, when present frame did not have packet loss, the data that the data based present frame in the metadata cache comprises were carried out real-time update; At present frame is for the first time continuously during packet loss, then can be compensated data according to the current data computation of having play of preserving in the metadata cache; At present frame is non-first time during continuous packet loss, then according to for the first time continuously during packet loss, the data computation in the metadata cache obtain ought be last time offset data; Simultaneously, run into one when wrapping well after packet loss, then recomputate the offset data of each time packet loss in the continuous packet loss again, entrained data during according to the offset data of each time packet loss that calculates and current packet loss are upgraded metadata cache.So just realized when packet loss, can be according to the current packet loss data of having play before for the first time continuous packet loss of data computation, also can be in time according to the current Data Update metadata cache of having play after continuously packet loss finishes, use when preparing against next time packet loss.In the present invention, packet loss situation is once regarded the special case in the continuous packet loss as.
Fig. 2 is the exemplary block diagram of apparatus of the present invention.Referring to Fig. 2, this device comprises: control unit 21, compensating unit 22 and data buffer storage unit 23.Wherein, control unit 21 is used to judge whether packet loss of present frame, and when the present frame packet loss, indication compensating unit 22 calculates the offset data of current packet loss; When present frame does not have packet loss, judge whether packet loss of former frame; When former frame does not have packet loss, the Data Update data buffer storage unit 23 that comprises according to present frame; When the former frame packet loss, indication compensating unit 22 recomputates the offset data of each time packet loss in next-door neighbour's present frame continuous packet loss, and the offset data of each time packet loss that obtains according to compensating unit 22 and the Data Update data buffer storage unit 23 that present frame comprises.Compensating unit 22 is used for the indication according to control unit 21, calculates the offset data of current packet loss; Or recomputate the offset data of each time packet loss in next-door neighbour's present frame continuous packet loss.Data buffer storage unit 23 is used for storing the data that are used for calculating offset data according to the principle of first in first out.
Referring to Fig. 3, Fig. 3 is the flow chart of preferred embodiment method of the present invention, and concrete steps are as follows:
In step 301, judge whether packet loss of present frame, if then execution in step 302; Otherwise, execution in step 314.
In step 302, judge whether to be the packet loss first time, if then execution in step 303; Otherwise execution in step 306.
Here, whether be the concrete grammar of for the first time packet loss be exactly the former frame whether packet loss of judging present frame, if then present frame is not the packet loss first time if judging current; Otherwise present frame is the packet loss first time.
In step 303,, then obtain the primitive period phase according to the data computation in the metadata cache when being for the first time during packet loss.
In step 304, the data of last 1/4 primitive period phase in the data buffer memory are carried out smoothing processing.
Here, the method for specifically carrying out smoothing processing is: take out in the metadata cache the data of 1/4 primitive period phase; Data and the last 1/4 primitive period issue certificate in its last primitive period phase of this last 1/4 primitive period phase are superposeed,, upgrade the data of last 1/4 primitive period phase in the metadata cache the data that stack obtains.
The calculating principle of stack can be with addition, that is: C=W1*A+W2*B after the two segment data weightings.Such as needs 30 numbers that superpose, W1={1/30,2/30,3/30 then ..., 29/30,1}, W2={1,29/30 ..., 1 30}.The effect of stack is exactly to make C have the feature of A and B.
In step 305, utilize the data after upgrading in the metadata cache, i.e. data after the smoothing processing in the metadata cache, and the primitive period phase that calculates in the step 303 calculate the offset data of current packet loss.Finish current handling process.
In step 306, judge whether to be second or three continuous packet loss, if then execution in step 307; Otherwise, execution in step 310.
Here whether, judging current is packet loss continuously for the second time, and whether the former frame of just judging present frame packet loss, and when packet loss, then present frame be for the second time continuous packet loss; Whether all judge the current packet loss continuously for the third time of whether being, judge the former frame of present frame and front cross frame packet loss exactly, if all during packet loss, then present frame is continuous packet loss for the third time.
In step 307, the data computation in the metadata cache that obtains according to smoothing processing in the step 304 is compensated data.
Calculating second or for the third time continuously during the offset data of packet loss, need on the basis of last once packet loss, obtain according to the data computation in the metadata cache that obtains in primitive period phase and the step 304.This is determined by the character of calculating offset data according to the primitive period phase.
In step 308, the data of preceding 1/4 primitive period phase of the offset data that calculates in the step 307 are carried out smoothing processing.
Here, concrete smoothing processing mode is: take out for the first time continuously before the packet loss, the data of last 1/4 primitive period phase in the metadata cache, with in itself and the metadata cache at the last 1/4 primitive period issues of its preceding two primitive period phases according to stack, with the data that obtain after the stack to the preceding 1/4 primitive period issue of the offset data that calculates according to stack.
In step 309, the offset data after decay is level and smooth.Finish current handling process.
Here, because the speech data of compensation is non-real speech, reduces its energy and can reduce influence to real speech, therefore the offset data after level and smooth being decayed to access better sound effect.
In step 310, judge whether to be fourth, fifth or six continuous packet loss, if then execution in step 311; Otherwise, execution in step 313.
In step 311, the data computation in the metadata cache that obtains according to smoothing processing in the step 304 is compensated data.
Identical with the reason in the step 307, when calculating the offset data of fourth, fifth or six continuous packet loss, need on the basis of last once packet loss, obtain according to the data computation in the metadata cache that obtains in primitive period phase and the step 304.
In step 312, the offset data that decay calculates.Finish current handling process.
In step 313, be during at current packet loss greater than the 6th time continuous packet loss, the corresponding compensation data are zero.Finish current handling process.
In step 314, judge whether packet loss of previous frame, if then execution in step 315; Otherwise, execution in step 317.
In step 315,, recomputate the offset data of each time packet loss according to the continuous packet loss number of times of next-door neighbour's present frame and the data in the metadata cache.
The offset data that recomputates each time packet loss is since the packet loss first time, calculates the offset data of each time packet loss successively.And, calculate the method for each time Discarded Packets compensation data here, the method for calculating offset data when this time packet loss takes place is identical.Just, when a packet loss had only taken place, the method for calculating corresponding offset data was exactly step 304~305, and this moment is not owing to the data of preserving in the metadata cache also change, so the primitive period phase does not need to recomputate again; When second or three continuous packet losses take place, according to the calculating of the step shown in step 307~309 offset data; When fourth, fifth or six continuous packet loss takes place, calculate offset data according to the step shown in step 311~312; When taking place greater than the 6th continuous packet loss, offset data is zero.
In technical scheme of the present invention, though recomputated the offset data of each time packet loss, but because the calculating of primitive period phase is in the whole offset data computational process, the part that calculated specific gravity is bigger, and the present invention is when recomputating the offset data of each time packet loss, do not need to carry out the calculating of primitive period phase, therefore avoided the rising of computation complexity to a great extent.
Here, the continuous packet loss number of times of next-door neighbour's present frame of indication is meant: before next-door neighbour's present frame, the number of times of packet loss takes place altogether.For example, as shown in the table:
Frame 1 | Frame 2 | Frame 3 | Frame 4 | Frame 5 | Frame 6 | Frame 7 | Frame 8 | Frame 9 | Frame 10 |
Good frame | Bad frame | Good frame | Bad frame | Bad frame | Good frame | Bad frame | Bad frame | Bad frame | Good frame |
Table one
In Table 1, enumerated the situation of 10 frames.For frame 3, the continuous packet loss number of times of frame 3 is 1; For frame 6, the continuous packet loss number of times of frame 6 is 2; For frame 10, the continuous packet loss number of times of frame 10 is 3.
In step 316, the Data Update metadata cache that comprises according to the offset data and the present frame of each time packet loss.Finish current handling process.
Concrete mode is: the Data Update that the offset data and the present frame of each time packet loss comprised stores in the metadata cache successively according to first in first out.For example, when having three continuous packet losses, then the offset data of packet loss is updated to metadata cache at first for the first time, be followed successively by then for the second time, the offset data of packet loss continuously for the third time, and be the data that present frame comprised at last.Because metadata cache is that certain size is arranged, therefore work as new data and deposited in, according to the principle of first in first out, originally data early are with deleted.
In step 317, the Data Update metadata cache that comprises according to present frame.
So far, the flow process of preferred embodiment method of the present invention finishes.
After obtaining the offset data of present frame, or when present frame does not have packet loss, these data are promptly play in the data output that all needs offset data or present frame with current packet loss to comprise.When these data of output, can adopt the time-delay way of output.Concrete method is: before dateout, preserve the data of the certain hour of afterbody, the data of the identical time span that kept during dateout last time are added the head output of current dateout.
In the present invention, determine the number of times of current continuous packet loss, also can not adopt the method for judging successively in this preferred embodiment, but adopt the method for record.Be that present frame is for the first time during packet loss, write down this packet loss; When the next frame packet loss, then write down for the second time packet loss continuously; If next frame is packet loss then restart record not; Following and the like.When packet loss, need just can determine continuous packet loss number of times according to current record.
In addition, the step 304 in this preferred embodiment, 308,309,312 technical characterictic all are in order to make the offset data of calculating reach a compensation effect preferably.In the process of practical application, can accept or reject these steps according to actual conditions.
Fig. 4 is the structure chart of preferred embodiment device of the present invention.This device comprises as shown in Figure 4: this device comprises: control unit 41, compensating unit 42 and data buffer storage unit 43.Wherein, control unit 41 is used to judge whether packet loss of present frame, and when the present frame packet loss, indication compensating unit 42 calculates the offset data of current packet loss; When present frame does not have packet loss, judge whether packet loss of former frame; When former frame does not have packet loss, the Data Update data buffer storage unit 43 that comprises according to present frame; When the former frame packet loss, indication compensating unit 42 recomputates the offset data of each time packet loss in next-door neighbour's present frame continuous packet loss, and the offset data of each time packet loss that obtains according to compensating unit 42 and the Data Update data buffer storage unit 43 that present frame comprises.Compensating unit 42 is used for the indication according to control unit 41, calculates the offset data of current packet loss; Or recomputate the offset data of each time packet loss in next-door neighbour's present frame continuous packet loss.Data buffer storage unit 43 is used for storing the data that are used for calculating offset data according to the principle of first in first out.
Wherein, compensating unit 42 comprises: compensation control unit 421, primitive period phase search unit 422 and compensation computing unit 423.Compensation control unit 421 is used for determining current continuous packet loss number of times, and in first time during packet loss, indication primitive period phase search unit 422 calculates the primitive period phases; And according to current continuous packet loss number of times, indication compensation computing unit 423 obtains current offset data according to the data computation in primitive period phase and the data buffer storage unit 43.Primitive period phase search unit 422 is used for obtaining the primitive period phase according to the data computation of data buffer storage unit 43, and with its notice compensation computing unit 423.Compensation computing unit 423 is used for the data according to current continuous packet loss number of times and primitive period phase and data buffer storage unit 43, calculates the offset data of current packet loss.
In addition, in order to reach better compensation message, further comprise in compensating unit 42: the first time, the packet loss smooth unit 424.Packet loss smooth unit 424 is used for the data of 43 last 1/4 primitive period phases of data buffer unit are carried out smoothing processing for the first time.Accordingly, compensation computing unit 423 is according to after the first time, packet loss smooth unit 424 was handled, the described offset data of the data computation in the data buffer storage unit 43.Compensating unit 42 can further include: second and third time packet loss smooth unit 425.At this moment, compensation computing unit 423 sends it to second and third time packet loss smooth unit 425 calculating second or for the third time during the offset data of packet loss.Second and third time packet loss smooth unit 425 is used for the preceding 1/4 primitive period issue certificate of described offset data is carried out smoothing processing.
Equally, compensating unit 42 can further include: attenuation processing unit 426.At this moment, second and third time packet loss smooth unit 425 is sent to attenuation processing unit 426 with the offset data after self smoothing processing.The compensation computing unit when calculating the offset data of the the 4th, the 5th or the 6th packet loss, sends it to attenuation processing unit 426.Attenuation processing unit 426, the offset data that is used to decay and receives.
In addition, in the device that this preferred embodiment is carried, can further include: output delay unit 44.At this moment, compensating unit 42 sends to output delay unit 44 with the offset data that calculates.Control unit 41, the data that present frame is comprised send to output delay unit 44 equally.Output delay unit 44, the data that the output that then is used to delay time is received.
Fig. 5-A shown in Fig. 5 and Fig. 5-B are respectively the effect comparison figure that uses prior art Discarded Packets compensation technical scheme and Discarded Packets compensation technical scheme of the present invention.In Fig. 5, the frame of packet loss for not taking place in shown good frame, and bad frame is the frame that packet loss has taken place.Dateout shown in it is during at each receipts frame, needs the data of broadcasting.Dateout being carried out 0 to 5 sign is in order to distinguish the dateout at different frame.
Fig. 5-A is the design sketch of Discarded Packets compensation technical scheme in the prior art.By Fig. 5-A as can be known, no matter received frame, or bad frame, history needs real-time update, and pitchbuf needed to upgrade during packet loss in the first time, just be used for afterwards calculating, and the dateout that the discord Discarded Packets compensation produces interrelated.
Fig. 5-B is the design sketch of Discarded Packets compensation technical scheme provided by the invention.By Fig. 5-B as can be known, owing to only kept a static storage, therefore when having received frame, need the real-time update data buffer storage unit, when receiving bad frame, only need according to the compensation data calculation data in the metadata cache before the first time packet loss, output gets final product.And after continuous packet loss, when receiving first good frame, need recomputate the packet loss number of times of each time in the continuous packet loss, and the data that comprise according to the offset data and the current good frame of each time packet loss, the renewal data buffer storage unit gets final product, and finishes the renewal of data buffer storage unit.Shown in Fig. 5-B, upgrade data buffer storage unit according to dateout 2,3 and 4.Such result is the same with the result of packet loss real-time update.In this way, guarantee that optimized Algorithm is consistent with the primal algorithm result, but the demand in static space has but reduced 360*16bit.
The above only is preferred embodiment of the present invention, and is in order to restriction the present invention, within the spirit and principles in the present invention not all, any modification of being made, is equal to replacement, improvement etc., all should be included within protection scope of the present invention.
Claims (17)
1. a lost packet compensation method is characterized in that, this method is applicable in the voice communication system with a data buffer memory, may further comprise the steps:
A, judge whether packet loss of present frame, if, according to current continuous packet loss number of times and the data in the metadata cache, calculating the offset data of current packet loss, the offset data that need not calculate is upgraded metadata cache, finishes current handling process; Otherwise, execution in step B;
B, judge whether packet loss of previous frame, if, execution in step C then; Otherwise the Data Update metadata cache according to present frame comprises finishes current handling process;
C, according to next-door neighbour's continuous packet loss number of times of present frame and the data in the metadata cache, recomputate the offset data of each time packet loss, and the data that comprise according to the offset data and the present frame of each time packet loss, the renewal metadata cache.
2. method according to claim 1 is characterized in that, in the steps A, the step of described calculating offset data is: determine current continuous packet loss number of times; When being for the first time continuously during packet loss, obtain the primitive period phase according to the data computation in the metadata cache, obtain current offset data according to the data computation in described primitive period phase and the metadata cache;
When there being continuous packet loss, the offset data of then calculating the non-first time of continuous packet loss is: on the basis of a preceding packet loss, obtain the offset data of this packet loss according to the data computation in primitive period phase and the metadata cache.
3. method according to claim 2 is characterized in that, when described continuous packet loss number of times is for the first time the time, describedly obtains also comprising after the primitive period phase according to the data computation in the metadata cache:
Data to the last 1/4 primitive period phase in the data buffer memory are carried out smoothing processing;
Describedly obtain current offset data according to the data computation in primitive period phase and the metadata cache and be specially:, calculate offset data at current packet loss according to the data in the metadata cache after described primitive period phase and the smoothing processing;
When having continuous packet loss, the offset data of the described calculating non-first time of packet loss is specially: according to data in the metadata cache after smoothing processing during packet loss for the first time in primitive period phase and the current continuous packet loss, calculate corresponding offset data.
4. method according to claim 3 is characterized in that, in first time during packet loss, described data to the last 1/4 primitive period phase in the data buffer memory are carried out smoothing processing and comprised:
Take out the data of last 1/4 primitive period phase in the metadata cache; Data and the last 1/4 primitive period issue certificate in its last primitive period phase of described last 1/4 primitive period phase are superposeed, with the data of last 1/4 primitive period phase in the described metadata cache of the Data Update that obtains.
5. method according to claim 3, it is characterized in that, when being second or for the third time continuously during packet loss, the described step that calculates offset data further comprises: the preceding 1/4 primitive period issue that current packet loss is calculated offset data is according to carrying out smoothing processing, and the data after the described smoothing processing are decayed, obtain at the final offset data of current packet loss.
6. method according to claim 5 is characterized in that, when second or three packet loss, described preceding 1/4 primitive period issue to offset data comprises according to carrying out smoothing processing:
Take out before the packet loss for the first time the data of last 1/4 primitive period phase in the described metadata cache, with its with metadata cache at the last 1/4 primitive period issues of its preceding two primitive period phases according to stack, the data that this stack is obtained superpose to the preceding 1/4 primitive period issue certificate of the offset data that calculates.
7. method according to claim 3, it is characterized in that, when described continuous packet loss number of times was the the 4th, the 5th or the 6th time, the described step that calculates offset data further comprised: the described offset data that calculates is decayed obtains final offset data at current packet loss.
8. method according to claim 3 is characterized in that, when described continuous packet loss number of times during greater than six times, the described step that calculates offset data is: the offset data of current packet loss is put 0.
9. according to the described method of arbitrary claim in the claim 1 to 8, it is characterized in that among the step C, the described step that recomputates the offset data behind each time packet loss is:
From described first time of packet loss, calculate the offset data of each time packet loss successively.
10. method according to claim 9 is characterized in that, among the step C, and the described data that comprise according to the offset data behind each time packet loss and present frame, the step of upgrading metadata cache is:
Metadata cache is according to first in first out, stores the data that offset data and present frame at packet loss comprise successively.
11. method according to claim 10 is characterized in that, this method further comprises:
The offset data of the current packet loss of time-delay output or the data that present frame comprises.
12. a Discarded Packets compensation device is characterized in that, this device is applicable in the voice communication system with a data buffer unit, comprises control unit, compensating unit and data buffer storage unit:
Described control unit is used to judge whether packet loss of present frame, when the present frame packet loss, indicates described compensating unit to calculate the offset data of current packet loss, and the offset data that need not calculate is upgraded metadata cache; When present frame does not have packet loss, judge whether packet loss of former frame; When former frame does not have packet loss, the described data buffer storage unit of Data Update that comprises according to present frame; When the former frame packet loss, indicate described compensating unit to recomputate the offset data of each time packet loss in next-door neighbour's present frame continuous packet loss, and the offset data of each time packet loss that obtains according to described compensating unit and the described data buffer storage unit of Data Update that present frame comprises;
Described compensating unit is used for the indication according to described control unit, calculates the offset data of current packet loss; Or recomputate the offset data of each time packet loss in next-door neighbour's present frame continuous packet loss;
Described data buffer storage unit is used to store the data that are used for calculating offset data.
13. device according to claim 12 is characterized in that, described compensating unit comprises the compensation control unit, primitive period phase search unit and compensation computing unit:
Described compensation control unit is used for determining current continuous packet loss number of times, in first time during packet loss, indicates described primitive period phase search unit to calculate the primitive period phase; And, indicate described compensation computing unit to obtain current offset data according to the data computation in primitive period phase and the metadata cache according to current continuous packet loss number of times;
Primitive period phase search unit is used for obtaining the primitive period phase according to the data computation of data buffer storage unit, and with its notice compensation computing unit;
The compensation computing unit is used for the data according to current continuous packet loss number of times and primitive period phase and data buffer storage unit, calculates the offset data of current packet loss.
14. device according to claim 13 is characterized in that, described compensating unit further comprises:
The packet loss smooth unit is used for the data of last 1/4 primitive period phase of data buffer unit are carried out smoothing processing for the first time;
Described compensation computing unit is according to the described offset data of data computation in the data buffer storage unit after the first time, the packet loss smooth unit was handled.
15. device according to claim 14, it is characterized in that, described compensating unit further comprises: second and third time packet loss smooth unit, be used for to described compensation computing unit calculate second or for the third time the preceding 1/4 primitive period issue of the offset data of packet loss according to carrying out smoothing processing.
16. device according to claim 15, it is characterized in that, described compensating unit further comprises: attenuation processing unit, the offset data of the the 4th, the 5th or the 6th packet loss that offset data after described second and third time packet loss smooth unit that is used to decay is handled and described compensation computing unit calculate.
17., it is characterized in that this device further comprises: output delay unit, the data that offset data that the described compensating unit of output that is used to delay time calculates and present frame comprise according to the described device of arbitrary claim in the claim 12 to 16.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007100075741A CN101030951B (en) | 2007-02-08 | 2007-02-08 | Drop-out compensating method and compensator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007100075741A CN101030951B (en) | 2007-02-08 | 2007-02-08 | Drop-out compensating method and compensator |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101030951A CN101030951A (en) | 2007-09-05 |
CN101030951B true CN101030951B (en) | 2010-11-24 |
Family
ID=38716033
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007100075741A Expired - Fee Related CN101030951B (en) | 2007-02-08 | 2007-02-08 | Drop-out compensating method and compensator |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101030951B (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101399636B (en) * | 2008-09-04 | 2011-07-06 | 华为技术有限公司 | Method for packet loss compensation, device and system implementing packet loss compensation |
CN102810313B (en) * | 2011-06-02 | 2014-01-01 | 华为终端有限公司 | Audio decoding method and device |
WO2016070964A1 (en) * | 2014-11-03 | 2016-05-12 | Amadeus S.A.S. | Managing pre-computed search results |
CN109887514B (en) * | 2019-01-10 | 2021-03-19 | 广州视源电子科技股份有限公司 | Audio transmission method and device |
CN111462689B (en) * | 2020-04-22 | 2021-07-06 | 深圳市华星光电半导体显示技术有限公司 | Service life data processing subsystem and service life compensation system |
CN116248229B (en) * | 2022-12-08 | 2023-12-01 | 南京龙垣信息科技有限公司 | Packet loss compensation method for real-time voice communication |
CN117119223B (en) * | 2023-10-23 | 2023-12-26 | 天津华来科技股份有限公司 | Video stream playing control method and system based on multichannel transmission |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060209955A1 (en) * | 2005-03-01 | 2006-09-21 | Microsoft Corporation | Packet loss concealment for overlapped transform codecs |
CN1901431A (en) * | 2006-07-04 | 2007-01-24 | 华为技术有限公司 | Lost frame hiding method and device |
-
2007
- 2007-02-08 CN CN2007100075741A patent/CN101030951B/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060209955A1 (en) * | 2005-03-01 | 2006-09-21 | Microsoft Corporation | Packet loss concealment for overlapped transform codecs |
CN1901431A (en) * | 2006-07-04 | 2007-01-24 | 华为技术有限公司 | Lost frame hiding method and device |
Non-Patent Citations (1)
Title |
---|
A high quality low-complexity algorithm forpacketlossconcealment with G.711.ITU-T G.711 Appendix I.1999,正文1-17页. * |
Also Published As
Publication number | Publication date |
---|---|
CN101030951A (en) | 2007-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101030951B (en) | Drop-out compensating method and compensator | |
US10217460B2 (en) | Speech recognition circuit using parallel processors | |
US8364924B2 (en) | Achieving a high throughput in a storage cache application using a flash solid state disk | |
KR100603699B1 (en) | Hybrid search memory for network processor and computer systems | |
US20100036890A1 (en) | Database management method, database management apparatus, and database management program | |
CN1476562A (en) | Posted write-through cache for flash memory | |
US7111289B2 (en) | Method for implementing dual link list structure to enable fast link-list pointer updates | |
CN101702676A (en) | Data buffering process and device | |
CN103986473A (en) | Receiver for error-protected packet-based frame | |
TW200513902A (en) | Automatic register backup/restore system and method | |
CN106406764A (en) | A high-efficiency data access system and method for distributed SAN block storage | |
CN111694806B (en) | Method, device, equipment and storage medium for caching transaction log | |
CN102930011A (en) | Method and device for processing flow transfer table item | |
US7362770B2 (en) | Method and apparatus for using and combining sub-frame processing and adaptive jitter-buffers for improved voice quality in voice-over-packet networks | |
EP2412120B1 (en) | A method of managing a packet administration map | |
US20100115387A1 (en) | Data receiving apparatus, data receiving method, and computer-readable recording medium | |
EP1622034A2 (en) | Apparatus and method for controlling address conversion buffer | |
CN1270677A (en) | Apparatus and method for protocol application data frame operation requests interfacing with an input/output device | |
CN101883046A (en) | Data cache architecture applied to EPON terminal system | |
JPH0556079A (en) | Buffer management method for receiver | |
US20120155551A1 (en) | Apparatus and method for sequentially parsing bitstreams based on removal of emulation prevention byte | |
CN109542356B (en) | Fault-tolerant NVM (non-volatile memory) persistence process redundancy information compression method and device | |
US6674373B1 (en) | System and method for data decompression | |
US20020120808A1 (en) | Auxiliary storage slot scavenger | |
US9042566B2 (en) | Wideband acoustic echo cancellation apparatus with adaptive tail length in embedded system, and wideband acoustic echo cancellation method |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20101124 Termination date: 20210208 |
|
CF01 | Termination of patent right due to non-payment of annual fee |