WO2012080346A1 - Encoder and method for predictively encoding, decoder and method for decoding, system and method for predictively encoding and decoding and predictively encoded information signal - Google Patents

Encoder and method for predictively encoding, decoder and method for decoding, system and method for predictively encoding and decoding and predictively encoded information signal Download PDF

Info

Publication number
WO2012080346A1
WO2012080346A1 PCT/EP2011/072776 EP2011072776W WO2012080346A1 WO 2012080346 A1 WO2012080346 A1 WO 2012080346A1 EP 2011072776 W EP2011072776 W EP 2011072776W WO 2012080346 A1 WO2012080346 A1 WO 2012080346A1
Authority
WO
WIPO (PCT)
Prior art keywords
signal
values
encoder
reset
signal values
Prior art date
Application number
PCT/EP2011/072776
Other languages
French (fr)
Inventor
Manfred Lutzky
Gerald Schuller
Michael Schnabel
Michael Werner
Original Assignee
Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V.
Technische Universität Ilmenau
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 PL11797010T priority Critical patent/PL2652736T3/en
Priority to MX2013006724A priority patent/MX2013006724A/en
Priority to BR112013015071A priority patent/BR112013015071B8/en
Priority to RU2013132198/08A priority patent/RU2573278C2/en
Priority to AU2011343344A priority patent/AU2011343344B2/en
Priority to CA2821603A priority patent/CA2821603C/en
Priority to EP20110797010 priority patent/EP2652736B1/en
Priority to KR1020137018228A priority patent/KR101587703B1/en
Application filed by Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V., Technische Universität Ilmenau filed Critical Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V.
Priority to JP2013543764A priority patent/JP6012620B2/en
Priority to ES11797010.3T priority patent/ES2528021T3/en
Priority to CN201180067476.1A priority patent/CN103430233B/en
Publication of WO2012080346A1 publication Critical patent/WO2012080346A1/en
Priority to US13/916,874 priority patent/US9124389B2/en
Priority to HK14103773.1A priority patent/HK1190816A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0014Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the source coding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/06Determination or coding of the spectral characteristics, e.g. of the short-term prediction coefficients
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques

