📹

全プロダクトを支える「統合録画配信基盤」への刷新戦略

に公開

はじめに

株式会社Opt Fitでエンジニアをしているmottyこと山本です。前職は大手SaaS企業でSREとしてアプリケーションの運用改善に従事していましたが、2025年の10月よりOptFitにジョインし、現在は主に録画配信基盤の設計・開発を担当しています。

OptFitは「AIカメラで人に依存しないビジネスモデルを再構築し、持続可能な社会インフラを築く」をミッションに掲げ、フィットネスジム向けのGYM DXや、介護施設向けのKaigoDXといったサービスを展開しています。

これらは異なるドメインのサービスですが、技術的な核となる部分は共通しています。それは現場に設置されたカメラ映像を解析し、価値ある情報に変えるという点です。

これまで私たちは、サービスごとに独立したシステムとしてカメラ映像の取得・録画機能を運用してきました。しかし、事業が拡大し、新たなAIカメラプロダクトの構想が生まれる中で、このサイロ化が無視できないボトルネックとなってきました。

そこで私たちは、全プロダクトの共通基盤となる統合録画配信基盤への刷新を行っています。

本記事では、なぜその基盤が必要だったのか、開発においてAIカメラ特有のどのような壁にぶつかり、どう乗り越えようとしているのかについて紹介します。

なぜ「統合録画配信基盤」が必要だったのか

運用の非効率性

Opt Fitの各プロダクトは、基本的に同じアーキテクチャパターンを共有しています。
具体的には、「現場のカメラ → 録画サーバー → クラウドストレージ or Webサービス」というデータフローです。

これまでは各プロダクトが独自に録画サーバーを構築・運用してきましたが、当然、デプロイや検証といった運用コストはプロダクト数に比例して増加します。

統合録画配信基盤により、録画サーバーとストレージが共通化され、各プロダクトは独自のWebサービスに注力できるようになります。

新規プロダクト開発 (PoC) の遅延

動画配信・録画システムは、全プロダクトのインフラであるべきです。そして、RTSPプロトコルのハンドリング、動画変換(エンコード)、ストレージ管理など、大規模なシステムを構築する必要があります。

新規プロダクトを立ち上げる際、これらの基盤部分の開発に多くの時間が割かれ、本来注力すべきAIモデル開発やドメイン固有の機能実装にリソースを割けないという問題がありました。

これらを共通化し、カメラ情報さえ渡せば、あとはよしなに映像が正規化されて利用可能になる状態を作ることができれば、私たちは本来注力すべき「AIでどのような課題を解決するか」に、初日からフォーカスできると考えています。

開発の課題:可用性とコスト削減の両立

統合基盤を構築する上で、録画データにいかなる途切れもあってはならないという絶対的な要件があります。防犯目的であれ、AI解析目的であれ、「肝心な瞬間の映像が飛んでいた」ではサービスとして成立せず、ネットワークの瞬断や、プロセスの予期せぬ再起動があったとしても、映像は連続していなければなりません。

冗長化のジレンマ

クラウド(AWS)で1つのカメラに対して複数のストリーム処理プロセスを立ち上げれば、確かに可用性は上がります。しかし、単純にプロセスを冗長化すれば、必要なコンピュートリソース(FargateタスクやEC2インスタンス)は倍増し、事業収益を圧迫するほどのコスト増につながります。

ハードウェア側の限界と「中継サーバー」の必然性

IPカメラにおいてはストリーム数制約も存在します。
クラウド側で冗長化のために複数のプロセスを立ち上げたり、複数のAIサービスが同時に映像を取得しにいったりすると、すぐにカメラの上限に達します。

さらに、施設のネットワーク負荷も考える必要があります。各カメラから複数のストリームを直接クラウドに送信すると、現場のアップロード帯域を圧迫し、他の業務システムに悪影響を及ぼす可能性があります。

従来の構成: 各サービスがカメラに直接接続

これを回避するため、私たちはアーキテクチャに中継サーバーを組み込みました。各カメラへの接続はこの中継サーバーが一手に引き受け、クラウド上の他のサービス(ライブ配信、アーカイブ、AI解析など)は、すべてこの中継サーバー経由で映像を取得します。これにより、カメラへの負荷を最小限に抑えつつ、クラウド側での柔軟なデータ利用を可能になります。

中継サーバーを導入した構成

解決の糸口:デバイス x クラウドによるハイブリッド冗長構成

このような課題を解決するために私たちが現在取り組んでいるのが、デバイスとクラウドの連携によるハイブリッドな冗長構成です。

メインをデバイス、バックアップをクラウドに

