Nexiwave Speech Recognition SaaS Platform, v 5.0

 

·         For more information, contact: info@nexiwave.com

·         Current version: http://nexiwave.com/static/api/Nexiwave.Speech.Indexing.SaaS.api.pdf

·         Current WSDL:  http://api.nexiwave.com/services/SpeechIndexing?wsdl

 

 

 


Table of Contents

Nexiwave Speech Recognition SaaS Platform, v 5.0. 1

1.       Summary. 5

1.1         Why Speech Recognition?. 5

2.       General 6

2.1         Function Overview.. 6

2.2         Call Flow.. 6

2.3         Asynchronous Flow.. 7

3.       Common Web Service Info. 8

3.1         Common Data. 8

3.2         RESTful API Support 8

3.3         XML vs. JSON.. 8

4.       Record Management Functions. 9

4.1         Web Service: add. 9

4.2         Post Media File. 10

4.3         Web Service: remove. 11

4.4         Web Service: listAllRecordingInfo. 12

5.       Obtain Results Functions: 13

5.1         Web Service: getTranscription. 13

6.       Misc Functions: 15

6.1         Web Service: queryProcessingStatus. 15

6.1.1     Possible Processing Status. 16

6.1.2     Typical Processing Status Sequence. 17

7.       Advanced Functions. 19

7.1         Web Service: add (Full Parameter List) 19

7.1.1     Sample Web Service Request and Response: 23

7.1.2     Notes on “httpNotifyBackURL”. 23

7.1.3     Notes on “customIndexedProperties”. 24

7.2         Advanced Web Service: updateRecording. 24

7.3         Other Advanced Web Service: 25

8.       ProfileService. 26

8.1.1     Web Service: changePasswd. 26

8.1.2     Web Service: setDefaultHttpNotifyBackURL. 26

9.       Appendix. 28

9.1         Supported Input / Output Formats. 28

9.1.1     Input Formats. 28

9.1.2     Output Formats. 29

9.2         Audio File Format Recommendations. 29

9.2.1     Record per speaker per channel 29

9.2.2     Recording frequency. 29

9.3         Nexiwave User Password Policy. 29

9.4         Error Handling. 29

9.5         .info file format 31

 


 

The Nexiwave Speech Recognition Web Service API Guide is Copyright © 2012 Nexiwave Canada Inc. All rights reserved.

This document is for informational use only, it is subject to change without notice, and should not be construed as a commitment by Nexiwave Canada Inc. Nexiwave Canada Inc. assumes no responsibility or liability for any errors or inaccuracies that may appear in the informational content contained in this guide. No part of this guide may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, recording, or otherwise, without the prior written permission of Premiere Global. Please note that the content in this guide is protected under copyright law.

Please remember that any existing artwork or images that you may want to include in your project may be protected under copyright law. The unauthorized incorporation of such material into your new work could be a violation of the rights of the copyright owner. Please be sure to obtain any permission required from the copyright owner.

Any references to company names in sample templates are for demonstration purposes only and are not intended to refer to any actual organization.

Nexiwave is a service mark of Nexiwave Canada Inc. All other trademarks are the property of their respective owners.

1.          Summary

nexiwave provides a Web Service based Speech Recognition platform. The platform features:

1.      Advanced Speech Indexing, locate exact location of the spoken words

2.      Search focused, very high robust search accuracy

3.      Full text transcription capability for external indexing capability

4.      Automatic speaker identification and segmentation

5.      Very high speed GPU based solution

6.      Multi-language support (English + French)

7.      SaaS platform, private cloud available

 

1.1            Why Speech Recognition?

Over 70% of human communication is carried via speech. However, effective information retrieval within recorded speech communications has been very limited. Many innovative applications can be developed if there is a simple and effective way to retrieve information from these audio archives.

2.          General

2.1            Function Overview

Nexiwave Speech Recognition Platform API can be roughly separated into these areas:

·         Record Management: how the audio can be moved into Nexiwave system.

·         Obtain Results: obtain speech-to-text results

 

2.2            Call Flow

The basic call flow between your application and Nexiwave system is as below:

2.3            Asynchronous Flow

Nexiwave process your audio asynchronously. Your server does not need to wait for the processing to finish. Nexiwave can notify your server when the processing is finished and result is ready to be retrieved.

