CRI ADX  Last Updated: 2024-03-21 14:32 p
リードエラー
ディスクメディアからファイルを読み込む場合、ディスク表面の汚れ等により、ファイルの読み込みに失敗する(リードエラーが発生する)可能性があります。
Atomライブラリでリードエラーを検知する場合、以下のモジュールごとに適切な処理を行う必要があります。
  • ACF
  • ACB
  • AtomExプレーヤ
  • AWB
  • Atomプレーヤ

ACF登録時のエラーチェックについて

criAtomEx_RegisterAcfFile 関数でACFファイルを登録する際にリードエラーが発生すると、 criAtomEx_RegisterAcfFile 関数は CRI_FALSE を返します。
リードエラーを検知する必要がある場合、 criAtomEx_RegisterAcfFile 関数の戻り値をチェックし、エラーが発生時には適切なエラー処理(エラーメッセージの表示等)を行ってください。


[備考]
criAtomEx_RegisterAcfData 関数でACF情報の登録を行う場合、エラーチェックの必要はありません。


ACBロード時のエラーチェックについて

criAtomExAcb_LoadAcbFile 関数でACBファイルをロードする際にリードエラーが発生すると、 criAtomExAcb_LoadAcbFile 関数は CRI_NULL を返します。
リードエラーを検知する必要がある場合、 criAtomExAcb_LoadAcbFile 関数の戻り値をチェックし、エラーが発生時には適切なエラー処理(エラーメッセージの表示等)を行ってください。


[備考]
オンメモリのACBデータを criAtomExAcb_LoadAcbData 関数でロードする場合、エラーチェックの必要はありません。


AtomExプレーヤによるファイル再生のエラーチェックについて

音声データのストリーム再生中にリードエラーが発生すると、AtomExプレーヤのステータスがエラー状態に遷移します。
AtomExプレーヤのステータスは criAtomExPlayer_GetStatus 関数で取得可能です。
リードエラーを検知する必要がある場合、AtomExプレーヤのステータスを定期的にチェックし、エラーが発生時には適切なエラー処理(エラーメッセージの表示等)を行ってください。


// ファイルのセット
criAtomExPlayer_SetFile(player, NULL, "sample.adx");
// 再生の開始
// メインループ
for (;;) {
// ステータスのチェック
status = criAtomExPlayer_GetStatus(player);
// エラー発生時はエラー処理を実行
}
}
CriAtomExPlayerStatus criAtomExPlayer_GetStatus(CriAtomExPlayerHn player)
ステータスの取得
void criAtomExPlayer_SetFile(CriAtomExPlayerHn player, CriFsBinderHn binder, const CriChar8 *path)
音声データのセット(ファイル名の指定)
CriAtomExPlaybackId criAtomExPlayer_Start(CriAtomExPlayerHn player)
再生の開始
@ CRIATOMEXPLAYER_STATUS_ERROR
Definition: cri_atom_ex.h:3705


AWBロード時のエラーチェックについて

TOC情報の同期読み込み時

criAtomAwb_LoadToc 関数でAWBファイルのTOC情報をロードする際にリードエラーが発生すると、 criAtomAwb_LoadToc 関数は CRI_FALSE を返します。
リードエラーを検知する必要がある場合、 criAtomAwb_LoadToc 関数の戻り値をチェックし、エラーが発生時には適切なエラー処理(エラーメッセージの表示等)を行ってください。


TOC情報の非同期読み込み時

criAtomAwb_LoadTocAsync 関数でAWBファイルのTOC情報をロードする際にリードエラーが発生すると、AWBハンドルのステータスがエラー状態に遷移します。
AWBハンドルのステータスは criAtomAwb_GetStatus 関数で取得可能です。
リードエラーを検知する必要がある場合、TOC情報読み込み中はAWBハンドルのステータスを定期的にチェックし、エラーが発生時には適切なエラー処理(エラーメッセージの表示等)を行ってください。


[備考]
オンメモリのACBデータを criAtomExAcb_LoadAcbData 関数でロードする場合、エラーチェックの必要はありません。


Atomプレーヤによるファイル再生のエラーチェックについて

音声データのストリーム再生中にリードエラーが発生すると、Atomプレーヤのステータスがエラー状態に遷移します。
Atomプレーヤのステータスは criAtomPlayer_GetStatus 関数で取得可能です。
リードエラーを検知する必要がある場合、Atomプレーヤのステータスを定期的にチェックし、エラーが発生時には適切なエラー処理(エラーメッセージの表示等)を行ってください。


// ファイルのセット
criAtomPlayer_SetFile(player, NULL, "sample.adx");
// 再生の開始
// メインループ
for (;;) {
// ステータスのチェック
status = criAtomPlayer_GetStatus(player);
if (status == CRIATOMPLAYER_STATUS_ERROR) {
// エラー発生時はエラー処理を実行
}
}
void criAtomPlayer_Start(CriAtomPlayerHn player)
再生の開始
void criAtomPlayer_SetFile(CriAtomPlayerHn player, CriFsBinderHn binder, const CriChar8 *path)
音声データのセット(ファイルの指定)
CriAtomPlayerStatus criAtomPlayer_GetStatus(CriAtomPlayerHn player)
ステータスの取得
@ CRIATOMPLAYER_STATUS_ERROR
Definition: cri_atom.h:2403


CRI File Systemによるエラーチェックについて

CRI File SystemライブラリのAPI( criFsLoader_Load 関数等)を使用してファイルをロードする場合も、ファイルの読み込みに失敗する可能性があります。
CRI File Systemライブラリ使用時のリードエラー検出方法については、CRI File System「ファイルマジックPRO」マニュアル をご参照ください。