Definitions

  • the present invention generally relates to predictive coding of information signals, and in particular, to an encoder and a method for predictively encoding a signal, to a decoder and a method for decoding a predictively encoded signal, to a system and a method for predictively encoding a signal and for decoding a predictively encoded version of the signal and to a predictively encoded information signal. Further embodiments of the present invention relate to a predictive coding scheme with variable reset times.
  • a predictive encoder encodes signals by predicting a current value of the signal to be encoded using the previous or preceding values of the signal. This prediction or presumption is sometimes accomplished by a weighted sum of the previous values of the signal.
  • the prediction weights or prediction coefficients are adjusted so that the difference between the predicted signal and the actual signal is minimized in a predetermined manner.
  • the prediction coefficients for example, are optimized with regard to the square of the prediction error. Only the differences between the predicted values and the actual values of the signal are transmitted to the decoder or receiver. These values are also referred to as residuals or prediction errors.
  • the actual signal value can be reconstructed in the receiver by using the same predictor (for example, identical to the predictor used in the encoder) and by adding the predicted value obtained in the same manner as in the encoder to the prediction error transmitted by the encoder.
  • the prediction weights are reset to a predefined state on the transmitter and receiver sides at times equal for both sides, a process also referred to as reset.
  • an encoder according to claim 1, a decoder according to one of the claims 13 to 15, a system according to claim 16, an encoded signal according to claim 17, a method for predictively encoding according to claim 19, a method for decoding according to one of the claims 20 to 22, a method for predictively encoding and decoding according to claim 23 or a computer program according to claim 24.
  • an encoder for predictively encoding a signal having a sequence of signal values comprises a predictor.
  • the predictor is configured for performing an adaptive prediction in dependence on the signal, and in dependence on one or more weighting values, to obtain predicted signal values.
  • the predictor is configured to reset the weighting values at times which are dependent on the signal.
  • the predictor is configured to adapt the weighting values to the signal between subsequent resets.
  • the basic idea underlying the present invention is that a good prediction performance can be achieved if an adaptive prediction is performed in dependence on the signal and in dependence on one or more weighting values, and if the weighting values are reset at times which are dependent on the signal. In this way, an increase in the prediction error resulting from a reset and/or an increase in a bitrate required to encode the prediction error with a desired accuracy, can be prevented or at least reduced, thereby allowing to better maintain the signal quality.
  • the predictor is configured to perform the resets of the weighting values at times which are adapted to the signal.
  • the encoder may be configured to selectively choose the reset times for resetting the weighting values. This essentially allows that a perceivability of distortions caused by the resets at the chosen reset times will be smaller than the perceivability of distortions which would be caused by resetting the weighting values at different times.
  • the encoder is configured to generate a residual signal based on differences between the signal values and the predicted signal values.
  • a provided bitstream may comprise encoded residual signal values, encoded with a variable bitrate.
  • the predictor may be configured to perform the resets of the weighting values at variable times. In this way, it can be assured that the resets will be performed at times at which there is a bitrate reserve which is larger than or equal to a predetermined bitrate reserve level. Consequently, it is possible to encode the residual signal values with a comparatively high accuracy making use of the available bitrate reserve. Accordingly, audible distortions can be kept small.
  • Fig. 1 shows a block diagram of an embodiment of an encoder for predictively encoding a signal
  • Fig. 2 shows a block diagram of a further embodiment of an encoder for predictively encoding a signal with resetting the weighting values in dependence on a current bitrate reserve; shows a block diagram of a further embodiment of an encoder for predictively encoding a signal with resetting the weighting values based on a signal analysis; shows a block diagram of a further embodiment of an encoder for predictively encoding a signal with resetting the weighting values based on a residual signal analysis; shows a block diagram of a further embodiment of an encoder for predictively encoding a signal with a filter structure and a provider for providing the weighting values; shows a schematic illustration of a concept for determining a reset time for resetting the weighting values in dependence on a current bitrate reserve according to an embodiment of the present invention; shows a schematic illustration of a concept for selectively determining reset times for resetting the weighting values based on a signal analysis according to a further embodiment of the present invention; illustrates a negative effect of
  • FIG. 10 shows a block diagram of a further embodiment of a decoder for decoding a predictively encoded signal with a reset time determinator using a current bitrate reserve
  • Fig. 11 shows a block diagram of an embodiment of an encoder/decoder system based on an adaptive prediction using synchronous resets.
  • Fig. 1 shows a block diagram of an embodiment of an encoder 100 for predictively encoding a signal 105.
  • the encoder 100 comprises a predictor 110.
  • the predictor 110 is configured for performing an adaptive prediction in dependence on the signal 105, s(n), and in dependence on one or more weighting values 111, co;, to obtain predicted signal values 115, s'(n).
  • the predictor 110 is configured to reset the weighting values 111 at times which are dependent on the signal 105.
  • the predictor 110 is configured to adapt the weighting values 111 to the signal 105 between subsequent resets.
  • the predicted signal value s'(n) is obtained by a weighted sum of the one or more previous values s(n-m) of the signal.
  • the weighting values are preferably adapted such that the prediction error will be kept comparatively small.
  • the weighting values may be adapted such that the predictor will take into account a periodicity or periodic signal portions, respectively.
  • the prediction error For changes of the signal, e.g. when the signal is non-stationary, the prediction error at first increases, which leads to the consequence that the weighting values will be adapted such that the prediction performed by the predictor will again be adapted to the changed signal. The prediction error then again decreases, provided that the signal now reaches, at least temporally, a stationary state.
  • the predictor 110 of the encoder 100 may be configured to perform the resets of the weighting values 111 at times which are adapted to the signal 105.
  • the encoder 110 may be configured to selectively choose the reset times for resetting the weighting values 111 such that a perceivability of distortions caused by the resets of the chosen reset times will be smaller than the perceivability of distortions which would be caused by resetting the weighting values 111 at different times.
  • Fig. 2 shows a block diagram of a further embodiment of an encoder 200 for predictively encoding a signal 105 with a resetting of the weighting values ⁇ ; in dependence on a current bitrate reserve 3 ⁇ 4.
  • the predictor 210 essentially comprises the predictor 210, which may correspond to the predictor 110 of the encoder 100 shown in Fig. 1.
  • the predictor 210 is configured to be operative on the signal 105 and to provide the predicted signal 115 at its output.
  • the predictor 210 may be controllable by a control signal so as to perform a resetting of the weighting values ooj in a controllable way. Therefore, in Fig. 2, the processing block 210 is indicated by "predictor with controllable Of reset".
  • the Fig. 2 the predictor 210, which may correspond to the predictor 110 of the encoder 100 shown in Fig. 1.
  • the predictor 210 is configured to be operative on the signal 105 and to provide the predicted signal 115 at its output.
  • the predictor 210 may be controllable by a control signal so as to perform a resetting of the weighting values ooj in a controllable way. Therefore, in Fig. 2, the processing block 210 is indicated by "pre
  • the subtractor 220 is placed after the predictor 210, wherein the subtractor 220 is configured to subtract the predicted values 115 s'(n) from the signal values 105, s(n) so that residual signal values ⁇ ( ⁇ ) are obtained at the output 225 of the subtractor 220.
  • the predictor 210 and the subtractor 220 may therefore constitute a residual signal generator 222 which is configured to determine the residual signal values 225 from an input signal 105.
  • the encoder 200 may also comprise a 6(n)-encoder 230 for encoding the residual signal values 225, ⁇ ( ⁇ ) to obtain encoded residual signal values 235, ⁇ '( ⁇ ).
  • the 5(n)-encoder 230 may, for example, be configured to use a variable bitrate, meaning that a variable number of bits per sample of the residual signal can be employed by the 6(n)-encoder 230 for the encoding process. For example, an increased bitrate can be allocated to a portion of a signal to be encoded essentially corresponding to a relatively high prediction error, while a reduced bitrate can be allocated to a different portion of the signal to be encoded essentially corresponding to a relatively low prediction error. This will be described in more detail below.
  • the 6(n)-encoder 230 may be configured to provide an indication 233 indicating a current bitrate reserve (or, equivalently, bit reserve) (Ro) which is essentially related to an encoding of the residual signal values 225 performed by the 5(n)-encoder 230.
  • the indication 233 indicating the current bitrate reserve (or bit reserve) Ro is received by a predictor controller 240 which may be configured to provide a control signal 241 for the predictor 210 having the controllable coi reset and, optionally, a reset information 245.
  • the predictor controller 240 may be set so that the control signal 241 (i.e.
  • ⁇ , ⁇ reset control signal will be based on a comparison of the current bitrate reserve Ro indicated by the indication 233 and a predetermined bitrate reserve level 239 (R p ).
  • the comparison performed by the predictor controller 240 may, for example, be such that the predictor 210 will be controlled by the a>; reset control signal 241 so as to perform a resetting of the weighting values for the adaptive prediction when the current bitrate reserve Ro exceeds, or is equal to, the predetermined bitrate reserve level (Ro > R p ). In this case, it can essentially be ensured that a sufficiently high bitrate reserve will be available for providing a bitstream to be derived from the input signal 105.
  • the encoder 200 may also comprise a bitstream formatter 250.
  • the bitstream formatter 250 may be configured to format the encoded residual signal values 235 and the reset information 245, to obtain a bitstream 255.
  • the bitstream 255 essentially represents the signal 105, s(n) and can be used for storage or transmission of the same.
  • the encoder 200 is essentially configured for obtaining a bitstream 255 representing the signal 105, wherein the predictor 210 is configured to perform the resets in dependence on a current bitrate reserve 233 Ro available for providing the bitstream 255.
  • the residual signal generator 222 of the encoder 200 as shown in Fig. 2 is configured to generate the residual signal ⁇ ( ⁇ ) based on differences between the signal values 105 and the predicted signal values 115, so that the bitstream 255 comprises encoded residual signal values 235, encoded with a variable bitrate (or number of bits per value of the residual signal).
  • the predictor 210 of the encoder 200 is configured to perform the resets of the weighting values at variable times, such that the resets will be performed at times at which there is a bitrate reserve 233 which is larger than or equal to a predetermined bitrate reserve level 239.
  • Fig. 3a shows a block diagram of a further embodiment of an encoder 300 for predictively encoding a signal 105 with resetting the weighting values ( ⁇ ;) based on a signal analysis.
  • the encoder 300 may comprise a residual signal generator 310, a ⁇ ( ⁇ )- encoder 330 and a bitstream formatter 350.
  • the processing blocks 310, 330, 350 of the encoder 300 shown in Fig. 3a essentially correspond to the processing blocks 222, 230, 250 of the encoder 200 shown in Fig. 2.
  • the residual signal generator 310 having a controllable Oi-reset may be configured to obtain residual signal values 325 ⁇ ( ⁇ ) from the signal values 105, s(n), such that a residual signal is provided, which is defined by the residual signal values 325, 6(n), and which is dependent on the signal 105, s(n).
  • the 6(n)-encoder 330 may be configured to encode the residual signal values 325, ⁇ ( ⁇ ) to obtain encoded residual signal values 335, ⁇ '( ⁇ ), such as by employing a variable bitrate which has been described before.
  • the encoder 300 may also comprise a signal analyzer 320, which may be implemented for analyzing the signal 105 to obtain an analysis result signal 305.
  • the signal analysis performed by the signal analyzer 320 can, for example, be used to determine signal characteristics of the signal 105 which are described by the analysis result signal 305, which can subsequently be used as a basis for a control of an ⁇ ,- reset operation performed within the residual signal generator 310.
  • the signal analyzer 320 of the encoder 300 may be configured to derive the signal characteristics of the signal 105 based on a determination of a tonality parameter, a transient behavior and/or a discontinuity behavior from the signal values s(n), to obtain the analysis result signal.
  • the signal analyzer 320 may be configured to obtain the signal characteristics, which are described by the analysis result signal 305, by determining whether an analysis region (for example, a given time interval) of the signal 105 includes a transient event or is non-stationary, i.e. whether the analysis region is characterized by a relatively sudden change in energy of the signal 105 in time, such as an increase or decrease in energy by more than e.g. 50 % from one temporal portion to the next temporal portion of the analysis region.
  • the transient detection can, for example, be based on a measure of the power contained in a high-frequency band of the signal 105 and a subsequent comparison of a temporal change in power with a predetermined threshold.
  • the signal analyzer 320 may be configured to determine the signal characteristics by calculating a tonality parameter from the signal 105, wherein the tonality parameter essentially indicates how the spectral energy is distributed in one or more frequency bands. In the case that the spectral energy is distributed relatively uniformly in a band, a rather non-tonal signal exists in this band, while in the case that the spectral energy is relatively strongly concentrated at a specific location in this band, a rather tonal signal exists for this band.
  • the signal analyzer 320 may be configured to determine the signal characteristics by verifying whether there is a step or discontinuity in the signal shape or signal envelope in the form of a sudden or abrupt change between subsequent signal values or adjacent temporal portions.
  • a predictor controller 340 is placed after the signal analyzer 320, which can especially be set to provide an coj-reset control signal 341 for the residual signal generator 310 based on the signal characteristics of the signal 105 which are described by the analysis result signal.
  • the predictor controller 340 may, for example, be set to control the residual signal generator 310 or its internal predictor by the co; -reset control signal 341, such that the resets of the weighting values co; will selectively be performed at times for which the signal has a certain characteristics (for example, at reset times at which, or in an environment of which, the signal is, for example, non-tonal, non-stationary, or comprises a step).
  • the predictor controller 340 may also provide the reset information 345 in dependence on the signal characteristics of the signal 105.
  • the bitstream formatter 350 is configured to format the encoded residual signal values 335 and the reset information 345 provided by the predictor controller 340, to obtain a bitstream 355 representing the signal s(n).
  • the encoder may be configured to perform a signal analysis of the signal s(n) and to selectively perform the resets in dependence on the signal analysis of the signal. Moreover, the encoder may be configured for obtaining a bitstream representing the signal and for providing a reset information encoded within the bitstream in dependence on the signal analysis.
  • Fig. 3 a Specific to the embodiment of Fig. 3 a is that by selectively performing the resets at selected reset times in dependence on the determination of the signal characteristics, as has been described above, negative effects on the perceived quality which may arise from performing the resets during portions of the signal not being, for example, non-tonal, non- stationary or not comprising a step (discontinuity), can essentially be prevented or reduced.
  • Fig. 3b shows a block diagram of a further embodiment of an encoder 360 for predictively encoding a signal 105 with resetting the weighting values ( ⁇ ) based on a residual signal analysis.
  • the encoder 360 of Fig. 3b essentially comprises the same processing block as the encoder 300 of Fig. 3 a. Therefore, identical blocks having similar implementations and/or functions are denoted by the same numerals and a repeated description of the corresponding processing blocks is omitted.
  • the signal analyzer 380 may be implemented for analyzing the residual signal 325, ⁇ ( ⁇ ), to obtain an analysis result signal 385.
  • the signal analysis performed by the signal analyzer 380 can, for example, be used to determine signal characteristics of the residual signal 325 which are described by the analysis result signal 385, which can subsequently be used as a basis for a control of an coj-reset operation performed within the residual signal generator 310.
  • the signal analyzer 380 of the encoder 360 may be configured to derive the signal characteristics of the residual signal 325 based on a determination of some analysis parameters from the residual signal values ⁇ ( ⁇ ), to obtain the analysis result signal.
  • the predictor controller 390 of the encoder 360 in Fig. 3b does not have an output for providing a reset information.
  • bitstream formatter 350 is configured to format the encoded residual signal values 335 only, to obtain a bitstream 355 representing the signal s(n). It is also to be noted here that in the embodiment of Fig. 3 b, probably some other analysis parameters can or have to be used which are different from those in the embodiment of Fig. 3a.
  • the encoder may be configured to perform a residual signal analysis of a residual signal 6(n) and to selectively perform the resets in dependence on the residual signal analysis of the residual signal. Moreover, the encoder may be configured for obtaining a bitstream representing the signal and comprising a sequence of encoded residual signal values ⁇ '( ⁇ ). Here, the encoder is configured to avoid an inclusion of a reset flag indicating a reset of the weighting values into the bitstream.
  • the encoder may be configured to determine a measure of a coding gain from the residual signal ⁇ ( ⁇ ) and to selectively perform the resets in dependence on the measure of the coding gain.
  • the resets of the weighting values should selectively be performed at times for which the coding gain is relatively small such as when falling below a certain threshold or the residual signal is relatively large such as when exceeding a certain threshold, respectively.
  • the predictor may therefore be configured to perform the resets at irregular times, which are dependent on the signal.
  • Fig. 4 shows a block diagram of a further embodiment of an encoder 400 for predictively encoding a signal 105 with a filter structure 405 and a provider 410 for providing the weighting values.
  • the encoder 400 comprises a residual signal generator 402, which includes the filter structure 405 and the ojj-provider 410.
  • the residual signal generator 402 and the filter structure 405 of the encoder 400 as shown in Fig. 4 may correspond to the residual signal generator 222 and the predictor 110 of the encoder 200 as shown in Fig. 2, respectively.
  • the filter structure 405 may consists of a plurality 420 of m serially connected delay line elements "z "1 ", which may be configured to successively delay the signal 105, s(n), so that a plurality of successively delayed signal values s(n - 1), s(n - 2), s(n - m) will be obtained at respective outputs of the plurality 420 of the delay line elements. Subsequently, the plurality of successively delayed signal values s(n - 1), s(n - 2), s(n - m) will be supplied to a plurality 422 of corresponding multipliers.
  • a plurality 424 of adders may be configured to add the weighted signal values of the plurality 423 of weighted signal values to obtain a predicted signal value s'(n) at an output 425 of the filter structure 405.
  • the residual signal generator 402 of the encoder 400 may also comprise a subtractor 430, which may correspond to the subtracter 220 of the encoder 200 shown in Fig. 2.
  • the subtractor 430 may be configured to subtract predicted signal values s'(n) at the output 425 of the filter structure 405 from the signal 105 to obtain residual signal values 435, ⁇ ( ⁇ ) at the output of the residual signal generator 402.
  • the residual signal values 435 may be further processed as in the previous embodiments. It can also be seen in Fig.
  • the coi-provider 410 is especially configured to provide the weighting values 415, ⁇ 1 ⁇ co 2j , co 3 , co m for the respective multipliers of the plurality 422 of multipliers.
  • the coj-provider 410 may provide the weighting values 415 based on a prediction error received from the output 435 of the residual signal generator 402 and it may also receive the signal 105, s(n).
  • the encoder 400 can essentially be used to perform the adaption of the weighting values based on the prediction error.
  • the coi-provider 410 of the encoder 400 may be controlled by the C0i-reset control signal 401, which may correspond to the control signal 241, 341 of the embodiments of Figs. 2, 3a or 3b, respectively, so that the weighting values 415 will be reset at times as indicated by the Oj-reset control signal 401.
  • the resets may be performed by setting the weighting values 415 to predefined values which may, for example, be the same for subsequent reset times, wherein the weighting values may represent an initial set of prediction coefficients.
  • Fig. 5 shows a schematic illustration 500 of a concept for determining a reset time 555 for resetting the weighting values in dependence on a current bitrate reserve (Ro) according to an embodiment of the present invention.
  • an exemplary residual signal 510 6(n) which may correspond to the residual signals 225; 325; 435 of Figs. 2; 3a; 3b; 4, respectively, is shown.
  • the corresponding (left) vertical axis 501 represents a residual signal level while the horizontal axis 502 is the time/sample axis.
  • the vertical axis 501 may, for example, represent the signal level using a non-linear scale.
  • Fig. 5 shows a schematic illustration 500 of a concept for determining a reset time 555 for resetting the weighting values in dependence on a current bitrate reserve (Ro) according to an embodiment of the present invention.
  • an exemplary residual signal 510 6(n) which may correspond to the residual signals 225; 325; 435 of Figs.
  • the exemplary residual signal 510 may have a typical signal shape, wherein a first portion 512 of the residual signal 510 may be close to or dither around zero, while a second consecutive portion 514 of the residual signal 510 may have a strongly varying signal shape being characterized by a relatively large range between maximum and minimum signal values of the residual signal 510.
  • the residual signal 510 may be encoded as described in previous embodiments (see, e.g. Figs. 2, 3a and 3b).
  • a dynamic range 511 corresponding to a maximally available bitrate, such as, for example, 8 bit per sample, may be used for the encoding.
  • the first signal portion 512 may, for example, be encoded with an initial (average) bitrate of 2 bit/sample, as exemplarily indicated by an arrowed line 513, while the second signal portion 514 may, for example, be encoded with a changed or increased bitrate of more than 2 bit/sample, as exemplarily indicated by the arrowed line 515.
  • the encoding may be performed such that a current bitrate (i.e. the per sample bitrate) will be sufficiently high for each sample of the residual signal 510, without requiring to scale or reduce the signal level of the same.
  • the current bitrate reserve 533 Ro will be present or available, wherein the change of the current bitrate reserve 533 Ro may be based on a difference between the average available bitrate (e.g. 4 bit/sample) and the actual bitrate (e.g. 2 bit/sample).
  • a current bitrate reserve signal 533 is exemplarily shown, which may correspond to the current bitrate reserve 233 Ro of the Fig. 2 embodiment. It is shown in Fig. 5 that the current bitrate reserve signal 533 may be increasing for the first signal portion 512, while it may be decreasing for the second signal portion 514, as indicated by an arrow 535.
  • This behavior of the current bitrate reserve signal 533 may essentially be due to the fact that a smaller or larger bitrate can be used for encoding the first or the second signal portion 512, 514, respectively.
  • the level of the current bitrate reserve signal 533 can be represented by the (right) vertical axis 512 having, for example, a linear scale.
  • the reset time 555 for resetting the weighting values of the prediction may be determined checking whether the condition Ro > R p is fulfilled, wherein the reset time 555 essentially corresponds to a time at which a level of the current bitrate reserve Ro is larger than or equal to a predetermined threshold R p .
  • This measure essentially ensures that a large enough bitrate reserve will be available at all times for providing the bitstream, even in case the prediction error is high. In particular, it is ensured that a sufficient bitrate reserve is available shortly after a reset, to be able to encode the residual signal, which typically takes large values shortly after a reset, with good accuracy.
  • Fig. 6 shows a schematic illustration 600 of a concept for selectively determining reset times to, t 1 ⁇ t 2 for resetting the weighting values based on a signal analysis according to a further embodiment of the present invention.
  • the signal analysis may be performed to obtain a plurality of reset times to, ti, t 2 from the signal, which may be the signal 105, s(n), or the residual signal 325, ⁇ ( ⁇ ), in the previous embodiments, wherein the reset times to, ti, t 2 used for resetting the weighting values of the prediction essentially correspond to specific times obtained from the signal analysis.
  • t ls t 2 may be irregular, i.e. a first time period Ati defined by the times to and ti and a second time period ⁇ 2 defined by the times and t 2 may be different (At ! ⁇ At 2 ). Therefore, the resets may not have to be performed at predetermined fixed time intervals, but can preferably be performed at irregular times dependent on or adapted to the signal.
  • the signal analysis may especially be used to identify characteristic events or conditions within the signal such as non-tonal or non-stationary events or conditions or steps/discontinuities or the like. For illustration, in a first panel 610 of Fig.
  • an example signal or residual signal 615 is shown, which is characterized by a plurality 619 of transient events occurring at the specific times to, t l5 1 2 , while in a second panel 620 an example signal or residual signal 625 is shown, which is characterized by a plurality 629 of steps occurring at these specific times.
  • the vertical axes 601, 603 and the horizontal axes 602, 604 of the first and the second panel 610, 620 correspond to the signal level (or signal) or the time/sample, respectively.
  • Fig. 7a illustrates a negative effect of performing a reset within an exemplary well predicable signal 705.
  • the well predictable signal 705 which is indicated by a continuous line, may be characterized in that it can be well predicted by using an adaptive prediction, such as described previously.
  • the well predictable signal 705 may, for example, be an approximately periodic signal. It is particularly shown in the first panel 710 of Fig. 7a that the signal shape of a predicted signal 707, s'(n) as indicated by a dotted line may approximately fit to that of the original signal 705, s(n) within a first time portion 712, while it may strongly deviate from the original signal within a second time portion 714.
  • the first time portion 712 can be defined by an initial time to and a reset time t re set, while the second time portion 714 can be defined by the reset time t reset as a starting point.
  • a rather strong deviation between the original signal 705, s(n) and the predicted signal 707, s'(n) during the second time portion 714 may originate from performing a reset of the weighting values at the reset time t reS et being located within a well-predicable signal portion. This is because for the first time portion 712, the weighting values (co op t) may be in an optimized state, while for the second time portion 714, the weighting values (ro non- opt) may be in a non-optimized state, i.e.
  • a second panel 720 of Fig. 7a The negative effect of this reset operation is illustrated in a second panel 720 of Fig. 7a.
  • is shown, which essentially corresponds to the difference between the original signal 705 s(n) and the predicted signal 707, s'(n) shown in the first panel 710 of Fig. 7a.
  • the magnitude 725 of the residual signal nearly diminishes between to and t reS et> while it is characterized by relatively large values starting from the reset time t reS et.
  • Fig. 7b illustrates this negative effect by the example of a further well predictable signal 755. As shown in a first panel 750 of Fig.
  • the well predictable signal 755 may be a periodic and steadily decaying signal, which can be well predicted by a predictive signal 757 within a first time portion 752 in which optimized weighting values (co o t) are available, while it may strongly deviate from the predicted signal 757 within a second time portion 754 in which optimized weighting values (oo n0 n-opt) are not available because default weighting values are used in response to the reset.
  • An exemplary resulting residual signal or its magnitude 775 is depicted in a second panel 760 of Fig. 7b, explicitly showing the abrupt change of the residual signal around the reset time t reS et- Consequently, in the example of Fig. 7b, perceivable artifacts/distortions will arise leading to a reduction of the signal quality as in the example of Fig. 7a.
  • Fig. 8 shows a block diagram of an embodiment of a decoder 800 for decoding a predictively encoded signal 805 using a reset information 819.
  • the predictively encoded signal 805 may comprise a sequence of residual signal values 815, 5(n) and a reset information 819 encoded within a bitstream.
  • the predictively encoded signal 805 in the form of a bitstream may correspond to a bitstream having been obtained by an encoder according to the previous embodiments, such as the bitstreams 255 or 355 of the encoders 200 or 300, respectively, representing the signal s(n). Referring to the Fig.
  • the decoder 800 essentially comprises a bitstream parser 810 and a predictor 820.
  • the bitstream parser 810 may be configured for obtaining the residual signal values 815 ⁇ ( ⁇ ) and the reset information 819 from the bitstream 805.
  • the bitstream parser 810 may also comprise a 5(n)-decoder for decoding encoded residual signal values ⁇ '( ⁇ ) subsequent to obtaining the encoded residual signal values ⁇ '( ⁇ ) from the bitstream 805.
  • the predictor 820 may be configured to perform an adaptive prediction (block 821) to obtain predicted signal values 825, s'(n) and to add the predicted signal values 825 s'(n) and the residual signal values 815, ⁇ ( ⁇ ) by using an adding block 830 to obtain decoded signal values 835, s*(n).
  • the predictor 820 may be configured to reset one or more weighting values 811, CO, for the adaptive prediction using the reset information 819.
  • the predictor 820 may be configured to adapt the weighting values to the decoded signal 835, s*(n) between subsequent resets.
  • the predictor 820 makes use of the provided reset information 819, which has originally been obtained by an encoder such as described in the previous embodiments, and which has been included into the bitstream 805 by the encoder.
  • Fig. 9 shows a block diagram of a further embodiment 900 of a decoder for decoding a predictively encoded signal 905 with a reset time determinator 950 based on a signal analysis.
  • the signal 905 may comprise a sequence of residual signal values 915, ⁇ ( ⁇ ) encoded within a bitstream and may be provided by one of the previously described encoders.
  • the decoder 900 comprises a bitstream parser including a 6(n)-decoder 910, a predictor 920 and a reset time determinator 950.
  • the bitstream parser 910 may be configured for obtaining the residual signal values 915, ⁇ ( ⁇ ) from the bitstream.
  • the bitstream parser 910 may extract encoded residual signal values ⁇ '( ⁇ ) from the bitstream and subsequently decode the encoded residual signal values ⁇ '( ⁇ ) by use of a 0(n)-decoder to obtain the residual signal values ⁇ ( ⁇ ).
  • the predictor 920 of the decoder 900 shown in Fig. 9 may be configured to perform an adaptive prediction (block 921) to obtain predicted signal values 925, s'(n) and to add the predicted signal values 925 s'(n) and the residual signal values 915, ⁇ ( ⁇ ) to obtain decoded signal values 935, s*(n) by using an adding block 930.
  • an adaptive prediction block 921
  • the predictor 920 of the decoder 900 shown in Fig. 9 may be configured to perform an adaptive prediction (block 921) to obtain predicted signal values 925, s'(n) and to add the predicted signal values 925 s'(n) and the residual signal values 915, ⁇ ( ⁇ ) to obtain decode
  • the reset time determinator 950 may be configured to determine reset times in dependence on the residual signal values 915, ⁇ ( ⁇ ).
  • the reset time determinator 950 may be operative on the residual signal values 915 to perform a signal analysis of the same, such that a (Oj-reset control signal 919 will be obtained at the output of the reset time determinator 950.
  • the thus obtained coi-reset control signal 919 may be used to control the predictor 920 for performing an adaptive prediction (block 921) in response to the ooj-reset control signal 919.
  • the signal analysis performed by the reset time determinator 950 can, for example, be based on signal characteristics of the analyzed signal, such as being characterized as non-tonal, non-stationary, or comprising a step.
  • the predictor 920 of the decoder 900 may be configured to reset one or more weighting values 911, co, for the adaptive prediction at the determined reset times.
  • the predictor 920 of the decoder 900 may be configured to adapt the weighting values 911 to the decoded signal between subsequent resets.
  • Fig. 9 shows the decoder with determination of the reset times based on a signal analysis.
  • the analysis should not be performed on the basis of the reconstructed signal but on the basis of the error signal, the latter being referred to as the residual signal.
  • the signal analysis is to be performed on the basis of the error signal only.
  • the reset time determinator 950 were configured to perform a signal analysis of the decoded signal values 935, this would lead to asynchronous resets in the case of transmitting errors, which could most probably not be synchronized again.
  • Fig. 10 shows a block diagram of a further embodiment of a decoder 1000 for decoding a predictively encoded signal 905 with a reset time determinator 1020 using (or evaluating) a current bitrate reserve 1011, 3 ⁇ 4.
  • the decoder 1000 of Fig. 10 essentially comprises the same processing block as the decoder 900 of Fig. 9. Therefore, identical blocks having similar implementations and/or functions are denoted by the same numerals and a repeated description of the corresponding processing blocks is omitted.
  • the reset time determinator 1020 may be configured to determine reset times in dependence on a current bitrate reserve 1011, R of a bitstream representing the predictively encoded signal 905.
  • the decoder 1000 may comprise a 6(n)-encoder for encoding residual signal values 915, ⁇ ( ⁇ ) provided by the bitstream parser 910 using a variable bitrate.
  • a current bitrate reserve indication 1011 will be obtained.
  • the processing performed by the 6(n)-encoder 1010 in the Fig. 10 embodiment may correspond to (or be inverse to) the processing performed by the ⁇ ( ⁇ )- encoder 230 of the encoder 200 in the Fig. 2 embodiment.
  • the predictor 920 in the Fig. 10 embodiment works as in the Fig. 9 embodiment to finally obtained decoded signal values 935.
  • FIG. 11 shows a block diagram of an embodiment of an encoder/decoder system 1100 based on an adaptive prediction using synchronous resets.
  • a decoder 1120 On the decoder side of the encoder/decoder system 1100, a decoder 1120 is shown, which may correspond to the decoders 800; 900; 1000 of Figs. 8; 9; 10, respectively. Therefore, a repeated description of the decoder 1120 of Fig. 11 is omitted here.
  • the decoder 1120 of Fig. 11 may be operative on a predictively encoded version of the signal 1105 having a sequence of residual signal values ⁇ ( ⁇ ) encoded within a bitstream to perform an adaptive prediction, so that decoded signal values 1125, s*(n) will be obtained.
  • the predictively encoded version of the signal 1105 and the decoded signal values 1125 may correspond to the predictively encoded signal 805, 905 or the decoded signal values 835; 935 of Figs. 8; 9; 10, respectively.
  • an encoder 1110 is shown, which may correspond to the encoders 200; 300; 360 of Figs. 2; 3a; 3b, respectively. Therefore, a repeated description of the encoder 110 of Fig. 11 is omitted here.
  • the sequence of signal values 1101 and the bitstream 1115 of Fig. 11 may correspond to the signal 105 or the bitstream 255; 355, respectively.
  • the bitstream may be transmitted from the encoder 1110 to the decoder 1120, wherein the bitstream may include reset information, such as the reset information 245; 345; of Figs. 2; 3a, respectively, and wherein the reset information may be used by the decoder 1120 for the adaptive prediction process.
  • reset information such as the reset information 245; 345; of Figs. 2; 3a, respectively, and wherein the reset information may be used by the decoder 1120 for the adaptive prediction process.
  • the encoder 1110 and the decoder 1120 may optionally be configured to be synchronized by using a synchronization control signal 1135 provided by a synchronization controller 1130.
  • the encoder 1110 and the decoder 1120 of the encoder/decoder system 1100 can be synchronized by the synchronization control signal 1135, so that the weighting values for the adaptive prediction are reset at synchronous times. Therefore, the predictors of the encoder 1110 and the decoder 1120 can be set to perform the resets synchronously.
  • the reset times can be determined by a signal analysis in the encoder and the reset information can be transmitted to the decoder.
  • the reset times can be determined by a signal analysis in the encoder and in parallel, the (identical) reset times can be determined by a signal analysis in the decoder, independently of the encoder.
  • the signal analysis in the encoder may preferably be performed on the basis of the input signal s(n), since the parameters for fixing or determining the reset times (e.g., parameters describing tonality, transient behavior, discontinuity etc.) can be determined with a higher reliability from the input signal s(n).
  • the parameters for fixing or determining the reset times e.g., parameters describing tonality, transient behavior, discontinuity etc.
  • the signal analysis for the determination of the reset times in the encoder may be required to perform the signal analysis for the determination of the reset times in the encoder as well as in the decoder on the basis of the error signal ⁇ ( ⁇ ), so as to ensure the recovery of the synchronization of the reset times in case of possible transmission errors on the decoder side.
  • a measure of a coding gain can first be determined from the error or residual signal ⁇ ( ⁇ ). Then, the resets of the weighting values can selectively be performed in dependence on the measure of the coding gain.
  • the coding gain is due to a prediction analysis such as performed by the encoder 360 of Fig. 3b. In case the coding gain of the prediction is relatively large (or the residual signal is relatively small), a reset of the weighting values will have a strong effect on the coding gain thus resulting in a reduction thereof, thereby leading to clearly perceivable distortions of the audio quality.
  • the relatively large coding gain or the relatively small residual signal means that the prediction coefficients or weighting values are adapted to the signal very well.
  • the coding gain of the prediction is relatively small (or the residual signal is relatively large)
  • a reset of the weighting values will not have a significant effect on the coding gain thus resulting in a negligible reduction thereof, thereby leading to nearly inaudible or less perceivable distortions of the audio quality due to the reset.
  • the resets of the weighting values should selectively be performed at times for which the coding gain is relatively small such as when falling below a certain threshold or the residual signal is relatively large such as when exceeding a certain threshold, respectively. It is also pointed out here that in any case or at least in some cases, the determination of the reset times has to be performed synchronously in the encoder and decoder. In case the determination of the reset times were performed on the basis of the reconstructed signal, in the decoder, the reset time would only be correctly analyzed and performed, if no errors were generated during the transmission of the bitstream.
  • the residual signal and the predicted signal Fig.
  • the signal transmitted from the encoder 1110 to the decoder 1120 in the embodiment of Fig. 11 may be a predictively encoded information signal, comprising a prediction error information signal representing differences between actual signal values s(n) and predicted signal values s'(n).
  • the predicted signal values s'(n) can be predicted in accordance with one or more weighting values co;, while the weighting values may be adapted to the signal between subsequent resets.
  • the predictively encoded information signal may also comprise a reset information describing times for which the weighting values can be reset.
  • the reset information of the predictively encoded information signal may specifically describe irregular times.
  • the present invention has been described in the context of block diagrams where the blocks represent actual or logical hardware components, the present invention can also be implemented by a computer-implemented method. In the latter case, the blocks represent corresponding method steps where these steps stand for the functionalities performed by corresponding logical or physical hardware blocks.
  • aspects have been described in the context of an apparatus, it is clear that these aspects also represent a description of the corresponding method, where a block or device corresponds to a method step or a feature of a method step. Analogously, aspects described in the context of a method step also represent a description of a corresponding block or item or feature of a corresponding apparatus.
  • Some or all of the method steps may be executed by (or using) a hardware apparatus, like for example, a microprocessor, a programmable computer or an electronic circuit. In some embodiments, some one or more of the most important method steps may be executed by such an apparatus.
  • the inventive encoded information signal can be stored on a digital storage medium or can be transmitted on a transmission medium such as a wireless transmission medium or a wired transmission medium such as the Internet.
  • embodiments of the invention can be implemented in hardware or in software.
  • the implementation can be performed using a digital storage medium, for example a floppy disk, a DVD, a Blu-Ray, a CD, a ROM, a PROM, an EPROM, an EEPROM or a FLASH memory, having electronically readable control signals stored thereon, which cooperate (or are capable of cooperating) with a programmable computer system such that the respective method is performed. Therefore, the digital storage medium may be computer readable.
  • Some embodiments according to the invention comprise a data carrier having electronically readable control signals, which are capable of cooperating with a programmable computer system, such that one of the methods described herein is performed.
  • embodiments of the present invention can be implemented as a computer program product with a program code, the program code being operative for performing one of the methods when the computer program product runs on a computer.
  • the program code may for example be stored on a machine readable carrier.
  • inventions comprise the computer program for performing one of the methods described herein, stored on a machine readable carrier.
  • an embodiment of the inventive method is, therefore, a computer program having a program code for performing one of the methods described herein, when the computer program runs on a computer.
  • a further embodiment of the inventive methods is, therefore, a data carrier (or a digital storage medium, or a computer-readable medium) comprising, recorded thereon, the computer program for performing one of the methods described herein.
  • the data carrier, the digital storage medium or the recorded medium are typically tangible and/or non- transitionary.
  • a further embodiment of the inventive method is, therefore, a data stream or a sequence of signals representing the computer program for performing one of the methods described herein.
  • the data stream or the sequence of signals may for example be configured to be transferred via a data communication connection, for example via the Internet.
  • a further embodiment comprises a processing means, for example a computer, or a programmable logic device, configured to or adapted to perform one of the methods described herein.
  • a processing means for example a computer, or a programmable logic device, configured to or adapted to perform one of the methods described herein.
  • a further embodiment comprises a computer having installed thereon the computer program for performing one of the methods described herein.
  • a further embodiment according to the invention comprises an apparatus or a system configured to transfer (for example, electronically or optically) a computer program for performing one of the methods described herein to a receiver.
  • the receiver may, for example, be a computer, a mobile device, a memory device or the like.
  • the apparatus or system may, for example, comprise a file server for transferring the computer program to the receiver .
  • a programmable logic device for example a field programmable gate array
  • a field programmable gate array may cooperate with a microprocessor in order to perform one of the methods described herein.
  • the methods are preferably performed by any hardware apparatus.
  • Embodiments of the present invention provide a concept for predictively coding a signal by predicting a current value of the signal using a weighting of the values of a past signal, wherein the weighting values can continuously be adapted to the signal, and wherein the weighting values can be synchronized (for example by performing a reset to a default value) within a transmitter and a receiver at times which are adapted to the signal.
  • Embodiments of the present invention also provide a concept for predictive signal coding, wherein the times at which the just-mentioned synchronization can occur may be chosen in dependence on the signal, such as at times for which a reserve of bitrate is detected or for which a step, a non-tonal or a non-stationary event or temporal portion is detected within the signal.
  • embodiments according to the present invention apply a predictive coding scheme with variable reset times, wherein the weighting values for an adaptive prediction can continuously be adapted to the signal, so that a difference between the predicted signal and an actual signal will be minimized.
  • the adaption of the weighting values within a transmitter can be performed on the basis of a prediction error.
  • the weighting values can be adapted to the signal.
  • embodiments according to the present invention are based on an adaptive reset time that can be used for predictor-based codecs.
  • An advantage of the present invention is that by using irregular time intervals for the resets of the weighting values, an increase in the prediction error, which would be due to a non- ideal adaption of the weighting values to the signal, can efficiently be prevented or reduced. Moreover, the present invention is advantageous because the prediction error can be represented more precisely. In particular, it is avoided that a reset may, for example, be performed at a time for which the signal is very tonal or stationary (e.g. in case of a tone of an organ pipe), so that perceivable click-like artifacts that would be caused by such a reset can efficiently be suppressed.
  • the resets can be performed at times, which are adapted to the signal. The resets are then less or no longer perceivable. These times are located in regions, where the coder detects a reserve of bitrate or where the signal is, e.g., non-tonal or non-stationary.
  • the present invention is based on aperiodic times for the resets and the usage of other parameters for the determination of times at which the resets are becoming non-perceivable.
  • the present invention is advantageous, because click-like noises that are due to resets can be prevented. In particular, it can be avoided that the prediction performance will reduce or degrade due to a reset, which would be the case if the weighting values of the predictors were not ideally adapted to the signal.
  • the present invention does not make a reset unnecessary, but allows to perform the resets at times at which resulting distortions/interferences are not or at least less perceivable.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Quality & Reliability (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

An encoder (100) for predictively encoding a signal (105) having a sequence of signal values (s(n)) comprises a predictor (110) for performing an adaptive prediction in dependence on the signal (105) (s(n)), and in dependence on one or more weighting values (111) (ω1), to obtain predicted signal values (115) (s'(n)), wherein the predictor (110) is configured to reset the weighting values (111) at times which are dependent on the signal (105), and wherein the predictor (110) is configured to adapt the weighting values (111) to the signal (105) between subsequent resets.

Description

Encoder and Method for Predictively Encoding, Decoder and Method for Decoding, System and Method for Predictively Encoding and Decoding and Predictively
Encoded Information Signal
Description
Technical Field The present invention generally relates to predictive coding of information signals, and in particular, to an encoder and a method for predictively encoding a signal, to a decoder and a method for decoding a predictively encoded signal, to a system and a method for predictively encoding a signal and for decoding a predictively encoded version of the signal and to a predictively encoded information signal. Further embodiments of the present invention relate to a predictive coding scheme with variable reset times.
Background of the Invention
A predictive encoder (transmitter) encodes signals by predicting a current value of the signal to be encoded using the previous or preceding values of the signal. This prediction or presumption is sometimes accomplished by a weighted sum of the previous values of the signal. The prediction weights or prediction coefficients are adjusted so that the difference between the predicted signal and the actual signal is minimized in a predetermined manner. The prediction coefficients, for example, are optimized with regard to the square of the prediction error. Only the differences between the predicted values and the actual values of the signal are transmitted to the decoder or receiver. These values are also referred to as residuals or prediction errors. The actual signal value can be reconstructed in the receiver by using the same predictor (for example, identical to the predictor used in the encoder) and by adding the predicted value obtained in the same manner as in the encoder to the prediction error transmitted by the encoder.
In the case of transmitting errors, i.e. if incorrectly transmitted prediction differences or errors occur, prediction will no longer be the same on the transmitter and receiver sides. Incorrect values of the decoded signal will be reconstructed due to the incorrectly transmitted prediction errors on the receiver side. In order to obtain resynchronization or adjustment between transmitter and receiver, the prediction weights are reset to a predefined state on the transmitter and receiver sides at times equal for both sides, a process also referred to as reset. In US 7,386,446 B2, it is described that if an adaptive prediction algorithm controllable by a speed coefficient is started from to operate with a first adaption speed and a first adaption precision and an accompanying first prediction precision in the case that the speed coefficient has a first value and to operate with a second, compared to the first one, lower adaption speed and a second, but compared to the first one, higher precision in the case that the speed parameter has a second value, the adaption durations occurring after the reset times where the prediction errors are at first increased due to the, not yet, adapted prediction coefficients may be decreased by at first setting the speed parameter to the first value and, after a while, to a second value. After the speed parameter has again been set to the second value after a predetermined duration after the reset times, the prediction errors and thus the residuals to be transmitted are more optimized or smaller than would be possible with the first speed parameter values.
In S. Wabnik, G. Schuller, F. Kraemer: "An Error Robust Ultra Low Delay Audio Coder Using an MA Prediction Model", ICASSP 2009, April 19-24, 2009, Taipei, Taiwan, two prediction structures for predictive perceptual audio coding in the context of the Ultra Low Delay (ULD) coding scheme are described. One structure is based on the commonly used AR signal model, leading to an IIR predictor in the decoder. The other structure is based on an MA signal model, leading to an FIR predictor in the decoder. In S. Wabnik, Gerald Schuller, J. Hirschfeld, U. Kraemer: "Packet Loss Concealment in Predictive Audio Coding", 2005 IEEE Workshop on Applications of Signal Processing Audio and Acoustics, Mohonk Mountain House, New Paltz, New York, Oct. 16-19, 2005, several concealment strategies for packet losses in the context of a low delay predictive audio coder are described.
In order to facilitate the understanding of predictive coding of information signals, reference is also made to the following documents:
J. Makhoul. Linear Prediction: A Tutorial Review, PROCEEDINGS OF THE IEEE, Vol. 63, NO. 4, April 1975; Ali H. Sayed: "Fundamentals of Adaptive Filtering", Wiley-IEEE Press, 2003; and Simon S. Haykin, "Adaptive Filter Theory", Prentice Hall International, 2001. However, a general problem of know solutions is that because of such resets, the prediction errors will increase at the reset times. A larger prediction error, in turn, results in an increased required bitrate for transmission. In the case that only a limited bitrate amount is available, such as in 'Constant Bitrate Coding', the signal quality will be reduced (e.g., due to distortions or noise).
Therefore, it is an object of the present invention to provide a predictive encoding and/or decoding scheme which allows for an improved tradeoff between prediction reliability, required bitrate and signal quality.
Summary of the Invention
This object is achieved by an encoder according to claim 1, a decoder according to one of the claims 13 to 15, a system according to claim 16, an encoded signal according to claim 17, a method for predictively encoding according to claim 19, a method for decoding according to one of the claims 20 to 22, a method for predictively encoding and decoding according to claim 23 or a computer program according to claim 24.
According to an embodiment of the present invention, an encoder for predictively encoding a signal having a sequence of signal values comprises a predictor. The predictor is configured for performing an adaptive prediction in dependence on the signal, and in dependence on one or more weighting values, to obtain predicted signal values. Here the predictor is configured to reset the weighting values at times which are dependent on the signal. Moreover, the predictor is configured to adapt the weighting values to the signal between subsequent resets.
The basic idea underlying the present invention is that a good prediction performance can be achieved if an adaptive prediction is performed in dependence on the signal and in dependence on one or more weighting values, and if the weighting values are reset at times which are dependent on the signal. In this way, an increase in the prediction error resulting from a reset and/or an increase in a bitrate required to encode the prediction error with a desired accuracy, can be prevented or at least reduced, thereby allowing to better maintain the signal quality. Alternatively, or in addition, it is possible to choose the reset time such that it is possible to encode even a comparatively large prediction error with good accuracy under given bitrate constraints.
According to further embodiments, the predictor is configured to perform the resets of the weighting values at times which are adapted to the signal. In addition, the encoder may be configured to selectively choose the reset times for resetting the weighting values. This essentially allows that a perceivability of distortions caused by the resets at the chosen reset times will be smaller than the perceivability of distortions which would be caused by resetting the weighting values at different times.
According to further embodiments, the encoder is configured to generate a residual signal based on differences between the signal values and the predicted signal values. As a result, a provided bitstream may comprise encoded residual signal values, encoded with a variable bitrate. In addition, the predictor may be configured to perform the resets of the weighting values at variable times. In this way, it can be assured that the resets will be performed at times at which there is a bitrate reserve which is larger than or equal to a predetermined bitrate reserve level. Consequently, it is possible to encode the residual signal values with a comparatively high accuracy making use of the available bitrate reserve. Accordingly, audible distortions can be kept small.
Further embodiments of the present invention provide decoders for decoding a predictively encoded signal having a sequence of residual signal values. According to a further embodiment of the present invention, a system for predictively encoding a signal having a sequence of signal values and for decoding a predictively encoded version of the signal having a sequence of residual signal values is provided.
Further embodiments of the present invention provide methods for predictively encoding a signal and for decoding a predictively encoded version of the signal.
Brief Description of the Figures
In the following, embodiments of the present invention will be explained with reference to the accompanying drawings, in which:
Fig. 1 shows a block diagram of an embodiment of an encoder for predictively encoding a signal;
Fig. 2 shows a block diagram of a further embodiment of an encoder for predictively encoding a signal with resetting the weighting values in dependence on a current bitrate reserve; shows a block diagram of a further embodiment of an encoder for predictively encoding a signal with resetting the weighting values based on a signal analysis; shows a block diagram of a further embodiment of an encoder for predictively encoding a signal with resetting the weighting values based on a residual signal analysis; shows a block diagram of a further embodiment of an encoder for predictively encoding a signal with a filter structure and a provider for providing the weighting values; shows a schematic illustration of a concept for determining a reset time for resetting the weighting values in dependence on a current bitrate reserve according to an embodiment of the present invention; shows a schematic illustration of a concept for selectively determining reset times for resetting the weighting values based on a signal analysis according to a further embodiment of the present invention; illustrates a negative effect of performing a reset within an exemplary well predictable signal; illustrates a negative effect of performing a reset within a further exemplary well predictable signal; shows a block diagram of an embodiment of a decoder for decoding a predictively encoded signal using a reset information; shows a block diagram of a further embodiment of a decoder for decoding a predictively encoded signal with a reset time determinator based on a signal analysis; Fig. 10 shows a block diagram of a further embodiment of a decoder for decoding a predictively encoded signal with a reset time determinator using a current bitrate reserve; and Fig. 11 shows a block diagram of an embodiment of an encoder/decoder system based on an adaptive prediction using synchronous resets.
Detailed Description of the Embodiments
Fig. 1 shows a block diagram of an embodiment of an encoder 100 for predictively encoding a signal 105. The signal 105 may, for example, be an information signal, such as an audio signal or a video signal, which consists of a sequence of signal values s(n), n = 1, 2, 3,..., such as audio or video signal values. As shown in Fig. 1, the encoder 100 comprises a predictor 110. The predictor 110 is configured for performing an adaptive prediction in dependence on the signal 105, s(n), and in dependence on one or more weighting values 111, co;, to obtain predicted signal values 115, s'(n). In particular, the predictor 110 is configured to reset the weighting values 111 at times which are dependent on the signal 105. Moreover, the predictor 110 is configured to adapt the weighting values 111 to the signal 105 between subsequent resets.
In embodiments, the predictor 110 is configured to perform the prediction by determining a predicted signal value s'(n) from one or more previous signal values s(n-m), m = 1, 2, 3, n - 1, for a current signal value s(n). Here, the predicted signal value s'(n) is obtained by a weighted sum of the one or more previous values s(n-m) of the signal.
In embodiments, the weighting values are preferably adapted such that the prediction error will be kept comparatively small. For example, the weighting values may be adapted such that the predictor will take into account a periodicity or periodic signal portions, respectively. For changes of the signal, e.g. when the signal is non-stationary, the prediction error at first increases, which leads to the consequence that the weighting values will be adapted such that the prediction performed by the predictor will again be adapted to the changed signal. The prediction error then again decreases, provided that the signal now reaches, at least temporally, a stationary state.
According to further embodiments, the predictor 110 of the encoder 100 may be configured to perform the resets of the weighting values 111 at times which are adapted to the signal 105. In particular, the encoder 110 may be configured to selectively choose the reset times for resetting the weighting values 111 such that a perceivability of distortions caused by the resets of the chosen reset times will be smaller than the perceivability of distortions which would be caused by resetting the weighting values 111 at different times. Fig. 2 shows a block diagram of a further embodiment of an encoder 200 for predictively encoding a signal 105 with a resetting of the weighting values ω; in dependence on a current bitrate reserve ¾. The encoder 200 of Fig. 2 essentially comprises the predictor 210, which may correspond to the predictor 110 of the encoder 100 shown in Fig. 1. In the embodiment of Fig. 2, the predictor 210 is configured to be operative on the signal 105 and to provide the predicted signal 115 at its output. Here, the predictor 210 may be controllable by a control signal so as to perform a resetting of the weighting values ooj in a controllable way. Therefore, in Fig. 2, the processing block 210 is indicated by "predictor with controllable Of reset". In the Fig. 2 embodiment, the subtractor 220 is placed after the predictor 210, wherein the subtractor 220 is configured to subtract the predicted values 115 s'(n) from the signal values 105, s(n) so that residual signal values δ(η) are obtained at the output 225 of the subtractor 220. The predictor 210 and the subtractor 220 may therefore constitute a residual signal generator 222 which is configured to determine the residual signal values 225 from an input signal 105. As depicted in Fig. 2, the encoder 200 may also comprise a 6(n)-encoder 230 for encoding the residual signal values 225, δ(η) to obtain encoded residual signal values 235, δ'(η). Here, the 5(n)-encoder 230 may, for example, be configured to use a variable bitrate, meaning that a variable number of bits per sample of the residual signal can be employed by the 6(n)-encoder 230 for the encoding process. For example, an increased bitrate can be allocated to a portion of a signal to be encoded essentially corresponding to a relatively high prediction error, while a reduced bitrate can be allocated to a different portion of the signal to be encoded essentially corresponding to a relatively low prediction error. This will be described in more detail below.
It can also be seen in Fig. 2 that the 6(n)-encoder 230 may be configured to provide an indication 233 indicating a current bitrate reserve (or, equivalently, bit reserve) (Ro) which is essentially related to an encoding of the residual signal values 225 performed by the 5(n)-encoder 230. The indication 233 indicating the current bitrate reserve (or bit reserve) Ro is received by a predictor controller 240 which may be configured to provide a control signal 241 for the predictor 210 having the controllable coi reset and, optionally, a reset information 245. In particular, the predictor controller 240 may be set so that the control signal 241 (i.e. ω,· reset control signal) will be based on a comparison of the current bitrate reserve Ro indicated by the indication 233 and a predetermined bitrate reserve level 239 (Rp). The comparison performed by the predictor controller 240 may, for example, be such that the predictor 210 will be controlled by the a>; reset control signal 241 so as to perform a resetting of the weighting values for the adaptive prediction when the current bitrate reserve Ro exceeds, or is equal to, the predetermined bitrate reserve level (Ro > Rp). In this case, it can essentially be ensured that a sufficiently high bitrate reserve will be available for providing a bitstream to be derived from the input signal 105. In particular, it will be ensured that the residual signal, which typically takes comparatively large values shortly after a reset, can be encoded with good accuracy due to the availability of a sufficiently large bitrate reserve. Referring to the Fig. 2 embodiment, the encoder 200 may also comprise a bitstream formatter 250. In particular, the bitstream formatter 250 may be configured to format the encoded residual signal values 235 and the reset information 245, to obtain a bitstream 255. Here, the bitstream 255 essentially represents the signal 105, s(n) and can be used for storage or transmission of the same.
Therefore, in the embodiment of Fig. 2, the encoder 200 is essentially configured for obtaining a bitstream 255 representing the signal 105, wherein the predictor 210 is configured to perform the resets in dependence on a current bitrate reserve 233 Ro available for providing the bitstream 255. Moreover, the residual signal generator 222 of the encoder 200 as shown in Fig. 2 is configured to generate the residual signal δ(η) based on differences between the signal values 105 and the predicted signal values 115, so that the bitstream 255 comprises encoded residual signal values 235, encoded with a variable bitrate (or number of bits per value of the residual signal). Essentially, the predictor 210 of the encoder 200 is configured to perform the resets of the weighting values at variable times, such that the resets will be performed at times at which there is a bitrate reserve 233 which is larger than or equal to a predetermined bitrate reserve level 239.
Fig. 3a shows a block diagram of a further embodiment of an encoder 300 for predictively encoding a signal 105 with resetting the weighting values (ω;) based on a signal analysis. As shown in Fig. 3a, the encoder 300 may comprise a residual signal generator 310, a δ(η)- encoder 330 and a bitstream formatter 350. Here, the processing blocks 310, 330, 350 of the encoder 300 shown in Fig. 3a essentially correspond to the processing blocks 222, 230, 250 of the encoder 200 shown in Fig. 2. In particular, the residual signal generator 310 having a controllable Oi-reset may be configured to obtain residual signal values 325 δ(η) from the signal values 105, s(n), such that a residual signal is provided, which is defined by the residual signal values 325, 6(n), and which is dependent on the signal 105, s(n). Moreover, the 6(n)-encoder 330 may be configured to encode the residual signal values 325, δ(η) to obtain encoded residual signal values 335, δ'(η), such as by employing a variable bitrate which has been described before.
In the embodiment of Fig. 3a, the encoder 300 may also comprise a signal analyzer 320, which may be implemented for analyzing the signal 105 to obtain an analysis result signal 305. Here, the signal analysis performed by the signal analyzer 320 can, for example, be used to determine signal characteristics of the signal 105 which are described by the analysis result signal 305, which can subsequently be used as a basis for a control of an ω,- reset operation performed within the residual signal generator 310. Specifically, the signal analyzer 320 of the encoder 300 may be configured to derive the signal characteristics of the signal 105 based on a determination of a tonality parameter, a transient behavior and/or a discontinuity behavior from the signal values s(n), to obtain the analysis result signal.
In embodiments, the signal analyzer 320 may be configured to obtain the signal characteristics, which are described by the analysis result signal 305, by determining whether an analysis region (for example, a given time interval) of the signal 105 includes a transient event or is non-stationary, i.e. whether the analysis region is characterized by a relatively sudden change in energy of the signal 105 in time, such as an increase or decrease in energy by more than e.g. 50 % from one temporal portion to the next temporal portion of the analysis region. Here, the transient detection can, for example, be based on a measure of the power contained in a high-frequency band of the signal 105 and a subsequent comparison of a temporal change in power with a predetermined threshold.
In further embodiments, the signal analyzer 320 may be configured to determine the signal characteristics by calculating a tonality parameter from the signal 105, wherein the tonality parameter essentially indicates how the spectral energy is distributed in one or more frequency bands. In the case that the spectral energy is distributed relatively uniformly in a band, a rather non-tonal signal exists in this band, while in the case that the spectral energy is relatively strongly concentrated at a specific location in this band, a rather tonal signal exists for this band.
According to further embodiments, the signal analyzer 320 may be configured to determine the signal characteristics by verifying whether there is a step or discontinuity in the signal shape or signal envelope in the form of a sudden or abrupt change between subsequent signal values or adjacent temporal portions.
As shown in Fig. 3a, a predictor controller 340 is placed after the signal analyzer 320, which can especially be set to provide an coj-reset control signal 341 for the residual signal generator 310 based on the signal characteristics of the signal 105 which are described by the analysis result signal. The predictor controller 340 may, for example, be set to control the residual signal generator 310 or its internal predictor by the co; -reset control signal 341, such that the resets of the weighting values co; will selectively be performed at times for which the signal has a certain characteristics (for example, at reset times at which, or in an environment of which, the signal is, for example, non-tonal, non-stationary, or comprises a step). Besides providing the ω, -reset control signal 341, the predictor controller 340 may also provide the reset information 345 in dependence on the signal characteristics of the signal 105. The bitstream formatter 350 is configured to format the encoded residual signal values 335 and the reset information 345 provided by the predictor controller 340, to obtain a bitstream 355 representing the signal s(n).
Therefore, with reference to Fig. 3 a, the encoder may be configured to perform a signal analysis of the signal s(n) and to selectively perform the resets in dependence on the signal analysis of the signal. Moreover, the encoder may be configured for obtaining a bitstream representing the signal and for providing a reset information encoded within the bitstream in dependence on the signal analysis.
Specific to the embodiment of Fig. 3 a is that by selectively performing the resets at selected reset times in dependence on the determination of the signal characteristics, as has been described above, negative effects on the perceived quality which may arise from performing the resets during portions of the signal not being, for example, non-tonal, non- stationary or not comprising a step (discontinuity), can essentially be prevented or reduced.
Fig. 3b shows a block diagram of a further embodiment of an encoder 360 for predictively encoding a signal 105 with resetting the weighting values (ω ) based on a residual signal analysis. Here, the encoder 360 of Fig. 3b essentially comprises the same processing block as the encoder 300 of Fig. 3 a. Therefore, identical blocks having similar implementations and/or functions are denoted by the same numerals and a repeated description of the corresponding processing blocks is omitted. However, specific to the encoder 360 of Fig. 3b is that the signal analyzer 380 may be implemented for analyzing the residual signal 325, δ(η), to obtain an analysis result signal 385. Here, the signal analysis performed by the signal analyzer 380 can, for example, be used to determine signal characteristics of the residual signal 325 which are described by the analysis result signal 385, which can subsequently be used as a basis for a control of an coj-reset operation performed within the residual signal generator 310. Specifically, the signal analyzer 380 of the encoder 360 may be configured to derive the signal characteristics of the residual signal 325 based on a determination of some analysis parameters from the residual signal values δ(η), to obtain the analysis result signal. As opposed to the predictor controller 340 of the encoder 300 in Fig. 3 a, the predictor controller 390 of the encoder 360 in Fig. 3b does not have an output for providing a reset information. Thus, the bitstream formatter 350 is configured to format the encoded residual signal values 335 only, to obtain a bitstream 355 representing the signal s(n). It is also to be noted here that in the embodiment of Fig. 3 b, probably some other analysis parameters can or have to be used which are different from those in the embodiment of Fig. 3a.
Therefore, with reference to Fig. 3b, the encoder may be configured to perform a residual signal analysis of a residual signal 6(n) and to selectively perform the resets in dependence on the residual signal analysis of the residual signal. Moreover, the encoder may be configured for obtaining a bitstream representing the signal and comprising a sequence of encoded residual signal values δ'(η). Here, the encoder is configured to avoid an inclusion of a reset flag indicating a reset of the weighting values into the bitstream.
In embodiments, the encoder may be configured to determine a measure of a coding gain from the residual signal δ(η) and to selectively perform the resets in dependence on the measure of the coding gain. Preferably, the resets of the weighting values should selectively be performed at times for which the coding gain is relatively small such as when falling below a certain threshold or the residual signal is relatively large such as when exceeding a certain threshold, respectively.
Referring to the embodiments described with reference to Figs. 1, 2, 3a and 3b, the predictor may therefore be configured to perform the resets at irregular times, which are dependent on the signal.
Fig. 4 shows a block diagram of a further embodiment of an encoder 400 for predictively encoding a signal 105 with a filter structure 405 and a provider 410 for providing the weighting values. As shown in Fig. 4, the encoder 400 comprises a residual signal generator 402, which includes the filter structure 405 and the ojj-provider 410. Here, the residual signal generator 402 and the filter structure 405 of the encoder 400 as shown in Fig. 4 may correspond to the residual signal generator 222 and the predictor 110 of the encoder 200 as shown in Fig. 2, respectively. In particular, the filter structure 405 may consists of a plurality 420 of m serially connected delay line elements "z"1", which may be configured to successively delay the signal 105, s(n), so that a plurality of successively delayed signal values s(n - 1), s(n - 2), s(n - m) will be obtained at respective outputs of the plurality 420 of the delay line elements. Subsequently, the plurality of successively delayed signal values s(n - 1), s(n - 2), s(n - m) will be supplied to a plurality 422 of corresponding multipliers. Each multiplier of the plurality 422 of multipliers may be configured to apply a respective weighting value of a plurality ooi, i = 1, 2, 3, m of weighting values as a filter coefficient or prediction weight to a corresponding signal value s(n - i), i = 1, 2, 3, ..., m, so that a plurality 423 of weighted signal values will be obtained at the outputs of the plurality 422 of multipliers. Then, as can be seen in Fig. 4, a plurality 424 of adders may be configured to add the weighted signal values of the plurality 423 of weighted signal values to obtain a predicted signal value s'(n) at an output 425 of the filter structure 405. Here, the predicted signal value s'(n) obtained with the filter structure 405 can be represented by s' (n) = ωί s(n - i) .
i
As described correspondingly in the Fig. 2 embodiment, the residual signal generator 402 of the encoder 400 may also comprise a subtractor 430, which may correspond to the subtracter 220 of the encoder 200 shown in Fig. 2. Here, the subtractor 430 may be configured to subtract predicted signal values s'(n) at the output 425 of the filter structure 405 from the signal 105 to obtain residual signal values 435, δ(η) at the output of the residual signal generator 402. The residual signal values 435 may be further processed as in the previous embodiments. It can also be seen in Fig. 4 that the coi-provider 410 is especially configured to provide the weighting values 415, ω1} co2j, co3, com for the respective multipliers of the plurality 422 of multipliers. In particular, the coj-provider 410 may provide the weighting values 415 based on a prediction error received from the output 435 of the residual signal generator 402 and it may also receive the signal 105, s(n).
In embodiments, the adaptive prediction can be performed in the following way. First, a plurality of correction values δα>ί, i = 1, 2, 3,..., m, can be calculated for each filter or iteration step, using corresponding values of the signal s(n) and the prediction error δ(η).
Then, the thus obtained correction values δοθ! ... δωΜ can be added before the next filter step to the current coefficients ω! ... com to obtain updated weighting values 415, so that the next iteration step for the signal value s(n + 1) will be performed with new adapted coefficients <»,— > ωί + δωί . Therefore, the encoder 400 can essentially be used to perform the adaption of the weighting values based on the prediction error.
Referring to the Fig. 4 embodiment, the coi-provider 410 of the encoder 400 may be controlled by the C0i-reset control signal 401, which may correspond to the control signal 241, 341 of the embodiments of Figs. 2, 3a or 3b, respectively, so that the weighting values 415 will be reset at times as indicated by the Oj-reset control signal 401. In embodiments, the resets may be performed by setting the weighting values 415 to predefined values which may, for example, be the same for subsequent reset times, wherein the weighting values may represent an initial set of prediction coefficients.
Fig. 5 shows a schematic illustration 500 of a concept for determining a reset time 555 for resetting the weighting values in dependence on a current bitrate reserve (Ro) according to an embodiment of the present invention. In the schematic illustration 500 of Fig. 5, an exemplary residual signal 510 6(n), which may correspond to the residual signals 225; 325; 435 of Figs. 2; 3a; 3b; 4, respectively, is shown. Here, the corresponding (left) vertical axis 501 represents a residual signal level while the horizontal axis 502 is the time/sample axis. It can be seen in Fig. 5 that the vertical axis 501 may, for example, represent the signal level using a non-linear scale. As depicted in Fig. 5, the exemplary residual signal 510 may have a typical signal shape, wherein a first portion 512 of the residual signal 510 may be close to or dither around zero, while a second consecutive portion 514 of the residual signal 510 may have a strongly varying signal shape being characterized by a relatively large range between maximum and minimum signal values of the residual signal 510.
According to embodiments, the residual signal 510 may be encoded as described in previous embodiments (see, e.g. Figs. 2, 3a and 3b). Here, a dynamic range 511 corresponding to a maximally available bitrate, such as, for example, 8 bit per sample, may be used for the encoding.
Referring to Fig. 5, the first signal portion 512 may, for example, be encoded with an initial (average) bitrate of 2 bit/sample, as exemplarily indicated by an arrowed line 513, while the second signal portion 514 may, for example, be encoded with a changed or increased bitrate of more than 2 bit/sample, as exemplarily indicated by the arrowed line 515. Here, the encoding may be performed such that a current bitrate (i.e. the per sample bitrate) will be sufficiently high for each sample of the residual signal 510, without requiring to scale or reduce the signal level of the same.
In dependence on the level of the residual signal 510 and the actual bitrate used for encoding the same, the current bitrate reserve 533 Ro will be present or available, wherein the change of the current bitrate reserve 533 Ro may be based on a difference between the average available bitrate (e.g. 4 bit/sample) and the actual bitrate (e.g. 2 bit/sample). In Fig. 5, a current bitrate reserve signal 533 is exemplarily shown, which may correspond to the current bitrate reserve 233 Ro of the Fig. 2 embodiment. It is shown in Fig. 5 that the current bitrate reserve signal 533 may be increasing for the first signal portion 512, while it may be decreasing for the second signal portion 514, as indicated by an arrow 535. This behavior of the current bitrate reserve signal 533 may essentially be due to the fact that a smaller or larger bitrate can be used for encoding the first or the second signal portion 512, 514, respectively. The level of the current bitrate reserve signal 533 can be represented by the (right) vertical axis 512 having, for example, a linear scale. According to the schematic illustration of Fig. 5, the reset time 555 for resetting the weighting values of the prediction may be determined checking whether the condition Ro > Rp is fulfilled, wherein the reset time 555 essentially corresponds to a time at which a level of the current bitrate reserve Ro is larger than or equal to a predetermined threshold Rp. This measure essentially ensures that a large enough bitrate reserve will be available at all times for providing the bitstream, even in case the prediction error is high. In particular, it is ensured that a sufficient bitrate reserve is available shortly after a reset, to be able to encode the residual signal, which typically takes large values shortly after a reset, with good accuracy.
Fig. 6 shows a schematic illustration 600 of a concept for selectively determining reset times to, t1} t2 for resetting the weighting values based on a signal analysis according to a further embodiment of the present invention. According to the schematic illustration of Fig. 6, the signal analysis may be performed to obtain a plurality of reset times to, ti, t2 from the signal, which may be the signal 105, s(n), or the residual signal 325, δ(η), in the previous embodiments, wherein the reset times to, ti, t2 used for resetting the weighting values of the prediction essentially correspond to specific times obtained from the signal analysis. Here, it is to be noted that these specific times or reset times to, tls t2 may be irregular, i.e. a first time period Ati defined by the times to and ti and a second time period Δί2 defined by the times and t2 may be different (At!≠ At2). Therefore, the resets may not have to be performed at predetermined fixed time intervals, but can preferably be performed at irregular times dependent on or adapted to the signal. As described before, the signal analysis may especially be used to identify characteristic events or conditions within the signal such as non-tonal or non-stationary events or conditions or steps/discontinuities or the like. For illustration, in a first panel 610 of Fig. 6, an example signal or residual signal 615 is shown, which is characterized by a plurality 619 of transient events occurring at the specific times to, tl5 12, while in a second panel 620 an example signal or residual signal 625 is shown, which is characterized by a plurality 629 of steps occurring at these specific times. Here, the vertical axes 601, 603 and the horizontal axes 602, 604 of the first and the second panel 610, 620 correspond to the signal level (or signal) or the time/sample, respectively. Fig. 7a illustrates a negative effect of performing a reset within an exemplary well predicable signal 705. In a first panel 710 of Fig. 7a, the well predictable signal 705, which is indicated by a continuous line, may be characterized in that it can be well predicted by using an adaptive prediction, such as described previously. Here, the well predictable signal 705 may, for example, be an approximately periodic signal. It is particularly shown in the first panel 710 of Fig. 7a that the signal shape of a predicted signal 707, s'(n) as indicated by a dotted line may approximately fit to that of the original signal 705, s(n) within a first time portion 712, while it may strongly deviate from the original signal within a second time portion 714. Here, the first time portion 712 can be defined by an initial time to and a reset time treset, while the second time portion 714 can be defined by the reset time treset as a starting point. A rather strong deviation between the original signal 705, s(n) and the predicted signal 707, s'(n) during the second time portion 714 may originate from performing a reset of the weighting values at the reset time treSet being located within a well-predicable signal portion. This is because for the first time portion 712, the weighting values (coopt) may be in an optimized state, while for the second time portion 714, the weighting values (ronon-opt) may be in a non-optimized state, i.e. they are de- adjusted due to the reset operation. The negative effect of this reset operation is illustrated in a second panel 720 of Fig. 7a. In the second panel 720 of Fig. 7a, the residual signal or its magnitude 725, |δ(η)| is shown, which essentially corresponds to the difference between the original signal 705 s(n) and the predicted signal 707, s'(n) shown in the first panel 710 of Fig. 7a. It can be clearly seen that the magnitude 725 of the residual signal nearly diminishes between to and treSet> while it is characterized by relatively large values starting from the reset time treSet. Therefore, because of the abrupt change of the magnitude 725 of the residual signal around the reset time treset, perceivable artifacts/distortions may be introduced, thereby leading to a significant reduction of the signal quality. For example, it may be necessary to encode the comparatively large residual signal using a low accuracy due to bitrate constraints. Fig. 7b illustrates this negative effect by the example of a further well predictable signal 755. As shown in a first panel 750 of Fig. 7b, the well predictable signal 755 may be a periodic and steadily decaying signal, which can be well predicted by a predictive signal 757 within a first time portion 752 in which optimized weighting values (coo t) are available, while it may strongly deviate from the predicted signal 757 within a second time portion 754 in which optimized weighting values (oon0n-opt) are not available because default weighting values are used in response to the reset. An exemplary resulting residual signal or its magnitude 775 is depicted in a second panel 760 of Fig. 7b, explicitly showing the abrupt change of the residual signal around the reset time treSet- Consequently, in the example of Fig. 7b, perceivable artifacts/distortions will arise leading to a reduction of the signal quality as in the example of Fig. 7a.
Fig. 8 shows a block diagram of an embodiment of a decoder 800 for decoding a predictively encoded signal 805 using a reset information 819. In the embodiment according to Fig. 8, the predictively encoded signal 805 may comprise a sequence of residual signal values 815, 5(n) and a reset information 819 encoded within a bitstream. Here, it is pointed out that the predictively encoded signal 805 in the form of a bitstream may correspond to a bitstream having been obtained by an encoder according to the previous embodiments, such as the bitstreams 255 or 355 of the encoders 200 or 300, respectively, representing the signal s(n). Referring to the Fig. 8 embodiment, the decoder 800 essentially comprises a bitstream parser 810 and a predictor 820. The bitstream parser 810 may be configured for obtaining the residual signal values 815 δ(η) and the reset information 819 from the bitstream 805. Here, the bitstream parser 810 may also comprise a 5(n)-decoder for decoding encoded residual signal values δ'(η) subsequent to obtaining the encoded residual signal values δ'(η) from the bitstream 805.
Specifically, the predictor 820 may be configured to perform an adaptive prediction (block 821) to obtain predicted signal values 825, s'(n) and to add the predicted signal values 825 s'(n) and the residual signal values 815, δ(η) by using an adding block 830 to obtain decoded signal values 835, s*(n). As shown in Fig. 8, the predictor 820 may be configured to reset one or more weighting values 811, CO, for the adaptive prediction using the reset information 819. Moreover, the predictor 820 may be configured to adapt the weighting values to the decoded signal 835, s*(n) between subsequent resets. Essentially, the predictor 820 makes use of the provided reset information 819, which has originally been obtained by an encoder such as described in the previous embodiments, and which has been included into the bitstream 805 by the encoder.
Fig. 9 shows a block diagram of a further embodiment 900 of a decoder for decoding a predictively encoded signal 905 with a reset time determinator 950 based on a signal analysis. The signal 905 may comprise a sequence of residual signal values 915, δ(η) encoded within a bitstream and may be provided by one of the previously described encoders. As shown in Fig. 9, the decoder 900 comprises a bitstream parser including a 6(n)-decoder 910, a predictor 920 and a reset time determinator 950. The bitstream parser 910 may be configured for obtaining the residual signal values 915, δ(η) from the bitstream. In particular, the bitstream parser 910 may extract encoded residual signal values δ'(η) from the bitstream and subsequently decode the encoded residual signal values δ'(η) by use of a 0(n)-decoder to obtain the residual signal values δ(η). Similar to the decoder 800 shown in Fig. 8, the predictor 920 of the decoder 900 shown in Fig. 9 may be configured to perform an adaptive prediction (block 921) to obtain predicted signal values 925, s'(n) and to add the predicted signal values 925 s'(n) and the residual signal values 915, δ(η) to obtain decoded signal values 935, s*(n) by using an adding block 930. Specific to the Fig. 9 embodiment is that the reset time determinator 950 may be configured to determine reset times in dependence on the residual signal values 915, δ(η). In particular, the reset time determinator 950 may be operative on the residual signal values 915 to perform a signal analysis of the same, such that a (Oj-reset control signal 919 will be obtained at the output of the reset time determinator 950. The thus obtained coi-reset control signal 919 may be used to control the predictor 920 for performing an adaptive prediction (block 921) in response to the ooj-reset control signal 919. The signal analysis performed by the reset time determinator 950 can, for example, be based on signal characteristics of the analyzed signal, such as being characterized as non-tonal, non-stationary, or comprising a step. In particular, the predictor 920 of the decoder 900 may be configured to reset one or more weighting values 911, co, for the adaptive prediction at the determined reset times. In addition, the predictor 920 of the decoder 900 may be configured to adapt the weighting values 911 to the decoded signal between subsequent resets.
Fig. 9 shows the decoder with determination of the reset times based on a signal analysis. Here, the analysis should not be performed on the basis of the reconstructed signal but on the basis of the error signal, the latter being referred to as the residual signal. In other words, the signal analysis is to be performed on the basis of the error signal only.
If, however, the reset time determinator 950 were configured to perform a signal analysis of the decoded signal values 935, this would lead to asynchronous resets in the case of transmitting errors, which could most probably not be synchronized again.
Fig. 10 shows a block diagram of a further embodiment of a decoder 1000 for decoding a predictively encoded signal 905 with a reset time determinator 1020 using (or evaluating) a current bitrate reserve 1011, ¾. Here, the decoder 1000 of Fig. 10 essentially comprises the same processing block as the decoder 900 of Fig. 9. Therefore, identical blocks having similar implementations and/or functions are denoted by the same numerals and a repeated description of the corresponding processing blocks is omitted. However, specific to the decoder 1000 of Fig. 10 is that the reset time determinator 1020 may be configured to determine reset times in dependence on a current bitrate reserve 1011, R of a bitstream representing the predictively encoded signal 905. In particular, the decoder 1000 may comprise a 6(n)-encoder for encoding residual signal values 915, δ(η) provided by the bitstream parser 910 using a variable bitrate. As a result, a current bitrate reserve indication 1011 will be obtained. Here, the processing performed by the 6(n)-encoder 1010 in the Fig. 10 embodiment may correspond to (or be inverse to) the processing performed by the δ(η)- encoder 230 of the encoder 200 in the Fig. 2 embodiment. The predictor 920 in the Fig. 10 embodiment works as in the Fig. 9 embodiment to finally obtained decoded signal values 935. Fig. 11 shows a block diagram of an embodiment of an encoder/decoder system 1100 based on an adaptive prediction using synchronous resets. On the decoder side of the encoder/decoder system 1100, a decoder 1120 is shown, which may correspond to the decoders 800; 900; 1000 of Figs. 8; 9; 10, respectively. Therefore, a repeated description of the decoder 1120 of Fig. 11 is omitted here. Basically, the decoder 1120 of Fig. 11 may be operative on a predictively encoded version of the signal 1105 having a sequence of residual signal values δ(η) encoded within a bitstream to perform an adaptive prediction, so that decoded signal values 1125, s*(n) will be obtained. Here, the predictively encoded version of the signal 1105 and the decoded signal values 1125 may correspond to the predictively encoded signal 805, 905 or the decoded signal values 835; 935 of Figs. 8; 9; 10, respectively. On the encoder side of the encoder/decoder system 1100, an encoder 1110 is shown, which may correspond to the encoders 200; 300; 360 of Figs. 2; 3a; 3b, respectively. Therefore, a repeated description of the encoder 110 of Fig. 11 is omitted here. Basically, the encoder 1110 of Fig. 11 may be configured to be operative on a sequence of signal values 1101, s(n) to perform an adaptive prediction, so that a bitstream 1115 representing the signal s(n) will be obtained. Here, the sequence of signal values 1101 and the bitstream 1115 of Fig. 11 may correspond to the signal 105 or the bitstream 255; 355, respectively.
In the encoder/decoder system of Fig. 11, the bitstream may be transmitted from the encoder 1110 to the decoder 1120, wherein the bitstream may include reset information, such as the reset information 245; 345; of Figs. 2; 3a, respectively, and wherein the reset information may be used by the decoder 1120 for the adaptive prediction process.
Referring to the Fig. 11 embodiment, the encoder 1110 and the decoder 1120 may optionally be configured to be synchronized by using a synchronization control signal 1135 provided by a synchronization controller 1130. In particular, the encoder 1110 and the decoder 1120 of the encoder/decoder system 1100 can be synchronized by the synchronization control signal 1135, so that the weighting values for the adaptive prediction are reset at synchronous times. Therefore, the predictors of the encoder 1110 and the decoder 1120 can be set to perform the resets synchronously.
It is pointed out here that in principle, it is to be distinguished between two alternatives for the determination of the reset times in the encoder and decoder. In a first alternative, the reset times can be determined by a signal analysis in the encoder and the reset information can be transmitted to the decoder. In a second alternative, the reset times can be determined by a signal analysis in the encoder and in parallel, the (identical) reset times can be determined by a signal analysis in the decoder, independently of the encoder.
According to the first alternative, the signal analysis in the encoder may preferably be performed on the basis of the input signal s(n), since the parameters for fixing or determining the reset times (e.g., parameters describing tonality, transient behavior, discontinuity etc.) can be determined with a higher reliability from the input signal s(n).
According to the second alternative, it may be required to perform the signal analysis for the determination of the reset times in the encoder as well as in the decoder on the basis of the error signal δ(η), so as to ensure the recovery of the synchronization of the reset times in case of possible transmission errors on the decoder side.
Here, it is to be noted that for the determination of the reset times, probably and at least partially some other analysis parameters can or have to be used which are different from those in the first alternative, since the error signal δ(η), which is now used for the determination of the reset times, may have different signal characteristics as compared to the input signal s(n), which is used for the determination of the reset times in the first alternative. However, both signals can be similar to each other. In some embodiments, tonality values or tonality parameters can be derived from the error signal δ(η).
In some further embodiments, there are better solutions than deriving tonality parameters from the error signal δ(η). In particular, a measure of a coding gain can first be determined from the error or residual signal δ(η). Then, the resets of the weighting values can selectively be performed in dependence on the measure of the coding gain. Here, the coding gain is due to a prediction analysis such as performed by the encoder 360 of Fig. 3b. In case the coding gain of the prediction is relatively large (or the residual signal is relatively small), a reset of the weighting values will have a strong effect on the coding gain thus resulting in a reduction thereof, thereby leading to clearly perceivable distortions of the audio quality. This negative effect on the audio quality would even be more pronounced in case of an abrupt reset. Here, the relatively large coding gain or the relatively small residual signal means that the prediction coefficients or weighting values are adapted to the signal very well. In case the coding gain of the prediction is relatively small (or the residual signal is relatively large), a reset of the weighting values will not have a significant effect on the coding gain thus resulting in a negligible reduction thereof, thereby leading to nearly inaudible or less perceivable distortions of the audio quality due to the reset. Therefore, in order to prevent the just-mentioned negative effect on the audio quality, the resets of the weighting values should selectively be performed at times for which the coding gain is relatively small such as when falling below a certain threshold or the residual signal is relatively large such as when exceeding a certain threshold, respectively. It is also pointed out here that in any case or at least in some cases, the determination of the reset times has to be performed synchronously in the encoder and decoder. In case the determination of the reset times were performed on the basis of the reconstructed signal, in the decoder, the reset time would only be correctly analyzed and performed, if no errors were generated during the transmission of the bitstream. Here, it is to be noted that only in case of an error-free transmission, the residual signal and the predicted signal (Fig. 9) in the decoder will be identical to the input signal and the residual signal in the encoder. This means that in case of an analysis on the basis of the reconstructed signal, wrong reset times would be determined in the decoder, if errors occurred during the transmission of the bitstream. Because of the backward-adaptive property of the reset time determination, the synchronization could also not be recovered. Consequently, all subsequent resets would also occur at the wrong time, because the transmitting error and therefore the wrong reconstruction due to the asynchronous resets would not disappear. Thus, in some embodiments, the analysis of the reset times should only be performed on the basis of the residual signals and not on the basis of the input signals (in the encoder) and the reconstructed signal (in the decoder).
According to embodiments, the signal transmitted from the encoder 1110 to the decoder 1120 in the embodiment of Fig. 11 may be a predictively encoded information signal, comprising a prediction error information signal representing differences between actual signal values s(n) and predicted signal values s'(n). Here, the predicted signal values s'(n) can be predicted in accordance with one or more weighting values co;, while the weighting values may be adapted to the signal between subsequent resets. The predictively encoded information signal may also comprise a reset information describing times for which the weighting values can be reset.
According to further embodiments, the reset information of the predictively encoded information signal may specifically describe irregular times.
Although the present invention has been described in the context of block diagrams where the blocks represent actual or logical hardware components, the present invention can also be implemented by a computer-implemented method. In the latter case, the blocks represent corresponding method steps where these steps stand for the functionalities performed by corresponding logical or physical hardware blocks.
The described embodiments are merely illustrative for the principles of the present invention. It is understood that modifications and variations of the arrangements and the details described herein will be apparent to others skilled in the art. It is the intent, therefore, to be limited only by the scope of the appending patent claims and not by the specific details presented by way of description and explanation of the embodiments herein.
Although some aspects have been described in the context of an apparatus, it is clear that these aspects also represent a description of the corresponding method, where a block or device corresponds to a method step or a feature of a method step. Analogously, aspects described in the context of a method step also represent a description of a corresponding block or item or feature of a corresponding apparatus. Some or all of the method steps may be executed by (or using) a hardware apparatus, like for example, a microprocessor, a programmable computer or an electronic circuit. In some embodiments, some one or more of the most important method steps may be executed by such an apparatus.
The inventive encoded information signal can be stored on a digital storage medium or can be transmitted on a transmission medium such as a wireless transmission medium or a wired transmission medium such as the Internet.
Depending on certain implementation requirements, embodiments of the invention can be implemented in hardware or in software. The implementation can be performed using a digital storage medium, for example a floppy disk, a DVD, a Blu-Ray, a CD, a ROM, a PROM, an EPROM, an EEPROM or a FLASH memory, having electronically readable control signals stored thereon, which cooperate (or are capable of cooperating) with a programmable computer system such that the respective method is performed. Therefore, the digital storage medium may be computer readable.
Some embodiments according to the invention comprise a data carrier having electronically readable control signals, which are capable of cooperating with a programmable computer system, such that one of the methods described herein is performed.
Generally, embodiments of the present invention can be implemented as a computer program product with a program code, the program code being operative for performing one of the methods when the computer program product runs on a computer. The program code may for example be stored on a machine readable carrier.
Other embodiments comprise the computer program for performing one of the methods described herein, stored on a machine readable carrier. In other words, an embodiment of the inventive method is, therefore, a computer program having a program code for performing one of the methods described herein, when the computer program runs on a computer.
A further embodiment of the inventive methods is, therefore, a data carrier (or a digital storage medium, or a computer-readable medium) comprising, recorded thereon, the computer program for performing one of the methods described herein. The data carrier, the digital storage medium or the recorded medium are typically tangible and/or non- transitionary.
A further embodiment of the inventive method is, therefore, a data stream or a sequence of signals representing the computer program for performing one of the methods described herein. The data stream or the sequence of signals may for example be configured to be transferred via a data communication connection, for example via the Internet.
A further embodiment comprises a processing means, for example a computer, or a programmable logic device, configured to or adapted to perform one of the methods described herein.
A further embodiment comprises a computer having installed thereon the computer program for performing one of the methods described herein.
A further embodiment according to the invention comprises an apparatus or a system configured to transfer (for example, electronically or optically) a computer program for performing one of the methods described herein to a receiver. The receiver may, for example, be a computer, a mobile device, a memory device or the like. The apparatus or system may, for example, comprise a file server for transferring the computer program to the receiver .
In some embodiments, a programmable logic device (for example a field programmable gate array) may be used to perform some or all of the functionalities of the methods described herein. In some embodiments, a field programmable gate array may cooperate with a microprocessor in order to perform one of the methods described herein. Generally, the methods are preferably performed by any hardware apparatus.
The above described embodiments are merely illustrative for the principles of the present invention. It is understood that modifications and variations of the arrangements and the details described herein will be apparent to others skilled in the art. It is the intent, therefore, to be limited only by the scope of the impending patent claims and not by the specific details presented by way of description and explanation of the embodiments herein.
Embodiments of the present invention provide a concept for predictively coding a signal by predicting a current value of the signal using a weighting of the values of a past signal, wherein the weighting values can continuously be adapted to the signal, and wherein the weighting values can be synchronized (for example by performing a reset to a default value) within a transmitter and a receiver at times which are adapted to the signal.
Embodiments of the present invention also provide a concept for predictive signal coding, wherein the times at which the just-mentioned synchronization can occur may be chosen in dependence on the signal, such as at times for which a reserve of bitrate is detected or for which a step, a non-tonal or a non-stationary event or temporal portion is detected within the signal.
In summary, embodiments according to the present invention apply a predictive coding scheme with variable reset times, wherein the weighting values for an adaptive prediction can continuously be adapted to the signal, so that a difference between the predicted signal and an actual signal will be minimized. Here, the adaption of the weighting values within a transmitter can be performed on the basis of a prediction error. In this way, the weighting values can be adapted to the signal. In other words, embodiments according to the present invention are based on an adaptive reset time that can be used for predictor-based codecs.
An advantage of the present invention is that by using irregular time intervals for the resets of the weighting values, an increase in the prediction error, which would be due to a non- ideal adaption of the weighting values to the signal, can efficiently be prevented or reduced. Moreover, the present invention is advantageous because the prediction error can be represented more precisely. In particular, it is avoided that a reset may, for example, be performed at a time for which the signal is very tonal or stationary (e.g. in case of a tone of an organ pipe), so that perceivable click-like artifacts that would be caused by such a reset can efficiently be suppressed. As opposed to state-of-the-art structures, wherein the reset is essentially performed at predetermined or fixed time intervals, which may lead to a reduction of the prediction reliability, embodiments of the present invention can avoid this disadvantage. To recap, in order to reduce or prevent the preceivability of the resets, the resets can be performed at times, which are adapted to the signal. The resets are then less or no longer perceivable. These times are located in regions, where the coder detects a reserve of bitrate or where the signal is, e.g., non-tonal or non-stationary. The present invention is based on aperiodic times for the resets and the usage of other parameters for the determination of times at which the resets are becoming non-perceivable. The present invention is advantageous, because click-like noises that are due to resets can be prevented. In particular, it can be avoided that the prediction performance will reduce or degrade due to a reset, which would be the case if the weighting values of the predictors were not ideally adapted to the signal. The present invention does not make a reset unnecessary, but allows to perform the resets at times at which resulting distortions/interferences are not or at least less perceivable.

Claims

Claims
An encoder (100) for predictively encoding a signal (105) having a sequence of signal values (s(n)), the encoder (100) comprising: a predictor (1 10) for performing an adaptive prediction in dependence on the signal (105) (s(n)), and in dependence on one or more weighting values (1 1 1) (ω,), to obtain predicted signal values (1 15) (s'(n)), wherein the predictor (1 10) is configured to reset the weighting values (1 11) at times which are dependent on the signal (105), and wherein the predictor (1 10) is configured to adapt the weighting values (1 1 1) to the signal (105) between subsequent resets.
The encoder (100) according to claim 1, wherein the predictor (110) is configured to perform the resets of the weighting values (1 1 1) at times which are adapted to the signal (105), and wherein the encoder (110) is configured to selectively choose the reset times for resetting the weighting values (11 1) such that a perceivability of distortions caused by the resets at the chosen reset times is smaller than the perceivability of distortions which would be caused by resetting the weighting values (1 11) at different times.
The encoder (200) according to claim 1 or 2, wherein the encoder (200) is configured for obtaining a bitstream (255) representing the signal (105), and wherein the predictor (210) is configured to perform the resets in dependence on a current bitrate reserve (233) (R0) available for providing the bitstream (255).
The encoder (200) according to claim 3, wherein the encoder (200) is configured to generate a residual signal based on differences between the signal values (105) (s(n)) and the predicted signal values (115) (s'(n)), so that the bitstream comprises encoded residual signal values (235) (δ'(η)), encoded with a variable bitrate, and wherein the predictor (210) is configured to perform the resets of the weighting values (1 1 1) at variable times, such that the resets are performed at times at which there is a bitrate reserve (233) (Ro) which is larger than or equal to a predetermined bitrate reserve level (239) (Rp). The encoder (300) according to one of the claims 1 to 4, wherein the encoder (300) is configured to perform a signal analysis of the signal (105) (s(n)) and to selectively perform the resets in dependence on the signal analysis of the signal, and wherein the encoder (300) is configured for obtaining a bitstream (355) representing the signal (105) and for providing a reset information (345) encoded within the bitstream in dependence on the signal analysis.
The encoder (300) according to one of the claims 1 to 5, wherein the encoder (300) is configured to determine a tonality parameter from the signal values (s(n)) and to selectively perform the resets at times for which the signal is non-tonal in dependence on the determination of the tonality.
The encoder (300) according to one of the claims 1 to 6, wherein the encoder (300) is configured to determine a transient behavior from the signal values (s(n)) and to perform the resets at times for which the signal is non-stationary.
The encoder (300) according to one of the claims 1 to 7, wherein the encoder (300) is configured to determine a discontinuity behavior from the signal values (s(n)) and to perform the resets at times for which the signal comprises a step.
The encoder (360) according to one of the claims 1 to 4, wherein the encoder (360) is configured to perform a residual signal analysis of a residual signal (325) (δ(η)), the residual signal being based on differences between the signal values (105) (s(n)) and the predicted signal values (1 15) (s'(n)), and to selectively perform the resets in dependence on the residual signal analysis of the residual signal, and wherein the encoder (360) is configured for obtaining a bitstream (355) representing the signal (105) and comprising a sequence of encoded residual signal values (335) (6'(n)), wherein the encoder is configured to avoid an inclusion of a reset flag indicating a reset of the weighting values into the bitstream.
The encoder (360) according to claim 9, wherein the encoder (360) is configured to determine a measure of a coding gain from the residual signal (325) (δ(η)) and to selectively perform the resets in dependence on the measure of the coding gain.
The encoder (100) according to one of the claims 1 to 10, wherein the predictor (110) is configured to perform the resets at irregular times, which are dependent on the signal. The encoder (400) according to one of the claims 1 to 1 1 , wherein the predictor (1 10) is configured to perform the adaption of the weighting values (415) based on a prediction error (435).
A decoder (800) for decoding a predictively encoded signal (805) comprising a sequence of residual signal values (δ(η)) and a reset information (819) encoded within a bitstream, the decoder (800) comprising: a bitstream parser (810) configured for obtaining the residual signal values (815) (δ(η)) and the reset information (819) from the bitstream; and a predictor (820) which is configured to perform an adaptive prediction (821) to obtain predicted signal values (825) (s'(n)) and to add (830) the predicted signal values (825) (s'(n)) and the residual signal values (815) (δ(η)) to obtain decoded signal values (835) (s*(n)), wherein the predictor (820) is configured to reset one or more weighting values (811) (coj) for the adaptive prediction using the reset information (819), and wherein the predictor (820) is configured to adapt the weighting values to the signal to be decoded between subsequent resets.
The decoder (800) according to claim 13, wherein the predictor (820) is configured to perform the adaption of the weighting values based on a prediction error (δ(η)).
A decoder (900) for decoding a predictively encoded signal (905) having a sequence of residual signal values (915) (δ(η)) encoded within a bitstream, the decoder (900) comprising: a bitstream parser (910) configured for obtaining the residual signal values (915) (δ(η)) from the bitstream; a reset time determinator (950) configured to determine reset times in dependence on the residual signal values (915); and a predictor (920) which is configured to perform an adaptive prediction (921) to obtain predicted signal values (925) (s'(n)) and to add (930) the predicted signal values (925) (s'(n)) and the residual signal values (915) (δ(η)) to obtain decoded signal values (935) (s*(n)), wherein the predictor (920) is configured to reset one or more weighting values (91 1) (coj) for the adaptive prediction at the determined reset times, and wherein the predictor (920) is configured to adapt the weighting values (91 1) to the signal to be decoded between subsequent resets.
A decoder (1000) for decoding a predictively encoded signal (905) having a sequence of residual signal values (915) (δ(η)) encoded within a bitstream, the decoder (1000) comprising: a bitstream parser (910) configured for obtaining the residual signal values (915) (5(n)) from the bitstream; a reset time determinator (1020) configured to determine reset times in dependence on a current bitrate reserve (1011) (R0) of a bitstream representing the predictively encoded signal (905); and a predictor (920) which is configured to perform an adaptive prediction (921) to obtain predicted signal values (925) (s'(n)) and to add (930) the predicted signal values (925) (s'(n)) and the residual signal values (915) (δ(η)) to obtain decoded signal values (935) (s*(n)), wherein the predictor (920) is configured to reset one or more weighting values (911) ((Oi) for the adaptive prediction at the determined reset times, and wherein the predictor (920) is configurd to adapt the weighting values (91 1) to the signal to be decoded between subsequent resets.
A system (1100) for predictively encoding a signal (1101) having a sequence of signal values (s(n)) and for decoding a predictively encoded version of the signal (1 105) having a sequence of residual signal values (δ(η)), the system (1100) comprising: an encoder (1 1 10) according to one of the claims 1 to 12; and a decoder (1 120) according to one of the claims 13 to 16; wherein the predictors (1 10) of the encoder (11 10) and the decoder (1 120) are configured to perform the resets synchronously.
A predictively encoded information signal, comprising: a prediction error information signal representing differences between actual signal values (s(n)) and predicted signal values ((s'(n)), wherein the predicted signal values (s'(n)) are predicted in accordance with one or more weighting values (coj), and wherein the weighting values are adapted to the signal between subsequent resets; and a reset information describing times for which the weighting values are reset.
The signal according to claim 18, wherein irregular times are described by the reset information.
A method for predictively encoding a signal (105) having a sequence of signal values (s(n)), the method comprising: performing an adaptive prediction in dependence on the signal (105) (s(n)), and in dependence on one or more weighting values (11 1) (coj), to obtain predicted signal values (115) (s'(n)), wherein the step of performing an adaptive prediction comprises resetting the weighting values (1 1 1) at times which are dependent on the signal (105), and adapting the weighting values (1 1 1) to the signal (105) between subsequent resets.
A method for decoding a predictively encoded signal (805) having a sequence of residual signal values (δ(η)) and a reset information (819) encoded within a bitstream, the method comprising: obtaining the residual signal values (815) (δ(η)) and the reset information (819) from the bitstream; and performing an adaptive prediction (821) to obtain predicted signal values (825) (s'(n)) and adding (830) the predicted signal values (825) (s'(n)) and the residual signal values (815) (δ(η)) to obtain decoded signal values (835) (s*(n)), wherein the steps of performing an adaptive prediction (821) and adding (830) comprise resetting one or more weighting values (81 1) (coi) for the adaptive prediction using the reset information (819), and adapting the weighting values (81 1) to the signal to be decoded between subsequent resets.
The method for decoding according to claim 21, wherein performing the adaptive prediction is based on a prediction error (δ(η)).
A method for decoding a predictively encoded signal (905) having a sequence of residual signal values (915) (δ(η)) encoded within a bitstream, the method comprising: obtaining the residual signal values (915) (δ(η)) from the bitstream; determining reset time in dependence on the residual signal values (915); performing an adaptive prediction (921) to obtain predicted signal values (925) (s'(n)) and adding (930) the predicted signal values (925) (s'(n)) and the residual signal values (915) (δ(η)) to obtain decoded signal values (935) (s*(n)), wherein the steps of performing an adaptive prediction (921) and adding (930) comprise resetting one or more weighting values (91 1) (coj) for the adaptive prediction at the determined reset times, and adapting the weighting values (911) to the signal to be decoded between subsequent resets.
A method for decoding a predictively encoded signal (905) having a sequence of residual signal values (915) (δ(η)) encoded within a bitstream, the method comprising: obtaining the residual signal values (915) (δ(η)) from the bitstream; determining reset times in dependence on a current bitrate reserve (101 1) (R0) of a bitstream representing the predictively encoded signal (905); and performing an adaptive prediction (921) to obtain predicted signal values (925) (s'(n)) and adding (930) the predicted signal values (925) (s'(n)) and the residual signal values (915) (δ(η)) to obtain decoded signal values (935) (s*(n)), wherein the steps of performing an adaptive prediction (921) and adding (930) comprise resetting one or more weighting values (91 1) (ooj) for the adaptive prediction at the determined reset times, and adapting the weighting values (91 1) to the signal to be decoded between subsequent resets.
A method for predictively encoding a signal (1 101) having a sequence of signal values (s(n)) and for decoding a predictively encoded version of the signal (1 105) having a sequence of residual signal values (δ(η)), the method comprising: a method for encoding according to claim 20; a method for decoding according to one of the claims 21 to 24; wherein in the step of resetting the one ore more weighting values, the resets are performed synchronously.
A computer program having a program code for performing the method for predictively encoding according to claim 20, the method for decoding according to one of the claims 21 to 24, or the method for predictively encoding and decoding according to claim 25, when the computer program is executed on a computer.
PCT/EP2011/072776 2010-12-14 2011-12-14 Encoder and method for predictively encoding, decoder and method for decoding, system and method for predictively encoding and decoding and predictively encoded information signal WO2012080346A1 (en)

Priority Applications (13)

Application Number Priority Date Filing Date Title
EP20110797010 EP2652736B1 (en) 2010-12-14 2011-12-14 Encoder and method for predictively encoding, decoder and method for decoding, system and method for predictively encoding and decoding
BR112013015071A BR112013015071B8 (en) 2010-12-14 2011-12-14 ENCODER AND METHOD FOR PREDICTIVELY ENCODING, DECODER AND METHOD FOR DECODING, SYSTEM AND METHOD FOR PREDICTIVELY ENCODING AND DECODING, AND PREDICTIVELY CODED INFORMATION SIGNAL
RU2013132198/08A RU2573278C2 (en) 2010-12-14 2011-12-14 Encoder and predictive coding method, decoder and decoding method, predictive coding and decoding system and method, and predictive coded information signal
AU2011343344A AU2011343344B2 (en) 2010-12-14 2011-12-14 Encoder and method for predictively encoding, decoder and method for decoding, system and method for predictively encoding and decoding and predictively encoded information signal
CA2821603A CA2821603C (en) 2010-12-14 2011-12-14 Encoder and method for predictively encoding, decoder and method for decoding, system and method for predictively encoding and decoding and predictively encoded information signal
PL11797010T PL2652736T3 (en) 2010-12-14 2011-12-14 Encoder and method for predictively encoding, decoder and method for decoding, system and method for predictively encoding and decoding
KR1020137018228A KR101587703B1 (en) 2010-12-14 2011-12-14 Encoder and method for predictively encoding, decoder and method for decoding, system and method for predictively encoding and decoding and predictively encoded information signal
MX2013006724A MX2013006724A (en) 2010-12-14 2011-12-14 Encoder and method for predictively encoding, decoder and method for decoding, system and method for predictively encoding and decoding and predictively encoded information signal.
JP2013543764A JP6012620B2 (en) 2010-12-14 2011-12-14 Encoder and predictive encoding method, decoder and decoding method, predictive encoding and decoding system and method, and predictively encoded information signal
ES11797010.3T ES2528021T3 (en) 2010-12-14 2011-12-14 Encoder and procedure for predictive coding, decoder and decoding procedure, system and procedure for predictive coding and decoding
CN201180067476.1A CN103430233B (en) 2010-12-14 2011-12-14 For the scrambler of predictability coding and method, for the code translator of decoding and method, for the system and method for predictability coding and decoding and predictability encoded information signal
US13/916,874 US9124389B2 (en) 2010-12-14 2013-06-13 Encoder and method for predictively encoding, decoder and method for decoding, system and method for predictively encoding and decoding and predictively encoded information signal
HK14103773.1A HK1190816A1 (en) 2010-12-14 2014-04-21 Encoder and method for predictively encoding, decoder and method for decoding, system and method for predictively encoding and decoding

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP10195000.4 2010-12-14
EP20100195000 EP2466580A1 (en) 2010-12-14 2010-12-14 Encoder and method for predictively encoding, decoder and method for decoding, system and method for predictively encoding and decoding and predictively encoded information signal

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/916,874 Continuation US9124389B2 (en) 2010-12-14 2013-06-13 Encoder and method for predictively encoding, decoder and method for decoding, system and method for predictively encoding and decoding and predictively encoded information signal

Publications (1)

Publication Number Publication Date
WO2012080346A1 true WO2012080346A1 (en) 2012-06-21

Family

ID=43921002

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2011/072776 WO2012080346A1 (en) 2010-12-14 2011-12-14 Encoder and method for predictively encoding, decoder and method for decoding, system and method for predictively encoding and decoding and predictively encoded information signal

Country Status (16)

Country Link
US (1) US9124389B2 (en)
EP (2) EP2466580A1 (en)
JP (1) JP6012620B2 (en)
KR (1) KR101587703B1 (en)
CN (1) CN103430233B (en)
AR (1) AR084288A1 (en)
AU (1) AU2011343344B2 (en)
BR (1) BR112013015071B8 (en)
CA (3) CA2821603C (en)
ES (1) ES2528021T3 (en)
HK (1) HK1190816A1 (en)
MX (1) MX2013006724A (en)
PL (1) PL2652736T3 (en)
RU (1) RU2573278C2 (en)
TW (1) TWI473079B (en)
WO (1) WO2012080346A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2013406720A1 (en) * 2013-12-06 2016-06-02 Halliburton Energy Services, Inc. Controlling wellbore operations
US9978388B2 (en) * 2014-09-12 2018-05-22 Knowles Electronics, Llc Systems and methods for restoration of speech components
CN111537005B (en) * 2020-05-09 2022-03-25 浙江众邦机电科技有限公司 Method for processing signal loss of incremental photoelectric encoder

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5752222A (en) * 1995-10-26 1998-05-12 Sony Corporation Speech decoding method and apparatus
US5974374A (en) * 1997-01-21 1999-10-26 Nec Corporation Voice coding/decoding system including short and long term predictive filters for outputting a predetermined signal as a voice signal in a silence period
US20010027392A1 (en) * 1998-09-29 2001-10-04 William M. Wiese System and method for processing data from and for multiple channels
US7386446B2 (en) 2004-02-13 2008-06-10 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Predictive coding scheme with adaptive speed parameters
WO2010040503A2 (en) * 2008-10-08 2010-04-15 Fraunhofer-Gesellschaft Zur Foerderung Der ... Audio decoder, audio encoder, method for decoding an audio signal, method for encoding an audio signal, computer program and audio signal

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58179897A (en) * 1982-04-14 1983-10-21 日本電気株式会社 Coding method and apparatus for adaptive forecasting type adpcm
JPH04167635A (en) * 1990-10-26 1992-06-15 Nec Corp Adaptive prediction type adpc encoder/decoder
US5327520A (en) 1992-06-04 1994-07-05 At&T Bell Laboratories Method of use of voice message coder/decoder
JP3182032B2 (en) * 1993-12-10 2001-07-03 株式会社日立国際電気 Voice coded communication system and apparatus therefor
JP3593183B2 (en) * 1994-06-20 2004-11-24 株式会社日立国際電気 Voice decoding device
JP3362534B2 (en) * 1994-11-18 2003-01-07 ヤマハ株式会社 Encoding / decoding method by vector quantization
SE9903553D0 (en) * 1999-01-27 1999-10-01 Lars Liljeryd Enhancing conceptual performance of SBR and related coding methods by adaptive noise addition (ANA) and noise substitution limiting (NSL)
WO2002023842A1 (en) * 2000-09-11 2002-03-21 Fox Digital Apparatus and method for using adaptive algorithms to exploit sparsity in target weight vectors in an adaptive channel equalizer
SE0004187D0 (en) * 2000-11-15 2000-11-15 Coding Technologies Sweden Ab Enhancing the performance of coding systems that use high frequency reconstruction methods
US6658383B2 (en) * 2001-06-26 2003-12-02 Microsoft Corporation Method for coding speech and music signals
US7376186B2 (en) 2002-07-15 2008-05-20 Thomson Licensing Motion estimation with weighting prediction
US8352248B2 (en) * 2003-01-03 2013-01-08 Marvell International Ltd. Speech compression method and apparatus
RU2248619C2 (en) * 2003-02-12 2005-03-20 Рыболовлев Александр Аркадьевич Method and device for converting speech signal by method of linear prediction with adaptive distribution of information resources
US8442108B2 (en) * 2004-07-12 2013-05-14 Microsoft Corporation Adaptive updates in motion-compensated temporal filtering
CN101379829B (en) 2006-02-02 2016-05-18 汤姆逊许可公司 Be used for the method and apparatus of the adaptive weighted selection of motion compensated prediction
DE102006022346B4 (en) * 2006-05-12 2008-02-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Information signal coding
CN101004916B (en) * 2007-01-19 2011-03-30 清华大学 Anti channel error code method of line spectrum pair parameter of voice coder
PL2311034T3 (en) 2008-07-11 2016-04-29 Fraunhofer Ges Forschung Audio encoder and decoder for encoding frames of sampled audio signals
US20100027392A1 (en) * 2008-08-04 2010-02-04 Gwo-Huei Wu Apparatus and method for calibrating optical storage device
JP2010087771A (en) * 2008-09-30 2010-04-15 Nec Electronics Corp Image-coding device and method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5752222A (en) * 1995-10-26 1998-05-12 Sony Corporation Speech decoding method and apparatus
US5974374A (en) * 1997-01-21 1999-10-26 Nec Corporation Voice coding/decoding system including short and long term predictive filters for outputting a predetermined signal as a voice signal in a silence period
US20010027392A1 (en) * 1998-09-29 2001-10-04 William M. Wiese System and method for processing data from and for multiple channels
US7386446B2 (en) 2004-02-13 2008-06-10 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Predictive coding scheme with adaptive speed parameters
WO2010040503A2 (en) * 2008-10-08 2010-04-15 Fraunhofer-Gesellschaft Zur Foerderung Der ... Audio decoder, audio encoder, method for decoding an audio signal, method for encoding an audio signal, computer program and audio signal

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
ALI H. SAYED: "Fundamentals of Adaptive Filtering", 2003, WILEY-IEEE PRESS
CUPERMAN V ET AL: "Backward adaptation for low delay vector excitation coding of speech at 16 kbit/s", 19891127; 19891127 - 19891130, 27 November 1989 (1989-11-27), pages 1242 - 1246, XP010083656 *
J. MAKHOUL: "Linear Prediction: A Tutorial Review", PROCEEDINGS OF THE IEEE, vol. 63, no. 4, April 1975 (1975-04-01), XP000891549
PAUL YEE ET AL: "A Dynamic Regularized Radial Basis Function Network for Nonlinear, Nonstationary Time Series Prediction", IEEE TRANSACTIONS ON SIGNAL PROCESSING, IEEE SERVICE CENTER, NEW YORK, NY, US, vol. 47, no. 9, 1 September 1999 (1999-09-01), XP011058711, ISSN: 1053-587X *
S. WABNIK; G. SCHULLER; F. KRAEMER: "An Error Robust Ultra Low Delay Audio Coder Using an MA Prediction Model", ICASSP 2009, 19 April 2009 (2009-04-19)
S. WABNIK; GERALD SCHULLER; J. HIRSCHFELD; U. KRAEMER: "2005 IEEE Workshop on Applications of Signal Processing Audio and Acoustics", 16 October 2005, MOHONK MOUNTAIN HOUSE, article "Packet Loss Concealment in Predictive Audio Coding"
SIMON S. HAYKIN: "Adaptive Filter Theory", 2001, PRENTICE HALL INTERNATIONAL

Also Published As

Publication number Publication date
US20130272369A1 (en) 2013-10-17
CN103430233B (en) 2015-12-16
CA2899332A1 (en) 2012-06-21
CA2899296A1 (en) 2012-06-21
BR112013015071A2 (en) 2016-08-09
TWI473079B (en) 2015-02-11
CA2899332C (en) 2018-01-09
EP2466580A1 (en) 2012-06-20
JP2014504094A (en) 2014-02-13
RU2013132198A (en) 2015-01-20
CA2821603C (en) 2016-08-09
RU2573278C2 (en) 2016-01-20
AU2011343344B2 (en) 2016-01-14
CN103430233A (en) 2013-12-04
ES2528021T3 (en) 2015-02-03
KR20130116897A (en) 2013-10-24
CA2899296C (en) 2017-03-07
JP6012620B2 (en) 2016-10-25
BR112013015071B8 (en) 2023-05-16
US9124389B2 (en) 2015-09-01
PL2652736T3 (en) 2015-05-29
MX2013006724A (en) 2014-01-31
CA2821603A1 (en) 2012-06-21
EP2652736B1 (en) 2014-11-05
HK1190816A1 (en) 2014-07-11
AR084288A1 (en) 2013-05-08
BR112013015071B1 (en) 2021-12-14
TW201230011A (en) 2012-07-16
EP2652736A1 (en) 2013-10-23
AU2011343344A1 (en) 2013-07-25
KR101587703B1 (en) 2016-01-21

Similar Documents

Publication Publication Date Title
US10242688B2 (en) Apparatus and method for processing an audio signal using a harmonic post-filter
RU2586874C1 (en) Device, method and computer program for eliminating clipping artefacts
EP2693430B1 (en) Encoding apparatus and method, and program
RU2722510C1 (en) Audio encoding device, an audio encoding method, an audio encoding program, an audio decoding device, an audio decoding method and an audio decoding program
KR101997006B1 (en) Method and apparatus for processing an audio signal, audio decoder, and audio encoder
CN113544773A (en) Decoder and decoding method for LC3 concealment including full and partial frame loss concealment
JP5633431B2 (en) Audio encoding apparatus, audio encoding method, and audio encoding computer program
EP2458585A1 (en) Error concealment for sub-band coded audio signals
US9124389B2 (en) Encoder and method for predictively encoding, decoder and method for decoding, system and method for predictively encoding and decoding and predictively encoded information signal
JP4947145B2 (en) Decoding device, decoding method, and program
JPH11220405A (en) Adpcm compressor, adpcm expansion device and adpcm compander
EP3023983B1 (en) Method of packet loss concealment in ADPCM codec and ADPCM decoder with PLC circuit

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11797010

Country of ref document: EP

Kind code of ref document: A1

DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)
ENP Entry into the national phase

Ref document number: 2821603

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: MX/A/2013/006724

Country of ref document: MX

ENP Entry into the national phase

Ref document number: 2013543764

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2011797010

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 20137018228

Country of ref document: KR

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2013132198

Country of ref document: RU

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2011343344

Country of ref document: AU

Date of ref document: 20111214

Kind code of ref document: A

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112013015071

Country of ref document: BR

ENP Entry into the national phase

Ref document number: 112013015071

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20130617