このガイドでは、Qwen-Audio-ASR-Filetrans非リアルタイム音声認識iOS SDKを使用して、オーディオをテキストに変換する方法について説明します。
サポートされている音声形式、ファイルサイズ制限、再生時間制限などの入力要件については、音声の仕様を参照してください。
これらのパラメータは、
パラメータの説明
すべての音声認識パラメータは、
パラメータの説明
音声認識SDKインスタンスを初期化します。SDKはシングルトンです。
パラメータの説明
このインターフェースを使用して、
パラメータの説明
認識を開始します。
メソッドシグネチャ
パラメータの説明
このインターフェースを使用して、非同期タスクの現在のステータスと結果をアクティブにクエリします。呼び出しが成功すると、
メソッドシグネチャ
パラメータの説明
現在のタスクを直ちにキャンセルします。
メソッドシグネチャ
パラメータの説明
すべての内部SDKリソースを解放し、進行中のすべてのタスクを強制的に終了します。このメソッドを呼び出すと、SDKインスタンスは使用できなくなります。再度使用するには、
現在のSDKバージョン情報を取得します。
メソッドシグネチャ
戻り値
現在のSDKバージョン情報。
メソッドシグネチャ
パラメータの説明
このコールバックを使用して、トラブルシューティングとデバッグのための詳細な内部SDKログを受信します。
クイックスタート
- APIキーの取得:APIキーの取得
-
SDKをダウンロードしてサンプルコードを実行します:
- 最新のSDKバンドルのダウンロード。
- ZIPパッケージを展開し、含まれているnuisdk.frameworkをプロジェクトに追加します。
- Build Phases → Link Binary With Libraries で、
nuisdk.xcframeworkを追加します。 - General → Frameworks, Libraries, and Embedded Content で、
nuisdk.xcframeworkをEmbed & Signに設定します。 - Xcodeでサンプルプロジェクトを開きます。サンプルコードは
DashFunAsrFileTranscriberViewController.mにあります。API Keyを置き換えて機能を試してください。
呼び出し手順
- 同期モード
- 非同期モード
- SDKを初期化します。
- ユースケースに合わせて関連するパラメータを設定します。
async_requestをfalseに設定し、nui_file_trans_startを呼び出して非リアルタイム音声認識リクエストを送信し、結果を待ちます。onFileTransEventCallbackコールバックで、EVENT_FILE_TRANS_RESULTイベントをリッスンして最終的な認識結果を取得します。nui_releaseを呼び出して、SDKリソースを解放します。
リクエストパラメータ
接続および制御パラメータ
これらのパラメータは、nui_initializeインターフェースのparameters引数にJSON文字列を渡すことで設定します。
パラメータの例
以下はサンプルJSON文字列です。すべてのパラメータがリストされているわけではありません。コードを記述する際に必要なものを追加してください。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
url | String | はい | サービスエンドポイント:
{WorkspaceId}を実際のワークスペースIDに置き換えます。 |
apikey | String | はい | APIキー。 |
service_mode | String | はい | 実行モード。非リアルタイム音声認識では"1"に固定されます。 |
device_id | String | はい | エンドユーザーを識別する一意の文字列。アプリ内のユーザーIDまたはクライアントによって生成されたデバイス識別子に設定します。このIDは主にログのトレースとトラブルシューティングに使用されます。 |
debug_path | String | いいえ | ログファイルの保存パス。このパラメータは、nui_initializeインターフェースを呼び出す際にsave_logがYESに設定されている場合にのみ有効になります。その場合、ログファイルパスを設定する必要があります。設定しない場合はエラーが返されます。ローカルには最大2つのログファイルが保持されます。 |
max_log_file_size | int | いいえ | ログファイルの最大サイズ(バイト単位)。このパラメータは、nui_initializeインターフェースを呼び出す際にsave_logがYESに設定されている場合にのみ有効になります。デフォルト値: 104857600(100 * 1024 * 1024バイト、つまり100 MiB)。 |
log_track_level | int | いいえ | ログコールバック(onFileTransLogTrackCallback)を介して送信されるログコンテンツのフィルターレベルを制御します。デフォルト値:2。有効な値:
log_track_levelとlevel(nui_initializeインターフェースを介して設定)は、最終的にどのログがコールバックに送信されるかを共同で決定します。ログのレベル値は、コールバックに送信される前にlog_track_levelとlevelの両方以上である必要があります。たとえば、log_track_levelが2(INFO)に設定され、levelが3(WARNING)に設定されている場合、WARNING以上(値 >= 3)のログのみがコールバックに送信されます。 |
音声認識効果パラメータ
すべての音声認識パラメータは、nui_file_trans_startインターフェースを通じて設定します。
パラメータの例
以下はサンプルJSON文字列です。すべてのパラメータがリストされているわけではありません。コードを記述する際に必要なものを追加してください。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
file_urls | array[string] | はい | 文字起こしする音声ファイルまたは動画ファイルのURLのリスト。HTTPおよびHTTPSがサポートされています。1つのリクエストでサポートされるURLは1つだけです。サポートされている音声形式、ファイルサイズ制限、再生時間制限などの入力要件については、音声の仕様を参照してください。録音がAlibaba Cloud OSSに保存されている場合、RESTful APIはoss://プレフィックス付きの一時的なURLをサポートしますが、SDKはoss://プレフィックス付きの一時的なURLをサポートしていません。 |
async_request | boolean | いいえ | 音声認識リクエストが非同期かどうか。デフォルト値:false。有効な値:
|
apikey | string | いいえ | 接続および制御パラメータのapikeyが一時的なAPIキーである場合、有効期限切れを防ぐためにここで更新できます。 |
nls_config | object | はい | コア音声認識設定オブジェクト。モデル選択や認識効果制御などの主要なパラメータが含まれています。 |
nls_config.model | string | はい | モデル名。 |
nls_config.special_word_filter | object | いいえ | 音声認識中に処理するセンシティブワード。センシティブワードごとに異なる処理方法を設定できます。詳細については、センシティブワードのフィルタリングを参照してください。 |
nls_config.channel_id | array[integer] | いいえ | マルチトラック音声ファイルで認識する音声トラックのインデックス。インデックスは0から始まります。たとえば、[0]は最初のトラックを認識し、[0, 1]は1番目と2番目のトラックを同時に認識します。このパラメータを省略すると、最初のトラックのみが処理されます。デフォルト値:[0]。 |
nls_config.diarization_enabled | boolean | いいえ | 話者分離を有効にするかどうか。デフォルトでは無効です。モノラル音声にのみ適用されます。マルチチャンネル音声は話者分離をサポートしていません。有効にすると、認識結果に異なる話者を識別するspeaker_idフィールドが含まれます。話者分離が有効な場合、音声の長さを2時間以内に抑えてください。そうしないと、認識が失敗したりタイムアウトしたりする可能性があります。 speaker_idの例については、認識結果の説明を参照してください。 |
nls_config.speaker_count | integer | いいえ | 話者数の参照値。有効範囲は2から100までの整数(両端を含む)です。デフォルトでは、話者数は自動的に検出されます。この値を設定すると、可能な場合に指定された数を出力するようにアルゴリズムを誘導するだけであり、その正確な数を保証するものではありません。デフォルト値はありません。 |
nls_config.vocabulary_id | string | いいえ | 事前コンパイルされたホットワードリストのID。ホットワードリスト作成APIを呼び出して、このIDを事前に生成します。リスト内のホットワードを使用するには、認識中にこのIDを渡します。語彙が既知で比較的安定しており、リクエスト間で同じワードリストを再利用する必要があるシナリオに適しています。使用方法の詳細については、「事前コンパイルされたホットワード」を参照してください。 |
nls_config.input_context | array | いいえ | 認識精度を向上させるためのオプションの会話コンテキストを含むメッセージのリスト。 |
nls_config.instant_vocabulary | object | いいえ | キーと値のペアとして渡されるインスタントホットワード。各キーはホットワードのテキスト(string)で、各値はその重み(integer)です。事前コンパイルされたホットワードリストは不要です。一時的なセッションレベルのホットワードにはこのパラメータを使用します。有効な重みは、1から5までの整数、または50です。1から5のより高い重みは、モデルがホットワードを出力する可能性を高めます。50の重みはスーパーホットワードを定義し、再現率を大幅に向上させます。スーパーホットワードは最大50つまで指定できます。事前コンパイルされたホットワードも設定する場合、2つのセットはマージされます。マージされたセットが2000個のホットワードを超える場合、ランダムに2000個が選択されます。使用方法については、インスタントホットワードを参照してください。 |
nls_config.language_hints | array[string] | いいえ | 認識する言語コード。事前に言語を特定できない場合は、未設定のままにしておくと、モデルが自動的に言語を検出します。最大 4 個の値を指定できます。それ以上指定した場合は、最初の 4 個だけが有効です。
サポートされている言語コードを表示するにはクリックしてください
|
主要なインターフェース
NeoNui
nui_initialize
音声認識SDKインスタンスを初期化します。SDKはシングルトンです。nui_releaseを呼び出す前に再度初期化しないでください。
メソッドシグネチャ
| パラメータ | 型 | 説明 |
|---|---|---|
parameters | char* | 認証、接続、およびデバッグのパラメータを含むJSON文字列。接続と制御のパラメータを参照してください。 |
level | NuiSdkLogLevel | SDK独自のログの出力レベルを制御します。 |
save_log | BOOL | ログをローカルに保存するかどうか。YESに設定した場合、接続および制御パラメータのdebug_pathを介してパスを指定する必要があり、max_log_file_sizeを介してファイルサイズを設定できます。 |
nui_set_params
このインターフェースを使用して、nls_configパラメータを個別に設定または更新します。nui_file_trans_startですべてのパラメータを一度に指定する場合は、このメソッドを呼び出す必要はありません。
メソッドシグネチャ
| パラメータ | 型 | 説明 |
|---|---|---|
params | char* | 音声認識効果パラメータのnls_configパラメータです。nls_config以外のパラメータは、このメソッドでは設定できません。例: |
nui_file_trans_start
認識を開始します。
メソッドシグネチャ
| パラメータ | 型 | 説明 |
|---|---|---|
params | char* | 音声認識効果パラメータ。例: |
task_id | char* | タスクID。SDKは内部でランダムな文字列を生成し、このインターフェースの呼び出しが成功するとtask_idを返します。 |
nui_file_trans_query
このインターフェースを使用して、非同期タスクの現在のステータスと結果をアクティブにクエリします。呼び出しが成功すると、onFileTransEventCallbackコールバックのEVENT_FILE_TRANS_QUERY_RESULTイベントを介して結果が返されます。
このメソッドに渡される
task_idをEVENT_FILE_TRANS_UPLOADEDイベントから取得します。| パラメータ | 型 | 説明 |
|---|---|---|
task_id | char* | クエリ対象のタスクのID。EVENT_FILE_TRANS_UPLOADEDイベントから取得します。 |
nui_file_trans_cancel
現在のタスクを直ちにキャンセルします。
メソッドシグネチャ
| パラメータ | 型 | 説明 |
|---|---|---|
task_id | char* | キャンセルするタスクのID。EVENT_FILE_TRANS_UPLOADEDイベントから取得します。 |
nui_release
すべての内部SDKリソースを解放し、進行中のすべてのタスクを強制的に終了します。このメソッドを呼び出すと、SDKインスタンスは使用できなくなります。再度使用するには、nui_initializeを再度呼び出して初期化する必要があります。
メソッドシグネチャ
nui_get_version
現在のSDKバージョン情報を取得します。
メソッドシグネチャ
NeoNuiSdkDelegate: モニターコールバック
onFileTransEventCallback: イベントと音声認識結果のモニター
メソッドシグネチャ
| パラメータ | 型 | 説明 |
|---|---|---|
nuiEvent | NuiCallbackEvent | コールバックイベント。 |
asr_result | char* | 音声認識結果。 |
task_id | char* | タスクID。 |
finish | BOOL | この回の認識が完了したかどうかを示します。 |
code | int | EVENT_ASR_ERROR イベントが発生した場合にのみ有効です。 |
onFileTransLogTrackCallback: トレースログのモニター
このコールバックを使用して、トラブルシューティングとデバッグのための詳細な内部SDKログを受信します。
NuiCallbackEvent: イベントタイプ
| イベント | 説明 |
|---|---|
EVENT_FILE_TRANS_CONNECTED | サービスに正常に接続しました。 |
EVENT_FILE_TRANS_UPLOADED | 認識対象の音声ファイルが正常にアップロードされました。これで、現在のタスクのtask_idを取得できます。 |
EVENT_FILE_TRANS_QUERY_RESULT | クエリタスクの結果。 |
EVENT_FILE_TRANS_RESULT | 最終認識結果。 |
EVENT_ASR_ERROR | 音声認識中にエラーが発生しました。 |