Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
APPARATUS AND METHOD FOR DETERMINING A PITCH INFORMATION
Document Type and Number:
WIPO Patent Application WO/2018/065366
Kind Code:
A1
Abstract:
An apparatus for determining a pitch information on the basis of an audio signal. The apparatus is configured to obtain a similarity value being associated with a given pair of portions of the audio signal having a given time shift, wherein the apparatus is configured to choose a length of signal portions of the audio signal used to obtain the similarity value for the given time shift in dependence on the given time shift and where the apparatus is configured to choose the length of the signal portions to be linearly dependent on the given time shift, within a tolerance of ±1 sample.

Inventors:
LECOMTE JÉRÉMIE (US)
TOMASEK ADRIAN (DE)
Application Number:
PCT/EP2017/074984
Publication Date:
April 12, 2018
Filing Date:
October 02, 2017
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
FRAUNHOFER GES FORSCHUNG (DE)
International Classes:
G10L25/90
Foreign References:
EP0628947A11994-12-14
Other References:
MEDAN Y ET AL: "SUPER RESOLUTION PITCH DETERMINATION OF SPEECH SIGNALS", IEEE TRANSACTIONS ON SIGNAL PROCESSING, IEEE SERVICE CENTER, NEW YORK, NY, US, vol. 39, no. 1, 1 January 1991 (1991-01-01), pages 40 - 48, XP000205149, ISSN: 1053-587X, DOI: 10.1109/78.80763
XIAOSHU QIAN ET AL: "A variable frame pitch estimator and test results", 2013 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH AND SIGNAL PROCESSING (ICASSP); VANCOUCER, BC; 26-31 MAY 2013, vol. 1, 1 January 1996 (1996-01-01), Piscataway, NJ, US, pages 228, XP055352062, ISSN: 1520-6149, DOI: 10.1109/ICASSP.1996.540332
JUIN-HWEY CHEN: "Toll-quality 16 kb/s CELP speech coding with very low complexity", 1995 INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING; 9-12 MAY ,1995 ; DETROIT, MI, USA, IEEE, NEW YORK, NY, USA, vol. 1, 9 May 1995 (1995-05-09), pages 9 - 12, XP010625157, ISBN: 978-0-7803-2431-2, DOI: 10.1109/ICASSP.1995.479261
HARADA NOBORU ET AL: "An Enhanced Encoder for the MPEG-4 ALS Lossless Coding Standard", AES CONVENTION 121; OCTOBER 2006, AES, 60 EAST 42ND STREET, ROOM 2520 NEW YORK 10165-2520, USA, 1 October 2006 (2006-10-01), XP040507792
"Speech codec speech processing functions; Adaptive Multi-Rate - Wideband (AMR-WB) speech codec; Transcoding functions (Release 12", 3GPP, TS 26.190, 2014
"Source-Controlled Variable-Rate Multimode Wideband Speech Codec (VMR-WB), Service Options 62 and 63 for Spread Spectrum Systems", 3GPP2, C.S0052-A, April 2005 (2005-04-01)
"Universal Mobile Telecommunitations System (UMTS); LTE; Codec for enhanced Voice Services (EVS); Detailed algorithmic description", 3GPP, TS 26.445
Attorney, Agent or Firm:
ZIMMERMANN, Tankred et al. (DE)
Download PDF:
Claims:
Claims . An apparatus for determining a pitch information (160; 260) on the basis of an audio signal (1 10; 210), wherein the apparatus is configured to obtain a similarity value (130a; 230a, 251 a) (R(d); fi'(d)) being associated with a given pair of portions of the audio signal having a given time shift ( 120; 220) (d); wherein the apparatus is configured to choose a length (140a; 240a) (Len(d)) of signal portions of the audio signal used to obtain the similarity value (tf (d); R'(d)) for the given time shift (d) in dependence on the given time shift (d); where the apparatus is configured to choose the length (Len(d)) of the signal portions to be linearly dependent on the given time shift (d) , within a tolerance of ±1 sample.

2. Apparatus according to claim 1 , wherein the apparatus is configured to obtain a pitch information based on a sequence of similarity values (252a).

3. Apparatus according to claim 2, wherein the apparatus is configured to obtain the sequence of similarity values based on similarity values for time shifts d in a range starting between ms and 4ms and extending up to time shifts between 15ms to 25ms.

4. Apparatus according to one of the claims 1 to 3, wherein the apparatus is configured to step-wisely increase the length of the signal portions in steps of one sample with increasing time shift.

5. Apparatus according to one of the claims 1 to 4, wherein the apparatus is configured to increase the length of the signal portions in integer precision with increasing time shift. Apparatus according to one of the claims 1 to 5, wherein the apparatus is configured to increase the length of the signal portions, between a predetermined minimum length (320a) and a predetermined maximum length (320b), linearly in dependence of the given time shift , wherein the predetermined minimum length is used for a shortest time shift (252b) corresponding to a maximum pitch frequency, and wherein the predetermined maximum length is used for a longest time shift (252c) corresponding to a minimum pitch frequency.

Apparatus according to one of the claims 1 to 6, wherein the apparatus is configured to choose the length of the signal portions based on

Len(d) = rn d + startlen - Pitmin m,

where d is the given time shift, startlen a predetermined minimum length for the signal portions, Pitmin a predetermined smallest considered pitch lag value and m a factor by which the given time shift is scaled, and wherein the apparatus is configured to choose the length of the signal portions as an integer value close to Len(d).

