iOS 動画検索 SDK Swift:導入と実機の遅延報告

iOS 動画検索 SDK Swift版を使うと、Appleアプリが独自の画面とセッション管理を維持しながら映像検索を組み込めます。v1.2.6のパッケージとREADMEを基準に、導入、検索、画像取得、iPhoneの報告値の読み方を説明します。

更新日:

iOS 動画検索 SDK Swift版をSwiftPMで追加する

固定版のPackage.swiftはVModalSDKライブラリと、iOS 16・macOS 13の対象下限を定義しています。Xcodeのパッケージ追加からリポジトリを選び、v1.2.6を指定してアプリのターゲットへ製品を接続します。マニフェストの宣言と推奨開発環境は別の制約なので、両方を確認します。

ここではリポジトリの指定のみを示し、コンパイルしていないアプリ断片は掲載しません。完全なSwift例はタグ付きREADMEを参照してください。解決やビルドに失敗した場合は、認証やネットワーク性能を調べる前にその段階を直します。

https://github.com/v-modal/vmodal_sdk_swift_iphoneduo

参照: v1.2.6 README.md:Xcodeでバージョン1.2.6を選択

プロジェクトを作り対象コレクションを検索する

READMEでは実行時のAPIキー提供元からプロジェクトを作り、コレクションとストリームのスコープを保持します。認証情報はアプリが管理し、スコープは対象コンテンツを表します。まず利用可能なコレクションを取得すると、別環境や別アカウントの名前を誤って使う問題を切り分けられます。

検索は非同期で、構造化された結果と変化するフィールド向けのJSONを扱います。要求と一緒にプロジェクト、コレクション、ストリームを保持し、古い応答を新しい画面へ表示しないようにします。他言語のSDKと同じ選択値が使えるとは考えず、対象版のSwift型を確認します。

フレーム取得と再生位置をつなぐ

パッケージの画像リソースを使い、検索時の範囲を保ってフレームを解決します。各タイルには素材と時間の文脈を表示し、該当箇所と前後の録画を人が確認できるようにします。返されたフレームが質問に合うかどうかは、取得の成否とは別の判断です。

画像取得は検索応答の後に行う別の段階です。画像が失敗してもメタデータは残し、URLが期限切れなら再問い合わせします。時刻を表示用の文字列だけにせず、再生位置として使う値も保持し、選択した結果が正しい元映像へ移動するかを確認してください。

iPhone Duoとネイティブのライフサイクル

iPhone Duoの資料では、画面の分割やシーン変更と、SDKやアップロードの所有権を分けます。再描画のたびにプロジェクトを作り直すのではなく、処理を始めたセッションが完了まで所有する設計にします。画面更新は適切なUIアクターで行います。

写真選択、認証情報の保存、バックグラウンド実行の予定はアプリ側の責任です。ログアウトでは進行中の処理を止め、必要な状態を整理してから次のユーザー用プロジェクトを作ります。キーの更新だけでアカウントやコレクションが切り替わるわけではありません。

iPhone 13 mini・5Gで報告された遅延

コミュニティ投稿では、同じインデックスと上限30件で、実機のiPhone 13 miniから21回検索しています。場所はカナリア諸島、サーバーはチームが日本と説明しています。三つのクエリの中央値は、実行49〜56 ms、SDK検索391〜426 ms、その後の画像取得1,053〜1,151 msと報告されています。

SDK検索にはサーバー実行が含まれます。画像取得は後続処理で、最終描画時間は未計測です。画面例はSimulator、計測値は実機です。一環境の観測であり、SLAではありません。投稿では無関係な質問にも候補が出たため、速度と同時に内容の妥当性も評価する必要があります。

利用体験全体を説明できる評価にする

自社試験ではアップロード、検索準備、検索応答、画像取得、表示完了を別の時点として記録します。既知の録画を使い、コレクション状態、クエリ、上限、端末、通信条件を残してください。バックエンドだけが速くても、利用者が画像を見るまでの時間は分かりません。

キャンセル、結果なし、期限切れURL、アカウント変更も試します。選択結果が正しい映像を開き、前のユーザーの状態が残らないことを確認します。問題報告には固定タグと失敗段階を添え、単一の報告値を保証値として扱わないようにします。

関連ガイド

出典

ベータアクセスを申し込む