Note: Within nine months of the publication of the mention of the grant of the European patent in the European Patent
119
10
5
B
1
&
(11)EP 2 119 105 B1
(12)
EUROPEAN PATENT SPECIFICATION
(45) Date of publication and mentionof the grant of the patent:
14.12.2011 Bulletin 2011/50
(21) Application number: 07859037.9
(22) Date of filing: 14.12.2007
(51) Int Cl.:
H04L 12/00(2006.01)
(86) International application number:
PCT/IB2007/003905
(87) International publication number:
WO 2008/075167 (26.06.2008 Gazette 2008/26)
(54) METHOD AND APPARATUS FOR DETECTING VOCAL DATA FLOW IN A PACKET DATA FLOW
VERFAHREN UND VORRICHTUNG ZUR DETEKTION DES VOKALDATENFLUSSES IN EINEM PAKETDATENFLUSS
MÉTHODE ET APPAREIL DE DÉTECTION D’UN FLUX DE DONNÉES VOCALES DANS UN FLUX DE DONNÉES DE PAQUET
(84) Designated Contracting States:
AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC MT NL PL PT RO SE SI SK TR
(30) Priority: 18.12.2006 IT MI20062417
(43) Date of publication of application:
18.11.2009 Bulletin 2009/47 (73) Proprietors: • Vodafone Group PLC Newbury Berkshire RG14 2FN (GB) • Politecnico di Torino 10129 Torino (IT) • Vodafone Omnitel N.V.
20094 Corsico Milano (IT)
(72) Inventors:
• PERINO, Massimo 10015 Ivrea (TO) (IT) • MELLIA, Marco
10129 Torino (TO) (IT) • ROSSI, Dario
10129 Torino (TO) (IT) • MEO, Michela
10129 Torino (TO) (IT)
(74) Representative: Keston, David Arthur
Vodafone Group Services Ltd. Group Legal (Patents)
Vodafone House The Connection Newbury
Berkshire RG14 2FN (GB)
(56) References cited:
• MOORE A W ET AL: "Internet Traffic Classification Using Bayesian Analysis Techniques" SIGMETRICS 2005 / PERFORMANCE EVALUATION
REVIEW.INTERNATIONAL CONFERENCE ON MEASUREMENT AND MODELING OF
COMPUTER SYSTEMS. PROCEEDINGS. BANFF, ALBERTA, CANADA, JUNE 6 - 10, 2005;
[PROCEEDINGS OF THE ACM SIGMETRICS INTERNATIONAL CONFERENCE ON
MEASUREME, 6 June 2005 (2005-06-06), pages 50-60, XP007903906 ISBN: 978-1-59593-022-4 • SUH K ET AL: "Characterizing and Detecting Skype-Relayed Traffic" INFOCOM 2006. 25TH IEEE INTERNATIONAL CONFERENCE ON COMPUTER COMMUNICA TIONS.
PROCEEDINGS, IEEE, PI, 1 April 2006 (2006-04-01), pages 1-12, XP031072353 ISBN: 978-1-4244-0221-2
5 10 15 20 25 30 35 40 45 50 55 Description
[0001] The present invention concerns a method for detecting vocal data flow in a packet data flow. The problem of
detecting vocal data flow in a packet data flow or voice traffic in traffic on an IP network is known in the current state of the art.
[0002] This problem is known in particular with reference to VoIP telephony wherein a vocal communication is
estab-lished on an IP network between two users. A typical example of software that generates vocal data flow on an IP network is Skype.
[0003] The protocols and algorithms that enable Skype, like most vocal programmes, to generate vocal data flow on
an IP network, are known and encrypted.
[0004] For this reason it is very difficult to detect the presence of vocal data flow, such as Skype, in an aggregate data
flow comprising flows of various types: vocal, data, video, etc.
[0005] The above situation demonstrates a need to be able to detect the presence of vocal data flow in a packet data
flow when the protocols and algorithms used to generate the vocal data flow are not known, and to include this vocal flow in the packet data flow.
[0006] Previous attempts to detect the presence of vocal data flow in aggregate packet data flow include the systems
described in "Characterizing and Detecting Skype-Related traffic" (SUH, et al.) and "internet traffic classification using basic analysis techniques" (MOORE, et al.)
[0007] In view of the state of the art described, the object of the present invention is to devise a method and apparatus
for identifying vocal data flow in a packet data flow which is capable of overcoming the drawbacks that exist in the known art.
[0008] According to the present invention, this object is achieved by a method for identifying vocal data flow in a packet
data flow according to claim 1.
[0009] According to a further aspect, this object is achieved by an apparatus for identifying vocal data flow in a packet
data flow according to claim 11.
[0010] Thanks to the present invention it is possible to obtain a method and an apparatus capable of detecting vocal
data flow in an aggregate flow on an IP network by using a simple technique.
[0011] Further features and advantages of the method and apparatus According to the present invention will emerge
from the following description of a preferred embodiment, given by way of example and in no way limiting, and with reference to the accompanying drawings, in which:
- Figure 1 shows an explanatory schematic diagram of the method of detecting vocal data flow in a packet data flow according to the present invention,
- Figure 2 shows likelihood functions used in an embodiment of the method according to the present invention,
- Figures 3 and 4 show belief distributions obtained during the method described in the present invention,
- Figure 5 shows a block diagram of an apparatus for detecting vocal data flow in a packet data flow according to the present invention.
[0012] In the course of the present description, the likelihood or belief function used in the Naive Bayes Classifier
technique shall be adopted. The Naive Bayes Classifier technique will now be described in order to make the following description of the invention clearer.
[0013] The Naive Bayes Classifier (NBC) technique is based on Bayes’ Theorem. In fact, it treats the observation of
an object that can be described by a plurality of observable or measurable quantities, referred to in the present invention as measurable variables.
[0014] Given a measurable variable X of an object under observation, we can obtain different samples of the variable
X, which can be described by means of the vector x=[xi], in which xi is the ith value of the measured variable X. What is
pertinent as regards the present invention is determining the probability P{C|x} that the object belongs to a Class C having observed or measured a sequence of values x of the measurable variable X. The NBC technique is thus based on an a priori knowledge of the probability P{x|C} in order to determine the a posteriori probability P{C|x}, in which
5 10 15 20 25 30 35 40 45 50 55
[0016] In some cases, instead of estimating the probability P{C|x}, it is possible to find out the likelihood that the object belongs to class C rather than to other classes, so that a criterion of maximum likelihood can be used in which P{C|x} ∝P{x|C}. P{x|C} is referred to in literature as likelihood or belief. The greater the belief for a given class, the greater the probability that the object belongs to that given class.
[0017] In order to detect the presence of vocal data flow in a packet data flow it is necessary to identify a number of
measurable variables of the packet data flow and calculate the belief that each variable belongs to a vocal data flow.
[0018] The packet data flow is divided into packet blocks w(k), each block w comprising a predefined number of packets.
[0019] With reference to the accompanying Figures, the method for detecting the vocal data flow in a packet data flow
comprises the steps of
a) providing, for each measurable variable X, Y at least one function P{x|C}, P{y|C} representative of the distribution of the values of the respective variable X, Y in a vocal data flow,
b) measuring, for each block w(k) of a predefined number K of blocks of packet data flow, at least one value x, y of
each variable X, Y in order to obtain, for each variable X, Y, a sequence of measured values x(k), y(k) on the predefined
number K of blocks;
c) applying, for each variable X, Y, each measured value x(k), y(k) of the sequence of measured values of the variable
to the respective distribution function P{x|C}, P{y|C} in order to generate a sequence of likelihood values
d) processing, for each variable X, Y, the respective sequence of likelihood values in order to generate the respective average likelihood value E[Bx], E [By] on the predefined number K of blocks,
e) processing the average likelihood values E [Bx], E [By] generated for each X, Y variable in order to generate a reference likelihood value B ;
f) comparing the reference likelihood value B with a threshold likelihood value Bmin in order to detect the presence of vocal data flow in the predefined number K of blocks of the packet data flow to be analysed.
[0020] In particular, the presence of vocal data flow is detected when the reference likelihood value B is greater than the threshold likelihood value Bmin.
[0021] Advantageously, the processing step e) includes the step of calculating the minimum value min (E[Bx],E[By]) of the average likelihood values E[Bx], E[By] generated for each variable X, Y in order to generate the reference likelihood value B .
[0022] In order to provide the distribution function of each measurable variable X, Y, step a) includes the steps of:
al) providing a packet vocal data flow;
a2) measuring, for each variable X, Y, the values of the variable in the packet vocal data flow in order to obtain the distribution function of the variable P{x|C}, P{y|C}.
[0023] If the vocal data flow is generated by a plurality of voice codecs and the values assumed by at least one variable
X depend on the voice codec, step a) of the method includes, for the purpose of providing the distribution function of this measurable variable X, the steps of:
a1) providing a plurality of packet vocal data flows, each flow being generated by one respective voice codec of the plurality of voice codecs;
a2) measuring, for at least one variable X, the values of the variable X in each packet vocal data flow in order to obtain the distribution function Pj{x|C} of the variable X for each voice codec j.
[0024] If each voice codec has a plurality of operating configurations, step a2) includes the measurement step, for at
least one variable X, for each operating configuration of each voice codec, of the values of the variable X in each packet vocal data flow in order to obtain a distribution function of the variable X for each operating configuration of each voice codec j.
[0025] In the above-mentioned case, the successive steps c) and d) are performed for at least one variable X and for
each codec (j) in order to generate an average likelihood value for each codec.
5 10 15 20 25 30 35 40 45 50 55
c1) applying each measured value of the sequence of measured values of at least one variable X depending on the voice codec to the distribution function of each operating configuration of the respective voice codec in order to generate a plurality of likelihood values, and
c2) calculating, for each measured value of the sequence of measured values, the maximum of the plurality of likelihood values in order to generate the sequence of likelihood values In this case, step d) includes the steps of:
d1) processing for at least one variable X and for each codec j, the respective sequence of likelihood values in order to generate the respective average likelihood value
d2) processing the average likelihood values generated for each codec for at least one variable
[0027] X in order to generate the average likelihood value E [Bx] on the predefined number K of blocks. According to a preferred embodiment and as shown in the example given below, step d2) includes the step of calculating the maximum of the average likelihood values generated for each codec in order to generate the average likelihood value E[Bx] on the predefined number K of blocks, where
[0028] The method of the present invention also enables the maximum likelihood codec to be found. For this purpose,
a step is included that involves finding the codec j associated with the maximum of the likelihood values generated for each codec j, this codec j representing the maximum likelihood voice codec of the vocal data flow.
[0029] With reference to Figure 1, there now follows a description of the application of the method according to the
invention in order to detect Skype vocal data flow in a packet data flow.
[0030] As Skype is a closed and proprietary programme, it is not possible to decode a data flow generated by Skype
in order to detect the presence of vocal data flow.
[0031] According to the method of the present invention, at least two measurable variables of a packet data flow must
be selected. Advantageously, the measurable variables chosen must be capable of differentiating Skype vocal flow from normal Internet flow on an IP network.
[0032] Considering the nature of voice communication in real time, a Skype flow will generate a low-rate bit flow lasting
a few tenths of a second and comprising a high number of brief messages, the size of which depends on the sampling rate of the codec and the period of time that elapses between two consecutive messages belonging to the same data flow. By contrast, a data flow tends to have long messages and high bit rates.
[0033] Consequently, the following measurable variables have been chosen:
- size of the message, or length of the payload incorporated into the transport level protocol packet. In particular, a window or packet block of messages w is considered and for each message the size of the packet is measured. This therefore gives:
in which si is the size of the message of the ith packet of a window of consecutive packets w. Since the size of the
message depends heavily on the specific codec, a distribution function for each of the codecs supported by Skype is required;
- the average inter-packet gap (IPG), regarded as the interval of time between the instant at which the first packet and the wth packet are received within a window or packet block. This therefore gives:
5 10 15 20 25 30 35 40 45 50 55
[0034] In this case, there is only one classifier or distribution function since the average IPG is independent of the
codec used.
[0035] In order to optimise numeric and normalisation calculations, Bs is defined as the belief of the message size variable and Bτ is defined as the belief of the average IPG variable, where
and
[0036] It is helpful to remember that the logarithmic operator has been inserted only for the purposes of numeric
calculation since the values of the functions P{si|C}, P{τ|C} are extremely small while their logarithm enables easier management on the level of numeric calculation.
[0037] It should also be noted that the above-mentioned measurable variables have been chosen as variables in a
reduced window of samples, so as to compensate for the effect of the high variability of the flow. For the choice of the value w of windows, it has been found that its value has no influence on the final calculation for values greater than 10. In the example described below, w has been set at 30 which roughly corresponds to a window of 1 second.
[0038] A Skype flow source is then provided and the message size variable in the Skype flow is measured in order to
obtain the distribution of the values of the message size variable for each codec. As is known, a codec can operate at different operating points that correspond to different settings of various parameters of the codec, for example the rate of sampling, the size of the header, the redundancy factor and the message framing time. For each combination of values of the above-mentioned parameters, the distribution of the message size is represented by a Gaussian curve N (P, σ) where P is the average value and σ is the standard deviation.
[0039] Figure 2 shows an example of message size distribution curves for various operating points of ISAC and G.
729 codecs. Each Gausssian curve represents an operating point of the codec, or one class as regards the NBC technique.
[0040] The same method is adopted to find the distribution curve of the average IPG values, represented by a Gaussian
curve with an average value of P equal to the framing time ∆T and standard deviation σ =3 regardless of the codec.
[0041] Subsequently, having taken a data flow to be analysed, the values of the two variables chosen, the message
size and the average IPG, are measured
Message size
[0042] The message size is measured for each measurement window w. In each window w, for each codec j, the
message size is measured and this value is applied to the distribution functions of the message size and the maximum is chosen as a belief value between the class C beliefs of the distribution curves, or the different operating points of the jth codec. This maximum value is indicated by
[0043] By repeating this measurement on all of the windows, a belief sequence is generated for each codec. [0044] The belief value of the flow for the codec j is obtained by calculating the average value on k of belief
5 10 15 20 25 30 35 40 45 50 55
[0045] In order to find the average belief E[Bs] for the message size variable, the maximum is calculated between the beliefs which gives
[0046] The maximum likelihood codec is therefore the codec j associated with Max Bs or
[0047] Basically, first and foremost the temporal trend of the beliefs for each codec is obtained and then the average
value for each codec is calculated so as to obtain the belief value of each codec. In this way, it is possible to determine which codec has the greatest belief or the maximum likelihood.
Average IPG
[0048] The same procedure applies to the average IPG except that the average IPG value is independent of the
codecs used. For each window k, belief is obtained. The belief value of the flow is obtained by calculating the temporal average so as to obtain the average belief value E [Bτ], where
[0049] In order to decide whether the flow has been generated by Skype, the classifiers of the message size and the
average IPG are found by calculating the minimum B of the average beliefs E[Bs], E[Bτ], where
represents the reference belief value.
[0050] Lastly, value B of the reference belief value is compared with a threshold belief value Bmin in order to determine whether the flow is a Skype flow.
[0051] Various experiments have been carried out to analyse the impact of the threshold belief value Bmin.
[0052] The experiments performed have shown that the distribution of the belief value has a "knee" region in which
the derivative before distribution shifts from very low values to values tending to infinity (Figures 3 and 4). This region greatly simplifies the setting of the threshold belief value Bmin.
[0053] With reference to Figures 3 and 4, the continuous line represents belief E [Bs], while the dotted line represents belief E [Bτ] for two different codecs, namely ISAC codec and G.729 codec.
[0054] The present invention also concerns an apparatus 10 for detecting vocal data flow in a packet data flow divided
into packet blocks w(k), each block w comprising a predefined number of packets (Figure 5).
[0055] The apparatus 10 comprises storage means 11 capable of providing, for each measurable variable X, Y, at
least one, function P{x|C} P{y|C} representative of the distribution of the values of the respective variable X, Y in a vocal data flow.
[0056] The apparatus 10 also comprises measuring means 12 capable of receiving packet data flow in order to
measure, for each block w(k) of a predefined number K of blocks of packet data flow, at least one value x,
[0057] y of each variable X, Y so as to obtain, for each variable X, Y, a sequence of x(k) y(k) measured values for the
predefined number K of blocks.
[0058] The apparatus 10 also comprises processing means 13 connected to the storage means 11 and the measuring
5 10 15 20 25 30 35 40 45 50 55
- applying, for each variable X, Y, each measured value x(k) y(k) of the sequence of measured values of the variable
at the respective distribution function P{x|C}, P{y|C} in order to generate a sequence of likelihood values
- processing, for each variable X, Y, the respective sequence of likelihood values in order to generate the respective average likelihood value E[Bx], E[By] on said predefined number K of blocks, and
- processing the average likelihood values E[Bx], E[By] generated for each variable X, Y in order to generate a reference likelihood value B.
[0059] Lastly, the apparatus comprises comparison means 14 connected to the processing means 13 and capable of
comparing the reference likelihood value B with a likelihood threshold value Bmin so as to detect the presence of vocal data flow in packet data flow, particularly in the predefined number K of blocks. In the embodiment, likelihood threshold value Bmin is stored in the storage means 11. Alternatively this threshold value can be stored in other storage means connected to the comparison means 14.
[0060] Depending on the comparison, the comparison means 14 are capable of generating a value on the basis of
which it is possible to establish whether vocal data flow is present in packet data flow, particularly in the predefined number K of blocks.
[0061] Advantageously, the processing means 13 are capable of calculating the minimum of the average likelihood
values E[Bx], E[By] generated for each variable X, Y in order to generate the reference likelihood value B.
[0062] If the vocal data flow is generated by a plurality of voice codecs j and at least one variable X is dependent on
the voice codec, the storage means 11 provide the distribution function Pj{x|C} of the variable X for the respective voice codec j.
[0063] More particularly, when each voice codec j has a plurality of operating configurations, the storage means 11
provide a distribution function of the variable X for each operating configuration of the respective voice codec j.
[0064] In this case, the processing means 13 are capable of:
- applying each measured value of the sequence of measured values of at least one variable X dependent on the voice codec to the distribution function of each operating configuration of the respective voice codec in order to generate a plurality of likelihood values, and
- calculating, for each measured value of the sequence of measured values, the maximum of the plurality of likelihood values in order to generate the sequence of likelihood values
[0065] Furthermore, the processing means 13 are capable of:
- processing, for at least one variable X and for each codec j, the respective sequence of likelihood values in order to generate the respective average likelihood value and
- processing the average likelihood values generated for each codec for at least one variable X in order to generate the average likelihood value E[Bx] on the predefined number K of blocks.
[0066] In particular, the processing means 13 are capable of calculating the maximum of the average likelihood values
generated for each codec in order to generate the average likelihood value E[Bx] on the predefined number
K of blocks, where as defined above by relation (3).
[0067] The apparatus 10 also enables the maximum likelihood codec to be found. For this purpose, the processing
means 13 are capable of finding the codec j associated with the maximum of the likelihood values generated for each codec j, this codec j representing the maximum likelihood voice codec of the vocal data flow.
[0068] With reference to the embodiment shown in the accompanying Figures, the measuring means 12 of the
appa-ratus 10 comprise first measuring means 12a capable of measuring the message size and second measuring means 12b capable of measuring the average IPG.
5 10 15 20 25 30 35 40 45 50 55
likelihood calculation blocks 16a, 16b, 16c, one for each codec j, each representing an NBC.
[0070] The probability distribution functions Pj{si|C} of the message size variable of each codec j are stored in the storage means 11 connected to each likelihood calculation block 16a, 16b, 16c.
[0071] The likelihood calculation blocks 16a, 16b, 16c apply to each message size measurement value input into the
respective probability distribution functions Pj{si|C} of the message size of the respective codec j.
[0072] The output values from the likelihood calculation blocks 16a, 16b, 16c are input into the respective maximum
calculation blocks 17a, 17b, 17c which calculate as belief value the maximum among the class C beliefs of the distribution curves Pj{si|C}.
[0073] The belief values are then input into the respective average value calculation blocks 18a, 18b, 18c which calculate the average value on k of the beliefs of each codec j. The calculation blocks 18a, 18b, 18c will therefore output values
[0074] In order to find the average belief E[Bs] for the message size variable, the apparatus 10 comprises a calculation block 19 capable of calculating the maximum value between the beliefs output from the calculation blocks
18a, 18b, 18c from which is obtained.
[0075] The calculation block 19 also enables the maximum likelihood codec to be determined, that is the codec j
associated with the Max Bs, or the codec j that satisfies the relation
[0076] The probability distribution functions P{τ|C} of the average IPG variable are stored in the storage means 11.
[0077] The apparatus also comprises a likelihood calculation block 16d into which the average IPG values measured
by the second measuring means 12b are input thereby, such calculation block 16d representing an NBC.
[0078] The values output by the likelihood calculation block 16d are input into a maximum calculation block 17d which
calculates as belief value the maximum among the class C beliefs of the probability distribution curves P{τ|C}.
[0079] The belief values are then input into an average value calculation block 18d which calculates the average value on k of the beliefs Calculation block 18d will therefore output the average value of belief E[Bτ], where
[0080] In order to decide whether the flow has been generated by Skype, the output of the calculation block 18d, or
the average value of belief E [Bτ], and the output of calculation block 19, or the average belief value E[Bs], are input into a calculation block 21 which calculates the minimum B of the average beliefs E[Bs], E[Bτ], where B = min(E[Bs],E[Bτ]) represents the reference belief value.
[0081] This reference belief value B is then compared by the comparator 14 with a threshold belief value Bmin to establish whether the flow is a Skype flow.
[0082] As can be appreciated from the above description, the method according to the present invention makes it
possible to meet the requirements and to overcome the drawbacks referred to in the introductory part of the present description with reference to the known art.
[0083] In particular, the method and the apparatus according to the invention make it possible to detect the presence
of any type of vocal flow, even if it is encrypted.
[0084] Clearly, an expert in the field, in order to meet contingent and specific requirements, may make numerous
modifications and variations to the method and apparatus according to the above-described invention, all being contained, however, within the scope of protection of the invention as defined by the following claims.
5 10 15 20 25 30 35 40 45 50 55 Claims
1. Method for detecting vocal data flow in a packet data flow, said packet data flow being divided into packet blocks
(w(k)) each block (w) comprising a predefined number of packets, said data flow having at least two measurable
variables (X,Y), a first of said measurable variables (X) being the message size and a second of said measurable variables (Y) being the average inter-packet gap, said method being characterised in that it includes the steps of: a) providing, for each measurable variable (X,Y), at least one function (P{x|C}, P{y|C}) representative of the distribution of the values of the respective variable (X, Y) in a vocal data flow;
b) measuring, for each block (w(k)) of a predefined number (K) of blocks of said packet data flow, at least one
value (x, y) of each variable (X, Y) in order to obtain, for each variable (X, Y), a sequence of measured values (x(k), y(k)) on the predefined number (K) of blocks;
c) applying, for each variable (X, Y), each measured value (x(k), y(k)) of the sequence of measured values of
the variable to the respective distribution function (P{x|C}, P{y|C}) in order to generate a sequence of likelihood values
d) processing, for each variable (X, Y), the respective sequence of likelihood values in order to generate the respective average likelihood value (E[Bx], E[By]) on said predefined number (K) of blocks; e) processing the average likelihood values (E[Bx], E[By]) generated for each variable (X, Y) in order to generate a reference likelihood value (B ), the reference likelihood value ( B )being generated by calculating the minimum of the average likelihood values (E [Bx], E[By]) generated for each variable (X, Y); and
f) comparing said reference likelihood value (B ) with a threshold likelihood value (Bmin) in order to detect the presence of vocal data flow in the predefined number (K) of blocks of said packet data flow.
2. Method according to claim 1, wherein the presence of vocal data flow is detected when said reference likelihood
value (B ) is greater than said threshold likelihood value (Bmin).
3. Method according to any one of claims 1 to 2, wherein said step a) of providing at least one distribution function
includes the steps of:
a1) providing a packet vocal data flow,
a2) measuring, for each measurable variable (X,Y), the values of the variable in said packet vocal data flow in order to obtain the distribution function of the variable (P{x|C}, P{y|C}).
4. Method according to any one of claims 1 to 2, wherein said vocal data flow is generated by a plurality of voice codecs
(j), at least one variable (X) being dependent on the voice codec, said step a) of providing at least one distribution function includes the steps of:
a1) providing a plurality of packet vocal data flows, each flow being generated by one respective voice codec of the plurality of voice codecs,
a2) measuring, for at least one variable (X), the values of the variable (X) in each packet vocal data flow in order to obtain the distribution function (Pj{x|C}) of the variable (X) for each voice codec.
5. Method according to claim 4, wherein each voice codec has a plurality of operating configurations, said step a2)
including the measurement step, for at least one variable (X), for each operating configuration of each voice codec, of the values of the variable (X) in each packet vocal data flow in order to obtain a distribution function of the variable (X) for each operating configuration of each voice codec (j).
6. Method according to either claim 4 or claim 5, wherein said steps c) and d) are performed for at least one variable
(X) and for each codec (j) in order to generate an average likelihood value for each codec (j).
7. Method according to any one of claims 4 to 6, wherein said step c) includes the steps of:
5 10 15 20 25 30 35 40 45 50 55
the voice codec to the distribution function of each operating configuration of the respective voice codec in order to generate a plurality of likelihood values;
c2) calculating, for each measured value of the sequence of measured values, the maximum of the plurality of likelihood values in order to generate the sequence of likelihood values
8. Method according to claim 7, wherein said step d) includes the steps of:
d1) processing, for at least one variable (X) and for each codec (j), the respective sequence of likelihood values in order to generate the respective average likelihood value
d2) processing the average likelihood values generated for each codec for said at least one variable (X) in order to generate the average likelihood value (E[Bx]) on said predefined number (K) of blocks.
9. Method according to claim 8, wherein said step d2) includes the step of calculating the maximum of the average
likelihood values generated for each codec in order to generate the average likelihood value (E[Bx]) on said predefined number (K) of blocks.
10. Method according to claim 9, including furthermore the step of finding the codec (j) associated with the maximum
of the likelihood values (E[Bx]) generated for each codec said codec (j) representing the maximum likelihood voice codec of said vocal data flow.
11. Apparatus (10) for detecting the vocal data flow in a packet data flow, said packet data flow being divided into packet
blocks (w(k)) each block (w ) comprising a predefined number of packets, said data flow having at least two
urable variables (X,Y), a first of said measurable variables (X) being the message size and a second of said meas-urable variables (Y) being the average inter-packet gap, said apparatus (10) being characterised in that it includes: - storage means (11) capable of providing, for each measurable variable (X,Y), at least one function (P{x|C}, P {y|C}) representative of the distribution of the values of the respective variable (X,Y) in a vocal data flow, - measuring means (12) capable of receiving said packet data flow in order to measure, for each block (w(k))
of a predefined number (K) of blocks of said data flow, at least one value (x,y) of each variable (X,Y) so as to obtain, for each variable (X,Y), a sequence of measured values (x(k), y(k)) for the predefined number (K) of blocks,
- processing means (13) connected to said storage means (11) and to said measuring means (12) and capable of: - applying, for each variable (X,Y), each measured value (x(k), y(k)) of the sequence of measured values of
the variable at the respective distribution function (P{x|C}, P{y|C}) in order to generate a sequence of likelihood values
- processing, for each variable (X,Y), the respective sequence of likelihood values in order to generate the respective average likelihood value (E[Bx], E[By]) on said predefined number (K) of blocks, - processing the average likelihood values (E[Bx], E[By]) generated for each variable (X,Y) in order to generate a reference likelihood value (B), the reference likelihood value (B) being generated by calculating the minimum of the average likelihood values (E[Bx], E[By]) generated for each variable (X, Y),
and
- comparison means (14) connected to said processing means (13) and capable of comparing said reference likelihood value (B ) with a likelihood threshold value (Bmin) so as to detect the presence of vocal data flow in said packet data flow.
12. Apparatus (10) according to claim 11, wherein said vocal data flow is generated by a plurality of voice codecs (j)
and at least one variable (X) is dependent on the voice codec, said storage means 11 being capable of providing the distribution function (Pj{x|C}) of at least one variable (X) for each voice codec (j).
5 10 15 20 25 30 35 40 45 50 55
13. Apparatus (10) according to claim 12, wherein each voice codec (j) has a plurality of the operating configurations,
the storage means (11) being capable of providing a distribution function of at least one variable (X) for each operating configuration of each voice codec (j).
14. Apparatus (10) according to claim 13, wherein said processing means (13) are capable of:
- applying each measured value of the sequence of measured values of at least one variable (X) depending on the voice codec to the distribution function of each operating configuration of the respective voice codec (j) in order to generate a plurality of likelihood values, and
- calculating, for each measured value of the sequence of measured values, the maximum of the plurality of likelihood values in order to generate the sequence of likelihood values
15. Apparatus (10) according to claim 14, wherein said processing means (13) are capable of:
- processing, for at least one variable (X) and for each codec (j), the respective sequence of likelihood values in order to generate the respective average likelihood value and
- processing the average likelihood values generated for each codec for at least one variable (X) in order to generate the average likelihood value (E[Bx]) on the predefined number (K) of blocks.
16. Apparatus (10) according to claim 15, wherein said processing means (13) are capable of calculating the maximum
of the average likelihood values generated for each codec in order to generate the average likelihood value (E[Bx]) on said predefined number (K) of blocks.
17. Apparatus (10) according to claim 16, wherein said processing means (13) are capable of finding the codec (j)
associated with the maximum of the likelihood values generated for each codec (j), this codec (j) representing the maximum likelihood voice codec of the vocal data flow.
Patentansprüche
1. Verfahren zur Detektion eines Vokaldatenflusses in einem Paketdatenfluss, wobei der genannte Paketdatenfluss
in Paketblöcke (w(k)) unterteilt ist, wobei jeder Block (w) eine vordefinierte Anzahl von Paketen umfasst, wobei der
genannte Datenfluss wenigstens zwei messbare Variablen (X, Y) hat, wobei eine erste der genannten messbaren Variablen (X) die Nachrichtengröße und eine zweite der genannten messbaren Variablen (Y) der durchschnittliche Abstand zwischen Paketen ist, wobei das genannte Verfahren dadurch gekennzeichnet ist, dass es die folgenden Schritte beinhaltet:
a) Bereitstellen, für jede messbare Variable (X, Y), wenigstens einer Funktion (P{x|C}, (P{y|C}), die für die Verteilung der Werte der jeweiligen Variablen (X, Y) in einem Vokaldatenfluss repräsentativ ist;
b) Messen, für jeden Block (w(k)) einer vordefinierten Anzahl (K) von Blöcken des genannten Paketdatenflusses,
wenigstens eines Wertes (x, y) jeder Variablen (X, Y), um für jede Variable (X, Y) eine Folge von Messwerten (x(k), y(k)) über die vordefinierte Anzahl (K) von Blöcken zu erhalten;
c) Anwenden, für jede Variable (X, Y), jedes Messwertes (x(k), y(k)) der Folge von Messwerten der Variablen,
auf die jeweilige Verteilungsfunktion (P{x|C}, P{y|C}), um eine Folge von Wahrscheinlichkeitswerten (Bx(k), By(k))
zu erzeugen;
d) Verarbeiten, für jede Variable (X, Y), der jeweiligen Folge von Wahrscheinlichkeitswerten (Bx(k), B y(k)), um
den jeweiligen durchschnittlichen Wahrscheinlichkeitswert (E[Bx], E[By]) über die genannte vordefinierte Anzahl (K) von Blöcken zu erzeugen;
e) Verarbeiten der für jede Variable (X, Y) erzeugten durchschnittlichen Wahrscheinlichkeitswerte (E[Bx], E [By]), um einen Referenzwahrscheinlichkeitswert (B) zu erzeugen, wobei der Referenzwahrscheinlichkeitswert (B) durch Berechnen des Minimums der für jede Variable (X, Y) erzeugten durchschnittlichen
Wahrscheinlich-5 10 15 20 25 30 35 40 45 50 55
keitswerte (E[Bx], E[By]) erzeugt wird; und
f) Vergleichen des genannten Referenzwahrscheinlichkeitswerts (B) mit einem Schwellenwahrscheinlichkeits-wert (Bmin), um die Anwesenheit eines Vokaldatenflusses in der vordefinierten Anzahl (K) von Blöcken des genannten Paketdatenflusses zu detektieren.
2. Verfahren nach Anspruch 1, wobei die Anwesenheit eines Vokaldatenflusses dann detektiert wird, wenn der
ge-nannte Referenzwahrscheinlichkeitswert (B) größer ist als der gege-nannte Schwellenwahrscheinlichkeitswert (Bmin).
3. Verfahren nach einem der Ansprüche 1 bis 2, wobei der genannte Schritt a) des Bereitstellens von wenigstens einer
Verteilungsfunktion die folgenden Schritte beinhaltet: a1) Bereitstellen eines Paketvokaldatenflusses,
a2) Messen, für jede messbare Variable (X, Y), der Werte der Variablen in dem genannten Paketvokaldatenfluss, um die Verteilungsfunktion der Variablen (P{x|C}, P{y|C}) zu erhalten.
4. Verfahren nach einem der Ansprüche 1 bis 2, wobei der genannte Vokaldatenfluss durch mehrere Sprachcodecs
(j) erzeugt wird, wobei wenigstens eine Variable (X) von dem Sprachcodec abhängig ist und wobei der genannte Schritt a) des Bereitstellens von wenigstens einer Verteilungsfunktion die folgenden Schritte beinhaltet:
a1) Bereitstellen mehrerer Paketvokaldatenflüsse, wobei jeder Fluss durch einen jeweiligen Sprachcodec der mehreren Sprachcodecs erzeugt wird,
a2) Messen, für wenigstens eine Variable (X), der Werte der Variablen (X) in jedem Paketvokaldatenfluss, um die Verteilungsfunktion (Pj{x|C}) der Variablen (X) für jeden Sprachcodec zu erhalten.
5. Verfahren nach Anspruch 4, wobei jeder Sprachcodec mehrere Betriebskonfigurationen hat, wobei der genannte
Schritt a2) den Messschritt für wenigstens eine Variable (X), für jede Betriebskonfiguration jedes Sprachcodec, der Werte der Variablen (X) in jedem Paketvokaldatenfluss beinhaltet, um eine Verteilungsfunktion der Variablen (X) für jede Betriebskonfiguration jedes Sprachcodec (j) zu erhalten.
6. Verfahren nach Anspruch 4 oder Anspruch 5, wobei die genannten Schritte c) und d) für wenigstens eine Variable
(X) und für jeden Codec (j) durchgeführt werden, um einen durchschnittlichen Wahrscheinlichkeitswert E[Bx(j)] für
jeden Codec (j) zu erzeugen.
7. Verfahren nach einem der Ansprüche 4 bis 6, wobei der genannte Schritt c) die folgenden Schritte beinhaltet:
c1) Anwenden jedes Messwertes der Folge von Messwerten von wenigstens einer von dem Sprachcodec abhängigen Variablen auf die Verteilungsfunktion jeder Betriebskonfiguration des jeweiligen Sprachcodec, um mehrere Wahrscheinlichkeitswerte zu erzeugen;
c2) Berechnen, für jeden Messwert der Folge von Messwerten, des Maximums der mehreren Wahrscheinlich-keitswerte, um die Folge von Wahrscheinlichkeitswerten (Bx(k,j)) zu erzeugen.
8. Verfahren nach Anspruch 7, wobei der genannte Schritt d) die folgenden Schritte beinhaltet:
d1) Verarbeiten, für wenigstens eine Variable (X) und für jeden Codec (j), der jeweiligen Folge von Wahrschein-lichkeitswerten (Bx(k,j)), um den jeweiligen durchschnittlichen Wahrscheinlichkeitswert (E[B
x(j)]) zu erzeugen;
d2) Verarbeiten der durchschnittlichen Wahrscheinlichkeitswerte, die für jeden Codec (E[Bx(j)]) für die genannte
wenigstens eine Variable (X) erzeugt wurden, um den durchschnittlichen Wahrscheinlichkeitswert (E[Bx]) über die genannte vordefinierte Anzahl (K) von Blöcken zu erzeugen.
9. Verfahren nach Anspruch 8, wobei der genannte Schritt d2) den Schritt des Berechnens des Maximums der für
jeden Codec (E[Bx(j)]) erzeugten durchschnittlichen Wahrscheinlichkeitswerte beinhaltet, um den durchschnittlichen
Wahrscheinlichkeitswert (E[Bx]) auf der genannten vordefinierten Anzahl (K) von Blöcken zu erzeugen.
10. Verfahren nach Anspruch 9, das ferner den Schritt des Suchens des Codec (j) beinhaltet, der mit dem Maximum
der für jeden Codec (E[Bx(j)]) erzeugten Wahrscheinlichkeitswerte (E[B
x]) assoziiert ist, wobei der genannte Codec
(j) den maximalen Wahrscheinlichkeits-Sprachcodec des genannten Vokaldatenflusses repräsentiert.
Paketda-5 10 15 20 25 30 35 40 45 50 55
tenfluss in Paketblöcke (w(k)) unterteilt ist, wobei jeder Block (w) eine vordefinierte Anzahl von Paketen umfasst,
wobei der genannte Datenfluss wenigstens zwei messbare Variablen (X, Y) umfasst, wobei eine erste der genannten messbaren Variablen (X) die Nachrichtengröße und eine zweite der genannten messbaren Variablen (Y) der durch-schnittliche Abstand zwischen Paketen ist, wobei die genannte Vorrichtung (10) dadurch gekennzeichnet ist,
dass sie Folgendes umfasst:
- Speichermittel (11), um für jede messbare Variable (X, Y) wenigstens eine Funktion (P{x|C}, P{y|C}) bereit-zustellen, die für die Verteilung der Werte der jeweiligen Variablen (X, Y) in einem Vokaldatenfluss repräsentativ ist,
- Messmittel (12) zum Empfangen des genannten Paketdatenflusses, um für jeden Block (w(k)) einer
vorbe-stimmten Anzahl (K) von Blöcken des genannten Datenflusses wenigstens einen Wert (x, y) jeder Variablen (X, Y) zu messen, um für jede Variable (X, Y) eine Folge von Messwerten (x(k), y(k)) für die vordefinierte Anzahl
(K) von Blöcken zu erhalten,
- Verarbeitungsmittel (13), die mit dem genannten Speichermittel (11) und dem genannten Messmittel (12) verbunden sind und Folgendes durchführen können:
- Anwenden, für jede Variable (X, Y), jedes Messwertes (x(k), y(k)) der Folge von Messwerten der Variablen
an der jeweiligen Verteilungsfunktion (P{x|C}, P{y|C}), um eine Folge von Wahrscheinlichkeitswerten (Bx(k),
By(k)) zu erzeugen,
- Verarbeiten, für jede Variable (X, Y), der jeweiligen Folge von Wahrscheinlichkeitswerten (Bx(k), By(k)),
um den jeweiligen durchschnittlichen Wahrscheinlichkeitswert (E[Bx], E[By]) über die genannte vordefinierte Anzahl (K) von Blöcken zu erzeugen,
- Verarbeiten der für jede Variable (X, Y) erzeugten durchschnittlichen Wahrscheinlichkeitswerte (E[Bx], E [By]), u m einen Referenzwahrscheinlichkeitswert (B) zu erzeugen, wobei der Referenzwahrscheinlichkeits-wert (B) durch Berechnen des Minimums der für jede Variable (X, Y) erzeugten durchschnittlichen Wahr-scheinlichkeitswerte (E[Bx], E[By]) erzeugt wird,
und
- ein Vergleichsmittel (14), das mit dem genannten Verarbeitungsmittel (13) verbunden ist und den genannten Referenzwahrscheinlichkeitswert (B) mit einem Wahrscheinlichkeitsschwellenwert (Bmin) vergleichen kann, um
die Anwesenheit eines Vokaldatenflusses in dem genannten Paketdatenfluss zu detektieren.
12. Vorrichtung (10) nach Anspruch 11, wobei der genannte Vokaldatenfluss durch mehrere Sprachcodecs (j) erzeugt
wird und wenigstens eine Variable (X) von dem Sprachcodec abhängig ist, wobei das genannte Speichermittel (11) die Verteilungsfunktion (Pj{x|C}) von wenigstens einer Variablen (X) für jeden Sprachcodec (j) bereitstellen kann.
13. Vorrichtung (10) nach Anspruch 12, wobei jeder Sprachcodec (j) mehrere der Betriebskonfigurationen hat, wobei
das Speichermittel (11) eine Verteilungsfunktion von wenigstens einer Variablen (X) für jede Betriebskonfiguration jedes Sprachcodec (j) bereitstellen kann.
14. Vorrichtung (10) nach Anspruch 13, wobei das genannte Verarbeitungsmittel (13) Folgendes durchführen kann:
- Anwenden jedes Messwertes der Folge von Messwerten von wenigstens einer Variablen (X) je nach dem Sprachcodec auf die Verteilungsfunktion jeder Betriebskonfiguration des jeweiligen Sprachcodec (j), um meh-rere Wahrscheinlichkeitswerte zu erzeugen, und
- Berechnen, für jeden Messwert der Folge von Messwerten, des Maximums der mehreren Wahrscheinlich-keitswerte, um die Folge von Wahrscheinlichkeitswerten (Bx(k,j)) zu erzeugen.
15. Vorrichtung (10) nach Anspruch 14, wobei das genannte Verarbeitungsmittel (13) Folgendes durchführen kann:
- Verarbeiten, für wenigstens eine Variable (X) und für jeden Codec (j), der jeweiligen Folge von Wahrschein-lichkeitswerten (Bx(k,j)), um den jeweiligen durchschnittlichen Wahrscheinlichkeitswert (E[Bx(,j)]) zu erzeugen,
und
- Verarbeiten der durchschnittlichen Wahrscheinlichkeitswerte, die für jeden Codec (E[Bx(j)]) für wenigstens
eine Variable (X) erzeugt wurden, um den durchschnittlichen Wahrscheinlichkeitswert (E[Bx]) über die vorde-finierte Anzahl (K) von Blöcken zu erzeugen.
5 10 15 20 25 30 35 40 45 50 55
(E[Bx(j)]) erzeugten durchschnittlichen Wahrscheinlichkeitswerte berechnen kann, um den durchschnittlichen
Wahr-scheinlichkeitswert (E[Bx]) auf der genannten vordefinierten Anzahl (K) von Blöcken zu erzeugen.
17. Vorrichtung (10) nach Anspruch 16, wobei das genannte Verarbeitungsmittel (13) den Codec (j) suchen kann, der
mit dem Maximum der für jeden Codec (j) erzeugten Wahrscheinlichkeitswerte (E[Bx(j)]) assoziiert ist, wobei dieser
Codec (j) den maximalen Wahrscheinlichkeits-Sprachcodec des Vokaldatenflusses repräsentiert.
Revendications
1. Procédé pour détecter un flux de données vocales dans un flux de données par paquets, ledit flux de données par
paquets étant divisé en blocs de paquets (w(k)), chaque bloc (w) comprenant un nombre prédéfini de paquets, ledit
flux de données ayant au moins deux variables mesurables (X, Y), une première desdites variables mesurables (X) étant la taille du message et une deuxième desdites variables mesurables (Y) étant l’espace moyen entre les paquets, ledit procédé étant caractérisé en ce qu’il comprend les étapes consistant à :
a) fournir, pour chaque variable mesurable (X, Y), au moins une fonction (P{x|C}, P{y|C}) représentative de la distribution des valeurs de la variable respective (X, Y) dans un flux de données vocales ;
b) mesurer, pour chaque bloc (w(k)) d’un nombre prédéfini (K) de blocs dudit flux de données par paquets, au
moins une valeur (x, y) de chaque variable (X, Y) afin d’obtenir, pour chaque variable (X, Y), une séquence de valeurs mesurées (x(k), y(k)) sur le nombre prédéfini (K) de blocs ;
c) appliquer, pour chaque variable (X, Y), chaque valeur mesurée (x(k), y(k)) de la séquence de valeurs mesurées
de la variable à la fonction de distribution respective (P{x|C}, P{y|C}) afin de générer une séquence de valeurs de probabilité (Bx(k), B
y(k)).
d) traiter, pour chaque variable (X, Y), la séquence respective de valeurs de probabilité (Bx(k), B
y(k)), afin de
générer la valeur de probabilité moyenne respective (E[Bx], E[By]) sur ledit nombre prédéfini (K) de blocs ; e) traiter les valeurs de probabilité moyennes (E[Bx], E[By]) générées pour chaque variable (X, Y) afin de générer une valeur de probabilité de référence (B), cette valeur de probabilité de référence (B) étant générée en calculant le minimum des valeurs de probabilité moyennes (E[Bx], E[By]) générées pour chaque variable (X, Y) ; et à f) comparer ladite valeur de probabilité de référence (B) avec une valeur de probabilité de seuil (Bmin) afin de détecter la présence de flux de données vocales dans le nombre prédéfini (K) de blocs dudit flux de données par paquets.
2. Procédé selon la revendication 1, dans lequel la présence de flux de données vocales est détectée lorsque ladite
valeur de probabilité de référence (B) est plus grande que ladite valeur de probabilité de seuil (Bmin).
3. Procédé selon l’une quelconque des revendications 1 à 2, dans lequel ladite étape a) consistant à fournir au moins
une fonction de distribution comprend les étapes consistant à : a1) fournir un flux de données vocales par paquets,
a2) mesurer, pour chaque variable mesurable (X, Y), les valeurs de la variable dans ledit flux de données vocales par paquets afin d’obtenir la fonction de distribution de la variable (P{x|C}, P{y|C}).
4. Procédé selon l’une quelconque des revendications 1 à 2, dans lequel ledit flux de données vocales est généré par
une pluralité de codecs vocaux (j), au moins une variable (X) étant dépendante du codec vocal, ladite étape a) consistant à fournir au moins une fonction de distribution comprend les étapes consistant à :
a1) fournir une pluralité de flux de données vocales par paquets, chaque flux étant généré par un codec vocal respectif de la pluralité de codecs vocaux,
a2) mesurer, pour au moins une variable (X), les valeurs de cette variable (X) dans chaque flux de données vocales par paquets afin d’obtenir la fonction de distribution (Pj{x|C}) de la variable (X) pour chaque codec vocal.
5. Procédé selon la revendication 4, dans lequel chaque codec vocal a une pluralité de configurations de
fonctionne-ment, ladite étape a2) comprenant l’étape de mesure, pour au moins une variable (X), pour chaque configuration de fonctionnement de chaque codec vocal, des valeurs de la variable (X) dans chaque flux de données vocales par paquets afin d’obtenir une fonction de distribution de la variable (X) pour chaque configuration de fonctionnement de chaque codec vocal (j).
5 10 15 20 25 30 35 40 45 50 55
6. Procédé selon soit la revendication 4, soit la revendication 5, dans lequel les étapes c) et d) sont exécutées pour
au moins une variable (X) et pour chaque codec (j) afin de générer une valeur de probabilité moyenne E[Bx(j)] pour
chaque codec (j).
7. Procédé selon l’une quelconque des revendications 4 à 6, dans lequel ladite étape c) comprend les étapes consistant
à :
c1) appliquer chaque valeur mesurée de la séquence de valeurs mesurées d’au moins une variable dépendant du codec vocal à la fonction de distribution de chaque configuration de fonctionnement du codec vocal respectif afin de générer une pluralité de valeurs de probabilité ;
c2) calculer, pour chaque valeur mesurée de la séquence de valeurs mesurées,
le maximum de la pluralité de valeurs de probabilité afin de générer la séquence de valeurs de probabilité (Bx(k,,j)).
8. Procédé selon la revendication 7, dans lequel ladite étape d) comprend les étapes consistant à :
d1) traiter, pour au moins une variable (X) et pour chaque codec (j), la séquence respective de valeurs de probabilité (Bx(k,,j)) afin de générer la valeur de probabilité moyenne respective (E[Bx(j)]) ;
d2) traiter les valeurs de probabilité moyennes générées pour chaque codec (E[Bx(j)]) pour ladite au moins une
variable (X) afin de générer la valeur de probabilité moyenne (E[Bx]) sur ledit nombre prédéfini (K) de blocs.
9. Procédé selon la revendication 8, dans lequel ladite étape d2) comprend l’étape consistant à calculer le maximum
des valeurs de probabilité moyennes générées pour chaque codec (E[Bx(j)]) afin de générer la valeur de probabilité
moyenne (E[Bx]) sur ledit nombre prédéfini (K) de blocs.
10. Procédé selon la revendication 9, comprenant en outre l’étape consistant à trouver le codec (j) associé au maximum
de valeurs de probabilité (E[Bx]) générées pour chaque codec (E[Bx(j)]), ledit codec (j) représentant le codec vocal
de probabilité maximum dudit flux de données vocales.
11. Appareil (10) pour détecter un flux de données vocales dans un flux de données par paquets, ledit flux de données
par paquets étant divisé en blocs de paquets (w(k)), chaque bloc (w) comprenant un nombre prédéfini de paquets,
ledit flux de données ayant au moins deux variables mesurables (X, Y), une première desdites variables mesurables (X) étant la taille du message et une deuxième desdites variables mesurables (Y) étant l’espace moyen entre les paquets, ledit appareil (10) étant caractérisé en ce qu’il comprend :
- des moyens de stockage (11) capables de fournir, pour chaque variable mesurable (X, Y), au moins une fonction (P{x|C}, P{y|C}) représentative de la distribution des valeurs de la variable respective (X, Y) dans un flux de données vocales,
- des moyens de mesure (12) capables de recevoir ledit flux de données par paquets afin de mesurer, pour chaque bloc (w(k)) d’un nombre prédéfini (K) de blocs dudit flux de données, au moins une valeur (x, y) de
chaque variable (X, Y) afin d’obtenir, pour chaque variable (X, Y), une séquence de valeurs mesurées (x(k),
y(k)) pour le nombre prédéfini (K) de blocs,
- des moyens de traitement (13) connectés auxdits moyens de stockage (11) et auxdits moyens de mesure (12) et capables de :
- appliquer, pour chaque variable (X, Y), chaque valeur mesurée (x(k), y(k)) de la séquence de valeurs
mesurées de la variable à la fonction de distribution respective (P{x|C}, P{y|C}) afin de générer une séquence de valeurs de probabilité (Bx(k), By(k)),
- traiter, pour chaque variable (X, Y), la séquence respective de valeurs de probabilité (Bx(k), B
y(k)), afin de
générer la valeur de probabilité moyenne respective (E[Bx], E[By]) sur ledit nombre prédéfini (K) de blocs, - traiter les valeurs de probabilité moyennes (E[Bx], E[By]) générées pour chaque variable (X, Y) afin de générer une valeur de probabilité de référence (B), cette valeur de probabilité de référence (B) étant générée en calculant le minimum des valeurs de probabilité moyennes (E[Bx], E[By]) générées pour chaque variable (X, Y),
et
- des moyens de comparaison (14) connectés auxdits moyens de traitement (13) et capables de comparer ladite valeur de probabilité de référence (B) avec une valeur de probabilité de seuil (Bmin) afin de détecter la présence de flux de données vocales dans ledit flux de données par paquets.
5 10 15 20 25 30 35 40 45 50 55
12. Appareil (10) selon la revendication 11, dans lequel ledit flux de données vocales est généré par une pluralité de
codecs vocaux (j), et au moins une variable (X) est dépendante du codec vocal, lesdits moyens de stockage 11 étant capables de fournir la fonction de distribution (Pj{x|C}) d’au moins une variable (X) pour chaque codec vocal (j).
13. Appareil (10) selon la revendication 12, dans lequel chaque codec vocal (j) a une pluralité de configurations de
fonctionnement, les moyens de stockage (11) étant capables de fournir une fonction de distribution d’au moins une variable (X) pour chaque configuration de fonctionnement de chaque codec vocal (j).
14. Appareil (10) selon la revendication 13, dans lequel lesdits moyens de traitement (13) sont capables de :
- appliquer chaque valeur mesurée de la séquence de valeurs mesurées d’au moins une variable (X) dépendant du codec vocal à la fonction de distribution de chaque configuration de fonctionnement du codec vocal respectif (j) afin de générer une pluralité de valeurs de probabilité, et de
- calculer, pour chaque valeur mesurée de la séquence de valeurs mesurées, le maximum de la pluralité de valeurs de probabilité afin de générer la séquence de valeurs de probabilité (Bx(k,,j)).
15. Appareil (10) selon la revendication 14, dans lequel lesdits moyens de traitement (13) sont capables de :
- traiter, pour au moins une variable (X) et pour chaque codec (j), la séquence respective de valeurs de probabilité (Bx(k,,j)) afin de générer la valeur de probabilité moyenne respective (E[Bx(,j)]), et de
- traiter les valeurs de probabilité moyennes générées pour chaque codec (E[Bx(,j)]) pour au moins une variable
(X) afin de générer la valeur de probabilité moyenne (E[Bx]) sur le nombre prédéfini (K) de blocs.
16. Appareil (10) selon la revendication 15, dans lequel lesdits moyens de traitement (13) sont capables de calculer le
maximum des valeurs de probabilité moyennes générées pour chaque codec (E[Bx(,j)]) afin de générer la valeur de
probabilité moyenne (E[Bx]) sur ledit nombre prédéfini (K) de blocs.
17. Appareil (10) selon la revendication 16, dans lequel lesdits moyens de traitement (13) sont capables de trouver le
codec (j) associé au maximum des valeurs de probabilité (E[Bx(,j)]) générées pour chaque codec (j), ce codec (j)