Logo

iOS SDK

注意:

iOS 11.0以上バージョンに対応しています。

インターネット接続でのアクティベーションのみサポート

1 統合手順

注意:オフライン認識機能を体験したい場合は、事前にビジネス連絡先まで連絡し、APPIDを取得してください。また、体験したい言語種別についてもお知らせください。連絡先:voice.contact@dolphin-ai.jp

  1. 手動でインポート:SpeechEvaluate.framework をプロジェクトにドラッグします。その後、General -> Frameworks, Libraries, and Embedded Content 下で SpeechRecognitionSDK.framework の Embed を Embed&Sign に変更します。
  2. podsにSocketRocket0.6.0、AFNetworking、SSZipArchive2.4.0が含まれることを確保してください
  3. offline sdk add model file: モデルファイル(.zipファイル)をフレームワークフォルダに入れます。

1.1 アプリ関連の権限を追加してください

  1. プロジェクトの info.plist ファイルに Privacy - Microphone Usage Description を追加して、マイクアクセス権限を追加します。

1.2 呼び出し手順/サンプルコード

識別機能が必要なファイルにおいて、デリゲート協定 EvalListener を遵守してください。

//設定主要パラメータ
SDKParams *params = [[SDKParams alloc] init];
params.appId = @"";
params.appSecret = @"";
params.sample_rate = 16000;
params.format = @"pcm";
params.realtime = NO;
params.langType = @"zh-cmn-Hans-CN";
params.enable_intermediate_result = YES;
params.enable_punctuation_prediction = YES;
params.max_sentence_silence = 450;
params.enable_words = YES;

/**
@sourcePath カスタマイズ・パス
@Documents/userPatu/model,modelの前のパスは任意の名前を付けることができる。
@VADファイルはmodelファイルの下になければならない。例:Documents/userPath/model/vad
@言語ファイルはmodel/asrファイルの下になければなりません。例:Documents/userPath/model/asr/ja-JP
*/
params.sourcePath = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject] stringByAppendingPathComponent:@"/userPath/model"];

1.2.1 識別クラスを作成し、承認してください

名前説明
SpeechRecognitionSpeechRecognition識別クラス
paramsSDKParamsパラメータと設定
//初期化-オフラインネットワーク認識
self.params.initType = YES;
self.params.online = NO;
SpeechRecognition *speechManger = [[SpeechRecognition alloc] init];
[speechManger setInitSDK:self params:params];
self.speechManger = speechManger;

1.2.2 コールバックメソッドの説明

名前説明
onStartStringエンジン接続開始のコールバックメソッド
onResultStringエンジンが結果を返すコールバックメソッド
onRealtimeResultStringエンジンが中間結果を返すコールバックメソッド
onWarningStringエンジンが警告を返すコールバックメソッド
onErrorStringエンジンがエラーを返すコールバックメソッド
onMachineCodeStringエンジンがマシンコードを返す
- (void) onRealtimeResult: (NSString *) result;

- (void) onResult: (NSString *) result;

- (void) onStart: (NSString *) taskId;

- (void) onStop;

- (void) onGetAudio: (NSData *)data;

- (void) onError: (NSString *)code msg:(NSString*)msg taskId:(nullable NSString*)taskId;

- (void) onWarning: (NSString *)code msg:(NSString*)msg taskId:(nullable NSString*)taskId;

- (void) onMachineCode: (NSString *)MachineCode;

1.2.3 インターフェースパラメータの説明

パラメータタイプ必須説明デフォルト値
lang_typeStringはい言語オプション必須
formatStringいいえ音声エンコード形式pcm
sample_rateIntegerいいえ音声サンプルレート16000
enable_intermediate_resultBooleanいいえ中間認識結果を返すかどうかfalse
enable_punctuation_predictionBooleanいいえ後処理で句読点を追加するかどうかfalse
enable_inverse_text_normalizationBooleanいいえ後処理でITNを実行するかどうかfalse
max_sentence_silenceIntegerいいえ音声センテンスのサイレンス検出しきい値、サイレンス時間がこのしきい値を超えるとセンテンスが切り替えられます。有効なパラメータ範囲は200~1200で、単位はミリ秒です450
enable_wordsBooleanいいえ単語情報を返すかどうかfalse
enable_modal_particle_filterBooleanいいえ語気詞フィルタを有効にするかどうかfalse
hotwords_idStringいいえ単語ID無し
hotwords_weightFloatいいえ単語ウェイト、値の範囲[0.1, 1.0]0.4

1.2.4 開始/停止識別

<1>認識開始(sdk内部録音)
    [self.speechManger startRecording];
    
認識終了
    [self.speechManger stopRecording];
    
<2>ファイル認識 (録音ファイルのローカルパスを直接渡す)   
    [self.speechManger startRecognitionOralWithWavPath:@"wav音声ファイルのパス"];

<3>音声データ認識(sdk外部録音、またはファイルをNSDataデータに変換して認識)    
- (void)doStart:(FinishBlock)finishBlock;
- (BOOL)doSetData:(NSData *) data isLast:(bool)isLast;
呼び出し方法
[self.speechManger doStart:^(_Bool success) {
            if (success) {
if(最後のセグメントに音声がある場合){
[self.speechManger doSetData:data isLast:YES];
}else{
[self.speechManger doSetData:data isLast:NO];
}
}
}];

1.2.5 単語の読み込み

[self.speechManger loadWords];

1.2.6 オフラインモデルの解放

//現在認識されている言語モデルをリリース
[self.speechManger offLineRelese];

//全モデルをリリース
[self.speechManger offLineReleseAll];

1.2.7 ログ生成をキャンセルする

model/asr/ja-JP/configにパラメータを設定する:
log-level = 6
log-rotate-days=0

2 状態コード表

エラーコードエラーメッセージ説明解決策
110100Unauthorized認証されてないパラメータを承認された能力に変更またはビジネス担当者に連絡してAI能力を追加します
110101Invalid Activation Codeアクティベーションキーが正しくありません正しいアクティベーションキーを入力します
110102Model Count Exceeds Limitモデル数が上限を超えていますビジネス担当者に連絡してください
110103Authorization Expired承認が期限切れですビジネス担当者に連絡して承認期間を延長します
110104Authorization Failed承認に失敗しましたビジネス担当者に連絡してください

3 SDKダウンロード&オフラインモデルのダウンロード

3.1 SDKダウンロード

SDKのダウンロードアドレスは以下の通り: iOS SDK

iOS Demo

3.2 オフラインモデルのダウンロード

言語種別言語コードダウンロードリンク備考
日本語-汎用ja-JP日本語-汎用日本語のみ
日本語-ホテルja-JP日本語-ホテル日本語と英語を混在で話すことをサポート
英語en-US英語
中国語zh-cmn-Hans-CN中国語中国語と英語を混在で話すことをサポート