Continue to Site

Welcome to

Welcome to our site! is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

[SOLVED] Perceptual Evaluation of Speech Quality [P.862] Implementation Problem with C

Not open for further replies.


Junior Member level 2
Jun 2, 2010
Reaction score
Trophy points
Activity points
Actually i am working on a simulation which mimics the subjective analysis of MOS(Mean Opinion Score) Evaluation

My job is to compare the low bit rate codecs with ITU-T standard P.862

So i downloaded the software from the site!Amd2/en

$ cd Software/source
$ gcc -o PESQ *.c

it must work as
$ ./PESQ
Perceptual Evaluation of Speech Quality (PESQ)
Reference implementation for ITU-T Recommendations P.862, P.862.1 and P.862.2.
Version 2.0 October 2005.

<snip long unenlightening IP notice>

 PESQ HELP               Displays this text
 PESQ [options] ref deg
 Run model on reference ref and degraded deg

 Options: +8000 +16000 +swap +wb
  Sample rate - No default. Must select either +8000 or +16000.
  Swap byte order - machine native format by default. Select +swap for byteswap.
  Default mode of operation is P.862 (narrowband handset listening). Select +wb 
  to use P.862.2 wideband extension (headphone listening).

 File names may not begin with a + character.

 Files with names ending .wav or .WAV are assumed to have a 44-byte header, which is automatically skipped.  All other file types are assumed to have no header

what am i actually getting is a linking error

/tmp/ccb7vwC7.o: In function `apply_VAD':
   pesqdsp.c:(.text+0x7be): undefined reference to `sqrtf'
   pesqdsp.c:(.text+0xe63): undefined reference to `logf'
   /tmp/ccb7vwC7.o: In function `time_align':
   pesqdsp.c:(.text+0x1263): undefined reference to `cos'
   pesqdsp.c:(.text+0x14d2): undefined reference to `pow'
   /tmp/ccb7vwC7.o: In function `split_align':
   pesqdsp.c:(.text+0x1894): undefined reference to `cos'
   pesqdsp.c:(.text+0x1da0): undefined reference to `pow'
   pesqdsp.c:(.text+0x218a): undefined reference to `pow'
   pesqdsp.c:(.text+0x2674): undefined reference to `pow'
   pesqdsp.c:(.text+0x2a41): undefined reference to `pow'
   /tmp/ccvZp6OI.o: In function `fix_power_level':
pesqmain.c:(.text+0xbbc): undefined reference to `sqrt'
/tmp/ccbSaDVw.o: In function `intensity_warping_of':
pesqmod.c:(.text+0x11d2): undefined reference to `powf'
pesqmod.c:(.text+0x1221): undefined reference to `pow'
pesqmod.c:(.text+0x124b): undefined reference to `pow'
/tmp/ccbSaDVw.o: In function `pseudo_Lp':
pesqmod.c:(.text+0x12f8): undefined reference to `powf'
pesqmod.c:(.text+0x1336): undefined reference to `pow'
/tmp/ccbSaDVw.o: In function `multiply_with_asymmetry_factor':
pesqmod.c:(.text+0x13b0): undefined reference to `powf'
/tmp/ccbSaDVw.o: In function `compute_delay':
pesqmod.c:(.text+0x153e): undefined reference to `sqrt'
/tmp/ccbSaDVw.o: In function `Lpq_weight':
pesqmod.c:(.text+0x18d4): undefined reference to `powf'
pesqmod.c:(.text+0x1910): undefined reference to `pow'
pesqmod.c:(.text+0x193b): undefined reference to `pow'
pesqmod.c:(.text+0x1966): undefined reference to `powf'
pesqmod.c:(.text+0x199b): undefined reference to `pow'
/tmp/ccbSaDVw.o: In function `set_to_sine':
pesqmod.c:(.text+0x19d9): undefined reference to `sinf'
/tmp/ccbSaDVw.o: In function `pesq_psychoacoustic_model':
pesqmod.c:(.text+0x1b38): undefined reference to `cos'
pesqmod.c:(.text+0x2b0d): undefined reference to `floor'

i thought the error is due to math.h as cos and sin and some other functions which are part of tgmath.h in my /usr/include even it has not solved the problem,what may b the problem exactly moreover i have not changed the package code at all

can any one plz really help me out
,i am using this to evaluate MOS of a huge data base of original and degraded voice done by different compression codecs

actually the error was linking the math libraries compiling it with -lm option has done the favour

Not open for further replies.

Part and Inventory Search

Welcome to