Automatic Speech Codec Identification with Applications To

Automatic Speech Codec Identification with Applications To

Automatic Speech Codec Identification with Applications to Tampering Detection of Speech Recordings Jingting Zhou, Daniel Garcia-Romero, Carol Espy-Wilson Department of Electrical and Computer Engineering, University of Maryland, College Park, MD [email protected], [email protected], [email protected] Abstract thus leave us evidence. In this paper, we studied various speech codecs in today’s In this paper we explored many versions of CELP codecs and digital communication system. By examining different noise studied different codebooks they use to encode noisy part of patterns generated in each codec, we proposed a framework residual. Taking advantage of noise patterns they generated, to detect 4 different codecs, GSM-Adaptive Multi-Rate(AMR) an algorithm was proposed to detect GSM-AMR,EFR,HR and [2] in 5.9kbps, GSM-Enhanced Full Rate(EFR) [3] in 12.2kbps, SILK codecs. Then it’s extended to identify subframe offset to GSM-Half Rate(HR)[4] in 5.6kbps, and SILK [5](speech codec do tampering detection of cellphone speech recordings. used in Skype) in 5kbps. Index Terms: forensic,compression,CELP 2. CELP Family of Speech Codecs 1. Introduction Spanias [6] presented a good summary on speech codecs. The The objective of speech media authentication (SMA) is to estab- Code Excited Linear Prediction(CELP) codec is the most pop- lish the validity of a speech recording as a true ”acoustic repre- ular one in the cellphone network. There are many versions of sentation” of an event that occurred at a certain time and place. CELP. Particular applications of this process are embodied in the an- Fig.1 shows a block diagram of the decoding process of a swers to the following common questions: (i) is the recording CELP codec. Vfixed is a vector from a fixed codebook stored in original or a copy; (ii) has the recording been edited or modi- the memory of the decoder, and it captures the aperiodic portion fied since its creation; (iii) does it come from the alleged source; of the residual signal, so its energy is high in unvoiced regions. and (iv) is the content consistent with what is known or alleged. Vadap is a vector copied from an adaptive codebook and it con- The most general framework towards SMA is the blind-passive tains previous reconstructed residuals, and it captures periodic approach. Algorithms based on this approach do not rely on portions so the energy is high in voiced regions. The weighted the presence of a watermark or extrinsic fingerprint, but on the sum of these two vectors, reconstructed residual r, is fed into traces left behind by the generating process and signal modifi- the inverse LPC filter. The corresponding weights for Vadap cations. Two different types of information can be targeted for and Vfixed are aadap and afixed, respectively. The output of SMA: (i) source dependent, where the extracted information is the post-processor is the decoded speech. directly tied to the intrinsic fingerprint of the source; and (ii) Different versions of CELP have different codebooks, i.e. source independent, where the information is not directly re- different kinds of Vfixed. We want to take advantage of this lated to the source (i.e., background noise, electric network in- difference to detect which CELP codec has been used on the terference, etc). Once this information has been automatically speech signal. Thus, we need to extract Vfixed from the extracted, a consistency test or anomaly detection procedure can weighted sum and this requires an estimate of Vadap.During be used to extract evidence relevant for the authentication task encoding, Vadap is computed from the reconstructed residual at hand. of previous frames, hence it is not easy to estimate from the The focus of this work is on source dependent techniques. decoded speech. Mostly because: In particular, we are interested in performing speech media au- 1. It is difficult to accurately estimate the LPC coeffi- thentication following a two step process. The first step involves cients,i.e. a1 to a10. detecting the type of speech codec used to generate the signal. The second step uses known properties of the detected codec to 2. The post-processing is adaptive and we are not able to perform media authentication. Our focus will be on recordings undo the process. What the post-processing is doing is of speech signals that have been encoded with members of the dependent on the codec, but the major things are for- CELP family of speech codecs [2,3,4,5]. mant enhancement filtering and tilt compensation filter- Scholz [1] developed an algorithm to detect a wide range ing. The coefficients are dependent on the speech signal of state-of-the-art speech codecs. By subtracting the harmonic so we can not perfectly invert the post-filtering. structure, the noise spectrum was obtained and served as input So we chose to only use the unvoiced part of the speech to a SVM, support vector machine, classifier to determine which signal, where the energy of Vfixed is much higher than that of of five different codecs was used. Yang [7] examined the com- Vadap. A typical sentence will contain some unvoiced regions pression mechanism of mp3 files, when an mp3 file is encoded, due to the fricatives and stop consonants. the audio samples are divided into frames, each frame has its The codebooks used for Vfixed in AMR, EFR and HR are own frame offset after encoding. By examining the trace left described in [2], [3] and [4]. For SILK, in its low-bitrate modes, by quantization process, the frame offset can be detected with normally two to three pulses are encoded per subframe, each high accuracy. Forgeries will break the original frame grids, having an amplitude of +1 or -1. Since the pulse sequence is the AMR mode showed that removal of Vadap degraded perfor- a reconstruced reisdual V adap adapt mance. Thus, we only performed this step in the EFR mode encoded 1/A(z) post−processing only. bitstream We followed the procedure in [2] and [3] to get the Vadap, a V fixed fixed except that final post-processed speech is filtered with A(z) as the adaptive codebook for the next frame. Even though exactly the same search algorithm and interpolation method is used as Figure 1: diagram of CELP decoder. in [2] and [3], the adaptive codebook is not very accurate. Sub- tracting Vadap from the residual should give us Vfixed^ . too sparse to be used as Vfixed, an interesting mechanism was 3.1.5. Search for the best vector to fit Vfixed introduced in [5] to convert a pulse sequence into V . Af- fixed Now that we know V ^ and the fixed codebook, we are ready ter adding a small amount of offset to the pulse sequence, an fixed to search for the best fitted vector in the codebook. For every overflow-based pseudo random sequence is generated accord- vector v in the codebook, we find a gain v∗ that minimizes ing to sequence, and the sign of Vfixed may be flipped based on the pseudo random sequence. T −1 T v∗ = argminv(I − v(v v) v )Vfixed (1) Since Vfixed is generated in this particular way, we can show that although there might be many possibilities of the sign 3.1.6. Get error measurement pattern of the pulse sequence, the sign pattern of Vfixed is much more limited. This limitation can be used to identify if a frame The objective function in the fitting part is normalized as our has been compressed by SILK, as will be explained in the fol- error measure. kV − vk2 lowing section. err = fixed (2) krk2 3. Algorithm of the Codec Detector 3.2. Algorithm for Mode SILK The codec detector can work in 4 modes: HR, EFR, AMR, and 3.2.1. Algorithm outline SILK. For modes HR, EFR and AMR,the framework is similar, but some part of the algorithm should be tailored to the partic- • preparation of sign pattern book ular codec at hand. Mode SILK is different from the other 3 • extract unvoiced part of speech modes, so it will be discussed in a separate subsection. • linear prediction filtering to get the residual 3.1. Algorithm for Mode HR, EFR and AMR • search for the most likely sign pattern 3.1.1. Algorithm outline • get error measurement • extract unvoiced part of speech 3.2.2. Preparation of sign pattern codebook • linear prediction filtering to get the residual r As mentioned in section II, the sign pattern of V is very • fixed remove Vadap from residual limited in SILK and we want to use this sparsity to detect if • search for the best vector to fit Vfixed the SILK was used. The first step in this process is to build a representative and efficient sign pattern codebook. To do an • get error measurement exhaustive search over all possible sign patterns is impractical and we can reduce the search space by answering the following 3.1.2. Extract unvoiced part of speech two questions. The unvoiced part of speech needs to be extracted since our goal 1. Do we need the sign pattern to be of length 160? The is to see how closely V can be represented by a particular fixed pseudo random sequence is generated every frame, and codebook. We want the voiced/unvoiced partition as close to the V is of length 160. original partition in the compression process as possible. Con- fixed sequently, the same voiced/unvoiced decision algorithm is used 2. What are the most frequent sign patterns? Every pulse as in the HR standard.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    4 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us