久しぶりに本気でブログを書いてみようと思います。
テーマは「DLNA」についてです。
最近、ほぼ全メーカーのテレビがDLNAに対応したり、ドコモからDLNAの端末が出たり、一般への認知度が高まっているのではないかと思います。しかし、どうも「DLNA」という規格について誤解だったり、夢や妄想が広がっている気がしているので、判っている範囲で書いてみようと思います。
(そもそも公式サイトが英語メインだったり、一般向けのサイトがリンク切れだったりして、ちゃんと情報出してないのが原因だったりします(苦笑 )
DLNAって何ができるの?
「家の中」の機器間で、カンタンに画像や音楽、動画を視聴できます。
「機器」というと、大きく分けて「サーバー」と「クライアント」があります。
サーバーとクライアント
まず、画像や音楽、動画(以下、コンテンツ)の送受信で考えると、「コンテンツを送る側」と「コンテンツを受ける側」が存在します。コンテンツの送り手を「サーバー」、コンテンツの受け手を「クライアント」、と呼ぶことが多いです。蛇足ですが、最近ではクライアントの一種で「レシーバー」というものも登場しています。
もう一つ、「コンテンツ一覧を見て、どのコンテンツを再生するかを決定する」機能を持った機器があります。これは「コントローラー」と呼ばれます。一般的には、「コントローラー+レシーバー」をひとまとめで「クライアント」と呼ばれています。(ちょっと語弊がありますが、省略!)
一般 | 本来の用語 | 機能 |
---|---|---|
サーバー | DMS | コンテンツを送る機器 |
クライアント | DMP | コンテンツ一覧を見て、そのコンテンツを受ける機器 |
レシーバ | DMR | 指定されたコンテンツを受ける機器 |
コントローラー | DMC | コンテンツ一覧を見て、再生するコンテンツを指定する機器 |
大雑把ですが、こんな感じです。
機能はどうなっているの?
あまり正確ではないのを承知で書けば、
以下の2つの機能を合わせて「DLNA」として機能します。
- 「機器」が繋がる機能
- 「コンテンツ」が繋がる機能
「機器」が繋がる機能
繋がるためのは、まずお互いが「どこ」にいて「何」ができるのかを知る必要があります。
機器同士が勝手に繋がるために、概ね以下のような手順を踏みます。
- 場所(ネットワーク上の場所なので、IPアドレスです)を確定させる
- その場所の周りに、他に誰か居ないか探すor周りに自分を知らせる
- 自身がどんな機器かをやりとりする。
(例:\俺はサーバーだぜ!/)
(例:\俺はレシーバーだぜ!/)
この辺りの仕組みは、「UPnP」という規格に基づいています。DLNAという規格の中身は、企業だったり、お金を払ったりしないと見れないのですが、UPnPの仕様書に関しては、一般でも手に入れることができます。興味があれば、こちらなどでどうぞ。
「コンテンツ」が繋がる機能
上記の動作をすると、各機器の役割が判明します。
上記の動作中に「コンテンツが繋がる」仕組みとして、自分がどんなコンテンツが送れるか、またはどんなコンテンツを受けることができるかをやりとりします。(ここがDLNAのキモだったりします。。。)
(例:サーバー:\俺はMP3とMPEG2が配信できるぜ!/)
(例:レシーバー:\俺はMP3とJPEGが再生できるぜ!/)
その後、ユーザー(人間)が操作して、以下の手順を踏みます。
- 「コンテンツの一覧」を見る
- 「コンテンツ」を選ぶ
コンテンツの一覧から選択する動作については、フォルダ・ディレクトリからあるファイルを選択する、という概念に非常に近いです。
とりあえず、全コンテンツを表示する、というのも手ですが、上記のキモとなるやりとりをすれば、自分と相手がどんなコンテンツを配信・再生できるかがわかるので、再生できるコンテンツのみ表示できる、といったものも可能です。
何かDLNAって繋がらないよね?
繋がらない、の段階によって、色々考えられます。
それについては、後日書いてみたいと思います。
ではでは。