サービス・バンドルの例: DLNAコントローラ

サービス・バンドルの例: DLNAコントローラ

以下では、サービス・バンドルの例として、DLNAコントローラを紹介します。DLNAコントローラは、HTTPバンドルやUPnPバンドルを利用して、コンテンツの検索と再生を行います。

DLNAは、前述したように、LAN経由でコンテンツを共有するためのガイドラインです。DLNAでは、ほかの機器をコントロールする機器の規格(デバイス・クラス)として、デジタル・メディア・コントローラ(DMC)を定めています。通信としては、UPnPが使われます。

DMCは、DLNAサーバー(DMS)とDLNA再生機(DMR)に、UPnPを使って「アクション(命令)」を送信することで、コンテンツ情報の取得やコンテンツの再生などの操作を行います。

今回紹介するDLNAコントローラの要件は以下の通りです。DMCは、OSGi上に実装します。機能としては、LANに接続されたDMS内のコンテンツをユーザーに対して表示し、ユーザーが選んだコンテンツをDMRに再生させます。ユーザー・インタフェースには、Webブラウザを利用します。

図3は、システムの構成図です。ホーム・ネットワーク内に、DLNAコントローラを搭載したHGWとDLNA機器(DMS/DMR)、ユーザーが操作するWebブラウザ(を搭載したPCや携帯電話)が存在します。

図3: DLNAコントローラの構成

システムは、次のように動作します。

  1. まず、コントローラがDMSからコンテンツ一覧情報を取得して、Webページとしてユーザーに提示します。
  2. 続いて、ユーザーがWebページ上で視聴したいコンテンツを選ぶと、コントローラがその情報を受信し、DMRに再生命令を送信します。
  3. 命令を受信したDMRが、DMSからコンテンツをダウンロードし、選ばれたコンテンツが再生されます。

このとき、DMS/DMRの操作はUPnP通信で行われ、Webブラウザとの通信はHTTP通信で行われます。つまり、DLNAコントローラの主な機能として、この2つの通信手順を実装する必要があります。これら2つの機能は、OSGi標準のUPnPバンドルとHTTPバンドルを利用することで容易に実現できます。

UPnPバンドルは、デバイスに命令を送信するためのAPI(Application Programming Interface)を提供します。このAPIを用いれば、UPnP通信の詳細を意識せずにデバイスを操作することができます。

一方、WebブラウザとHTTP通信を行うにはHTTPサーバーを構築する必要がありますが、標準のHTTPバンドルを用いれば、サーバー公開の処理を行ってくれるため、独自のWebページを表示する処理を記述したサーブレットを作成するだけで、HTTP通信を行うことができます。

DLNAコントローラの応用

上記のDLNAコントローラは、DMSのコンテンツをDMRに再生させるだけのものです。これに対して、外部のアプリケーションからコンポーネント部品としてDLNAコントロ-ラを利用することにより、以下のような応用が可能になります。

●スマート・メーターのディスプレイとしてDLNAを利用

例えば、電力メーターから取得した電力消費状況などの情報を、画像に加工してDMRに表示させます。DLNA対応テレビなどを、ディスプレイとして利用することができます。

●異常通知の仕組みとしてDMCを利用

DMCの再生命令を利用して、監視カメラの映像などをテレビに表示させます。通常の番組を視聴中でも、割り込ませて表示できるため、セキュリティ分野での応用も考えられます。

日立ソフトウェアエンジニアリング(日立ソフト)では、さまざまな機能を部品化したアプリケーション群「SuperJ Engine Bundles」を開発しており、DLNA機能を持つバンドルを提供しています。これらを用いることで、上記のような、DLNA機能を利用したサービスを容易に実装することができます。また、この機能を使ったサービスの例として、DLNA機器からインターネット上の動画投稿サイトにアクセスするシステムの試作に成功しています。

このように、OSGiを採用することによって、デバイスを操作するための通信プロトコルがバンドルとして部品化されるため、アプリケーションの開発が容易になります。開発者は、通信プロトコルの詳細にわずらわされることなく、提供したいサービスのロジックだけに集中してアプリケーションを開発できます。このことがアプリケーション開発者の参入を促し、結果としてスマートハウス向けアプリケーションの流通が活発になると期待されています。

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30