Giter VIP home page Giter VIP logo

pesq's Introduction

Hi there 👋

Hi 👋, there!

a software engineer, passionate about coding, signal processing and machine learning

ludlows

ludlows

  • 👯 I’m looking to collaborate on signal processing & machine learning
  • 💬 Ask me about audio signal processing and machine learning

 ludlows

ludlows

pesq's People

Contributors

boeddeker avatar ludlows avatar rafagd avatar scarecrow1123 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pesq's Issues

import error

When I use from pesq import pesq.
I got an error: cannot import name 'pesq' from 'pesq'.
python:3.7. pesq-0.0.2

Validating results against Matlab implementation

Hi - thanks so much for creating this. I have tried to validate results against Matlab implementation here by running it on the provided sample files:

from pesq import pesq
import librosa
sr = 8000
clean, sr = librosa.load('../data/eval_metric_test/sp09.wav', sr)
noisy, sr = librosa.load('../data/eval_metric_test/enhanced_logmmse.wav', sr)
pesq_mos = pesq(sr, clean, noisy, 'nb')
print(pesq_mos)

I am getting 1.862743616104126 as a result, against 2.2557 in the Readme of the Matlab implementation.

Would you happen to know the cause of the discrepancy?

Build Error

i have to change the build_ext import pathto

from Cython.Distutils import build_ext

and delete all ";" in cypesq.pyx
to pass the build.

Install error?

Hi
I tried to install packages. but i got an error as followings. I tried;

Build and Install
$ git clone https://github.com/ludlows/python-pesq.git
$ cd python-pesq
$ pip install .  # for python 2
$ pip3 install . # for python 3 
$ cd ..
$ rm -rf python-pesq # remove the code folder since it exists in the python package folder

and


Install with pip

# PyPi Repository
$ pip install pesq
# The Latest Version
$ pip install https://github.com/ludlows/python-pesq/archive/master.zip

Do you have any idea?

Processing /media/mesut/Tosun/ses/MetricGAN-master/python-pesq
    ERROR: Command errored out with exit status 1:
     command: /media/mesut/kdtmDisk1/anaconda3/envs/MetricGAN/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-req-build-dSS43h/setup.py'"'"'; __file__='"'"'/tmp/pip-req-build-dSS43h/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-req-build-dSS43h/pip-egg-info
         cwd: /tmp/pip-req-build-dSS43h/
    Complete output (7 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-req-build-dSS43h/setup.py", line 32, in <module>
        language="c")
      File "/tmp/pip-req-build-dSS43h/setup.py", line 15, in __init__
        super().__init__(*args, **kwargs)
    TypeError: super() takes at least 1 argument (0 given)
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

OS: Ubuntu 18.04

pip install error

pip install pesq

Traceback (most recent call last):
File "", line 1, in
File "/tmp/pip-install-Z8qhN_/pesq/setup.py", line 10, in
from Cython.Build import cythonize, build_ext
ImportError: No module named Cython.Build

----------------------------------------

Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-install-Z8qhN_/pesq/

Max PESQ

I have tasted with two same audio wave files.(16khz)
I got result like this.
result

I thought that max PESQ would be 4.5.
I'd like to know the python-PESQ max value.
I appreciate your pyhon-pesq module.
Thanks. XD

PESQ Version

Hello everyone,

I have tested this library with some samples from this page. The MOS values calculated by this library vary from the values on the sample page. Is there an explanation for this?

Thank you in advance.

whats the range of PESQ?

I am getting scores in 1.03 and 1.06. what is the max score its taking? when is it reliable with what score? kindly help. By the way thanks for your help. you really made my work easier.

PESQ score greater than 4.5?

It has been mentioned in many literature that the PESQ score should be ranged from -0.5 to 4.5, but when I set the ref and the deg to be the same it always return a constant value greater than 4.5 (~4.64 actually) , is this something by design or did I missed anything?

For example:

fs = 16000
duration = 10
rand_audio = np.random.randn(duration*fs)
pesq(
    fs,
    rand_audio,
    rand_audio,
    'wb'
)

always gives
4.643888473510742

No module named 'pesq.cypesq'

Hello,
Installed from source via virtualenv with pip3. But when trying to import get ModuleNotFoundError. I installed cython, and numpy.

>>> from pesq import pesq
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/kg/github/python-pesq/pesq/__init__.py", line 6, in <module>
    from .cypesq import cypesq
