龙城战记 v1.0.1版本的 MD5 值为:00000931b93a3ccf40631848e86a593d

以下内容为反编译后的 NlsClient.java 源代码,内容仅作参考


package com.alibaba.idst.util;

public class NlsClient {
    public static final String NLS_GATEWAY = "wss://nls-gateway.cn-shanghai.aliyuncs.com:443/ws/v1";
    public static final int SAMPLE_RATE_16K = 16000;
    public static final int SAMPLE_RATE_8K = 8000;
    private long client;
    private SpeechRecognizerWithRecorder speechRecognizerWithRecorder;
    private SpeechTranscriberWithRecorder speechTranscriberWithRecorder;

    private native long buildRecognizerRequest(long j);

    private native long buildSynthesizerRequest(SpeechSynthesizerCallback speechSynthesizerCallback);

    private native long buildTranscriberRequest(long j);

    private native long createRecognizerCallback(SpeechRecognizerCallback speechRecognizerCallback);

    private native long createTranscriberCallback(SpeechTranscriberCallback speechTranscriberCallback);

    private native long initClient(boolean z);

    private native int logConfig(String str);

    private native void releaseClient();

    static {
        System.loadLibrary("nlscppsdk");
    }

    public NlsClient() {
        this.client = 0L;
        this.client = initClient(true);
    }

    public void release() {
        this.speechTranscriberWithRecorder = null;
        this.speechTranscriberWithRecorder = null;
        releaseClient();
        this.client = 0L;
    }

    public SpeechRecognizer createRecognizerRequest(SpeechRecognizerCallback speechRecognizerCallback) {
        long createRecognizerCallback = createRecognizerCallback(speechRecognizerCallback);
        SpeechRecognizer speechRecognizer = new SpeechRecognizer(buildRecognizerRequest(createRecognizerCallback), createRecognizerCallback);
        speechRecognizer.setUrl(NLS_GATEWAY);
        speechRecognizer.setSampleRate(16000);
        speechRecognizer.setFormat("pcm");
        return speechRecognizer;
    }

    public SpeechRecognizerWithRecorder createRecognizerWithRecorder(SpeechRecognizerWithRecorderCallback speechRecognizerWithRecorderCallback) {
        if (this.speechRecognizerWithRecorder == null) {
            this.speechRecognizerWithRecorder = new SpeechRecognizerWithRecorder(this);
        }
        this.speechRecognizerWithRecorder.setUserCallback(speechRecognizerWithRecorderCallback);
        return this.speechRecognizerWithRecorder;
    }

    public SpeechTranscriber createTranscriberRequest(SpeechTranscriberCallback speechTranscriberCallback) {
        long createTranscriberCallback = createTranscriberCallback(speechTranscriberCallback);
        SpeechTranscriber speechTranscriber = new SpeechTranscriber(buildTranscriberRequest(createTranscriberCallback), createTranscriberCallback);
        speechTranscriber.setUrl(NLS_GATEWAY);
        speechTranscriber.setFormat("pcm");
        speechTranscriber.setSampleRate(16000);
        return speechTranscriber;
    }

    public SpeechTranscriberWithRecorder createTranscriberWithRecorder(SpeechTranscriberWithRecorderCallback speechTranscriberWithRecorderCallback) {
        if (this.speechTranscriberWithRecorder == null) {
            this.speechTranscriberWithRecorder = new SpeechTranscriberWithRecorder(this);
        }
        this.speechTranscriberWithRecorder.setUserCallback(speechTranscriberWithRecorderCallback);
        return this.speechTranscriberWithRecorder;
    }

    public SpeechSynthesizer createSynthesizerRequest(SpeechSynthesizerCallback speechSynthesizerCallback) {
        SpeechSynthesizer speechSynthesizer = new SpeechSynthesizer(buildSynthesizerRequest(speechSynthesizerCallback));
        speechSynthesizer.setUrl(NLS_GATEWAY);
        return speechSynthesizer;
    }
}