This function is supported via httpNotifyBackURL parameter in the “add” call.

3.          Common Web Service Info

3.1            Common Data

Nexiwave Speech Recognition web service APIs are all stateless API calls. You must provide these parameters for every request:

Parameter

Value

Size

Mandatory

Comments

authData

component

 

 

 

email

String

255

Yes

Your user account email address

passwd

string

255

Yes

 

 

3.2            RESTful API Support

Besides the standard SOAP interface, the same Nexiwave Web Service API can be accessed via simple REST address.

A sample RESTful GET URL:

https://api.nexiwave.com/services/SpeechIndexing/getTranscription?authData.email=XXX&authData.passwd=XXX&recordingId=1234

3.3            XML vs. JSON

The default response content is XML, which is suitable for many XML clients to parse with the WSDL.

To receive response as JSON objects, simply add this HTTP parameter to your REST URL:

HTTP Parameter

Value

response

application/json

Sample JSON URL:

https://api.nexiwave.com/services/SpeechIndexing/add?authData.email=XXX&authData.passwd=XXX&mediaURL=XXX&response=application/json

Sample JSON return:

{"addResponse":{"return":10805}}

4.          Record Management Functions

These Nexiwave services provide methods to import speech content into Nexiwave system.

Three methods are provided: add a URL, post a file, passive Index-On-Demand URL.

4.1            Web Service: add

Your application invokes this web service to instruct Nexiwave to index a media file.

Simplified Request Parameters:

(Recommended minimum list of parameter. Please consult Full Parameter List)

Parameter

Value

Size

Mandatory

Comments

authData

component

 

Yes

See “Common Web Service Data” section

data

component

 

 

 

mediaURL

String

5000

Yes

An URL (http/https, ftp, please)

Mandatory unless mediaFileData present.

externalKey

string

5000

 

The external key.

Note: nexiwave simply records this data. No validation will be enforced to ensure the uniqueness of this key.

If two or more recordings have same externalKey, the definition of finding the recording by this key is undefined.

keywords

String

5000

 

A list of keywords or phrases that might be spoken in the audio, separated by comma, or dots.

You may also pass in time coded keywords/phrases, using the “Nexiwave Human Text Convention”.

Integration Tips:

you may obtain keywords/phrases

·         Video OCR (with time codes)

·         Words/phrases from an associated PowerPoint presentation.

Important:

This value is used by Nexiwave Speech engine.

displayTitle

String

5000

 

An optional field for display in nexiwave Web UI.

Important: used by Nexiwave Speech engine.

notes

String

5000

 

Any notes

Important:

This value is used by Nexiwave Speech engine.

hints

component

 

 

 

speakerNames

String

1000

 

The speaker names, separated by semi-colon (;)

Important:

This value is used by Nexiwave Speech engine.

 

RESTFul Request:

https://api.nexiwave.com/services/SpeechIndexing/add?authData.email=XXX&authData.passwd=XXX&data.mediaURL=XXX&data.keywords=XXX&data.hints.speakerNames=XXX....

 

Response:

Parameter

Value

Mandatory

Comments

Recording

 

 

 

recordingId

long

Yes

 

 

Sample Response:

Sample XML Response

http://www.nexiwave.com/static/api/captured.soap.messages/add.response.xml

Sample JSON response

http://www.nexiwave.com/static/api/captured.soap.messages/add.response.json.txt

 

4.2            Post Media File

This method is useful if your media file cannot be exposed via a web or ftp server.

Request:

Method:

HTTP POST

HTTP Post URL

https://api.nexiwave.com/file/storage/you@your.email.com/recording/?authData.passwd=XXX

HTTP Body

The media file to be uploaded, the raw form.

Response:

Body

Long

the new recordingId

 

Supported Parameters in HTTP URL (or HTTP Header)

Parameters:

externalKey

keywords

displayTitle

notes

httpNotifyBackURL

storeAudio

processingPriority

targetDecodingConfigName

humanTranscription

·         Please consult Full Parameter List for the definition of each parameter.

·         These parameters can be sent either through HTTP URL Parameters or HTTP header.

·         All these parameters are optional.

 

4.3            Web Service: remove

You may also delete one of your media record from our system. These actions will be taken:

