Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
146 views
in Technique[技术] by (71.8m points)

python - Speaker recognition - Bad Request error on microsoft oxford

I am using the python wrapper that has been given in the SDK section. I've been trying to enroll a voice file for a created profile using the python API.

I was able to create a profile and list all profiles successfully. But when I try to enroll a voice (.wav) file with a simple hello world phrase with the created profile, I get the error 'ERROR:root:Error enrolling profile.' which in the trace tells 'Exception: Error enrolling profile: Bad Request'. I've used by importing the module to my python file as well as in command line as described in the Readme.

I have no clue whether this API will work or not. I don't think there is any other API for my little experiment. There are no proper responses even in the issues section of the SDK.

PS: This is my first question. Pardon my styles and formats. The following is the stack trace:

ERROR:root:Error enrolling profile.
127.0.0.1 - - [17/May/2016 15:55:44] "POST /verify-voice HTTP/1.1" 500 -
INFO:werkzeug:127.0.0.1 - - [17/May/2016 15:55:44] "POST /verify-voice HTTP/1.1" 500 -
Traceback (most recent call last):
  File "/Library/Python/2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1836, in __call__
    return self.wsgi_app(environ, start_response)
  File "/Library/Python/2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1820, in wsgi_app
    response = self.make_response(self.handle_exception(e))
  File "/Library/Python/2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1403, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/Library/Python/2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1817, in wsgi_app
    response = self.full_dispatch_request()
  File "/Library/Python/2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1477, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/Library/Python/2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1381, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/Library/Python/2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1475, in full_dispatch_request
    rv = self.dispatch_request()
  File "/Library/Python/2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1461, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/Rajagopal/Development/GitRepos/pet-projects/barabara-server/wsgi/barbara/views/users.py", line 57, in voice_register
    enroll_profile(app.config['MICROSOFT_SPEAKER_RECOGNITION_KEY'], user.speaker_profile_id, _created_file_path)
  File "/Rajagopal/Development/GitRepos/pet-projects/barabara-server/wsgi/oxford/speaker_recognition/Identification/EnrollProfile.py", line 48, in enroll_profile
    enrollment_response = helper.enroll_profile(profile_id, file_path)
  File "/Rajagopal/Development/GitRepos/pet-projects/barabara-server/wsgi/oxford/speaker_recognition/Identification/IdentificationServiceHttpClientHelper.py", line 155, in enroll_profile
    raise Exception('Error enrolling profile: ' + res.reason)
Exception: Error enrolling profile: Bad Request
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

The Speaker Identification code requires that enrollment audio "should be at least 20 seconds long and no longer than 5 minutes. The minimum number of total speech needed for enrollment, after removing silence, is 60 seconds" per documentation.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...