カメラが設置されている店舗(現場)にデバイス(オンプレミスの小型サーバー)を展開する計画です。

  1. 基本はデバイスで完結:
    デバイスで、映像の取得・配信・アーカイブ作成を完結させます。これにより、クラウドへの常時転送帯域や、クラウド側の計算コストを劇的に削減できます。

  2. クラウドは「補填」に徹する:
    クラウド側のサービスは、常に全力で動くのではなく、デバイス側の状態を監視します。もしデバイスがダウンしたり、録画データに欠損(ドロップ)が発生した場合のみ、クラウド側が即座にカメラ(あるいは中継サーバー)へ接続し、欠損部分の録画データを補填(リカバリ)します。リアルタイム配信サービスに関しては、クラウド上では平時でデータアウトは発生しないため、クラウドのみの構成と比較すると、コストは大幅に削減されます。

この構成により、平時は低コストなデバイスでの処理で運用しつつ、有事の際はクラウドの潤沢なリソースでデータを守るという、可用性とコスト削減の両立が可能になります。

デバイス x クラウドのハイブリッド構成

もちろん、これを実現するには技術的なハードルがあります。

  • デバイスとクラウド間の精密な同期処理
  • 分散したデータの整合性管理
  • 中継サーバー自体の可用性担保

現在、私たちはこの難題に挑戦しており、録画配信基盤の次なるフェーズとして開発を進めています。

運用面の課題:障害の切り分け

開発時の課題だけでなく、運用フェーズに入ってからも頭を悩ませる問題があります。それが障害原因の切り分けです。

「管理画面で映像が映らない」というアラートが出た時、その原因は大きく2つに分けられます。

  1. 社内システムの問題: 録画コンテナが落ちている、中継サーバーの不具合など。
  2. 店舗側の問題: 現地ネットワークの切断、カメラの電源抜けなど。

これまでは、OptFit社員が手動でツールを使い、カメラに直接接続を試みることで切り分けを行っていました。

この人手による切り分けは、カメラ台数が増えるにつれて無視できない運用コスト(人件費)になっています。

従来の障害切り分けフロー

カメラ台数の増加に伴い、この手動作業が運用ボトルネックとなっていました。

解決策:オブザーバビリティによる自動診断

この泥臭い作業をなくすために現在進めているのが、徹底したオブザーバビリティの強化です。

各マイクロサービスのヘルスチェックやメトリクスを厳密に定義し、「社内システムが正常である」ことを常に機械的に保証できる状態を作ります。その上で、「社内システムはオールグリーンなのに映像が来ない」という状態を検知できれば、それは自動的に店舗側の問題と断定できます。

将来的には、この判定ロジックを用いて、店舗へのネットワーク確認依頼の通知までを自動化し、業務時間外でも自律的に障害対応が進む世界を目指しています。

オブザーバビリティによる自動診断フロー

AIサービスの責任分界点

録画配信基盤という足回りの共通化は、コストと開発効率の面で大きな成果を上げました。しかし、その上で動くAIサービス(画像解析)の共通化となると、話はもう少し複雑になります。

共通化の判断

弊社には様々なAI機能がありますが、録画配信基盤と同様に全プロダクトで共通化すべきかどうかはドメインの要件によって考える必要があります。

例えば「人検知」のようなベーシックな機能であれば、GYMDXでもKaigoDX(介護施設)でも共通のモデル・APIとして提供するメリットは大きいです。しかし、「マシンの利用状況判定」はジム特有ですし、「転倒検知」や「離室検知」は介護領域で特にクリティカルな機能です。これらを無理に統合しようとすると、逆に各プロダクトの要件に柔軟に対応できなくなる恐れがあります。

学習データの戦略も適材適所

また、AIモデルの精度を左右する学習データセットの収集戦略においても、この責任分界点の考え方は重要です。

  • バリエーション重視の場合:
    汎用的な人物検出モデルを作りたい場合、ジムの映像も介護施設の映像も、あらゆるプロダクトのカメラ映像をごちゃ混ぜにして学習させた方が、モデルの頑健性(Robustness)は上がります。
  • ドメイン特化の場合:
    一方で、「転倒検知」のような特定のアクションを学習させたい場合、ジムで転倒する人は稀です。この場合は、KaigoDXの映像データに絞って集中的に学習データを集める戦略が必要です。

録画配信基盤が共通化されたことで、私たちは全データのプールを手に入れました。しかし、そこから何をどう使うかは、プロダクトごとのドメイン知識と戦略に基づいて、エンジニアが慎重に設計する必要があります。

学習データの利活用アーキテクチャ

おわりに

弊社では、ハードとソフトの2つの領域に責任をもってプロダクトを開発しており、複雑な制約のもとで設計を考える必要があります。そのため、IoTインフラといった低レイヤーからAI開発といったR&Dまで、幅広い専門領域を必要としています。それだけに、技術的なチャレンジも多く、独特な経験ができる環境だと思います。

弊社では、幅広い技術領域に興味を持ち、挑戦したいエンジニアを募集しています。興味がある方はぜひご連絡ください。

Opt Fit テックブログ

Discussion