·         The database record, as well as associated audio, transcript and index files, for this recording will be deleted;

·         Any current jobs will be deleted

 

Request:

Parameter

Value

Mandatory

Comments

authData

component

Yes

See “Common Web Service Data” section

recordingId

Long

Yes

The nexiwave id for this recording

 

RESTFul GET Request:

https://api.nexiwave.com/services/SpeechIndexing/remove?authData.email=XXX&authData.passwd=XXX&recordingId=XXX

 

Response:

Parameter

Value

Mandatory

Comments

Result

boolean

Yes

Whether the removal was successful.

Sample Web Service Request and Response:

Sample Response

http://www.nexiwave.com/static/api/captured.soap.messages/remove.response.xml

 

4.4            Web Service: listAllRecordingInfo

You may use this method to list all recordings of your account.

Request:

Parameter

Value

Mandatory

Comments

authData

component

Yes

See “Common Web Service Data” section

RESTFul GET Request:

https://api.nexiwave.com/services/SpeechIndexing/listAllRecordingInfo?authData.email=XXX&authData.passwd=XXX

Response:

Parameter

Value

Mandatory

Comments

Recording

 

 

 

recordingId

long

Yes

 

url

String

 

 

externalKey

String

 

 

uploadTime

Date

 

 

Title

String

 

 

notes

String

 

 

averageAccruacy

Float (0~1.0)

 

·         0: no confidence, or confidence not available.

·         1: means extremely good confidence.

·         A value greater than 0.7 is considered good confidence.

Sample Web Service Request and Response:

Sample Response

http://www.nexiwave.com/static/api/captured.soap.messages/listAllRecordingInfo.response.xml

5.          Obtain Results Functions:

5.1            Web Service: getTranscription

IMPORTANT:

Un-adapted multi-speaker machine speech transcription is exceptionally hard. Machine transcription is most likely not suitable for human viewing, due to lack of stable accuracy, punctuation and capitalization. Machine transcription is most likely not suitable for human eyes to view the complete chunk of the machine transcription.

The following conditions may cause less than ideal speech-to-text results:

Machine transcription is suitable for these purposes:

It is understood that Nexiwave un-adapted machine transcription may obtain generally acceptable raw text accuracy (73%) with the following conditions:

In general, Nexiwave Speech-to-text function may do well on these situations:

For situations where speech-to-text results are less ideal, Nexiwave recommends our “Audio Search” functions. Our proprietary Audio Search technology is not simple search in the generated text. Nexiwave Audio Search technology provides much higher and much stable accuracy than simple searching in text. It is ideal for retrieving information from media archives.

 

You invoke this service when you would like to obtain full text transcription of an audio.

Request:

Parameter

Value

Mandatory

Note

authData

component

Yes

See “Common Web Service Data” section

recordingId

long

Yes

The nexiwave recording ID

alternativeSize

int

No

Size of alternative words.

Negative (Default): return all alternatives.

Zero: only the best result is returned.

Positive: upto this number of alternative will be returned

 

Sample RESTFul Request:

https://api.nexiwave.com/services/SpeechIndexing/getTranscription?authData.email=XXX&authData.passwd=XXX&recordingId=XXX

 

Response:

Parameter

Value

Mandatory

Note

SentenceChunk

 

 

A sentence

startInMS

Long

Yes

Start time in milliseconds

endInMS

Long

Yes

End time in milliseconds

wordNode

Component

 

 

startInMS

Long

Yes

Word Start time in milliseconds

endInMS

Long

Yes

Word End time in milliseconds

wordNodeItem

Component

Yes

The contextual transcription generated

Value

String

 

The word

confidence

Float

 

The confidence measure, from 0 to 1 (1 as most confident)

 

Sample Response:

Sample XML Response

http://www.nexiwave.com/static/api/captured.soap.messages/getTranscription.response.xml

Sample JSON response

http://www.nexiwave.com/static/api/captured.soap.messages/getTranscription.response.json.txt

 

6.          Misc Functions:

6.1            Web Service: queryProcessingStatus

Depends on the length of your multimedia file, nexiwave indexing can take some time to finish. You may this web service to query the current status of your recording.

Request:

Parameter

Value

Size

Mandatory

Comments

authData

component

 

Yes

See “Common Web Service Data” section