ModuleNotFoundError: No module named 'pesq.cypesq'

No module named 'pesq.cypesq'

B.R.

Processing error!

I faced this problem and could not find the solution in the issue section. So, this issue is for the users who will get stuck in this issue in the future.
Apparently, this is caused by an exception called "No utterances detected", which is caused when the reference sound is nearly silent (reference and solution: Note section of https://github.com/samedii/python-pesq).

Solution as of https://github.com/samedii/python-pesq , which worked for me.

from pesq import PESQError

SAMPLE_RATE = 16000
silent_ref = np.zeros(16000)
deg = np.random.randn(16000)
try:
    pesq(SAMPLE_RATE, silent_ref, deg, 'wb')
except PESQError as e:
    print(e)

This will escape the sound file which is causing the exception but will not terminate the program.

Stack smashing if input too long

I have an example where PESQ aborts with a stack smashing message. I guess it's because I accidentally put in a very long audio snippet (~120s). I'm happy submit a PR but I don't know what's a sensible maximum length value

Segmentation fault(core dumped)

I was trying to run the script with a 25 minute long audio and I got segmentation fault. Everything is fine when I checked with a 5 second audio

Hi

王老师,您好,打扰了。
您的这个pesq包做得非常的好,是pesq包里面封装得最好的,目前我也正在使用使用您的包。
现在我遇到的问题就是,如果需要使用pesq的话,我需要自己再进行一次封装,来使得pesq可以适应pytorch-lightning这个框架。
因此,希望您将pesq搬到TorchMetrics,不知您是否有时间!

value error

I compute two audio signals:
clean: [[-0.05551147 -0.05551147 -0.05593872 -0.05615234 -0.05548096 -0.05499268 -0.05484009 -0.05435181 -0.05456543 -0.05557251]]
noisy: [[0.13543701 0.2192688 0.2921753 0.3097229 0.30447388 0.29248047 0.2775879 0.22662354 0.1618042 0.05249023]]

why the result of pesq is -1 in 'nb' mode?

Processing error!

Hello,
It seems to raises "Processing error!" randomly when use the function and I can not figure it out, please give some help. Thank you very much.

vaule more than 4.5

i test the model you design for two same wav files, but the vaule is more than 4.5,how to explain it!
1702711752866

ImportError, please help

Hi, I already installed the python-pesq, when I was about to run, it shows an error message:

(venv) al@al-VirtualBox:~/Downloads/RNNoise_Wrapper-master$ python3 sepm.py
Traceback (most recent call last):
File "sepm.py", line 4, in
from pesq import PesqError
ImportError: cannot import name 'PesqError' from 'pesq' (/home/al/Downloads/RNNoise_Wrapper-master/venv/lib/python3.8/site-packages/pesq/init.py)

I already did #24 but didn't work. I also created a virtual environment, still doesn't work. Please help.

setup.py requires cython/numpy

It would be great if installing this package installs the requirements automatically, without having to install cython/numpy manually.

pesq calculation terminated in the middle without no error message

Hi,

I installed python-pesq by " compile and install" procedure in read.me and successfully got the correct result with 'nb' for audio samples under audio directory. Now I used the pesq with 'nb' on my data (which are over 3 hours data each @ 8000Hz for ref and deg) but it terminated in the middle without either output or error message. Is there any limitation in size of data for ref and deg ?

Thank you in advance.

New release

Could we please get a new PyPI release without the need to install numpy and Cython before installing python-pesq, that would be really great !

Thanks

install problem on mac (error: command 'gcc' failed with exit status 1)

Hi I've tried to install "pesq" through pip and also from the source code.
But in both cases, I encountered an error (command 'gcc' failed with exit status 1). I have installed cython and my laptop's OS is Mac OS Big Sur v11.3.

I'm wondering if the pesq package does not work on mac OS... or is there any other problem? Please let me know.

Here's an error message below.

$ pip3 install pesq==0.0.3
Collecting pesq==0.0.3
Using cached pesq-0.0.3.tar.gz (35 kB)
Building wheels for collected packages: pesq
Building wheel for pesq (setup.py) ... error
ERROR: Command errored out with exit status 1:
command: /Users/ydkwon/miniconda3/envs/py38/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/zz/mkr3s_81101_rh7kxcgvf7l80000gn/T/pip-install-fxqt3zzv/pesq_f54ed1f751c64d17bc7d06d1701a2b47/setup.py'"'"'; file='"'"'/private/var/folders/zz/mkr3s_81101_rh7kxcgvf7l80000gn/T/pip-install-fxqt3zzv/pesq_f54ed1f751c64d17bc7d06d1701a2b47/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' bdist_wheel -d /private/var/folders/zz/mkr3s_81101_rh7kxcgvf7l80000gn/T/pip-wheel-n93r4ojz
cwd: /private/var/folders/zz/mkr3s_81101_rh7kxcgvf7l80000gn/T/pip-install-fxqt3zzv/pesq_f54ed1f751c64d17bc7d06d1701a2b47/
Complete output (33 lines):
running bdist_wheel
running build
running build_py
creating build
creating build/lib.macosx-10.9-x86_64-3.8
creating build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/init.py -> build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/cypesq.pyx -> build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/pesq.h -> build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/pesqio.h -> build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/pesqpar.h -> build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/dsp.h -> build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/pesqmain.h -> build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/dsp.c -> build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/pesqdsp.c -> build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/pesqmod.c -> build/lib.macosx-10.9-x86_64-3.8/pesq
running build_ext
cythoning pesq/cypesq.pyx to pesq/cypesq.c
/private/var/folders/zz/mkr3s_81101_rh7kxcgvf7l80000gn/T/pip-install-fxqt3zzv/pesq_f54ed1f751c64d17bc7d06d1701a2b47/.eggs/Cython-0.29.24-py3.8-macosx-10.9-x86_64.egg/Cython/Compiler/Main.py:369: FutureWarning: Cython directive 'language_level' not set, using 2 for now (Py2). This will change in a later release! File: /private/var/folders/zz/mkr3s_81101_rh7kxcgvf7l80000gn/T/pip-install-fxqt3zzv/pesq_f54ed1f751c64d17bc7d06d1701a2b47/pesq/cypesq.pyx
tree = Parsing.p_module(s, pxd, full_module_name)
building 'cypesq' extension
creating build/temp.macosx-10.9-x86_64-3.8
creating build/temp.macosx-10.9-x86_64-3.8/pesq
gcc -Wno-unused-result -Wsign-compare -Wunreachable-code -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I/Users/ydkwon/miniconda3/envs/py38/include -arch x86_64 -I/Users/ydkwon/miniconda3/envs/py38/include -arch x86_64 -Ipesq -I/Users/ydkwon/miniconda3/envs/py38/lib/python3.8/site-packages/numpy/core/include -I/Users/ydkwon/miniconda3/envs/py38/lib/python3.8/site-packages/numpy/core/include -I/Users/ydkwon/miniconda3/envs/py38/include/python3.8 -c pesq/cypesq.c -o build/temp.macosx-10.9-x86_64-3.8/pesq/cypesq.o
In file included from /usr/local/Cellar/[email protected]/4.9.4_2/lib/gcc/4.9/gcc/x86_64-apple-darwin17.7.0/4.9.4/include-fixed/syslimits.h:7:0,
from /usr/local/Cellar/[email protected]/4.9.4_2/lib/gcc/4.9/gcc/x86_64-apple-darwin17.7.0/4.9.4/include-fixed/limits.h:34,
from /Users/ydkwon/miniconda3/envs/py38/include/python3.8/Python.h:11,
from pesq/cypesq.c:6:
/usr/local/Cellar/[email protected]/4.9.4_2/lib/gcc/4.9/gcc/x86_64-apple-darwin17.7.0/4.9.4/include-fixed/limits.h:168:61: fatal error: limits.h: No such file or directory
#include_next <limits.h> /* recurse down to the real one */
^
compilation terminated.
error: command 'gcc' failed with exit status 1

ERROR: Failed building wheel for pesq
Running setup.py clean for pesq
Failed to build pesq
Installing collected packages: pesq
Running setup.py install for pesq ... error
ERROR: Command errored out with exit status 1:
command: /Users/ydkwon/miniconda3/envs/py38/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/zz/mkr3s_81101_rh7kxcgvf7l80000gn/T/pip-install-fxqt3zzv/pesq_f54ed1f751c64d17bc7d06d1701a2b47/setup.py'"'"'; file='"'"'/private/var/folders/zz/mkr3s_81101_rh7kxcgvf7l80000gn/T/pip-install-fxqt3zzv/pesq_f54ed1f751c64d17bc7d06d1701a2b47/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' install --record /private/var/folders/zz/mkr3s_81101_rh7kxcgvf7l80000gn/T/pip-record-1_t5nm25/install-record.txt --single-version-externally-managed --compile --install-headers /Users/ydkwon/miniconda3/envs/py38/include/python3.8/pesq
cwd: /private/var/folders/zz/mkr3s_81101_rh7kxcgvf7l80000gn/T/pip-install-fxqt3zzv/pesq_f54ed1f751c64d17bc7d06d1701a2b47/
Complete output (31 lines):
running install
running build
running build_py
creating build
creating build/lib.macosx-10.9-x86_64-3.8
creating build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/init.py -> build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/cypesq.pyx -> build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/pesq.h -> build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/pesqio.h -> build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/pesqpar.h -> build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/dsp.h -> build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/pesqmain.h -> build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/dsp.c -> build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/pesqdsp.c -> build/lib.macosx-10.9-x86_64-3.8/pesq
copying pesq/pesqmod.c -> build/lib.macosx-10.9-x86_64-3.8/pesq
running build_ext
skipping 'pesq/cypesq.c' Cython extension (up-to-date)
building 'cypesq' extension
creating build/temp.macosx-10.9-x86_64-3.8
creating build/temp.macosx-10.9-x86_64-3.8/pesq
gcc -Wno-unused-result -Wsign-compare -Wunreachable-code -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I/Users/ydkwon/miniconda3/envs/py38/include -arch x86_64 -I/Users/ydkwon/miniconda3/envs/py38/include -arch x86_64 -Ipesq -I/Users/ydkwon/miniconda3/envs/py38/lib/python3.8/site-packages/numpy/core/include -I/Users/ydkwon/miniconda3/envs/py38/lib/python3.8/site-packages/numpy/core/include -I/Users/ydkwon/miniconda3/envs/py38/include/python3.8 -c pesq/cypesq.c -o build/temp.macosx-10.9-x86_64-3.8/pesq/cypesq.o
In file included from /usr/local/Cellar/[email protected]/4.9.4_2/lib/gcc/4.9/gcc/x86_64-apple-darwin17.7.0/4.9.4/include-fixed/syslimits.h:7:0,
from /usr/local/Cellar/[email protected]/4.9.4_2/lib/gcc/4.9/gcc/x86_64-apple-darwin17.7.0/4.9.4/include-fixed/limits.h:34,
from /Users/ydkwon/miniconda3/envs/py38/include/python3.8/Python.h:11,
from pesq/cypesq.c:6:
/usr/local/Cellar/[email protected]/4.9.4_2/lib/gcc/4.9/gcc/x86_64-apple-darwin17.7.0/4.9.4/include-fixed/limits.h:168:61: fatal error: limits.h: No such file or directory
#include_next <limits.h> /* recurse down to the real one */
^
compilation terminated.
error: command 'gcc' failed with exit status 1
----------------------------------------
ERROR: Command errored out with exit status 1: /Users/ydkwon/miniconda3/envs/py38/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/zz/mkr3s_81101_rh7kxcgvf7l80000gn/T/pip-install-fxqt3zzv/pesq_f54ed1f751c64d17bc7d06d1701a2b47/setup.py'"'"'; file='"'"'/private/var/folders/zz/mkr3s_81101_rh7kxcgvf7l80000gn/T/pip-install-fxqt3zzv/pesq_f54ed1f751c64d17bc7d06d1701a2b47/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' install --record /private/var/folders/zz/mkr3s_81101_rh7kxcgvf7l80000gn/T/pip-record-1_t5nm25/install-record.txt --single-version-externally-managed --compile --install-headers /Users/ydkwon/miniconda3/envs/py38/include/python3.8/pesq Check the logs for full command output.

Thank you!

processing error

When i run this package, i met the bug' processing error', which reason may cause this problem?

exits unexpectedly for large inputs

As the title says, it exits unexpectedly with nominally large array inputs (I haven't been able to bound the size at which this occurs).
A 30 second window at 16 KHz (480,000 samples) seems to work, and is enough for a provisional score, however the STOI metric currently in use accepts the full array without issue.
If it is of any use, the exit code is -1073740791 (0xC0000409)

What's the difference between pypesq and pesq? What is the difference between the output values of the different options 'wb' and 'nb'

There is another Python implementation library of PESQ called "pypesq". However, when I use "pypesq" and the PESQ library with the 'nb' option to calculate PESQ scores for the same pair of 16 kHz audio, there are differences in the output results. For example, "pypesq" outputs 2.26, while "PESQ" with the 'nb' option outputs 2.05 and with the 'wb' option outputs 2.13. What does the difference in values between "pypesq" and "PESQ" with the 'nb' option imply? And what does the different outputs between the 'nb' and 'wb' options indicate?

I am currently exploring the field of speech enhancement, but I found that many articles do not specifically mention their methods for calculating PESQ scores. Some articles report high PESQ scores while others report low ones, apparently related to the mode option used. So, which option should I use when calculating PESQ scores for 16 kHz audio?

I look forward to someone responding. Thank you very much.

Pip3 install fails

Hi when installing using pip3 it fails:

Collecting https://github.com/ludlows/python-pesq/archive/master.zip
  Downloading https://github.com/ludlows/python-pesq/archive/master.zip
     / 223 kB 1.3 MB/s
Building wheels for collected packages: pesq
  Building wheel for pesq (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-req-build-5_6n31st/setup.py'"'"'; __file__='"'"'/tmp/pip-req-build-5_6n31st/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-vm7tblzc
       cwd: /tmp/pip-req-build-5_6n31st/
  Complete output (34 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-x86_64-3.9
  creating build/lib.linux-x86_64-3.9/pesq
  copying pesq/_pesq.py -> build/lib.linux-x86_64-3.9/pesq
  copying pesq/__init__.py -> build/lib.linux-x86_64-3.9/pesq
  copying pesq/cypesq.pyx -> build/lib.linux-x86_64-3.9/pesq
  copying pesq/pesqpar.h -> build/lib.linux-x86_64-3.9/pesq
  copying pesq/pesqmain.h -> build/lib.linux-x86_64-3.9/pesq
  copying pesq/pesqio.h -> build/lib.linux-x86_64-3.9/pesq
  copying pesq/pesq.h -> build/lib.linux-x86_64-3.9/pesq
  copying pesq/dsp.h -> build/lib.linux-x86_64-3.9/pesq
  copying pesq/dsp.c -> build/lib.linux-x86_64-3.9/pesq
  copying pesq/pesqdsp.c -> build/lib.linux-x86_64-3.9/pesq
  copying pesq/pesqmod.c -> build/lib.linux-x86_64-3.9/pesq
  running build_ext
  Compiling pesq/cypesq.pyx because it changed.
  [1/1] Cythonizing pesq/cypesq.pyx
  /tmp/pip-req-build-5_6n31st/.eggs/Cython-3.0.0-py3.9-linux-x86_64.egg/Cython/Compiler/Main.py:381: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /tmp/pip-req-build-5_6n31st/pesq/cypesq.pyx
    tree = Parsing.p_module(s, pxd, full_module_name)
  warning: pesq/cypesq.pyx:60:4: The 'DEF' statement is deprecated and will be removed in a future Cython version. Consider using global variables, constants, and in-place literals instead. See https://github.com/cython/cython/issues/4310
  warning: pesq/cypesq.pyx:61:4: The 'DEF' statement is deprecated and will be removed in a future Cython version. Consider using global variables, constants, and in-place literals instead. See https://github.com/cython/cython/issues/4310
  warning: pesq/cypesq.pyx:62:4: The 'DEF' statement is deprecated and will be removed in a future Cython version. Consider using global variables, constants, and in-place literals instead. See https://github.com/cython/cython/issues/4310
  building 'cypesq' extension
  creating build/temp.linux-x86_64-3.9
  creating build/temp.linux-x86_64-3.9/pesq
  x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -ffile-prefix-map=/build/python3.9-RNBry6/python3.9-3.9.2=. -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -ffile-prefix-map=/build/python3.9-RNBry6/python3.9-3.9.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -Ipesq -I/usr/local/lib/python3.9/dist-packages/numpy/core/include -I/usr/local/lib/python3.9/dist-packages/numpy/core/include -I/usr/include/python3.9 -c pesq/cypesq.c -o build/temp.linux-x86_64-3.9/pesq/cypesq.o
  pesq/cypesq.c:46:10: fatal error: Python.h: No such file or directory
     46 | #include "Python.h"
        |          ^~~~~~~~~~
  compilation terminated.
  error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1
  ----------------------------------------
  ERROR: Failed building wheel for pesq
  Running setup.py clean for pesq
Failed to build pesq
Installing collected packages: pesq
    Running setup.py install for pesq ... error
    ERROR: Command errored out with exit status 1:
     command: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-req-build-5_6n31st/setup.py'"'"'; __file__='"'"'/tmp/pip-req-build-5_6n31st/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-cx0zluxt/install-record.txt --single-version-externally-managed --compile --install-headers /usr/local/include/python3.9/pesq
         cwd: /tmp/pip-req-build-5_6n31st/
    Complete output (27 lines):
    running install
    running build
    running build_py
    creating build
    creating build/lib.linux-x86_64-3.9
    creating build/lib.linux-x86_64-3.9/pesq
    copying pesq/_pesq.py -> build/lib.linux-x86_64-3.9/pesq
    copying pesq/__init__.py -> build/lib.linux-x86_64-3.9/pesq
    copying pesq/cypesq.pyx -> build/lib.linux-x86_64-3.9/pesq
    copying pesq/pesqpar.h -> build/lib.linux-x86_64-3.9/pesq
    copying pesq/pesqmain.h -> build/lib.linux-x86_64-3.9/pesq
    copying pesq/pesqio.h -> build/lib.linux-x86_64-3.9/pesq
    copying pesq/pesq.h -> build/lib.linux-x86_64-3.9/pesq
    copying pesq/dsp.h -> build/lib.linux-x86_64-3.9/pesq
    copying pesq/dsp.c -> build/lib.linux-x86_64-3.9/pesq
    copying pesq/pesqdsp.c -> build/lib.linux-x86_64-3.9/pesq
    copying pesq/pesqmod.c -> build/lib.linux-x86_64-3.9/pesq
    running build_ext
    building 'cypesq' extension
    creating build/temp.linux-x86_64-3.9
    creating build/temp.linux-x86_64-3.9/pesq
    x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -ffile-prefix-map=/build/python3.9-RNBry6/python3.9-3.9.2=. -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -ffile-prefix-map=/build/python3.9-RNBry6/python3.9-3.9.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -Ipesq -I/usr/local/lib/python3.9/dist-packages/numpy/core/include -I/usr/local/lib/python3.9/dist-packages/numpy/core/include -I/usr/include/python3.9 -c pesq/cypesq.c -o build/temp.linux-x86_64-3.9/pesq/cypesq.o
    pesq/cypesq.c:46:10: fatal error: Python.h: No such file or directory
       46 | #include "Python.h"
          |          ^~~~~~~~~~
    compilation terminated.
    error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1
    ----------------------------------------
ERROR: Command errored out with exit status 1: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-req-build-5_6n31st/setup.py'"'"'; __file__='"'"'/tmp/pip-req-build-5_6n31st/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-cx0zluxt/install-record.txt --single-version-externally-managed --compile --install-headers /usr/local/include/python3.9/pesq Check the logs for full command output.

Pesq module lambda error

When I try to add a AWS Lambda layer for pesq module, I'm receiving the "Unable to import module 'lambda_function': No module named 'pesq.cypesq'".

I had followed all the steps , along with the correct path that is "python\lib\python3.9\site-packages" for the module.

not equal to the result of P.862

i ve exam the python-pesq with the ITU-T P.862 c version of pesq, the pesq score is not the same for the same ref_wav and deg_wav.

Raise exception in python instead of calling exit(1) in C function

On this line in the C code:
https://github.com/ludlows/python-pesq/blob/50591b2635a786c7f88446186eeda25bd78cf914/pesq/pesqmod.c#L947

exit(1) is called, which immediately terminates any python code running without warning, no exception or anything. Would you be able to return a flag to the python wrapper, and raise an Exception there? Then it could be caught by a try except block.

I am using this in an automated setting, so it is not always certain the audio will be valid for the pesq library, if an exception was raised, I can skip that audio and keep running my system

python2.7.6 pip install failed

Hi,
I got the problem as followed when I install the pesq using python2.7' pip:

$pip install .
Processing /student/home/yll/MetricGAN/python-pesq
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/home2/tmp/pip-UYvuSf-build/setup.py", line 32, in <module>
        language="c")
      File "/home2/tmp/pip-UYvuSf-build/setup.py", line 15, in __init__
        super().__init__(*args, **kwargs)
    TypeError: super() takes at least 1 argument (0 given)
    
    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /home2/tmp/pip-UYvuSf-build/

By the way, I also try it on python3.6 and successefully, but why failed on python2?
Thank you very much.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.