Apparatus according to one of the claims 1 to 7, wherein the apparatus is configured to compute an autocorrelation value (230a) (R'(d)) on the basis of two time shifted signal portions of the audio signal, time shifted by the given time shift (d), in order to obtain the similarity value, wherein a number of sample values of the audio signal considered in the computation of the autocorrelation value is determined by the chosen length.

Apparatus according to claim 8, wherein the apparatus is configured to obtain the similarity values based on R'id) =∑nLe=n0W s(n)s(n - d),

where s(n) is a sample of the audio signal at time n, Len(d) is an information about the length of the signal portions for the given time shift d and d is the given time shift.

10. Apparatus according to one of the claims 1 to 9, wherein the apparatus is configured to obtain a location information (254a) of a maximum value of a plurality of similarity values; and wherein the apparatus is configured to obtain a pitch information based on the location information of the maximum value.

1 1 . Apparatus according to one of the claims 1 to 10, wherein the apparatus is configured to apply a normalization (251 ) to the similarity value (R'{d)) using at least two normalization values (norm(0), norm(d)); a first normalization value (norm(O)) representing a statistical characteristic of a first portion of the given pair of portions, and a second normalization value (norm(d)) representing a statistical characteristic of a second portion of the given pair of portions, in order to derive a normalized similarity' value (251 a) (R(d)),

12. Apparatus according to claim 1 1 , wherein the apparatus is configured to obtain a normalized similarity value R (d) based on

where R'(d) is a similarity value and vv(d) is a windowing function.

13. Apparatus according to one of the claims 1 1 to 12, wherein the apparatus is configured to recursively derive a normalization value for a new time shift d, from a normalization value for a previous time shift d - 1 by adding one or more energy values of signal samples included in a new signal portion and not included in an old signal portion and by subtracting one or more energy values of signal samples included in the old signal portion and not included in the new signal portion.

14. Apparatus according to one of the claims 1 1 to 13, wherein the apparatus is

configured to obtain a normalization value norm{d) based on

norm(d) = norm(d - 1 ) -I- x - xj+LenW,

where xd is a sample of the audio signal contained in the signal portion according to time shift d but not contained in the signal portion according to time shift d - 1 , Xd+Len(d) IS a sample of the audio signal not contained in the signal portion according to time shift d but contained in the signal portion according to time shift d - 1 of the audio signal and norm{d - 1) is a normalization value obtained for a previously considered signal portion according to time shift d - 1.

15. Apparatus according to one of the claims 1 to 14, wherein the apparatus is configured to determine an information about a characteristic (255a) of an identified maximum of a sequence of similarity values (R(d); R'(d)) obtained for different time shifts (d); and wherein the apparatus is configured to provide a pitch frequency (250) on the basis of the identified maximum if the information about the characteristic of the identified maximum indicates that the identified maximum is a local maximum; and wherein the apparatus is configured to proceed to consider one or more other similarity values for estimating the pitch frequency if the information about the characteristic of the maximum does not indicate that the maximum is a local maximum.

Apparatus according to claim 15, wherein the apparatus is configured to determine if an identified maximum is located at the border of the sequence of similarity values as the information about a characteristic of the identified maximum. 17. Apparatus according to one of the claims 1 5 to 16, wherein the apparatus is configured to selectively consider one or more other similarity values beyond the border of the sequence of similarity values if the information about a characteristic of the identified maximum indicates that the identified maximum is located at the border of the sequence of similarity values.

18. Apparatus according to one of the claims 1 to 17, wherein the apparatus is configured to determine a pitch information in an open-loop search or in a closed-loop search.

19. Method for determining a pitch information on the basis of an audio signal,

comprising: obtaining a similarity value (R (d) ; R'(d)) being associated with a given pair of portions of the audio signal having a given time shift (d); choosing a length (Lert(d)) of signal portions of the audio signal used to obtain the similarity value (R (d); R'(d)) for the given time shift (d) in dependence on the given time shift (d); and wherein the length (Len(d)) of the signal portions is chosen to be linearly dependent on the given time shift (d), within a tolerance of ±1 sample.

20. Computer program with a program code for performing the method according to claim

19, when the computer program runs on a computer or a microcontroller.

21 . An apparatus for determining a pitch information (160; 260) on the basis of an audio signal (1 10; 210), wherein the apparatus is configured to obtain a similarity value (130a; 230a, 251 a)

(R(d); fl'(d)) being associated with a given pair of portions of the audio signal having a given time shift (120; 220) (d); wherein the apparatus is configured to choose a length (140a; 240a) (Len(d)) of signal portions of the audio signal used to obtain the similarity value (R(d); R'(d)) for the given time shift (d) in dependence on the given time shift (d); where the apparatus is configured to choose the iength (Len(d)) of the signal portions to be linearly dependent on the given time shift (d), within a tolerance of ±1 sample; wherein the apparatus is configured to choose the Iength of the signal portions based on

Len(d) = m · d + startlen— Pitmin · m,

where d is the given time shift, startlen a predetermined minimum Iength for the signal portions, Pitmin a predetermined smallest considered pitch lag value and m a factor by which the given time shift is scaled, and wherein the apparatus is configured to choose the Iength of the signal portions as an integer value close to Len(d).

22. Method for determining a pitch information on the basis of an audio signal,

comprising: obtaining a similarity value (<R(d); R'(d)) being associated with a given pair of portions of the audio signal having a given time shift (d); choosing a Iength (Len(d)) of signal portions of the audio signal used to obtain the similarity value (R(d); fl'(d)) for the given time shift (d) in dependence on the given time shift (d); and wherein the length (Len(d)) of the signal portions is chosen to be linearly dependent on the given time shift (d), within a tolerance of ±1 sample; wherein the method comprises choosing the length of the signal portions based on

Len(d) = m · d + startlen— Pitmin m,

where d is the given time shift, startlen a predetermined minimum length for the signal portions, Pitmin a predetermined smallest considered pitch lag value and m a factor by which the given time shift is scaled, and wherein the method comprises choosing the length of the signal portions as an integer value close to Len(d).

23. Computer program with a program code for performing the method according to claim 22, when the computer program runs on a computer or a microcontroller.

Description:
Apparatus and Method for Determining a Pitch Information

Description

The present invention relates to audio signal processing, more specifically it relates to obtaining a pitch information from an audio signal.

Background of the Invention

In some algorithms pitch determination is performed based on an autocorrelation of an audio signal. However, these algorithms employ a static amount of signal samples for large ranges of pitch lags. Consequently, a problem of known solutions is that inaccurate pitch information is obtained due to insufficiently flexible consideration of signal samples of the audio signal for determination of the pitch information.

Therefore, a desire exists for a concept which provides for a better compromise between computational complexity and accuracy of a pitch value determination.

Summary of the Invention

An embodiment according to the invention creates an apparatus for determining a pitch information on the basis of an audio signal. The apparatus is configured to obtain a similarity value being associated with a given pair of portions of the audio signal having a given time shift. Furthermore, the apparatus is configured to choose a length of signal portions of the audio signal used to obtain a similarity value for the given time shift in dependence on the given time shift. Additionally, the apparatus is configured to choose the length of the signal portions to be linearly dependent on the given time shift, within a tolerance of ±1 samples.

The described apparatus enables an accurate determination of a pitch information while avoiding an evaluation of unnecessarily large portions of the audio signal. Reasonably accurate pitch determination is achieved by using sufficient length of signal portions and low computational complexity is achieved by using a reasonable small length of the considered signal portions. Therefore, linear dependency of the signal portion length on the given time shift provides a good tradeoff, as it avoids excessive length of the signal portions while still providing long enough signal portions to obtain an accurate pitch information. As a pitch information is an information about frequency, a periodicity is associated with it. The length of the pitch period corresponding to a pitch is characterized by a time shift which results in a high similarity value. Therefore, it is beneficial to employ signal portions of a length which is linearly dependent on the given time shift. In other words, for example for checking whether a signal has a low pitch which corresponds to a long pitch period, a large time shift is used. In this case, when employing a linear dependency with a positive slope, an appropriately larger signal portion length is chosen for determination of the pitch information compared to when checking a higher pitch corresponding to a comparatively shorter pitch period. Thus, the concept allows to adjust the length of the portions such that a reasonable portion of a signal under consideration is used both when evaluating a smaller time shift and when evaluating a larger time shift.

According to a preferred embodiment of the invention the apparatus is configured to obtain a pitch information based on a sequence of similarity values. Considering more than one similarity value improves the accuracy of the determined pitch. According to a preferred embodiment of the invention, the apparatus is configured to obtain the sequence of similarity values based on similarity values for time shifts in a range starting between 1 ms and 4 ms and extending up to time shifts between 15 ms to 25 ms. The described embodiment is beneficial, as the considered range of time shifts is a characteristic range for human speech, corresponding to the fundamental frequencies of speech. Additionally, restricting the range of time shifts to the described values reduces computational complexity in determining the sequences of similarity values, as it limits the amount of similarity values which need to be determined.

According to a further preferred embodiment of the invention, the apparatus is configured to step-wisely increase the length of the signal portions in steps of one sample with increasing time shift, when obtaining similarity values for different pairs of portions having different time shifts. The described embodiment is especially useful due to its ability of providing signal portions with a minimum length difference. In other words, a fine granularity of lengths is achieved, enabling a flexible choice of signal portion lengths, thereby allowing for a good tradeoff between accuracy and computational complexity. According to a preferred embodiment of the invention, the apparatus is configured to increase the length of the signal portions in integer precision with increasing time shift, when obtaining similarity values for different pairs of portions having different time shifts. Increasing the length of the signal portions with integer precision is especially beneficial due to the low computational complexity involved in it. In other words, for example no upsampling or fractional delays need to be considered.

According to a preferred embodiment of the invention, the apparatus is configured to increase the length of the signal portions, between a predetermined minimum length and a predetermined maximum length, linearly in dependence on the time shift. The predetermined minimum length is used for a shortest time shift corresponding to a maximum pitch frequency, and the predetermined maximum length is used for a longest time shift corresponding to a minimum pitch frequency. The described embodiment helps in keeping computational complexity within a prescribed range determined by the predetermined minimum length and the predetermined maximum length. Moreover, the predetermined minimum length and the predetermined maximum length can be chosen in accordance for example with the human vocal tract, as to capture for example a whole cycle of a considered pitch period. According to a preferred embodiment of the invention, the apparatus is configured to choose the length of the signal portions based on

Len(d) = m · d + startlen— Pitmin · m, where d is the given time shift, startlen a predetermined minimum length for the signal portions, Pitmin a predetermined smallest considered pitch lag value, representing a minimum value for d, and m a factor by which the given time shift is scaled, where for example m < 1. Furthermore, the apparatus is configured to choose the length of the signal portions as an integer value close to Len(d). The choice of an integer value close to Len(d) can be based on a round function, a floor function, a ceil function or a truncate function. The round function rounds the value of Len(d) to the nearest integer value, the floor function rounds the value of Len(d) to the nearest integer towards minus infinity, the ceil function rounds the value of Len(d) towards the next integer in the direction of plus infinity and the truncate function removes any decimal values of Len(d) thereby returning an integer value. According to a preferred embodiment of the invention, the apparatus is configured to compute an autocorrelation value on the basis of two time shifted signal portions of the audio signal, time shifted by the given time shift, in order to obtain the similarity value wherein a similarity value can be an autocorrelation value, or a value derived from an autocorrelation value. Moreover, the number of sample values of the audio signal considered in the computation of the autocorrelation value is determined by the chosen length. Using an autocorrelation for pitch estimation is especially beneficial due to a low computational complexity involved in computing an autocorrelation. Varying the number of sample values used for calculating the autocorrelation value as described, enables estimation of more accurate pitch frequencies while avoiding an unnecessarily long autocorrelation summation length for small time shifts.

According to a preferred embodiment of the invention, the apparatus is configured to obtain the similarity values based on

where s(n) is a sample of the audio signal at time n, Len(d) is an information about the length of the signal portions for the given time shift d and d is the given time shift. The upper limit of the summation can for example also be Len(d) - 1 and the value d of the time shift can be in the interval [Pitmin. Pitmax].

Calculating the similarity values in the described way offers a fast and flexible way of obtaining autocorrelation values. Especially, the upper limit of the summation (Len(d) or Len(d) - 1) which is in dependence on the considered time shift (d), may provide a sufficiently long signal portion for comprising a whole period of the pitch frequency to be determined.

According to a preferred embodiment of the invention, the apparatus is configured to obtain a location information of a maximum value of a plurality of similarity values. Furthermore, the apparatus is configured to obtain a pitch information based on the location information corresponding to a considered time shift of the maximum value. The described embodiment is especially helpful in reducing computational complexity, as a search for a maximum value can be performed with low computational complexity. This can for example be formulated as

R(T 0 ) = max d R (d) , or

R' o) = max d

where d e [Pitmin; Pitmax] and T 0 denotes the location of a found maximum. According to a preferred embodiment of the invention, the apparatus is configured to apply a normalization to the similarity value using at least two normalization values. The two normalization values comprise a first normalization value representing a statistical characteristic, for example an energy value, of a first portion of the given pair of portions and a second normalization value representing a statistical characteristic, for example an energy value, of a second portion of the given pair of portions. The normalization is applied to the similarity value in order to derive a normalized similarity value. The described normalization is helpful for compensating energy fluctuations in the audio signal, for example energy fluctuations in a speech signal. Thereby, similarity values which are comparable over wide range of time shifts are provided, making a more accurate result of the pitch determination feasible.

According to a preferred embodiment of the invention, the apparatus is configured to obtain a normalized similarity value R (d) based on where R'(d) is a similarity value and w(d is a windowing function. Normalizing the similarity value in the described way .enables a more accurate determination of a pitch information due to less energy fluctuation of the similarity value. Especially, the considered value R'(d) can be subject to energy variations in the signal portions considered for its determination. Employing the described normalization frees the value R(d) form the energy variations in the considered signal portions.

According to a preferred embodiment of the invention, the apparatus is configured to recursively derive a normalization value, e.g. a norm value, for a new time shift d from a normalization value for a previous time shift, e.g. d - 1, d - 2 and so on, by adding one or more energy values of signal samples included in a new signal portion and not included in an old signal portion and by subtracting one or more energy values of signal samples included in the old signal portion and not included in the new signal portion. The described recursive computation of the normalization value enables a fast and memory saving computation of a normalization value based on a previous normalization value.

According to a preferred embodiment of the invention, the apparatus is configured to obtain a normalization value norm(d) based on norm(d) = norm(d - 1) -t- x - xl +Len{d where x d is a sample of the audio signal contained in the signal portion according to the time shift d but not contained in the signal portion according to time shift d - 1, x d+ m(ci) is a sample of the audio signal not contained in the signal portion according to time shift d but contained in the signal portion according to time shift d - 1 of the audio signal and norm(d - 1) is a normalization value obtained for a previously considered signal portion according to time shift d - 1 outside of the new signal portion of time shift d. The described way of obtaining a normalization value enables a fast and simple way of computing a normalization value based on a previous normalization value. Moreover, estimating the normalization value in the described way is especially suitable for embodiments of the invention employed in portable devices with low power consumption, as the computation exhibits low complexity and low memory demand.

According to a further preferred embodiment of the invention, the apparatus is configured to determine an information, for example an index or a local maximum information which is a result of a local maximum check, about a characteristic of an identified maximum of a sequence of similarity values obtained for different time shifts. Moreover, the apparatus is configured to provide a pitch frequency on the basis of the identified maximum if the information about the characteristic of the identified maximum indicates that the identified maximum is a local maximum. Furthermore, the apparatus is configured to proceed to consider one or more other similarity values which are different from the previously identified maximum value for estimating the pitch frequency if the information about the characteristic of the maximum does not indicate that the maximum is a local maximum, for example if it indicates that the location is at an edge of a search interval. An inaccurate pitch information can be due to the fact that it is based on an identified maximum which is not a local maximum. Therefore, a check of the identified maximum and the resulting treatment of the identified maximum in the described way is useful for avoiding inaccurate pitch information determination. According to a preferred embodiment of the invention, the apparatus is configured to determine if an identified maximum is located at the border of the sequence of similarity values as the information about a characteristic of the identified maximum. If a maximum is located at the border of the sequence of similarity values, values beyond this border can be even higher than the identified maximum and therefore the identified maximum may not represent a true local maximum. In other words, it is good to know if an identified maximum is at the border in order to react adequately. A reaction for example could be choosing a true local maximum inside the sequence of similarity values, as the previously identified maximum location may not represent a valid pitch lag value.

According to a preferred embodiment of the invention, the apparatus is configured to selectively consider one or more other similarity values beyond the border of the sequence of similarity values, for example beyond an initial search interval, if the information about a characteristic of the identified maximum indicates that the identified maximum is located at the border of the sequence of similarity values. Having the opportunity to consider one or more other similarity values beyond the border of the sequence of similarity values helps in ensuring that an accurate and valid pitch information is obtained. According to a preferred embodiment of the invention, the apparatus is configured to determine a pitch information in an open-loop search or in a closed-loop search. The described embodiment is useful for use in audio signal encoders which are configured to have a two-stage pitch information determination, for example an open-loop search and a closed-loop search.

An embodiment of the invention provides for a method for determining a pitch information on the basis of an audio signal. The method comprises: obtaining a similarity value being associated with a given pair of portions of the audio signal having a given time shift. Furthermore, the method comprises choosing a length of signal portions of the audio signal, of the pair of portions, used to obtain the similarity value for the given time shift in dependence on the given time shift and wherein the length of the signal portions is chosen to be linearly dependent on the given time shift, within a tolerance of ±1 sample. The described method provides reliable support for obtaining similarity value based on the information of the associated signal portions corresponding to the considered time shift. A further preferred embodiment of the invention is a computer program with a program code for performing the method when the computer program runs on a computer or a microcontroller. The described program is especially suitable for employment in mobile devices, for example mobile phones.

Further preferred embodiments according to the invention describe a robust pitch search with adaptive correlation size.

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 flow chart of an apparatus according to an embodiment of the invention;

Fig. 2 shows a flow chart of an apparatus according to an embodiment of the invention; Fig. 3 shows a graph according to an embodiment of the invention;

Fig. 4 shows a graph according to an embodiment of the invention;

Fig. 5 shows a graph according to an embodiment of the invention;

Fig. 6 shows a schematic of a signal; and shows a flow chart of a method according to an embodiment of the invention.

Detailed Description of the Embodiments

Fig. 1 depicts a flow chart of an apparatus 100 according to an embodiment of the invention for determination of a pitch information 160. The apparatus 100 uses as inputs an audio signal 1 10, for example a speech signal, and a time shift value 120. Based on the time shift 120, the apparatus 100 chooses a length of a signal portion (for example, using a block 140) and provides an information 140a describing a length of the signal portions for determination 135 of a pair of portions used to obtain 130 a similarity value 30a (for example in block or similarity value obtainer 130). Based on the similarity value 130a the pitch information 160 can be determined in an optional pitch determination (e.g. in block or pitch determinator 150). The length 140a of the signal portion is determined to be linearly dependent on the time shift 120. The provided length 1 0a of signal portions is used to determine 135 a pair of portions of the audio signal 1 0, wherein the length 140a of this pair of signal portions is flexibly based on the time shift 120. Thus, a similarity value 130a obtained based on the pair of portions provides a reliable similarity value 30a for determination of a pitch frequency. For example if a long pitch period is considered, corresponding to a large time shift 120, the chosen length 140a of signal portions will be correspondingly large, in order to be able to capture a whole cycle of the considered pitch. The described apparatus therefore offers a basis for a reliable, accurate, non-complex and flexible pitch determination. Moreover, it should be noted that the apparatus 00 according to Fig.1 can be supplemented by any of the features and functionalities described herein, either individually or in combination.

Fig. 2 shows a flow chart of an apparatus 200 according to an embodiment of the invention. The apparatus 200 takes as input an audio signal 210 and a time shift value 220 and delivers as output a pitch information 260. According to the time shift 220, the length 240a of signal portions is determined (in block 240). The determined length 240a of signal portions is provided for determination 235 of a pair of portions, which in addition is based on the given time shift 220 and the audio signal 210. Based on the determined pair of portions a similarity value 230a is obtained (in block 230).

In a further optional step (block 251 ), the similarity value 230a is normalized 251 based on energy values of the determined pair of portions, thereby delivering a normalized similarity value 251 a. Based on the similarity value 230a or the normalized similarity value 251 a a sequence 252a of similarity values can be obtained 252 in an optional step (block 252). The obtained sequence 252a of similarity values is obtained for a shortest time shift 252b up to a longest time shift 252c. Thus, block 252 may, for example provide the time shift information 220 within the given range (from a shortest time shift 252b up to a longest time shift 252c). In a further optional step (block 253), the sequence 252a of similarity values is subject to windowing 253. Thereby, a windowed sequence 253a of similarity values is obtained, wherein the windowing 253 can improve accuracy of the to be determined pitch information 260 by emphasizing or deemphasizing certain ranges of the sequence 252a of similarity values.

Additionally, the sequence 252a of similarity values or the windowed sequence 253a of similarity values can be used in an optional maximum search 254, to obtain a maximum location information 254a.

Based on a maximum location information 254a, in a further optional step a check of a characteristic of the maximum location information 254a is performed (in block 255). The check of the characteristic of the identified maximum location 255 is based on the information 254a of the maximum location, the shortest time shift considered 252b and the longest time shift considered 252c. If the characteristic of the maximum indicates that the maximum is coinciding with the shortest time shift 252b or the longest time shift 252c, a decision is made, that a new maximum alue is to be considered. The maximum value to be considered can be found in a range from the shortest time shift 252b to the longest time shift 252c, or beyond the shortest time shift 252b or the longest time shift 252c. If the new maximum will be chosen from between the shortest time shift 252b and the longest shift 252c a new local maximum in between the two values will be chosen and provided as the new local maximum 255a. Alternatively, a new maximum value can be searched beyond the shortest time shift 252b or the longest time shift 252c, and if a new maximum value is found the corresponding location or an information 255a to a corresponding location will be provided. In a final optional step, a pitch frequency estimation is performed (in block 250).

The audio signal 210 can be provided in a decimated version, thereby reducing computation complexity. This is due to the fact that a decimated signal typically displays a reduced sampling rate and therefore exhibits less samples per second. This in turn leads to a lower complexity of the calculation, as for an equivalent time range less sample values need to be considered than for an upsampled signal or equivalently for a signal with a higher sampling rate. Therefore, in a first stage (not shown) the audio signal 210 can be decimated to a sampling frequency for example varying between 5.3 and 8 kHz, depending on the input sampling rate. In the following, it will be described how the length information 240a of the signal portions can be determined by block 240. Fig. 3 shows a graph 300 according to an aspect of the invention. On the horizontal axis 310, the value of the time shift d is shown. A shortest time shift 310a and a longest time shift 310b is indicated on the horizontal axis, labeled Pitmin and Pitmax, respectively, which may correspond to the shortest time shift 252b and longest time shift 252b in Fig. 2. On the vertical axis 320 the length of the considered signal portions is shown, wherein this length may be represented by the length information 140a or 240a. A minimum length 320a and a maximum length 320b are indicated on the vertical axis, labeled startlen and stoplen, respectively. The line 330 illustrates a linear increase of the length of the signal portions with increasing time shift. Furthermore, the shortest time shift 310a is labeled as Pitmin corresponding to the minimum pitch value considered and the longest time shift 310b is labeled as Pitmax corresponding to the maximum pitch value considered. The graph 300 illustrates the choice of the length of the signal portions used for obtaining the similarity value, enabling a computational efficient and reliable pitch determination.

Taking reference to Fig. 4, the search of a maximum location information 254a or 255a is illustrated as performed for example in block 254 or 255. Fig. 4 shows a graph 400 according to an aspect of the invention. On the horizontal axis 410 the time shift d is shown, which may be the time shift 120 or 220. On the vertical axis 420 values of the similarity value, for example autocorrelation values, are shown, which may be the similarity value 130a, 230a or 251 a obtained in block 130 or 230. A curve 430 shows an example evolution of the similarity values, for example the sequence 252a of similarity values, in dependence on the time shift d. The curve 430 has a local maximum R(T 0 ) in between the vertically dashed lines labeled Pitmin and Pitmax. The value to the left of the local maximum R(T Q - 1) is smaller than R(T 0 ) and the value to the right of R(T Q ), R(T 0 + 1), is smaller than fi(T 0 ), thereby, R(T 0 ) may be characterized as a true local maximum. Furthermore, the vertically dashed lines labeled Pitmin and Pitmax illustrate the range in which a maximum search can be performed (for example in block 254) and for which values d of the time shift similarity values are obtained to form the sequence 252a. The maximum search can for example be the maximum search as indicated in block 254 in apparatus 200. Moreover, a maximum is identified which corresponds with the vertically dashed line labeled Pitmin. However, this identified maximum is not a true local maximum, as a higher local maximum is available outside the search range. Therefore, the maximum coinciding with Pitmin, R(Pitmin), is a false maximum. Taking reference to Fig. 2, the described curve 430 may display the sequence 252a on which a search is performed in block 254. The search 254 may identify the value R (Pitmin) as the maximum and , therefore, return Pitmin as the maximum location information 254a. The obtained maximum location information 254a may be used in the check 255 of the characteristic of the maximum. The check 255 may identify the maximum location information 254 to indicate that the maximum is located on the border of the search range. In response to this finding, in one implementation, the checking (block 255) may discard the maximum at Pitmin and rather choose a true local maximum inside the search range corresponding to R(T 0 ) . Resulting in a maximum location information 255a being characterized by T 0 instead of Pitmin.

In the following, an alternative implementation of the check (block 255) will be described taking reference to Fig. 5. Fig. 5 shows a graph 500 according to an aspect of the invention. On the horizontal axis 510 the time shift value is shown. Furthermore, on the vertical axis 520 the similarity value is shown in dependence on the time shift. Moreover, a curve 530 is plotted in the graph 500 which for example illustrates similarity values, e.g. 130a, 230a or 251 a. The curve 530 is similar to curve 430 in Fig. 4 and shows an alternative procedure if the check 255 finds out that a maximum location information 254a indicates that a maximum is located at the border of the search range. The graph 500 shows a maximum value of the curve 530, on the intersection with the vertically dashed line labeled Pitmin with respect to values to the right of it, as illustrated already in graph 400 of Fig. 4 (R Pitmin) is a maximum between d = Pitmin and d = Pitmax). Alternatively, to the procedure described in Fig.4, the search range is extended beyond Pitmin to check 255 if the found maximum R (Pitmin) is truly a local maximum (with smaller values on both sides). While searching beyond Pitmin a new local maximum R(Pitmin - 2) is found which in turn will be returned as a (new, revised) maximum location information 255a. The additional similarity values beyond the similarity value R(Pitmin) can for example be available due to the fact that this additional search is performed on an upsampled version of the curve 430 of Fig. 4. Therefore, no new calculations may be necessary for retrieval of the values beyond R (Pitmin) except for an upsampling of the previously employed sequence of similarity values.

Fig. 8 shows an illustrative graph of an ' audio signal, for example of the audio signal 1 10 and 210. The signal has a frame-wise sectioning and three frames are displayed. Two arrows indicate the shortest time shift Pitmin and the longest time shift Pitmax, and the arrow labeled lag window indicates the variability of the lag window to scale in between the values Pitmin and Pitmax. Fig.7 illustrates a flow chart 700 of a method according to an aspect of the invention. In a first step, the length of signal portions is determined 710, wherein the length is linearly dependent on the considered time shift. Subsequently, based on the determined length, pair of signal portions are determined 720. Furthermore, based on the determined pair of signal portions, similarity values are obtained 730. Optionally, in a final step based on the determined similarity value a pitch information is determined 740.

The method 700 can be supplemented by any of the featured and functionalities described herein, also with respect to the apparatus.

Further aspects and conclusion In the following, some aspects and thoughts according to the present invention are treated.

An aspect according to the invention is finding the fundamental frequency, i.e. the pitch value (also called lag value in time domain), on a speech signal using the autocorrelation method. In the speech coder AMR-WB codec [1 ], the pitch search is split into an open- loop and closed-loop pitch search. The open-loop pitch search is a process of estimating the near optimal lag directly from the weighted speech input. Depending on the mode, the open-loop pitch analysis is performed once per frame (every 20 ms) or twice per frame (each 10 ms) to find two estimates of the pitch lag in each frame. This is done in order to simplify the pitch analysis and confine the closed-loop pitch search to a small number of lags around the open-loop estimated lags. In some embodiments, such a procedure may optionally be used.

The search range is adjusted to the human vocal tract. Therefore, the pitch search algorithm, for example of AMR-WB, is constrained to search only between the minimum pitch value of 55 Hz and the maximum pitch value of 380 Hz. The AMR-WB codec [1 ] is using a fix search window size for the autocorrelation. It has been found that this fix search window size is not optimal: sometimes the correlation window for pitch lag estimation may fail to contain a complete pitch cycle, thus making correlation difficult or not meaningful; if the window is too large, it may cause complexity problems and also increase the difficulty to detect a short pitch lag. It has also been found that an oversized window will cost a lot of additional complexity. VMR-WB [2] and the EVS codec [3] are using respectively three and up to four different lengths for the autocorrelation window, divided in four sections: [10, 16], [17, 31 ], [32, 61 ] and [62, 1 15], where the pitch range is from 10 to 1 15. It has been found that a main drawback is that pitch values inside one section are using the same autocorrelation size and therefore are not treated equally, which can lead to wrong pitch values. For example, the pitch values of 62 and 1 15 are using the same autocorrelation length of 1 15. In some codecs, pitch values of the last frames are taken into account. However, prior knowledge about the last pitch value is not always available, for example in codecs operating in the frequency domain where no pitch values is needed for normal processing, like AAC-ELD [4].

In the following, various aspects of the present invention are further discussed.

An aspect of the invention presents an approach with a low complexity and robust pitch search using a pitch-adaptive autocorrelation size on integer precision. It does not need any prior knowledge of the signal, like previous pitch values. Such an approach may, for example, be implemented using the selection of the length of signal portions as performed by blocks 140,240. For complexity reasons, the pitch search can be separated into two stages similar to the pitch search in AMR-WB codec [1].

In the AMR-WB codec [1], the search range for the pitch search is adapted on the human vocal tract. Therefore the pitch values of 55Hz to 376Hz at the sampling rate of 12.8 kHz are observed. Based on this, the borders of Pitmax = 872 samples and Pitrnin = 126 samples for a sampling rate of 48 kHz will be used in an approach according to an aspect of the invention. This corresponds to the pitch values from 55Hz to 380 Hz.

According to a further aspect of the invention, in a first stage, the signal, e.g. signal 10 or 210, is downsampied like in the AMR-WB codec [1], for example in a not-shown stage of apparatuses 100 and 200. But instead of decimation the signal to a fix sampling frequency of 6.4 kHz, the signal (e.g. signal 1 10 or 210) is decimated to a sampling frequency varying between 5.3 and 8 kHz depending of the input sampling rate. The decimation factor decim is chosen such as: where fs is the input sampling rate. A downsampling is done via an FI R filter with the taps being

[0.0101 , 0.2203, 0.5391 , 0.2203, 0.0101 ] for decim = 2,

[0.0068, 0.0664, 0.2465, 0.3608, 0.2465, 0.0664, 0.0068] for decim = 3,

[0.0051 , 0.0294, 0.1 107, 0.2193, 0.2710, 0.2193, 0.1 107, 0.0294, 0.0051 ] for decim = 4 and

[0.0034, 0.0106, 0.0333, 0.0739, 0.1236, 0.1648, 0.1809, 0. 1648, 0.1236, 0.0739, 0.0333, 0.0106, 0.0034] for decim = 6 (for example, in order to avoid aliasing). According to an aspect of the invention, a pitch search can be done on the downsampled version (for example, on signal 1 10, 210) via the autocorrelation method on an iterative loop (for example, controlled by block 252) from the minimum lag pitmin = to the decim maximum lag value pitmax = P ^~n w ' in * ne autocorrelation size (represented, for example, by the length information 240a) going from 5ms to 10ms on integer precision.

In some algorithms, there is a possibility that the maximum of the autocorrelation function corresponds to a multiple or sub-multiple of the pitch-lag d and that the estimated pitch- lag will therefore not be correct. EP0628947 [5] addresses this problem by applying a weighting function w(d) to the autocorrelation function R :

R(d) = R(d) w{d), d = pitmin ... pitmax

where the weighting function has the following form: w{d) = °^ K . K is a tuning parameter which is set at a value low enough to reduce the probability of obtaining a maximum for R(d) at a multiple of the pitch lag but at the same time high enough to exclude sub-multiples of the pitch-lag. Similar to the AMR-WB codec [1 ], this approach uses the weighting function used with K = 0.7. The described weighting may be the windowing as performed in block 253.

In some algorithms, like in the AMR-WB codec [1 ], the maximum autocorrelation value is finally normalized, this allows to compare this maximum across signals or against a threshold value. However, according to an aspect of the invention, to increase the robustness of the pitch search, by making the autocorrelation free of energy fluctuations in the signal, the autocorrelation values gets normalized, for example in block 251 , before the maximization (or maximum search) is done as follows:

R{d) =

-JnormiQ) · norm(d) where R(d) is the normalized autocorrelation vaiue between the unshifted signal and the left shifted signal by d samples, R'(d) is the autocorrelation value between the unshifted signal and the left shifted signal by d samples, w(d) is the weighting factor of d, norm(0 is the dot product of the unshifted signal part (for example, of the first portion of the pair of portions) and norm(d) is the dot product of the signal part shifted left by d samples (for example, of the second portion of the pair of portions). (For example, R(d) may correspond to the normalized similarity value 251 a, and R'(d) may correspond to the similarity value 230a or 130a) According to a further aspect of the invention, to save complexity, the normalization values norm(0) and norm(d , which may be used for normalization and estimated in block 251 , are calculated with an updating mechanism. Thus, norm(d) can be calculated as.

norm{d) = norrn(d - 1) + - x d 2 +len d)

where x d is the signal sample left shifted by d samples with the search window of length len(d). Only for the initial values of norm(0) and norm(pitmin), the full dot products have to be calculated with len(pitmiri). If the length of the search window is changing from d - 1 to d, the normalization value needs an additional update of len(d - 1) - len(d) ' values. According to another aspect of the invention, another major difference to some pitch search algorithms based on the autocorrelation method, is that this approach only choses pitch values, which represents a real local maximum, for example performed in block 255. Thus, false pitch results can be avoided, which happen if a maximum of the autocorrelation is outside the search range (for example, confer to the example described with respect to Figs. 4 and 5). This means, the lag value of d is only used, if;

R(d - 1) < R(d)≥ R(d + 1).

Like done in the AMR-WB codec [1 ], a second stage of the pitch search (e.g. closed loop) is operating in the original sampled signal domain and only uses a small number of lags around the upsampled open-loop estimated lag T Q . The pitch search, for example the maximum search in 254, also uses a search window length Len (which may be a constant search window length in some embodiments), but it is now dependent of 7' 0 as follows:

Len = rn · 7 ' 0 + startlen - Pitmin m

where (slop ten— startlen)

Pitmax - Pitmin and startlen = 5ms and stoplen = 10ms.

According to a further aspect of the invention, the search range, for example in the maximum search 254, is limited by

where 5 = 4 - decim.

According to an aspect of the invention, the algorithm chooses the lag value T belonging to the maximum normalized autocorrelation value.

According to another aspect of the invention, an improvement of the proposed method is that the pitch search on the search border is handled with care, as described with respect to block 255 and with respect to Figs. 4 and 5. If the lag value of Pitmin or Pitmax is chosen in some method, the algorithm is in danger of using a false lag value when the real maximum is outside the search range. This can even happen with a pitch search as described above, because the open loop and closed loop pitch search are working on different signal resolutions due to the Downsampling of the open loop pitch search. Therefore, this approach extends the search by a maximum of, for example, four samples above the corresponding border (in block 255). The pitch search stops and uses the corresponding lag value, if a first real maximum of the normalized autocorrelation is found outside the search range of [Pitmin Pitmax]. Otherwise, Pitmin - 4 or Pitmax + 4 is selected. 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, one or more of the most important method steps may be executed by such an apparatus. 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 EEPRO 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 apparatus described herein may be implemented using a hardware apparatus, or using a computer, or using a combination of a hardware apparatus and a computer. The apparatus described herein, or any components of the apparatus described herein, may be implemented at least partially in hardware and/or in software.

The methods described herein may be performed using a hardware apparatus, or using a computer, or using a combination of a hardware apparatus and a computer.

The methods described herein, or any components of the apparatus described herein, may be performed at least partially by hardware and/or by software.

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.

References:

[1] 3GPP, TS 26.190, "Speech codec speech processing functions; Adaptive Muiti-Rate - Wideband (AMR-WB) speech codec; Transcoding functions (Release 12)," 2014.

[2] 3GPP2, C.S0052-A, " Source-Controlled Variable-Rate ultimode Wideband Speech Codec (VMR-WB), Service Options 62 and 63 for Spread Spectrum Systems", Version 1.0, April 2005 [3] 3GPP, TS 26.445, "Universal Mobile Telecommunitations System (UMTS); LTE;

Codec for enhanced Voice Services (EVS); Detailed algorithmic description", version 12.3.0, Release 12

[4] AAC-ELD Standard:

http://www.iso.org/iso/iso catalogue/catalogue tc/catalogue detail. htm?csoumber=48457

[5] EP0628947 "Method and device for speech signal pitch period estimation and classification in digital speech coders"