recordingId

Long

 

Yes

The nexiwave recording ID

 

RESTFul GET Request:

https://api.nexiwave.com/services/SpeechIndexing/queryProcessingStatus?authData.email=XXX&authData.passwd=XXX&recordingId=XXX

Response:

Parameter

Value

Mandatory

Comments

RecordingProcessingStatus

 

 

 

Status

String

Yes

See “Table 1” below for possible values

extraInfo

Component

 

Note: this field may only be valid when the “status” is “DECODING_IN_PROGRESS

percentageFinished

float

yes

0-100: percentage of finished

estimatedFinishedTimeInMS

long

yes

Estimated time to finish in milliseconds

otherStats

string

no

Other tech stats

 

Sample Web Service Request and Response:

Sample Response

http://www.nexiwave.com/static/api/captured.soap.messages/queryProcessingStatus.response.xml

 

6.1.1        Possible Processing Status

This table below lists all possible statuses

Table 1: Possible Processing Status Values

Status Values

Meaning

Note

INVALID_AUDIO_SOURCE

Nexiwave was unable to obtain audio from specified source

 

INVALID_RECORDING

The recording downloaded, but the content is not valid media content.

Please refer the support media format section for a list of supported media format.

RECORD_NOT_EXIST

The recording not exist

 

WRITING_RECORD

The recording is being written to DB

 

RECEIVING_ORIG_MEDIA

Starting to receive original media content

 

READY_4_AUDIO_EXTRACTION

The upload request is in queue, audio source has been obtained. Audio is ready to be extracted.

 

EXTRACTING_AUDIO

nexiwave is still extracting audio from the original media file

 

NOT_FOUND_IN_QUEUE

Audio is ready, but the recording is not in the processing queue yet

Nexiwave prioritize the processing based on three levels:

·         Paying customer with prioritized processing

·         Paying customer

·         Free trial customers

READY_FOR_DECODING

The recording has been scheduled to be processed and waiting in processing queue.

 

QUEUED_FOR_DECODING

Recording is queued for processing, but not started yet

 

DECODING_IN_PROGRESS

Decoding has started

extraInfo field contains the current decoding progress:

·         % of finished

·         estimated finish time

·         decoding speed

IN_FINAL_PROCESSING

Decoding has finished, in final verification and writing data.

 

FINISHED

Decoding has finished

 

WORD_SPOTTING_LIST_MATCHED

Some spotting words have been found in the audio (Decoding should have been nearly finished)

extraInfo contains:

·         number of hits (an integer)

TIME_STAMPING_DONE

Time stamping process has finished for the recording.

 

UNKNOWN

The status of this recording is unknown

 

FAILED

Nexiwave failed to process this recording

 

 

 

6.1.2        Typical Processing Status Sequence

A most possible sequence of status for success audio import

7.          Advanced Functions

Besides the above simplified of the API calls, nexiwave provides advanced version of API calls. These APIs are meant to expose the full functionalities of nexiwave underlying system. It is recommended to try out the simplified version first.

7.1            Web Service: add (Full Parameter List)

You can supply more parameters for your upload.

Request:

Parameter

Value

Size

Mandatory

Comments

authData

component

 

Yes

See “Common Web Service Data” section

data

component

 

 

 

 

mediaURL

Strng

5000

Yes (unless mediaFileData present)

An URL (http/https, ftp, please)

mediaFileData

attachment

 

Yes (unless mediaURL present)

Base64 media data in the attachment.

 

Please refer SOAP Attachment for how to attach binary file in SOAP call.

Note:

·   This is NOT a recommended way for sending large media content to nexiwave.

·   Nexiwave recommends using the mediaURL parameter.

externalKey

string

5000

 

The external key from your system.

Note: nexiwave simply records this data. No validation will be enforced to ensure the uniqueness of this key.

keywords

String

5000

 

A list of keywords or phrases to be used in language model adaptation.

You may also pass in time coded keywords/phrases, using the “Nexiwave Human Text Convention”.

Excellent accuracy improvement is reasonable.

Integration Suggestions:

·         One method of obtaining these keywords and time codes is to use Video OCR service.

·         You may also extract all words/phrases from an associated PowerPoint presentation.

displayTitle

String

5000

 

An optional field for display in nexiwave Web UI.

notes

String

5000

 

Any notes

sourceKey

String

128

 

Your key to help Nexiwave separate content during:

·         SpeakerId process (SpeakerId accuracy may deteriorate if one account has too many potential speakers).

·         Searches keywords will not be applied to recordings with different sourceKey.

 

For example, if your application has many users of its own, you may use this field to let Nexiwave builds separate Speaker database for each key you used. Ideally, this key should be consistent for your users.

mediaTypeSuffix

String

100

 

The value is generally the typical file suffix for your media file. For example, “mp3” for mp3 audio files, “wmv” for windows media file.

Use this field to help our media decoder to identify the media content type.

humanTranscription

String

5000

 

The human transcribed text, if available.

The human text will automatically enter nexiwave time stamping process. The time stamp results can be obtained using getTimeStampedHumanTranscription call.

 

This is equivalent to a separate call of attachHumanTranscription()

humanTranscriptionFile

Bytes (Base64 encoded)

 

 

This is equivalent to a separate call of attachHumanTranscriptionFile()

 

Note:

If both humanTranscription or humanTranscriptionFile are present in the parameters, humanTranscription will be used.

decodingProfile

String

100

 

A case-sensitive valid decoding profile name.

If no value, or invalid value, is passed in, a nexiwave configured default decoding profile will be used.

 

You may use “listDecodingProfiles” API call to obtain a list of supported decoding profiles.

contextualDocURLs

String

5000

 

URLs for contextual documents.

Separated by semi-colon (;).

Document(s) will be downloaded and keywords/phrases extracted and used during indexing process.

contextualDocumentFileData

Byte[]

 

 

Contextual document that is associated with the media.

Supported file types:

·          All Ms Office files: PowerPoint, Word, etc

·          PDF

·         HTML/XML

·         TXT

 

Words and phrases will be utilized during indexing process.

contextualDocumentFileData2

Byte[]

 

 

-

contextualDocumentFileData3

Byte[]

 

 

-

contextualDocumentFileData4

Byte[]

 

 

-

contextualDocumentFileData5

Byte[]

 

 

-

httpNotifyBackURL

String

5000

 

Instead of your code actively polling for processing status, nexiwave can push the status to your system.

A HTTP(S) GET url that will be called by nexiwave upon each status change event during the processing of your recording.

Three extra parameters will be added to the url: “recordingId”, “externalKey” and “status”

You may also configure the default value for this field in your nexiwave account “Settings” page, or through the Nexiwave profile API.

Please read the below section “Notes on httpNotifyBackURL” for more information.

actualStartTimeInMS

long

 

 

The actual start time of the audio, in number of milliseconds after January 1st, 1970. (as defined java.util.Date.getTime() method).

 

If this field is not set, the current time at the upload will be used.

customIndexedProperties

Two dimension String array,

Key/value pairs

 

 

These are the custom indexed properties, key/value pairs, for this particular recording.

 

See below section “More information on customIndexProperties for more information on this field.

processingPriority

int

 

 

Your processing priority. A recording with higher value of this attribute will be processed earlier than the one with lower value.

 

Note: this processing priority is only effective within your account.

storeAudio

boolean

 

 

A Boolean field to indicate whether nexiwave should store the audio after processing. Default is true.

Note:

·   If the value is false, all related audio files will be deleted upon finishing decoding.

·   Other artefacts, such as database record, generated text and timing info, will still remain in nexiwave system. These data may still be needed for other API calls, such as getTranscription.

·   A subsequent “remove” API call can be used to thoroughly delete everything related to this recording.

wordSpottingList

String

5000

 

List of words, separated by whitespace.

 

Upon decoding finish, if any of the words were found in the audio, a HTTP notification will be sent back to your server, with a particular status of “WORD_SPOTTING_LIST_MATCHED”.  For more information, see “Note on httpNotifyBackURL”.

otherAudioTrunks

component

 

 

If you record audio in separate file for each audio leg, you may send the audio leg separately for best accuracy.

mediaFile2TranscribeURL

String

 

 

The source URL for this audio leg/trunk

offsetInMS

long

 

 

The relative offset of the audio trunk to the start of the whole recording.

Note: this field must be positive number. The behaviour is undefined for negative numbers.

hints

component

 

 

 

minNumberOfSpeakers

Int

 

 

Minimum number of speakers in the audio. Default is 1.

maxNumberOfSpeakers

Int

 

 

Maximum number of speakers. Zero or negative number means unlimited. Default is zero (unlimited)

speakerNames

String

1000

 

The speaker names, separated by semi-colon (;)

 

RESTFul GET Request:

https://api.nexiwave.com/services/SpeechIndexing/add?authData.email=XXX&authData.passwd=XXX&data.mediaURL=XXX&data.targetDecodingConfigName=XXX&....

 

Response:

Parameter

Value

Mandatory

Comments

Recording

 

 

 

recordingId

long

Yes

 

 

7.1.1        Sample Web Service Request and Response:

Sample Response

http://www.nexiwave.com/static/api/captured.soap.messages/addExt.response.xml

 

7.1.2        Notes on “httpNotifyBackURL”

Nexiwave can notify you about the status change of nearly each step of the processing, in an asynchronously manner.

Three parameters will be added to this GET url:

Example:

If the supplied notification URL was:

http://your.domain.com/app/callback

Then, the GET request that your server will receive will be:

http://your.domain.com/app/callback?recordingId=12345&status=WRITING_RECORDING

 

Your Nexiwave account can also be configured with the default notify back URL through the “Settings” page.

 

7.1.3        Notes on “customIndexedProperties”

You may associate one or more custom properties to a recording. This is a hash like properties.

Sample REST URL with customIndexedProperties:

https://api.nexiwave.com/services/SpeechIndexing/add?authData.email=XXX&authData.passwd=XXX&data.mediaURL=XXX&data.customIndexedProperties[myCustomerId]=1234&data.customIndexedProperties[receivedFromChannel]=XXX&…

Nexiwave may use these custom properties to better categorize your audio and process with proper models. Please contact support@nexiwave.com for setup.

7.2            Advanced Web Service: updateRecording

You may use this call to update some fields of a particular recording in the nexiwave system.

Request:

Parameter

Value

Size

Mandatory

Comments

authData

component

 

Yes

See “Common Web Service Data” section

recordingId

Long

 

Yes

The nexiwave recordingId

indexedAudioData

Component

 

 

This field is corresponding to the “addExt” field.

 

Please refer to “addExt” for this field.

externalKey

String

 

 

 

mediaFileKeywords

String

 

 

 

displayTitle

String

 

 

 

notes

String

 

 

 

actualStartTimeInMS

Long

 

 

 

customIndexedProperties

Two dimension string array, key/value pairs

 

 

 

RESTFul GET Request:

https://api.nexiwave.com/services/SpeechIndexing/updateRecording?authData.email=XXX&authData.passwd=XXX&recordingId=XXX&indexedAudioData.externalKey=XXX&...

Response:

Parameter

Value

Mandatory

Comments

Result

boolean

 

Whether the update was success or not.

 

 

7.3            Other Advanced Web Service:

For performance reasons, nexiwave also offers batched requests for nearly all frequently used API calls.

Batch Request

Singular request

Comments

multiAddExt

addExt

 

multiQueryProcessingStatus

queryProcessingStatus

 

multiUpdateRecording

updateRecording

 

 

 

 

 

Comparing to the corresponding singular requests, batched requests accepts an array of input data and return an array of result data. Please refer the corresponding singular requests for details of the fields.

8.          ProfileService

Nexiwave provides ProfileService at this location:

WSDL: http://api.nexiwave.com/services/ProfileService?wsdl

 

8.1.1        Web Service: changePasswd

You may change password of a nexiwave account.

Request:

Parameter

Value

Size

Mandatory

Comments

authData

component

 

Yes

See “Common Web Service Data” section

newPasswd

String

256

Yes

The new password

RESTFul GET Request:

https://api.nexiwave.com/services/ProfileService/changePasswd?authData.email=XXX&authData.passwd=XXX&newPasswd=XXX

 

Response:

Parameter

Value

Comments

result

boolean

Success or not

 

Please also check with Password Policy section.

 

8.1.2        Web Service: setDefaultHttpNotifyBackURL

You may use this API to set the default “HTTP Notify Back URL” for an account.

Parameter

Value

Size

Mandatory

Comments

authData

component

 

Yes

See “Common Web Service Data” section

defaultHttpNotifyBackURL

String

5000

Yes

The new default “Http Notify Back URL

RESTFul GET Request:

https://api.nexiwave.com/services/ProfileService/setDefaultHttpNotifyBackURL?authData.email=XXX&authData.passwd=XXX&defaultHttpNotifyBackURL=XXX

 

Response:

Parameter

Value

Comments

result

boolean

Success or not

 

9.          Appendix

9.1            Supported Input / Output Formats

9.1.1        Input Formats

Nexiwave supports virtually all kind of media format. For best accuracy, nexiwave recommends un-compressed PCM Wave audio.

Nexiwave is capable of extracting audio from these media file formats.

Supported video/audio codec:

Supported audio codec:

9.1.2        Output Formats

Nexiwave can output machine processing results in these formats:

File type name

Content type

Description

timedtext.xml

text/xml

Timedtext for subtitle

sami.xml

text/xml

SAMI content for subtitle

qt.txt

text

QuickTime subtitle

caption.srt

text

Subrip SRT subtitle

info.txt

text

The.info format. See format definition here.

pure.text.txt

Text

Pure text. With all words in one line.

 

9.2            Audio File Format Recommendations

9.2.1        Record per speaker per channel

For best accuracy, audio files are processed on a per channel basis. It is recommended to record your audio source file on per speaker per channel basis.

9.2.2        Recording frequency

Nexiwave system is prepared to accept nearly any kind of sample rate. Your audio file is converted to a nearest sample rate that nexiwave can accept.

Human speaks at less than 11,000hz. Therefore, there is also no need to use too high sample rate.

9.3            Nexiwave User Password Policy

 

9.4            Error Handling

List of error codes that Nexiwave uses:

Error Code  (All error codes start with “Error.”)

Description

unable.to.create.user.exists.need.email.verification

Unable to create a user. The email address has been register with an account already, which is still waiting for user activation.

unable.to.create.user.exists.email.verified

Unable to create a user. The email address has been register with an active account already.

registration.invalidEMail

Invalid email used for registration

registration.invalidPassword

Invalid password used for registration

readonly.account

While invoking a non-read-only action, this account is read-only.

profile.changepassword.newpassword.empty

New password is empty

profile.password.minimum.length

New password is too short. It must have the length of six or more.

profile.password.must.has.digit

The new password must have at least one digit.

profile.password.must.has.letter

The new password must have at least one letter.

nothing.to.upload

While add request, nothing to import.

speaker.ID.not.exist

While add request, speaker ID is specified, but not found in Nexiwave DB.

invalid.recordingId

While a recording access call, recordingId is not valid.

empty.query

Requested a search, the query is empty.

security.invalid.access.to.recording

Security error. The caller does not have access to the recording.

security.not.authorized.feature

Security error. The caller is not authorized to use the feature.

security.invalid.userId.and.password

Security error. Unable to authenticate with userId and password supplied.

security.email.not.verified

Security error. userId and password matches, but email has not been verified.

 

The user should check verification email that was sent by Nexiwave.

security.account.locked.out

Security error. UserId and password matches, but the account has been locked out due to too many failed attempts. Please contact support@nexiwave.com to unlock the account.

security.invalid.request

Security error. The request is not valid.

 

Sample error message:

<soapenv:Fault>

<soapenv:Code>

<soapenv:Value>

axis2ns4:Error.security.invalid.userId.and.password

</soapenv:Value>

</soapenv:Code>

<soapenv:Reason>

<soapenv:Text xml:lang="en-US">

Unable to authenticate with supplied userid/passwd for user Auth Request for user test@nexiwave.com, group 0, passwd: (length=0). Result : FAILURE. Please contact support@nexiwave.com

</soapenv:Text>

</soapenv:Reason>

<soapenv:Detail/>

</soapenv:Fault>

 

9.5            .info file format

Nexiwave supports exporting speech processing results in .info format. A file of this format is a plain text file. Each line corresponds to a single word in the automatic transcription. Each line contains these fields, separated by one or more spaces:

<word>   <confidence score:[0-1000]>   <start>   <end>   0.0   <side:[1,2,…]>

Example:

HELLO

900

1770

2210

0.0

1

WELCOME

1000

2750

3170

0.0

2