JP3977596B2 - ネットワーク環境内の自律媒体装置を制御し、自律媒体装置間のデータフロー及びデータフォーマットを管理する媒体管理装置 - Google Patents

ネットワーク環境内の自律媒体装置を制御し、自律媒体装置間のデータフロー及びデータフォーマットを管理する媒体管理装置 Download PDF

Info

Publication number
JP3977596B2
JP3977596B2 JP2000548813A JP2000548813A JP3977596B2 JP 3977596 B2 JP3977596 B2 JP 3977596B2 JP 2000548813 A JP2000548813 A JP 2000548813A JP 2000548813 A JP2000548813 A JP 2000548813A JP 3977596 B2 JP3977596 B2 JP 3977596B2
Authority
JP
Japan
Prior art keywords
devices
network
physical
task
control
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2000548813A
Other languages
English (en)
Other versions
JP2002514879A (ja
Inventor
ルトケ、ハロルド、エー
フェアマン、ブルース
スマイヤーズ、スコット、ディー
Original Assignee
ソニー エレクトロニクス インク
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー エレクトロニクス インク filed Critical ソニー エレクトロニクス インク
Publication of JP2002514879A publication Critical patent/JP2002514879A/ja
Application granted granted Critical
Publication of JP3977596B2 publication Critical patent/JP3977596B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4541Directories for service discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2805Home Audio Video Interoperability [HAVI] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • H04L12/2814Exchanging control software or macros for controlling appliance services in a home automation network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2816Controlling appliance services of a home automation network by calling their functionalities
    • H04L12/282Controlling appliance services of a home automation network by calling their functionalities based on user interaction within the home
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40117Interconnection of audio or video/imaging devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40123Interconnection of computers and peripherals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/59Providing operational support to end devices by off-loading in the network or by emulation, e.g. when they are unavailable
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/43615Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2838Distribution of signals within a home automation network, e.g. involving splitting/multiplexing signals to/from different paths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L2012/2847Home automation networks characterised by the type of home appliance used
    • H04L2012/2849Audio/video appliances
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/567Integrating service provisioning from a plurality of service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Automation & Control Theory (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
  • Information Transfer Systems (AREA)

Description

【0001】
発明の分野
本発明はネットワーク環境内のアプリケーション及び装置を管理する分野に関する。詳しくは、本発明は、ネットワーク環境内の装置の動作及び装置間の通信を管理する分野に関する。
【0002】
発明の背景
IEEE1394規格(1995年版)、すなわち「高性能シリアルバスに対するIEEE1394規格(1995年版)」は、非同期フォーマットのデータ転送とアイソクロノスフォーマットのデータ転送(asynchronous and isochronous format data transfer)の両方をサポートする安価な高速のシリアルバスアーキテクチャを実現する国際規格である。アイソクロノスデータ転送は、リアルタイム転送であり、送信アプリケーションと受信のアプリケーションの両方における重要なインスタンス(significant instance)間の時間間隔(time interval)が同じ継続時間(duration)を有する。アイソクロノス的に転送されるデータの各パケットは、それ自身が有する周期(period)で転送される。データのアイソクロノス的な転送の理想的なアプリケーションの具体例としては、ビデオレコーダからテレビジョン受信機へのデータ転送がある。ビデオレコーダは、映像及び音声を記録するとともに、データを離散的な固まり(chunk)、すなわちパケットとして保存する。そして、ビデオレコーダは、記録された映像及び音声を表す各パケットを、テレビジョン受信機での表示によって制限される周期で転送する。IEEE1394標準バスアーキテクチャ(1995年版)は、アプリケーション間のアイソクロノスデータ転送のために多重チャネル(multiple channel)を提供する。適切なアプリケーションによって確実に受信されるように、6ビットのチャネル番号が、データとともに報知される。これによって、複数のアプリケーションは、アイソクロノスデータをバス構造を介して同時に転送することができる。非同期転送は、伝統的なデータ転送動作であり、転送元から転送先に大量のデータを、できるだけ速く転送するものである。
【0003】
IEEE1394規格(1995年版)は、ディジタル機器を相互接続する高速シリアルバスを提供するとともに、汎用のI/O接続を提供する。IEEE1394規格(1995年版)は、アプリケーションのディジタルインターフェースを定義するものであり、これによって、アプリケーションは、ディジタルデータをバスを介して転送する前に、アナログデータに変換する必要がない。同様に、受信アプリケーションは、バスからアナログデータでなく、ディジタルデータを受信するので、アナログデータをディジタルデータに変換する必要なない。IEEE1394規格(1995年版)によって規定されるケーブルは、そのような機器を接続するために用いられている他の嵩張ったケーブルと比較して、サイズが非常に細い。IEEE1394規格(1995年版)のバスが活線状態においても、機器を取り付けたり、取り外したりすることができる。機器が取り付けられたり、取り外されたりすると、バスは、それ自体を自動的に再構成し、既存のノード間でデータを転送する。ノードは、バス構造上の固有のアドレスを有する論理構成体(logical entity)とみなされる。各ノードは、認識ロム(identification ROM)、標準化された制御レジスタ(control register)とそれ自身のアドレス空間(address space)のセットを有する。
【0004】
媒体装置(media device)は、ネットワークインターフェイスを備えており、媒体装置は、このネットワークインターフェイスを介して、例えばIEEE1394規格(1995年版)シリアルバスネットワークに接続される。このような自律的媒体装置を備える家庭用オーディオ/ビデオネットワークにおいては、1又は複数の媒体装置をネットワーク内のパーソナルコンピュータ、セットトップボックス、又はマイクロプロセッサを備えるその他の装置に接続することができる。このようなネットワーク環境内において、自律的装置間の相互動作及び処理を効率的に管理するためのインターフェイス及びアプリケーションは未だ提案されていない。すなわち、ネットワーク環境内の制御装置により、ネットワークにおける装置間の通信及び装置の動作を効率的に制御するためのインターフェイスの実現が望まれている。さらに、ネットワーク環境内の制御装置により、ネットワークにおける各装置の処理能力を最大限に活用してタスク及び処理を実行するためのインターフェイスの実現が望まれている。
【0005】
発明の開示
媒体管理装置は、ネットワーク内で相互に接続された装置間のデータフローを管理し、及び装置内のクライアントアプリケーションのためのその他のサービスを提供する。好ましくは、これら装置は、IEEE1394規格(1995年版)シリアルバスネットワークにより接続される。使用可能な各装置に対応して生成された装置制御モジュールは、その装置用の適切な制御プロトコル、物理的接続、接続能力等を含むその装置の全ての能力及び要求の抽象化(abstraction)を提供する。媒体管理装置は、ネットワーク上の装置間のデータフロー及びデータのフォーマットを管理する。インターフェイスを介して、ユーザは媒体管理装置にアクセスし、ネットワークに接続されている装置により実行される機能を制御する。適切な装置が使用可能な場合、媒体管理装置は、要求されたタスクの遂行を制御及び管理する。適切な装置が存在せず、複数の装置に亘る複数の下位装置が必要な場合、媒体管理装置は、複数の装置に亘る複数の下位装置から仮想装置を構築し、仮想装置は、これにより要求された所定の機能を実現するタスクを実行する。適切な装置及び下位装置をタスクに割り当てた後、媒体管理装置は、伝送すべきデータのフォーマットを他のフォーマットに変換する必要があるか否かを判定する。媒体管理装置は、必要に応じて、データ伝送処理におけるデータ変換処理を制御する。媒体管理装置は、ネットワーク列挙及びレジストリ検索機能を有し、これによりクライアントアプリケーションは、使用可能なサービス、物理的装置及び仮想装置を検出することができる。
【0006】
発明の好適な実施の形態の詳細な説明
本発明を適用した媒体マネージャは、ネットワーク内の物理的装置におけるデータフローの管理及びその他のサービスを提供する。物理的装置とは、製造業者から単独の製品として販売されているような製品を指す。物理装置の例としては、テレビジョン受像器、ビデオテープレコーダ、パーソナルコンピュータ、ビデオカメラ、CD−ROMプレーヤがある。この他にも、多くの物理的装置が知られており、販売されている。各物理的装置は、下位装置(subdevice)を備える。例えば、市販されているビデオカメラは、カメラ及びビデオプレーヤ等、異なる機能を有する複数の下位装置を備えている。
【0007】
これらの物理的装置は、好ましくは、IEEE1394規格(1995年版)シリアルバスネットワークを介して相互接続される。各装置及び下位装置を制御するためのデバイス制御モジュール(device control module:以下、DCMという。)が設けられている。各DCMは、適切な制御プロトコル、物理的接続端子及び接続能力等を含むの各物理的装置の性能及び要求に関する抽象化情報(abstraction)を提供する。媒体マネージャは、ネットワーク内の物理的装置間のデータ転送処理におけるフロー及びフォーマットを管理する。この処理には、例えば、データ伝送処理時にデータを他のフォーマットに変換する処理等が含まれる。
【0008】
ユーザは、インターフェイスを介して、媒体マネージャにアクセスし、ネットワーク内の物理的装置を用いて遂行される機能及びタスクを実行する。適切な物理的装置が存在し、他には使用されていない場合、媒体マネージャは要求されたタスクを制御及び管理する。一方、適切な物理的装置が存在しない場合、媒体マネージャは、存在する下位装置又は装置内のコンポーネントから仮想装置(virtual device)を構築し、要求されたタスクを遂行する。適切な物理的装置及び/又は下位装置がタスクに割り当てられると、媒体マネージャは、伝送すべきデータのフォーマットについて、送信側の装置のフォーマットから受信側の装置のフォーマットに変換する必要があるか否かを判定する。変換処理が必要な場合、媒体マネージャは、データ伝送処理とともに、この変換処理も制御する。
【0009】
図1は、ネットワークの具体例を示す図であり、このネットワークは、IEEE1394規格(1995年版)ケーブル15,16,18を介して相互接続されたビデオカメラ10と、ビデオテープレコーダ12と、コンピュータ14と、セットトップボックス13と、テレビジョン受像機11とを備える。IEEE1394規格(1995年版)ケーブル16は、ビデオカメラ10をビデオテープレコーダ12に接続し、これによりビデオカメラ10は、ビデオテープレコーダ12に供給し、記録させることができる。IEEE1394規格(1995年版)ケーブル18は、ビデオテープレコーダ12をコンピュータ14に接続し、これによりビデオテープレコーダ12は、コンピュータ14に供給して表示させることができる。IEEE1394規格(1995年版)ケーブル15は、セットトップボックス13をコンピュータ14に接続している。また、セットトップボックス13は、ケーブル17を介してテレビジョン受像機11にも接続されている。
【0010】
図1に示す構成は、単に例示的なものである。オーディオ/ビデオネットワークは、多数の物理的構成要素を組み合わせて様々に構成できることは明らかである。このようなIEEE1394規格(1995年版)ネットワーク内の物理的装置は、自律的装置であり、すなわち、図1に示すようなIEEE1394規格(1995年版)ネットワークにおいて、コンピュータ14は、複数の装置のうちの1つに過ぎず、コンピュータ14と他の装置との間に真の意味での「マスタ−スレーブ」の関係はない。多くのIEEE1394規格(1995年版)ネットワークにおいては、コンピュータは接続すらされていない。このような環境でも、ネットワーク内の装置は、それぞれ一対一の関係で相互動作(インタラクト)することができる。
【0011】
本発明を適用した媒体マネージャを実現する管理装置のハードウェア構成を図2に示す。図2に示す管理装置は、ユーザインターフェイス30に接続されたプリント管理基板20を備える。プリント回路基板20は、中央演算処理装置(central processing unit:以下、CPUという。)22を備え、CPU22は、システムバス28を介して、システムメモリ24及びI/Oバスインターフェイス26に接続されている。ここでは、「CPU」という語を用いるが、これは、このシステムが汎用演算回路でなくてはならいことを意味するものではない。すなわち、この回路は、汎用コントローラであってもよく、専用コントローラであってもよい。システムバス28は、ユーザインターフェイス30にも接続されている。ユーザインターフェイス30は、サブシステム毎に異なるものであるが、好ましくは少なくとも赤外線遠隔制御装置及び表示装置を備えているとよい。また、ユーザインターフェイス30は、このサブシステムのユーザと通信するためのその他の入出力装置を備えていてもよい。
【0012】
本発明の好適な実施の形態においては、媒体マネージャは、ユーザとの円滑なインタラクションを実現するために、テレビジョン又はディスプレイを備えるコンピュータ内に設けられる。しかしながら、本発明を適用した媒体マネージャは、ユーザへのインターフェイスを提供するために必要な構成要素を備えるその他のいかなる装置内に設けてもよい。本発明に基づく媒体マネージャを実現するために、媒体マネージャを実装するコンポーネントは、それぞれ図2に示すようなハードウェア構成を備えている。このような装置内に設けられたCPU22は、アプリケーションプログラムの実行のために用いられる。本発明に基づく媒体マネージャは、ネットワーク内の通信及び処理の管理に使用される。ユーザは、制御装置に設けられたインターフェイスを介して、媒体マネージャにアクセスする。このインターフェイスにより、ユーザは、ネットワーク及びネットワーク内の装置の動作及び状態を監視することができる。さらに、ユーザは、このインターフェイスを介して、装置を制御し、所定の機能を実現するためのタスクを要求して遂行させることができる。このようなタスクの例としては、ビデオテープレコーダ12内のビデオテープの再生や、ビデオテープレコーダ12からテレビジョン受像機11にデータを供給させて映像を表示させる処理等がある。本発明に基づく媒体マネージャは、各装置におけるデータの伝送処理及び要求されたタスクを管理する。
【0013】
図3は、本発明に基づく媒体マネージャプラットフォームのアーキテクチャを示す図である。このアーキテクチャは、いわゆる上位部(upper portion)32と、下位部(lower portion)34とに分割される。下位部34は、好ましくは、IEEE1394規格(1995年版)バスインターフェイスと、もっとも広く普及している民生用のオペレーティングシステムをサポートする機能とを有している。上位部32は、下位にあるIEEE1394規格(1995年版)バスサポート及びアドインの特徴及び機能をクライアントアプリケーションに、したがってユーザに提供するためのコンポーネントを備える。上位部32は、ブロック46及びブロック48を有し、ブロック46は、より高度なIEEE1394規格(1995年版)バスサポートのための設計及び実装を提供し、ブロック48は、様々なクライアントアプリケーションへのインターフェイスを司る。下位部34は、ブロック40,42,44を有し、これらはそれぞれ広く普及しているオペレーティングシステムであるウィンドウズ95(商標)、マッキントッシュOS(商標)、アペリオス(商標)に対するサポートを提供する。また、OS9等のいかなる汎用オペレーティングシステムをサポートするようにしてもよい。さらに、下位部34は、IEEE1394規格(1995年版)サポートの共通層(common layer)を提供するブロック38及び制御装置に接続された他の装置への実際の物理的なIEEE1394規格(1995年版)バスインターフェイスとして機能するブロック36とを備える。
【0014】
この媒体マネージャプラットフォームは、オープンで柔軟性の高いアーキテクチャを提供し、これによりネットワーク内においてパーソナルコンピュータとその他の自律的装置とを効率的に一体化し、これら装置間のデータ伝送を効果的に管理する。この媒体マネージャプラットフォームの下位部34は、最下層における基盤的な技術をサポートするように設計されており、この下位部34により、上位のレベルは、より汎用性の高いモジュール及び機能記述(functional description)をサポートすることができる。
【0015】
図4は、本発明に基づく媒体マネージャプラットフォームのアーキテクチャをより詳細に示す図である。マルチメディア又はユーザレベルアプリケーション48は、このアーキテクチャの最上位に位置し、媒体マネージャにより提供されるサービスを利用する。マルチメディアアプリケーション48は、本発明に基づく媒体マネージャプラットフォームのアプリケーション又は他のクライアントである。媒体マネージャ内の構成コンポーネントは、プロトコルの詳細を管理し、同様のプログラミングインターフェイスをアプリケーション48に提供する。タイミング、バッファ管理、バス管理通信プロトコル等は、これらの単純な機能インターフェイスの背後に隠されている。アプリケーション48は、このアーキテクチャにおける下位の層に対するアクセスを有し、さらに、当然のことながら、ハードウェア適応層(hardware adaptation layer:HAL)及びホストオペレーティングシステム58と直接通信を行うことができる。ホストオペレーティングシステム58は、カメラ10、ビデオテープレコーダ12、セットトップボックス13等のネットワーク内の他の装置に接続されている。この具体例においては、例示的に、本発明に基づく媒体マネージャの環境は、図1に示すコンピュータ14内で実現されているものとする。
【0016】
アプリケーションインターフェイスオブジェクト50は、媒体マネージャ環境内において、クライアントアプリケーション48の代理(proxy)として機能する。アプリケーションプログラミングインターフェイスにより、クライアントアプリケーション48は、媒体マネージャの基本サービスにアクセスすることができる。任意のプログラミングインターフェイスにより提供されるより詳細な、又は特定の機能へのアクセスは、アプリケーションインターフェイスオブジェクト50により実現され、すなわち、アプリケーションインターフェイスオブジェクト50は、アプリケーション48にローカルメッセンジャ52へのアクセスを提供する。
【0017】
ローカルメッセンジャ52は、媒体マネージャに一体化されたメッセージングシステムのコンポーネントの一つである。好ましくは、このメッセージングシステムは、AVメッセンジャシステム(AV Messenger system)とする。ローカルメッセンジャ52は、与えられたノード上のオブジェクトが異なる実行スペース内に存在する場合に、これら全てのオブジェクト間の通信における中央ハブとして機能する。本質的には、ローカルメッセンジャ52は、ホストオペレーティングシステム58により提供されるアプリケーション間通信モデルである。ローカルメッセンジャ52は、全てのソフトウェアモジュールがここを通過するボトルネックである。記録性(スクリプタビリティ(scriptability))を実現するために、ローカルメッセンジャ52は、通過する全てのメッセージのログをとり、全てのメッセージ及びメッセージに関連するデータ、例えば転送先のアドレス、パラメータ、応答側のアドレス、または任意項目として時間に基づく記録(time-based scripting)のためのタイムスタンプ等のデータが登録されるデータベースを維持管理する。
【0018】
サービスレジストリ59は、媒体マネージャ71内の全てのアドレス指定可能なエンティティへの参照情報を有している。また、サービスレジストリ59は、デバイス制御モジュール(device control module:以下、DCMという。)56、DCMマネージャ54、データフローマネージャ64、トランザクションマネージャ66、バスマネージャ70、グラフィックマネージャ72のそれぞれへの参照情報を有している。さらに、サービスレジストリ59は、後述する、任意の数のサービスモジュールを有している。さらに、サービスレジストリ59は、そのノードにとってローカルである全てのオブジェクトへの参照情報と、リモートオブジェクトへの特定時刻参照情報とが格納されたサービスレジストリデータベースを有している。データベース内の各エントリは、アドレス指定可能なモジュールを参照し、添付された属性を含む。この属性の一部は、全てのエントリに共通のものであり、その他の属性はモジュールの種類に固有のものである。共通の属性とは、モジュールの名称及びローカルID等である。モジュールに固有の属性とは、モジュールの種類によって異なる属性である。サービスレジストリデータベースにエントリが登録されると、エントリに任意の数の属性を付加することができる。クライアントアプリケーションがデータベースを検索する場合、アプリケーションは一致すべき属性の組を特定し、サービスレジストリ59は、データベースを検索して、アプリケーションが特定した条件に適合する全てのエントリを検出してアプリケーションに返す。この検索において、複数の候補が検出された場合、サービスレジストリ59は、クライアントアプリケーション48に参照情報のリストを提供する。クライアントアプリケーションは、リスト内の候補項目のそれぞれを調査し、どの項目が最も望ましいものであるかを判定する。
【0019】
クライアントアプリケーション48は、それぞれが異なる検索条件による検索の結果に基づく複数の未決定検索リスト(outstanding search list)を有する。使用可能な装置を変更するためのバスリセット等のイベントの発生に応じて、クライアントアプリケーション48が検索リストを更新する必要がある場合、クライアントアプリケーション48は、検索処理を呼び出す際に、サービスレジストリ59にリスト参照情報を返す。これによりサービスレジストリ59は、リストオブジェクトを削除して新たなリストオブジェクトを再割り当てするのではなく、現在のオブジェクトリストを更新することができる。
【0020】
サービスモジュール60を呼び出すことにより、一組のサービスを実行することができる。このサービスモジュール60は、クライアントアプリケーションのために、例えばデータのフォーマット処理、転送処理、制御プロトコルの変換処理等の様々なサービスを実行する。
【0021】
DCMマネージャ54は、そのノード上の、又は制御装置ネットワーク内の装置用のDCM56のグループを管理する。この管理には、与えられたシステムにおいて使用可能な全てのDCM候補の逆変換処理(disconverting)、インストール処理、削除処理等の処理を含む。さらに、DCMマネージャ54は、必要に応じて、リモートのノード上の他のDCMマネージャと通信を行い、ネットワーク全体の装置及び下位装置のリソースの割り当て及び管理の調停(arbitrate)を行う。
【0022】
DCMマネージャ54は、基盤となるオペレーティングシステムサービスと共に機能し、使用可能な装置ノードハンドル(device node handles)のそのままのリストを入手する。さらにDCMマネージャ54は、クライアントアプリケーション48にアプリケーションプログラミングインターフェイスを提供し、これによりクライアントアプリケーション48は、ネットワーク上の装置において、DCM56により示されているどの下位装置又はどのサービスが使用可能であるかを知ることができる。DCM56により、物理的装置、又は異なる複数の物理的装置の下位装置から構成される仮想装置を表すことができる。この他の使用可能なサービスは、後述する仮想DCM56により表すことができる。使用可能なDCM56は、IEEE1394規格(1995年版)シリアルバス上で使用可能な物理的装置の変化に応じて、動的に変化する。
【0023】
各ノードにおいて、DCMマネージャ54は、DCM56を生成すべきか否かを判断するための十分な機能を有する。この判断は、媒体に関連する全ての装置に対して行われ、これら装置は本発明に基づく媒体マネージャにより管理される。媒体に関連する各エンティティに対し、DCMマネージャ54は、汎用のDCM56を生成する。各DCM56は、後述するように、さらに装置に応じて特化される。
【0024】
製造業者により提供された装置固有のDCMもDCM56に追加することができる。装置固有のDCMは、装置内の読出専用メモリ(ROM)、又はディスク状又はテープ状記録媒体のヘッダ等のその他のデータ記録機構により実現される様々なソースから提供される。装置固有のDCMは、媒体マネージャが適切な機能を有する場合、インターネットのサイトから、又はモデム接続を介して直接ダウンロードしてもよく、ディスク状記録媒体又は他の媒体から読み出してもよい。このような変形例は、1998年6月4日に出願された米国特許出願番号09/092,703号、「自己記述情報を装置内に含ませるための方法及び装置(A METHOD AND APPARATUS FOR INCLUDING SELF-DESCRIBING INFORMATION WITHIN DEVICES)」に開示されており、この出願は参照により本願に含まれるものとする。
【0025】
DCMマネージャ54は、適切な時刻において、DCM56を追加及び削除し、及びクライアントに対してDCM56が追加され、又は削除されたことを通知する機能を有する。さらにDCMマネージャ54は、複数のDCM56間で行われる複雑なサービスを整理する(coordinating)機能を有する。例えば複雑な処理のコマンドのキュー等の複雑なサービスは、DCMマネージャ54により処理順序を整理した後に、複数のDCM56によりこれらの処理を実行させる必要がある。
【0026】
DCM56は、装置制御のための標準化されたインターフェイスをクライアントアプリケーション48に供給することにより、装置のモデリング及び制御プロトコルの抽象化(abstraction)サービスを提供する。DCM56により提供される装置制御のためのプログラミングインターフェイスは、共通A/V制御と、装置固有A/V制御とに分割される。共通A/V制御コマンドは、オーディオ−ビジュアル機能を有する殆ど全ての装置に共通のコマンドである。例えば、再生、停止、早送り、巻き戻し等の基本的な制御コマンドは、この共通A/V制御コマンドに含まれる。装置固有A/V制御コマンドは、例えば記録機能を有する装置における録音(録画)機能等の与えられたA/V装置のカテゴリに共通するコマンド、及び特定のモデル又は装置のグループに特有のコマンドである。装置固有の機能に関する情報は、上述した自己記述データ情報を用いて、装置自身の内部に実装される装置固有DCM内に構築してもよく、インターネットからソフトウェアアップグレードとしてダウンロードしてもよい。
【0027】
本発明に基づく媒体マネージャは、プロトコルの抽象化(protocol abstraction)を行い、これは、使用されている装置及び制御プロトコルの種類にかかわらず、モジュールとアプリケーション間のプログラミングインターフェイスが同じであることを意味する。したがって、アプリケーションは、同じソースコード及びメッセージを使用し、これにより、IEEE1394規格(1995年版)に準拠するビデオカセットレコーダは、ビデオシステム制御アーキテクチャ(Video System Control Architecture:VISCA)規格のビデオカセットレコーダと同様の録画処理を行うことができる。これは、共通A/V制御コマンド及びカテゴリに固有のA/V制御コマンドについても同様であり、特定の装置に特有の特徴は固有のプログラミングインターフェイスを有する。
【0028】
DCM56は、装置の自己記述データをダウンロードし、ユーザに提示する機能を有する。この処理のために、DCM56は、モジュールをダウンロード及び統合することにより自己記述データを分析し、ホストアプリケーションを介してこの情報をユーザに提示する。これにより、ユーザは、媒体マネージャインターフェイスを介して、ネットワーク内の装置の周知の及び装置特有の機能を環境設定(configure)及び制御することができる。ユーザインターフェイスデータ及び装置のカスタマイズされた機能へのアクセスの好適な実現例は、1997年7月30日出願の米国特許出願番号60/054,199号、「ヒューマンインターフェイスの特徴及びAV/Cを用いる装置の機能を記述する方法(METHOD FOR DESCRIBING THE HUMAN INTERFACE FEATURES AND FUNCTIONALITY OF AV/C-BASED DEVICES)」に開示されており、この出願は参照により本願に組み込まれるものとする。
【0029】
DCMマネージャ54及びDCM56は、連携して、実行すべきAVコマンドのコマンドキューを行い、これによりDCM56は、例えば装置の機械的な待ち時間として考慮すべきプレロール(pre-roll)の実行の必要性等、全ての装置の特性を取り扱うことができる。DCMマネージャ54とDCM56は、媒体マネージャの他の部分と連携して、特定の時刻に実行され、特定の状態を生じる装置制御動作を特定することができる。
【0030】
DCM56は、本発明に基づく媒体マネージャの全アーキテクチャにおける大きな部分を占める。DCM56は、例えば制御プロトコル、物理的接続及び接続能力等、オーディオ−ビジュアル装置を構成する様々な技術の抽象化を提供する。DCM56は、物理的装置を表現するためではなく、特定のAV処理を実行するための機能又はサービスの集合体からなる仮想装置を表現するために生成することもできる。
【0031】
物理的装置及び下位装置は、それぞれ個別にアクセス可能なハードウェアである。本発明に基づく媒体マネージャは、アクセス可能な下位装置により、仮想装置をサポートし、装置のネットワークの性能を向上させる。仮想装置は、複数の使用可能なコンポーネントを組み合わせて形成された論理的エンティティである。好ましくは、仮想装置は、要求されたタスクの遂行に必要な場合に、自動的に生成される。これに代えて、DCMマネージャ54からサービスを要求することにより、仮想装置を動的に生成するようにしてもよい。
【0032】
「テレビジョンの視聴」、「映画の録画」又はDCM56を用いた装置の操作を含むユーザにより定義されたあらゆる動作の組等の予め定義された動作をAV動作(AV action)と呼ぶ。AV動作は、ユーザが後に再使用するために記録することができる。AV動作プログラミングインターフェイスにより、記録された番組を視聴したり、放送されている番組を視聴したり、記録テープに録音したり、コンパクトディスクを再生したりといった、AVネットワーク内の装置により実行される共通動作をモデリングすることができる。例えば、ユーザの家の2階のベッドルームにビデオテープレコーダがあり、このビデオテープレコーダが現在、チューナからある放送を受信し、このベッドルーム内のテレビジョン受像機にその放送を表示させている場合、ビデオテープレコーダ内の転送機能は使用されていない。このとき、ユーザが録画された番組を1階で視聴したいと望んだ場合、本発明に基づく媒体マネージャは、このベッドルーム内のビデオカセットレコーダにビデオテープを挿入し、このビデオテープに録画されている番組を1階に設置してあるテレビジョン受像機で視聴することができる。録画された番組を表すデータは、2階のビデオテープレコーダからIEEE1394規格(1995年版)シリアルバスを介して、1階のテレビジョン受像機に伝送される。このデータ伝送処理は、制御装置内の媒体マネージャにより制御される。チューナ、デマルチプレクサ、転送機構(transport)、プロセッサ及び他のコンポーネント及び下位装置により、仮想装置が構築され、同様の動作が実現される。したがって、ユーザは、媒体マネージャを用いてネットワーク内の装置の動作を制御することにより、これら装置の機能及び性能を最大化して活用することができる。
【0033】
DCMマネージャ54は、どの物理的装置及び下位装置が現在使用されているかを監視するのみではなく、現在使用可能なコンポーネント及び下位装置からどのような仮想装置が生成可能であるかを監視する。DCMマネージャ54は、ローカルで管理している全ての装置及び現在実行しているホストプラットフォーム上で使用可能なソフトウェアサービスの全てについて、上述の処理を行う。DCMマネージャ54は、クライアントアプリケーション48にプログラミングインターフェイスを提供し、現在実行可能なAV動作及びネットワーク上で使用可能なリソースに基づいて生成可能な仮想装置に関する問い合わせを行う。DCMマネージャ54は、仮想装置がサービスレジストリ59に適切なタイミングで追加されるようサービスレジストリ59を管理する。
【0034】
DCM56に提供されるアプリケーションプログラミングインターフェイスにより、クライアントアプリケーション48は、ネットワーク上の装置において使用可能な特徴及び機能を検出し、必要に応じてこれら機能と連携して動作する。このプログラミングインターフェイスは、装置制御、装置管理、接続管理、自己記述装置の実現の管理等を含む。各DCM56は、管理している装置の種類を判定することにより、汎用DCMから装置又はプロトコル特有のDCMへの変換を行う。この処理のために、DCM56は、存在する場合、装置における自己記述装置データを調査し、使用可能な他の情報を分析する。DCM56は、装置画像、製品名、他の装置及びコンポーネントへの機能記述子等、現在管理されている装置の自己記述装置情報データへのアクセスを提供する。DCM56は、例えばコマンドのキュー等の複雑なサービスを含む装置制御のための一貫したインターフェイスを提供する。これらのコマンドを実行するためには、プロトコル固有のコマンドのパッケージング、送信、処理及びプロトコルドライバを介する応答を含む装置制御プロトコルの使用のためのホストオペレーティングシステム58及び他のオペレーシングシステムに提供されるサポート機構との連携が必要である。
【0035】
さらに、各DCM56は、自らが制御している装置を監視し、必要なコンポーネント及びアプリケーションに拡張通知サービス(extended notification service)を提供する。装置により生成される全ての通常のイベントは、適切な装置のDCM56を介して、イベントマネージャ62及び全ての関係するクライアントアプリケーション48に供給される。与えられた装置又は他の制御プロトコルでは、AV/C装置通知イベントに加えて、AV/Cプロトコルを明確にサポートしていない場合も多い。装置の性能及びその制御プロトコル及び通信プロトコルに応じて、実際のイベントメッセージをトリガしないようなイベントのための拡張的サポートを提供することもできる。DCM56は、この種の処理のために装置を監視し、イベントマネージャ62にイベントを供給する。
【0036】
各DCM56は、DCM56の制御の下で装置からのデータを利用する外部のエンティティ及びDCM56を制御しているエンティティに関して自らを管理する。この管理には、共有しているリソース及びキューに存在するリソースのサポートを含む。リソースのキューにより、エンティティは、現在使用中のDCM56を自ら使用するために予約することができる。DCM56が使用可能になると、そのことが直ちにエンティティに通知される。
【0037】
DCM56は、環境の変化を管理し、これによりDCM56及びクライアントは、オンライン状態及びオフライン状態の両方をサポートする。これにより、DCM56は、装置が再びオンライン状態になったときに、サービスを直ちに再確立(re-establish)することができる。
【0038】
本発明に基づくメディアマネージャ内において、DCM56は、使用可能な装置及び下位装置を制御する。DCM56は、装置の汎用機能及び装置に固有の機能の両方へのアクセスを提供する。本発明に基づく変形例においては、各装置には、自己記述データの一部として、DCMが組み込まれ、これにより装置がどこに設置されるかに関わらず、そのソフトウェアが常に使用可能になる。さらなる変形例として、特定の装置用のDCMは、その装置の製造業者又はサードパーティからインターネット又はフレキシブルディスク等の媒体装置を介して提供されるようにしてもよい。上述の各具体例において、DCM56は、ダウンロードされた後、様々な場所に保存される。DCM56は、好ましくは、そのDCM56が制御する装置内に保存される。しかしながら、DCM56は、適切ないかなる場所に保存してもよい。本発明の変形例においては、DCM56は、ホストプラットフォームによりサポートされる、例えばジャバ(Java)又はジャバスクリプト(Java Script)等の共通バイト又は共通スクリプトコードフォーマットにより記述される。DCM56は、ホスト装置にアップロードされ、ホスト装置により実行される。
【0039】
イベントマネージャ62は、ネットワーク内の関係する全てのパーティにイベント通知(event notification)を同報送信する。イベントマネージャ62は、そのノード内の全てのモジュールに対する中心のモジュールとして動作し、そのノードでイベントが発生したとき、通知を登録する。イベントマネージャ62は、イベント通知リストデータ構造体を維持管理する。イベント通知リストは、定義されたイベントの種類及び各種類のイベントの通知を登録された全ての装置の転送先の識別子に関するリストである。各装置は、イベントマネージャ62に対し、各装置が関心のあるイベントの種類に関するクライアントの識別子及びイベントメッセージが同報通信されたときに戻されるべきトークンの値を登録する。イベントとは、なんらかの動作の実際の発生及び複数の転送先にアドレス指定された装置からのメッセージである。
【0040】
イベントマネージャ62は、通常、イベントを生成せず、他のコンポーネントから媒体マネージャに供給されたイベントを受け取り、及び同報通信する。リモートノード内のクライアントアプリケーション48にイベントを同報通信する場合、イベントマネージャ62は、同報通信マネージャ74を使用する。イベントマネージャ62は、ユーザとの相互動作(インタラクション)に基づいて、適切な装置に情報を通知する。イベントマネージャ62は、制御ソフトウェアレベルにおいて、インターフェイスを介してどのようなユーザ入力が発生したかをDCM56に通知し、これによりDCM56は、物理的装置を適切に制御する。装置をリモート位置から制御するDCM56は、ユーザが何をしているかを示すメッセージを受け取る必要があり、及びその装置に適切なメッセージを送信する必要がある。イベントマネージャ62は、メッセージングシステム及び周知のイベントメッセージを用いてリモートのDCM56の処理実行をサポートする。定義されているイベントメッセージには、例えばネットワークに装置が追加された時に生成されるnew_deviceメッセージ等の装置管理(device administration)メッセージ及びユーザインタラクションメッセージが含まれる。ユーザインタラクションメッセージは、1997年7月30日出願の米国特許出願番号60/054,199号、「ヒューマンインターフェイスの特徴及びAV/Cを用いる装置の機能を記述する方法(METHOD FOR DESCRIBING THE HUMAN INTERFACE FEATURES AND FUNCTIONALITY OF AV/C-BASED DEVICES)」に開示されている好ましいグラフィカルユーザインターフェイスモデルをサポートする。この出願は参照により本願に組み込まれるものとする。既に定義されているイベントメッセージに加えて、2つのDCM又はソフトウェアモジュールは、カスタムメッセージ及びプライベートメッセージを定義することができる。
【0041】
グラフィックスマネージャ72は、リモート装置の制御処理の制御アプリケーションへの組み込みを管理し、DCM56による自己記述データ情報の遠隔表現をサポートする。グラフィックマネージャ72は、プログラミングインターフェイスを提供し、このプログラミングインターフェイスにより、DCM56は、画面領域の調停を行うことができ、共有されたグラフィック環境内で機能することができる。これにより装置は、制御ソフトウェアのインターフェイスを介してユーザに提示され、アクセス可能となる。
【0042】
データフォーマットマネージャ68は、装置間で送受されるデータのフォーマットを管理する。データフォーマットマネージャ68は、装置内の媒体マネージャにプラグインすることができ、これによりバッファ管理及びデータフォーマット処理の一部としてデータフォーマットの変換を行う。データフォーマット処理の多くは、クライアントアプリケーションに代わって、データの転送元及び転送先に関する知識に基づいて、透過性を有する手法で実行される。この他のデータ変換処理は、クライアントアプリケーションがフォーマット変換処理をセットアップして行う。データ変換処理は、データの伝送中にオンラインで実行することが好ましい。これに代えて、フォーマット変換処理をデータ伝送処理の前段階のタスク又は後段階のタスクにより実行してもよい。与えられたプラットフォームにおいて使用できるデータ変換サービスは、サービスレジストリ59に登録されている。このサービスレジストリ59を用いたサービスの検出に加えて、データフォーマットマネージャ68は、サービスモジュールをインスタント化(instantiating)し、これらサービスモジュールをサービスレジストリ59に登録する。
【0043】
データフローマネージャ64は、バスマネージャ70と連携して、転送元から転送先へのデータのルーティングを補助するサービスを提供する。転送元と転送先の間には多くのノードが存在していることがある。転送元の装置と転送先の装置とが異なるデータ種類を取り扱う場合、又は両者が障壁(barrier)により隔離されている場合、データフローマネージャ64は、データフォーマットマネージャ68及びサービスレジストリ59と連携して、自動的な又は要求された変換サービスを同様に取り扱う。アイソクロノスデータの伝送中に、データフローマネージャ64は、バッファの割り当て及び管理サービスを提供する。バッファ管理には、クライアントアプリケーションに対し、データが処理可能になったことを知らせる一貫性を有する通知メカニズム(consistent notification mechanism)の提供も含まれる。アイソクロノスデータがクライアントアプリケーション48に供給される間、多くのメモリバッファがデータで満たされる。データフローマネージャ64は、クライアントアプリケーション48に、どのメモリバッファが満たされたかを知らせ、これによりクライアントアプリケーション48は、そのメモリバッファからデータの読出処理を行うことができる。さらに、バッファ管理により、捕捉されるデータが最適化されるように、適切なサービスモジュールをメモリ内で分割でき、クライアントアプリケーションを単純化することができる。この処理は、割り当てられたメモリをビデオデータのストリームを走査線及びフレームサイズのセグメントに分割する処理及び生のオーディオデータ及びMIDIデータを最適なセグメントサイズに分割する処理を含む。
【0044】
本発明に基づくメディアマネージャを用いて2つの装置間のデータ伝送をセットアップするための処理手順を図5に示す。この処理はステップ100において開始される。クライアントアプリケーション48は、ステップ102において、データ伝送のために2つの装置間の接続を確立するため、2つの装置を表す2つのDCM56のいずれか一方のEstablishExternalConnection()メソッドを呼び出し、他方のDCM56のモジュールID値をパラメータとして渡す。呼び出されたDCM56は、ステップ104において、接続の確立を補助するためにデータフローマネージャ64を呼び出し、転送元のDCMのモジュールID及び転送先のDCMのモジュールIDをパラメータとして渡す。データフローマネージャ64は、ステップ106において、転送元のIDと転送先のIDとを分析し、これらが異なるノードに存在するか否かを判定する。データフローマネージャ64は、ステップ108において、転送元のノードのバスマネージャ7からネットワークのトポロジマップを入手する。データフローマネージャ64は、ステップ110において、このトポロジマップを分析して、転送先ノードを検索し、このノードがトポロジマップ上に存在するか否かを判定する。転送先のノードがトポロジマップ上に存在する場合、データフローマネージャは、ステップ118に移行して、データ伝送のための最適なルートを判定する。一方、転送先ノードがトポロジマップ上に存在しない場合、データフローマネージャは、ステップ112に移行し、サービスレジストリ59から転送先DCMを入手し、そのノードの伝送プロトコルを判定する。データフローマネージャ64は、ステップ114において、適切な伝送プロトコルサービスモジュールを検出し、適切な変換処理をセットアップする。そして、ステップ116において、複数の伝送処理をブリッジする必要が否かが判定される。ここで、複数の伝送処理をブリッジする必要があると判定されて場合、データフローマネージャ64は、ステップ114に戻り、さらなる伝送変換モジュールを入手する。一方、伝送処理をブリッジする必要がない場合、データフローマネージャ64は、ステップ118において、接続経路を分析し、データフローのための最良のルートを判定する。データフローマネージャ64は、ステップ120において、転送元ノードと転送先ノードの入力データフォーマットを分析し、変換処理が必要か否かを判定する。変換処理が必要な場合、データフローマネージャ64は、ステップ122において、入力フォーマット及び出力フォーマットに基づいて、サービスレジストリ59から適切なフォーマットコンバータを入手し、変換処理をセットアップする。一方、変換処理が不要な場合、ステップ122において、データフロールートは完了し、2つの装置間のデータ伝送処理が開始される。
【0045】
バスマネージャ70は、基盤となる装置相互接続メカニズム(device interconnection mechanism)を抽象化し、バスアーキテクチャの能力(capability)を記述するための一組のプログラミングインターフェイスを提供する。本発明の好ましい具体例においては、装置はIEEE1394規格(1995年版)シリアルバスにより接続されている。IEEE1394規格(1995年版)シリアルバスネットワークにおいて、バスマネージャ70は、ホストオペレーティングシステム58により実現されるIEEE1394規格(1995年版)HAL層の最上位に設けられ。バスマネージャ70は、バス管理動作を汎化させて、本発明に基づく媒体マネージャとして機能させる働きを有する。バスマネージャ70は、バスリセットの発生時に、イベントマネージャ62を介して、クライアントアプリケーション48にバスリセット通知を送信し、環境がどのように変化したかに関する完全な情報を提供する。この情報を受け取ったクライアントアプリケーションは、削除された装置及びバスリセット後に使用可能になった装置に関する情報を有することとなる。
【0046】
バスマネージャ70は、クライアントアプリケーション48に、トポロジマップ、スピードマップ、及びその他の環境記述子を提供する。トポロジマップからの情報は、ユーザに対し、装置の接続状況及びどのような機能が使用可能であるかを理解させる手助けとなるユーザインターフェイスの構築に使用される。また、この情報は、データフローマネージャ64に関して上述した自動データルーティングにも使用される。スピードマップは、現在の接続スキームを分析し、装置の接続状態を変更することによりネットワーク上の装置の性能を向上させるための、ユーザに対する提案の手助けとなる。バスマネージャ70は、さらに、2つのノード又はノード内のソフトウェアモジュール間において、好ましいフォーマット又はプロトコルでバイトを送信するための、アトムレベル(atomic-level)データ通信サービスを提供する。このプロトコルは、これらアトム的な通信機能の最上位に設けられる。
【0047】
バスリセット又はバス変更通知の後、バスマネージャ70は、これにより追加された全ての装置に新たなID値を割り当てるとともに、どの装置が削除されたかを判定する。バスマネージャ70は、DCMマネージャ54を呼び出し、新たに追加された装置用の新たなDCM56を生成し、バス変更通知をイベントマネージャ62に供給する。イベントマネージャ62は、登録されている全てのクライアントにバスリセットを通知する。この通知により、クライアントアプリケーション48がバス上でどの装置が変更されたかを判定するために十分な情報が提供される。
【0048】
伝送適合モジュール(transport adptation module)78は、パッケージングメッセージデータ(packaging message data)が転送先装置への実際の伝送用のHAL上に渡される前に、このパッケージングメッセージデータを処理する。HALは、本発明に基づくメディアマネージャにおける最下位の層である。この層は、上位のクライアントに対し、例えばDCM56等の共通プログラミングインターフェイスを提供するとともに、クライアントとの通信に必要なあらゆるエンティティを提供する。伝送適合モジュール78は、上述したバスマネージャ70のアトム的メッセージ機能を使用する。
【0049】
上述のとおり、DCM56は、装置制御のための標準化されたインターフェイスを上位のマルチメディアアプリケーション48に供給することにより、プロトコル抽象化サービスを提供する。これらのコンポーネントにより提供されるプログラミングインターフェイスは、共通A/V制御レベル及び装置固有制御レベルに分類される。共通A/V制御レベルは、例えば再生、停止、早送り及び巻き戻しコマンド等の基本的な伝送制御機能を含む共通のコマンドのためのインターフェイスを提供する。装置固有の制御レベルは、例えば記録機能を有する装置における録音(録画)機能等の与えられた装置のカテゴリに共通するコマンド、及び特定のモデル又は装置のグループに固有のコマンドのためのインターフェイスを提供する。DCM56により提供されるプロトコル抽象化処理により、モジュールとアプリケーション48との間のプログラミングインターフェイスは、装置の種類及び使用されている制御プロトコルの種類にかかわらず、常に同じものとすることができる。この機能により、アプリケーション及びユーザに対する大きな柔軟性が実現される。DCM56は、ユーザ入力イベント抽象化モデル(user input event abstraction model)を提供する。これにより、クライアントアプリケーションは、上述した米国特許出願番号60/054,199号に開示されているように、グラフィカルユーザインターフェイス要素を表示し、グラフィカルユーザインターフェイス要素に対するユーザの操作に基づいて、標準化されたユーザイベントメッセージをDCM56に供給する。
【0050】
本発明に基づく媒体マネージャは、データフローの管理及び他のサービスを提供する。媒体マネージャは、ホストオペレーティングシステム58の拡張機能として動作し、クライアントアプリケーション48のみならず、媒体マネージャプラットフォーム上の他のコンポーネントへの様々なサービスを提供する。媒体マネージャは、DCM56を管理及び組織化する。媒体マネージャは、存在するアプリケーションに適切なDCM56を検出及び初期化するとともに、不必要なDCM56を削除する。媒体マネージャは、システムがブートされる毎に、あるいはIEEE1394規格(1995年版)バスがリセットされる等してシステムが変更された可能性がある場合、特定のシーケンスを実行する。媒体マネージャは、ホストオペレーティングシステム58で使用される特定のダイナミックリンクされたライブラリソリューションを取り巻くラッパ(wrapper)を提供する。これにより、外部のアプリケーションに対して一貫したインターフェイスを保ちながら、与えられたオペレーティングシステム上にモジュールを実現するために最良のダイナミックリンクされたライブラリが使用される。
【0051】
媒体マネージャは、ネットワーク上の装置間のデータ伝送のフロー及びフォーマットを管理する。データフローを管理する際、媒体マネージャは、使用されているオペレーティングシステムから独立した手法で、適切なバッファを割り当て、及び管理する。
【0052】
媒体マネージャは、IEEE1394規格(1995年版)バス環境の高レベルプロトコル管理を提供する。ユーザレベルのホットプラギング(hot plugging)等、動的な装置動作を完全にサポートするために、アプリケーション及び装置は、IEEE1394規格(1995年版)バス環境の変化を知る必要がある。媒体マネージャは、バスマネージャ70及びイベントマネージャを介して、アプリケーション及び装置に対し、バスリセット通知を送信し、環境がどのように変化したかに関する完全な情報を提供することにより、IEEE1394規格(1995年版)バスにおいてバスリセットが発生したことを通知する。媒体マネージャは、バスマネージャ70を介してアプリケーション及び装置にトポロジマップ及び他の環境記述子を提供する。トポロジマップは、IEEE1394規格(1995年版)ネットワーク内の装置間の接続状態を示すものである。トポロジマップに基づく情報は、ユーザインターフェイスの構築に使用され、これによりユーザは、装置がどのように接続されており、どのような機能が使用可能な状態であるかを知ることができる。
【0053】
アプリケーションサービスモジュール60は、ホストオペレーティングシステム58とアプリケーション48との間のレベルのサービスを提供し、これによりアプリケーション48に、使用されているオペレーティングシステムから独立した基本的機能を提供する。この機能は、メモリの割り当て、ルーチンの削除などであり、これらの機能は、多くのオペレーティングシステムにおいて使用可能な基本的機能よりもより強固なものであり、これにより、装置環境及び自己内包された(self-contained)制御モジュール、全てのユーザインターフェイスを実現するための独立型の(stand-alone)モジュール、及び呼び出しによる相互動作管理が提供される。
【0054】
伝送適合モジュール78は、共通プログラミングインターフェイスを装置制御モジュール50及びアプリケーション48に提供し、これによりプロトコル性能をホストオペレーティングシステム58に引き上げる。システムレベルインターフェイスブロック50の内部設計及び具現化には、使用されている特定のホストオペレーティングシステムアーキテクチャを利用し、これによりIEEE1394規格(1995年版)機能をアプリケーション46により使用できるようにする。
【0055】
本発明に基づく媒体マネージャプラットフォームは、DCM56、アプリケーションサービスモジュール60、及び伝送適合モジュール78により提供されるIEEE1394規格(1995年版)バスプロトコル用のシステムレベルインターフェイスとを含む。通常の動作においては、アプリケーション48はこれらコンポーネントの全てと通信を行う。DCM56と通信を行う場合、アプリケーション48は、単一のプログラミングインターフェイスを使用する。また、アプリケーションサービスモジュール60と通信を行う場合も、アプリケーション48は、単一のプログラミングインターフェイスを使用する。
【0056】
図3及び図4に示す上述のクライアントアプリケーション48は、本発明に基づく媒体マネージャのアーキテクチャに関する他の全てのコンポーネントより上位に位置するエンティティである。要求されたタスクの大部分を遂行するために、アプリケーション48は、ローカルメッセンジャを介して提供されるDCM56及びアプリケーションサービスモジュール60と通信を行う。必要に応じて、アプリケーション48は、ホストオペレーティングシステム58を介して、アーキテクチャのより低いレベルにアクセスする。
【0057】
クライアントアプリケーション48の起動に応じて、クライアントアプリケーション48は、媒体マネージャのレジスタを初期化しなくてはならない。クライアントアプリケーション48は、媒体マネージャが立ち上がり、実行されてクライアントアプリケーション48にサービスを提供できる状態となるように媒体マネージャを初期化する。クライアントアプリケーション48は、媒体マネージャを登録し、媒体マネージャに対し、クライアントアプリケーション48と相互動作するために必要な全ての情報を供給し、クライアントアプリケーション48自身をメッセージングシステムに登録する。通常、クライアントアプリケーション48は、起動時に、ホストオペレーティングシステムが初期化されていることと、最小レベルのサービスが使用可能であることと、実行のために必要なメモリ容量が確保されていることとを確認する必要がある。これらの処理は、クライアントアプリケーション48が媒体マネージャを初期化した後に、媒体マネージャがクライアントアプリケーション48のために実行する。
【0058】
クライアントアプリケーション48は、起動時に、図6のフローチャートに示す処理を実行する。まず、ステップ140において、クライアントアプリケーション48は、起動処理を開始する。起動処理開始の後、クライアントアプリケーション48は、ステップ142において、媒体マネージャを初期化する。本発明の好適な具体例においては、アプリケーションは、以下に示す呼び出し(call)により媒体マネージャを初期化する。
err=SMM_Initialize
媒体マネージャは、初期化されると、必要なメモリ及びシステムサービスをアプリケーション48のサポート用に割り当てる。
【0059】
媒体マネージャの初期化が完了すると、アプリケーション48は、ステップ144において、媒体マネージャ144の登録を行う。この登録処理により、アプリケーション48は、媒体マネージャに対し、アプリケーション48を適切にサポートするために必要な特定の情報を供給する。例えば、アプリケーション48は、IEEE1394規格(1995年版)バスリセット、非同期トランザクションの完了、メモリバッファが一定量のアイソクロノスデータにより満たされたときに発生されるトリガ等の環境に関連する有意のイベントを通知するためのコールバックルーチンのアドレスを提供する。登録処理は、以下の命令により遂行される。
SonyErrorResultType SMM_ResisterClient (SMMClientIdentifierType* the ClientID.
SMMBusEventNotificationUpp clientBusEventNotificationCallback, void*
clientBusEventCallbackData)
パラメータClientIDは、媒体マネージャにより生成されたアプリケーションのための固有の識別子である。これ以降の媒体マネージャとの通信処理において、例えばアプリケーション48の終了や媒体マネージャの登録解除等の処理において、アプリケーション48は、この識別子を返す必要がある。パラメータclientBusEventNotificationCallbackは、アプリケーション48により実現されるコールバック関数への適切にフォーマットされた参照値である。アプリケーションがネットワーク環境において発生する動的な変化を知る必要がない場合、アプリケーション48は、このようなコールバック関数を必要としない。アプリケーション48がこのようなコールバック関数を実装していない場合、アプリケーションはこのパラメータにNIL値を渡す。
【0060】
パラメータclientBusEventCallbackDataは、アプリケーション48がコールバックルーチンにおいてアクセスする必要があるいかなる値を有していてもよい。通常、この値は、メモリのブロックへのポインタであり、媒体マネージャがコールバック関数を呼び出したとき、クライアントアプリケーション48にはこの値が返され、これによりアプリケーション48は、記録媒体全体又は適切なデータにアクセスすることができる。
【0061】
媒体マネージャの登録処理を遂行するためには、アプリケーション48は、以下のインターフェイスを用いて、通知コールバック関数を実現しなくてはならない。
pascal void (*SMMBusEventNotificationProcPtr)(void*clientData, SMMBusEventType busEventIndcator,
SMMBusEventRecPtr busEventInfo):
パラメータclientDataは、登録関数(resistration function)に渡されたパラメータclientBusEventCallbackDataである。パラメータbusEventIndcatorは、アプリケーションに通知されているイベントがどのようなものであるかを示す列挙されたデータ種類を表す。特定されるイベントには、装置がネットワークに接続され又は切り離されたとき、非同期データトランザクションが完了したとき、特定されたバッファがアイソクロノスデータ伝送処理中に一杯になったとき等に生じるバスリセットが含まれる。パラメータbusEventInfoは、特定のイベントに関連する情報を含むデータ構造体を提供する。
【0062】
媒体マネージャの登録処理を完了すると、アプリケーション48は、ステップ146において、使用可能なDCM56を入手する。DCM56を入手することにより、アプリケーション48は、ネットワーク内で接続されている他の種類の装置を知ることができる。このステップは一連のサブステップにより構成される。アプリケーション48へデータを伝送するためのデータ伝送の手法として、繰り返しコールバックモデル(iterative callback model)を用いる。クライアントアプリケーション48は、まず、媒体マネージャにコールバック関数のアドレスを供給する。アプリケーション48は、ループ処理に入り、残りのDCMがなくなるまで、媒体マネージャに対し、次のモジュールに関する情報を繰り返し要求する。媒体マネージャは、必要な情報と共にデータ構造体を準備し、このデータ構造体をコールバック関数を介してアプリケーション48に供給する。特定のDCM56に関する情報が供給されると、アプリケーション48は、必要な情報を複写する。この処理は、使用できる全てのDCMがアプリケーション48に供給されるまで繰り返される。本発明の変形例においては、クライアントアプリケーションは、システムレジストリの問い合わせを行い、使用可能なDCM56それぞれのハンドルを要求する。
【0063】
使用可能なDCM56を入手するためにアプリケーション48が実現するコールバック関数は以下のように定義される
void DeviceInfoCallbackRoutine(void *userData, SMMDeviceIndexType deviceIndex, SonyAvDeviceRecPtr deviceInfo)
コールバック関数のパラメータuserDataは、媒体マネージャとアプリケーション48との間のデータ伝送に使用される。アプリケーション48は、自身のデータ構造体を定義し、これら構造体の1つにメモリを割り当て、構造体のアドレスを媒体マネージャに渡す。このアドレスは、コールバック関数に戻され、これによりアプリケーション48は、情報の複写を目的として、データ構造体にアクセスすることができる。
【0064】
コールバック関数のパラメータdeviceIndexは、アプリケーション48が使用可能なDCM56に関する情報を入手するために入るループのインデックス値となるパラメータである。このループは、使用可能なDCM56の数だけ繰り返される。このパラメータは、コールバック関数からアプリケーション48に返され、これによりアプリケーション48は、コールバック関数に渡した他の情報とともに、このパラメータを保存することができる。このインデックス値は、特定のDCM56に関する問い合わせを行うための、アプリケーション48による媒体マネージャへの他の呼び出しの際に使用できる。さらに、このインデックス値は、アプリケーション48に、装置がネットワークから切り離され、すなわち接続解除されて、ネットワークから削除されたことを通知する際に使用される。アプリケーション48は、自らが所有するデータ構造体の専用フィールドにこのインデックス値を格納する。
【0065】
コールバック関数のパラメータdeviceInfoは、SonyAvDeviceRecのラベルが付されたデータ構造体へのポインタであり、このデータ構造体には、媒体マネージャがアプリケーション48により検索されるDCM56を格納する。このデータ構造体のフォーマットは、アプリケーション48及び媒体マネージャの両方にとって既知である。DCM56がこのデータ構造体に格納されると、アプリケーション48は、このデータ構造体から、自らが所有するデータ構造体に適切な情報を複写する。データ構造体SonyAvDeviceRecの定義を表1に示す。
【0066】
【表1】
Figure 0003977596
【0067】
パラメータdeviceIDは、DCM56及びそれに対応する装置の識別子である。この識別子は、アプリケーション48がDCM56と通信を行おうとする際、及びアプリケーション48が媒体マネージャから特定の装置に関するサービスを要求する際に常に使用する。
【0068】
パラメータbusGenerationは、バスリセットが発生する度に変更される値を示す。装置が追加又は削除されてバスリセットが発生すると、バス及び接続されている装置に関するある情報が変更される。IEEE1394規格(1995年版)バスリセットが発生する度に、パラメータbusGenerationの値は更新される。
【0069】
パラメータcontrolModuleReferenceは、特定の装置に関連するDCM56への参照値を示す。この参照値は、アプリケーション48がモジュールとのトランザクションを自らに代わって媒体マネージャに行わせることを要求する際に使用する。
【0070】
アプリケーション48は、以下の関数呼び出しにより、媒体マネージャに、使用可能なDCM56及びモジュールの数のリストを生成させる要求を行う。
SonyErrorResultType SMM_FindDeviceControlModules (SMMDeviceListRefType* theDeviceList, usigned long deviceAttributes, short* numAVDevices)
パラメータtheDeviceListは、使用可能なDCM56が格納され、媒体マネージャにより生成され、戻されるリストのアドレスを示す。アプリケーションは、この種類のローカル変数を宣言し、その変数のアドレスをこの関数に渡す。
【0071】
パラメータdeviceAttributesは、アプリケーション48が返されるべきDCM56の種類を特定するために使用するビットによるフラグのセットを含む。例えば、アプリケーション48は、ネットワークに接続されてアクティブな状態にある装置に関する情報のみを求める場合がある。特定のフラグ値が設定されている場合、媒体マネージャはこのリストをフィルタリングして、この条件を満たす装置のみを残して、アプリケーション48にリストを返すことができる。アプリケーション48は、これにより、起動され実行されている装置のみ、接続されているが電源がオフにされている装置のみ、又はスリープモードの状態にある装置のみ等の条件に適合する全ての装置が含まれたリストを特定することができる。
【0072】
パラメータnumAVDevicesは、アプリケーション48に返されるリスト内のDCM56の数を示すパラメータである。アプリケーション48は、この数値を用いて、DCM56を入手するための繰り返し処理の繰り返し回数を決定する。
【0073】
アプリケーション48は、コールバック関数のアドレスを準備し、ループ処理に入り、リスト内の全てのDCM56に関する情報が入手されるまで、繰り返し媒体マネージャを呼び出す。ループを一度繰り返す度に、アプリケーション48は、以下の関数を呼び出す。
pascal SonyErrorResultType SMM_GetDeviceControlMouleInfo
(SMMDeviceListRefType theDeviceList, SMMDeviceType whichDevice,
unsinged long reserved, SMMDeviceControlModuleIteratorUPP
theDveiceListCallbackFunction, void *userData)
パラメータtheDeviceListは、関数呼び出しFindAllControlModules()から返されたリスト参照値を示すパラメータである。パラメータwhichDeviceは、アプリケーション48が情報を要求しているDCM56はどれであるかを示すパラメータである。パラメータtheDveiceListCallbackFunctionは、準備されているコールバック関数のアドレスを示すパラメータである。パラメータuserDataは、アプリケーションにより定義されたデータ構造体への参照値を示すパラメータである。この参照値は、コールバックルーチン内でアプリケーション48に返され、アプリケーション48は、媒体マネージャからこのデータ構造体に必要な全ての情報を読み込む。
【0074】
使用可能なDCM56を入手するための処理シーケンスの好ましい具体例を以下の表2に示す。
【0075】
【表2】
Figure 0003977596
【0076】
アプリケーション48が使用可能なDCM56を入手した後は、アプリケーション48は、ステップ148において、装置固有の情報を入手する。媒体マネージャから返されるDCM情報は、各装置の固有の識別子を含むシステムレベルの情報と、IEEE1394規格(1995年版)に準拠する装置用のバスの生成等のプロトコル固有の情報である。装置の状態、記述的名称文字列、装置の画像等の装置固有の情報を入手するためには、アプリケーション48は、適切なDCM56と通信を行う必要がある。図6に示し、上述した処理を完了することにより、アプリケーション48は、スタートアップルーチンを完了し、動作できる状態になる。
【0077】
アプリケーション48が動作している間、アプリケーション48は、ユーザレベル及びシステムレベルのイベントと、制御入力信号の受信を含むメッセージと、ホストオペレーティングシステム及び媒体マネージャの処理による外部からのメッセージとを処理する。
【0078】
本発明の構造及び動作の原理を明瞭に説明するために、本発明を詳細事項と共に特定の実施の形態に沿って説明した。本発明の実施の形態における言及及び詳細事項は、添付の請求の範囲を限定するためのものではない。本発明の思想及び趣旨から逸脱することなく、ここに例示した実施の形態を様々に修正できることは、当業者にとって明らかである。特に、本発明の好適な実施の形態においては、IEEE1394規格(1995年版)シリアルバスに接続された装置を管理する具体例を示したが、本発明は他のバス構造体に対しても同様に適用できることは、当業者にとって明らかである。
【図面の簡単な説明】
【図1】 ビデオカメラ、ビデオテープレコーダ、コンピュータ、テレビジョン受像機、セットトップボックスを備えるIEEE1394規格(1995年版)シリアルバスネットワークを示す図である。
【図2】 本発明を適用した媒体マネージャを実装する各装置内に設けられるハードウェア構成を示す図である。
【図3】 本発明を適用した媒体マネージャプラットフォームのアーキテクチャを示す図である。
【図4】 本発明を適用した媒体マネージャプラットフォームのアーキテクチャを詳細に示す図である。
【図5】 本発明を適用した媒体マネージャを用いたセットアップ処理及び2つの装置間のデータ伝送処理の手順を示すフローチャートである。
【図6】 クライアントアプリケーションのスタートアップ後の処理手順を示すフローチャートである。

Claims (30)

  1. 所定の機能を実現するタスクを遂行するための、ネットワークに接続された物理的装置の動作及び物理的装置間のタスクを遂行するための命令及びデータの送受を行うための通信処理を管理する管理方法において、
    a.上記タスクを遂行するために必要な使用可能な物理的装置及び物理的装置の下位装置を判定し、該タスクの遂行のために使用できる物理的装置が存在しない場合には、使用可能な下位装置から仮想装置を構築するステップと、
    b.上記使用可能な物理的装置及び上記仮想装置を構築する下位装置に上記タスクを遂行するための命令を行うステップとを有する管理方法。
  2. 上記ネットワーク内の各物理的装置用の制御モジュールを維持管理するステップを有し、
    上記制御モジュールは、上記物理的装置及び該物理的装置内の下位装置の機能に関する情報を有し、該物理的装置を制御することを特徴とする請求項1記載の管理方法。
  3. 上記使用可能な物理的装置及び下位装置間のデータフローを制御するステップを有する請求項2記載の管理方法。
  4. a.上記ネットワーク内の装置のトポロジマップを入手するステップと、 b.上記トポロジマップを分析して最良のルートを判定するステップとを有する請求項3記載の管理方法。
  5. 上記使用可能な物理的装置及び下位装置で送受されるデータのフォーマットを必要に応じて適切なフォーマットに変換するステップを有する請求項4記載の管理方法。
  6. 遂行されるべきタスクを要求するためのインターフェイスをユーザに提供するステップを有する請求項5記載の管理方法。
  7. 上記制御モジュールは、アプリケーションにユーザインタフェイスデータを提供し、該アプリケーションを介して行われるユーザイベントに応答することを特徴とする請求項6記載の管理方法。
  8. 上記ネットワークはIEEE1394シリアルバスネットワークであることを特徴とする請求項7記載の管理方法。
  9. 上記制御モジュールはリモート装置内に配設され、ホスト装置にダウンロードされて実行されることを特徴とする請求項7記載の管理方法。
  10. 上記制御モジュールは、ローカル装置内に配設され、該ローカル装置内の生来的な環境により実行されることを特徴とする請求項7記載の管理方法。
  11. 上記制御モジュールは、ローカル装置内に配設され、ホスト装置にアップロードされて実行されることを特徴とする請求項7記載の管理方法。
  12. ネットワークに接続された物理的装置の動作及び物理的装置間の所定の機能を実現するタスクを遂行するための命令及びデータの送受を行うための通信処理を制御する制御装置において、
    a.上記ネットワーク内の物理的装置と通信を行うためのインターフェイス回路と、
    b.上記インターフェイス回路に接続され、タスクを遂行するために必要な物理的装置及び物理的装置の下位装置を判定し、該タスクの遂行のために使用できる物理的装置が存在しない場合には、使用可能な下位装置から仮想装置を構築し、下位装置に上記タスクを遂行するための命令を行う制御回路とを備える制御装置。
  13. 上記ネットワーク内の各物理的装置を表し、上記物理的装置及び該物理的装置内の下位装置の機能に関する情報を有し、該物理的装置を制御する複数の制御モジュールを備える請求項12記載の制御装置。
  14. 上記制御回路及び上記インターフェイス回路に接続され、上記ネットワーク内の物理的装置のトポロジマップを入手し、該トポロジマップを分析して最良のルートを判定するバス管理回路を備える請求項13記載の制御装置。
  15. 上記制御回路は、上記使用可能な物理的装置及び下位装置で送受されるデータのフォーマットを必要に応じて適切なフォーマットに変換することを特徴とする請求項14記載の制御装置。
  16. 上記ネットワークはIEEE1394シリアルバスネットワークであることを特徴とする請求項15記載の制御装置。
  17. ネットワークに接続された物理的装置の動作及び物理的装置間の所定の機能を実現するタスクを遂行するための命令及びデータの送受を行うための通信処理を管理する管理方法において、
    a.上記ネットワーク内の各物理的装置に対応し、該物理的装置の機能及び該物理的装置内の全ての下位装置に関する情報を有し、該物理的装置を制御する制御モジュールを維持管理するステップと、
    b.ユーザが遂行すべきタスクを要求するためのインターフェイスを準備するステップと、
    c.上記制御モジュールを検索して、上記タスク遂行のために必要な物理的装置及び下位装置を判定し、該タスク遂行のための物理的装置が使用可能な状態にない場合に、使用可能な下位装置から仮想装置を構築するステップと、
    d.使用可能な制御モジュールにより上記使用可能な物理的装置及び上記仮想装置を構築する下位装置に命令を供給させて上記タスクを遂行するステップとを有する管理方法。
  18. a.上記タスクの遂行のための上記物理的装置及び下位装置が現在使用可能であるか否かを判定するステップと、
    b.上記物理的装置及び下位装置が使用可能な状態にない場合、上記ネットワーク内の物理的装置の使用可能な下位装置から仮想装置を構築するステップを有する請求項17記載の管理方法。
  19. 上記使用可能な物理的装置及び下位装置間のデータフローを制御するステップを有する請求項18記載の管理方法。
  20. a.上記ネットワーク内の物理的装置のトポロジマップを入手するステップと、
    b.上記トポロジマップを分析して最良のルートを判定するステップとを有する請求項19記載の管理方法。
  21. a.上記使用可能な物理的装置及び下位装置で送受されるデータのフォーマットを変換する必要があるか否かを判定するステップと、
    b.上記データのフォーマットの変換が必要な場合に、該データのフォーマットを変換するステップとを有する請求項20記載の管理方法。
  22. 上記ネットワークはIEEE1394シリアルバスネットワークであることを特徴とする請求項21記載の管理方法。
  23. ネットワークに接続された物理的装置の動作及び物理的装置間の所定の機能を実現するタスクを遂行するための命令及びデータの送受を行うための通信処理を制御する制御装置において、
    a.上記ネットワーク内の各物理的装置に対応し、該物理的装置の機能及び該物理的装置内の全ての下位装置に関する情報を有し、該物理的装置を制御する制御モジュールと、
    b.ユーザと通信を行い、遂行されるべきタスクをユーザが要求するためのインターフェイスと、
    c.上記複数の制御モジュールと、ネットワークと、表示装置とに接続され、制御モジュールを検索することにより、上記タスクを遂行するために必要な使用可能な物理的装置及び下位装置を判定し、適切な制御モジュールにより上記使用可能な物理的装置及び下位装置に命令を供給させて上記タスクを遂行させる制御回路とを備え
    上記制御回路は、上記タスク遂行に必要な物理的装置及び下位装置が使用可能な状態にあるかを判定し、該タスク遂行に物理的装置及び下位装置が使用可能な状態にない場合に、使用可能な下位装置から仮想装置を構築し、上記タスクを遂行させることを特徴とする制御装置。
  24. 上記制御回路は、上記タスクの遂行のための上記物理的装置及び下位装置が現在使用可能であるか否かを判定し、上記物理的装置及び下位装置が使用可能な状態にない場合、上記ネットワーク内の物理的装置の使用可能な下位装置から仮想装置を構築することを特徴とする請求項23記載の制御装置。
  25. 上記制御回路は、上記ネットワーク内の装置間のデータフローを制御することを特徴とする請求項24記載の制御装置。
  26. 上記制御回路に接続され、上記ネットワーク内の装置のトポロジマップを入手し、該トポロジマップを分析して最良のルートを判定するバス管理回路を備える請求項25記載の制御装置。
  27. 上記制御回路は、上記使用可能な物理的装置及び下位装置で送受されるデータのフォーマットを必要に応じて適切なフォーマットに変換することを特徴とする請求項26記載の制御装置。
  28. 上記制御回路は、上記ネットワーク内の物理的装置の基本的機能へのユーザのアクセスを可能にする予め定義された動作を実現することを特徴とする請求項27記載の制御装置。
  29. 上記制御回路は、ユーザの行動を監視及び記録し、カスタム化されたユーザに関して定義された動作を生成することを特徴とする請求項28記載の制御装置。
  30. 上記ネットワークはIEEE1394シリアルバスネットワークであることを特徴とする請求項27記載の制御装置。
JP2000548813A 1998-05-08 1999-04-29 ネットワーク環境内の自律媒体装置を制御し、自律媒体装置間のデータフロー及びデータフォーマットを管理する媒体管理装置 Expired - Lifetime JP3977596B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/075,047 1998-05-08
US09/075,047 US6233611B1 (en) 1998-05-08 1998-05-08 Media manager for controlling autonomous media devices within a network environment and managing the flow and format of data between the devices
PCT/US1999/009490 WO1999059072A2 (en) 1998-05-08 1999-04-29 Media manager for controlling autonomous media devices within a network environment

Publications (2)

Publication Number Publication Date
JP2002514879A JP2002514879A (ja) 2002-05-21
JP3977596B2 true JP3977596B2 (ja) 2007-09-19

Family

ID=22123199

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000548813A Expired - Lifetime JP3977596B2 (ja) 1998-05-08 1999-04-29 ネットワーク環境内の自律媒体装置を制御し、自律媒体装置間のデータフロー及びデータフォーマットを管理する媒体管理装置

Country Status (11)

Country Link
US (3) US6233611B1 (ja)
EP (2) EP1076961B1 (ja)
JP (1) JP3977596B2 (ja)
KR (1) KR100628468B1 (ja)
CN (1) CN100380888C (ja)
AT (1) ATE230910T1 (ja)
AU (1) AU758533B2 (ja)
CA (1) CA2330348C (ja)
DE (1) DE69904813T2 (ja)
ES (1) ES2186360T3 (ja)
WO (1) WO1999059072A2 (ja)

Families Citing this family (200)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10361802B1 (en) 1999-02-01 2019-07-23 Blanding Hovenweep, Llc Adaptive pattern recognition based control system and method
JP3733709B2 (ja) * 1997-09-30 2006-01-11 ソニー株式会社 電子機器、電源制御方法及び記録媒体
JP3671738B2 (ja) * 1999-05-12 2005-07-13 松下電器産業株式会社 伝送管理方法
DE69938703D1 (de) * 1998-04-22 2008-06-26 Koninkl Philips Electronics Nv Funktionalitätsverwaltung für ein unterhaltungselektroniksystem
US6233611B1 (en) * 1998-05-08 2001-05-15 Sony Corporation Media manager for controlling autonomous media devices within a network environment and managing the flow and format of data between the devices
CN1867068A (zh) 1998-07-14 2006-11-22 联合视频制品公司 交互式电视节目导视系统及其方法
US6496862B1 (en) * 1998-08-25 2002-12-17 Mitsubishi Electric Research Laboratories, Inc. Remote monitoring and control of devices connected to an IEEE 1394 bus via a gateway device
US6430635B1 (en) * 1998-10-10 2002-08-06 Lg Electronics Inc Protocol interfacing method
FR2785408A1 (fr) * 1998-10-30 2000-05-05 Canon Research Centre France S Procede et dispositif de communication d'information numerique et appareils les mettant en oeuvre
US6859799B1 (en) 1998-11-30 2005-02-22 Gemstar Development Corporation Search engine for video and graphics
JP3576019B2 (ja) * 1998-12-28 2004-10-13 株式会社東芝 通信ノード
US7904187B2 (en) 1999-02-01 2011-03-08 Hoffberg Steven M Internet appliance system and method
US6862735B1 (en) * 1999-02-11 2005-03-01 Sun Microsystems, Inc. Mechanism by which platform independent software may bind to and access platform dependent software
US6643714B1 (en) * 1999-03-25 2003-11-04 Microsoft Corporation Modification and use of configuration memory used during operation of a serial bus
US6826776B1 (en) * 1999-04-09 2004-11-30 Sony Corporation Method and apparatus for determining signal path
JP4250805B2 (ja) * 1999-04-23 2009-04-08 ソニー株式会社 電子機器、データ通信方法およびネットワークシステム
US6633547B1 (en) * 1999-04-29 2003-10-14 Mitsubishi Electric Research Laboratories, Inc. Command and control transfer
US6925513B1 (en) * 1999-05-04 2005-08-02 Apple Computer, Inc. USB device notification
US6738835B1 (en) * 1999-05-28 2004-05-18 Sony Corporation Information processing apparatus and method, and recording medium
JP4313894B2 (ja) * 1999-06-01 2009-08-12 キヤノン株式会社 通信システム及び被制御装置
DE60019750T2 (de) * 1999-06-11 2005-09-29 Microsoft Corp., Redmond Allgemeines api zur gerätefernsteuerung
US6895557B1 (en) 1999-07-21 2005-05-17 Ipix Corporation Web-based media submission tool
US7069185B1 (en) * 1999-08-30 2006-06-27 Wilson Diagnostic Systems, Llc Computerized machine controller diagnostic system
US7130315B1 (en) 1999-09-10 2006-10-31 Sony Corporation Method of and apparatus for utilizing extended AV/C command and response frames including transaction label and common result/error code
US6732162B1 (en) * 1999-11-15 2004-05-04 Internet Pictures Corporation Method of providing preprocessed images for a plurality of internet web sites
CN1304926C (zh) * 2000-01-21 2007-03-14 皇家菲利浦电子有限公司 机顶盒将遥控设备连接到网站以进行用户定制码下载
US6895558B1 (en) * 2000-02-11 2005-05-17 Microsoft Corporation Multi-access mode electronic personal assistant
JP4422848B2 (ja) * 2000-02-21 2010-02-24 キヤノン株式会社 画像形成装置
US7127526B1 (en) * 2000-03-20 2006-10-24 Nortel Networks Limited Method and apparatus for dynamically loading and managing software services on a network device
JP3901941B2 (ja) * 2000-03-24 2007-04-04 富士通株式会社 Ieee1394規格における装置およびその装置におけるコンフィグレーション方法
JP2001274813A (ja) * 2000-03-28 2001-10-05 Canon Inc 情報信号処理装置及び情報信号処理方法並びに記憶媒体
US6704819B1 (en) * 2000-04-19 2004-03-09 Microsoft Corporation Method and apparatus for device sharing and arbitration
US6968307B1 (en) 2000-04-28 2005-11-22 Microsoft Corporation Creation and use of virtual device drivers on a serial bus
US7191236B2 (en) 2000-05-02 2007-03-13 Canon Kabushiki Kaisha Transparent telecommunications system and apparatus
JP2001325206A (ja) * 2000-05-12 2001-11-22 Canon Inc 表示装置、表示システム及びコンピュータ読み取り可能な記憶媒体
US6901444B1 (en) * 2000-06-30 2005-05-31 Sony Corporation Method of and apparatus for communicating data structures between devices in a networking environment
DE10039415A1 (de) * 2000-08-11 2002-03-07 Siemens Ag Verfahren sowie Verarbeitungssystem zur Ermittlung der räumlichen Struktur eines Steuerungssystems
KR100667742B1 (ko) 2000-08-23 2007-01-11 삼성전자주식회사 제어기기의 적어도 하나 이상의 피제어기기 제어 방법
US7103906B1 (en) 2000-09-29 2006-09-05 International Business Machines Corporation User controlled multi-device media-on-demand system
FR2814883A1 (fr) * 2000-10-03 2002-04-05 Canon Kk Procede et dispositif de declaration et de modification de fonctionnalite d'un noeud dans un reseau de communication
KR20190096450A (ko) 2000-10-11 2019-08-19 로비 가이드스, 인크. 매체 콘텐츠 배달 시스템 및 방법
US7328232B1 (en) * 2000-10-18 2008-02-05 Beptech Inc. Distributed multiprocessing system
US10860290B2 (en) 2000-11-01 2020-12-08 Flexiworld Technologies, Inc. Mobile information apparatuses that include a digital camera, a touch sensitive screen interface, support for voice activated commands, and a wireless communication chip or chipset supporting IEEE 802.11
US20020051200A1 (en) 2000-11-01 2002-05-02 Chang William Ho Controller for device-to-device pervasive digital output
US11204729B2 (en) 2000-11-01 2021-12-21 Flexiworld Technologies, Inc. Internet based digital content services for pervasively providing protected digital content to smart devices based on having subscribed to the digital content service
US10915296B2 (en) 2000-11-01 2021-02-09 Flexiworld Technologies, Inc. Information apparatus that includes a touch sensitive screen interface for managing or replying to e-mails
US11467856B2 (en) * 2002-12-12 2022-10-11 Flexiworld Technologies, Inc. Portable USB device for internet access service
US7609402B2 (en) 2001-01-19 2009-10-27 Flexiworld, Inc. Methods for universal data output
US7181508B1 (en) * 2000-11-09 2007-02-20 Oki Data Americas, Inc. System and method for communicating, monitoring and configuring a device operatively connected to a network
WO2002041107A2 (en) 2000-11-20 2002-05-23 Flexiworld Technologies, Inc. Systems and methods for mobile and pervasive output
IT1319575B1 (it) * 2000-12-19 2003-10-20 Cit Alcatel Metodo per fornire la comunicazione in sistemi distribuiti.
US6907445B2 (en) * 2001-02-12 2005-06-14 International Truck Intellectual Property Company, Llc Consistent application programming interface for communicating with disparate vehicle network classes
US6836796B2 (en) * 2001-03-16 2004-12-28 Digi International, Inc. System and method to manage network-enabled embedded devices operating under various protocols
US8868659B2 (en) * 2001-05-15 2014-10-21 Avaya Inc. Method and apparatus for automatic notification and response
EP1262869A1 (en) 2001-05-29 2002-12-04 Sony International (Europe) GmbH System and method for discovering and customizing resources in networks
JP4612779B2 (ja) * 2001-06-14 2011-01-12 キヤノン株式会社 通信装置及び通信装置の映像表示制御方法
DE10129446A1 (de) * 2001-06-19 2003-01-02 Bosch Gmbh Robert Verfahren zur Initialisierung einer verteilten Software Architektur und elektronisches System
JP2003022224A (ja) * 2001-07-09 2003-01-24 Fujitsu Ltd ネットワークを介して相互接続された複数の機器の連携動作の制御
US7574723B2 (en) 2001-07-19 2009-08-11 Macrovision Corporation Home media network
ATE347764T1 (de) * 2001-09-21 2006-12-15 Koninkl Philips Electronics Nv Gibt es kein spezifisches kontrollmodul? benutzen sie eines das weniger spezifisch ist
US6944704B2 (en) * 2001-10-04 2005-09-13 Sony Corporation Method and apparatus for utilizing extended AV/C command frames including status inquiry, notify inquiry and control inquiry command types
US7003604B2 (en) * 2001-10-04 2006-02-21 Sony Corporation Method of and apparatus for cancelling a pending AV/C notify command
WO2003036899A2 (en) * 2001-10-24 2003-05-01 Gente Solutions Ltd. Apparatus and methods for providing self-configuring computer networks
US20030097497A1 (en) * 2001-11-21 2003-05-22 Jeffrey Esakov Data format recognition for networks providing device interoperability
FR2832888B1 (fr) * 2001-11-23 2004-02-27 France Telecom Systeme de gestion d'applications dediees a des appareils connectes a un reseau, procede de gestion d'applications, terminal d'acces, serveur d'applications et appareil pour un tel systeme
US6985961B1 (en) * 2001-12-04 2006-01-10 Nortel Networks Limited System for routing incoming message to various devices based on media capabilities and type of media session
US7831278B2 (en) * 2001-12-18 2010-11-09 Intel Corporation Method and device for communicating data with a personal wireless storage device
US7202783B2 (en) * 2001-12-18 2007-04-10 Intel Corporation Method and system for identifying when a first device is within a physical range of a second device
US20030115038A1 (en) * 2001-12-18 2003-06-19 Roy Want Method and device for emulating electronic apparatus
US7634795B2 (en) * 2002-01-11 2009-12-15 Opentv, Inc. Next generation television receiver
US7430583B2 (en) * 2002-01-15 2008-09-30 International Business Machines Corporation Active control of collaborative devices
DE60322453D1 (de) * 2002-01-21 2008-09-11 Canon Kk System zum Bereitstellen von Diensten
FR2836318B1 (fr) * 2002-02-21 2004-07-09 France Telecom Systeme de transmission de contenus mutimedias apte a accorder les contenus au cours de leur transmission
DE60307072T2 (de) * 2002-03-25 2006-12-07 Matsushita Electric Industrial Co., Ltd., Kadoma Aufzeichnungsvorrichtung, aufzeichnungsverfahren, und programm
EP1351447A1 (en) * 2002-04-05 2003-10-08 Sony International (Europe) GmbH Management and control of networked audio-video devices
US20030204612A1 (en) * 2002-04-30 2003-10-30 Mark Warren System and method for facilitating device communication, management and control in a network
DE10227062A1 (de) 2002-06-18 2004-01-08 Robert Bosch Gmbh Verfahren zur Steuerung elektronischer Geräte
US7933945B2 (en) * 2002-06-27 2011-04-26 Openpeak Inc. Method, system, and computer program product for managing controlled residential or non-residential environments
US6792323B2 (en) * 2002-06-27 2004-09-14 Openpeak Inc. Method, system, and computer program product for managing controlled residential or non-residential environments
US7024256B2 (en) * 2002-06-27 2006-04-04 Openpeak Inc. Method, system, and computer program product for automatically managing components within a controlled environment
US8116889B2 (en) 2002-06-27 2012-02-14 Openpeak Inc. Method, system, and computer program product for managing controlled residential or non-residential environments
US20040039459A1 (en) * 2002-08-06 2004-02-26 Daugherty Paul R. Universal device control
CN1501267B (zh) * 2002-09-20 2010-05-12 富士施乐株式会社 链接信息制作设备、链接信息制作方法及文件处理系统
US8931010B2 (en) * 2002-11-04 2015-01-06 Rovi Solutions Corporation Methods and apparatus for client aggregation of media in a networked media system
EP1570603B1 (en) * 2002-11-22 2010-12-22 Arash Rouhi A multimedia network system for interconnecting a number of receiving and transmitting digital and/or analogous devices
US6922754B2 (en) * 2002-12-09 2005-07-26 Infabric Technologies, Inc. Data-aware data flow manager
AU2003300880A1 (en) 2002-12-12 2004-07-09 Flexiworld Technologies, Inc. Wireless communication between computing devices
CN100352250C (zh) * 2002-12-18 2007-11-28 中国移动通信集团公司 无线移动通信设备自动登录互联网的方法
WO2004064355A2 (en) * 2003-01-03 2004-07-29 Gloolabs, Inc. Method and apparatus for device communications
AU2003288560A1 (en) * 2003-01-06 2004-07-29 International Business Machines Corporation A user-centric service providing device and service providing method
US7987489B2 (en) 2003-01-07 2011-07-26 Openpeak Inc. Legacy device bridge for residential or non-residential networks
FR2849977B1 (fr) * 2003-01-10 2005-06-03 Thomson Licensing Sa Procede de controle d'appareils au sein d'un reseau par une telecommande dediee et appareils mettant en oeuvre le procede
CN1303789C (zh) * 2003-01-28 2007-03-07 华为技术有限公司 数字传送网上不同的数据帧接入和传送的系统和方法
US7493646B2 (en) 2003-01-30 2009-02-17 United Video Properties, Inc. Interactive television systems with digital video recording and adjustable reminders
KR20040079596A (ko) * 2003-03-08 2004-09-16 주식회사 성진씨앤씨 허브를 내장한 네트워크 카메라
US7668990B2 (en) * 2003-03-14 2010-02-23 Openpeak Inc. Method of controlling a device to perform an activity-based or an experience-based operation
US8042049B2 (en) 2003-11-03 2011-10-18 Openpeak Inc. User interface for multi-device control
US7213228B2 (en) 2003-03-17 2007-05-01 Macrovision Corporation Methods and apparatus for implementing a remote application over a network
JP4093899B2 (ja) * 2003-04-03 2008-06-04 シャープ株式会社 データ送信装置及びデータ受信装置及びデータ通信システム及びデータ通信管理用サーバ
CN101208657B (zh) * 2003-04-11 2017-11-14 富意科技 一种便携式集成电路存储设备及其运行方法
KR100493898B1 (ko) * 2003-04-16 2005-06-10 삼성전자주식회사 피제어 디바이스의 리스트를 제공하는 네트워크 장치,시스템 및 방법
US20040240650A1 (en) 2003-05-05 2004-12-02 Microsoft Corporation Real-time communications architecture and methods for use with a personal computer system
US7827232B2 (en) 2003-05-05 2010-11-02 Microsoft Corporation Record button on a computer system
US7221331B2 (en) 2003-05-05 2007-05-22 Microsoft Corporation Method and system for auxiliary display of information for a computing device
US7551199B2 (en) 2003-05-05 2009-06-23 Microsoft Corporation Computer camera system and method for reducing parallax
US20040235520A1 (en) 2003-05-20 2004-11-25 Cadiz Jonathan Jay Enhanced telephony computer user interface allowing user interaction and control of a telephone using a personal computer
US7555540B2 (en) 2003-06-25 2009-06-30 Microsoft Corporation Media foundation media processor
US20050065912A1 (en) * 2003-09-02 2005-03-24 Digital Networks North America, Inc. Digital media system with request-based merging of metadata from multiple databases
US7216221B2 (en) 2003-09-30 2007-05-08 Microsoft Corporation Method and system for unified audio control on a personal computer
US7548255B2 (en) 2003-09-30 2009-06-16 Microsoft Corporation Method and system for capturing video on a personal computer
JP2005157419A (ja) * 2003-11-20 2005-06-16 Sony Corp 情報処理システム、情報処理装置および方法、並びにプログラム
US7266726B1 (en) 2003-11-24 2007-09-04 Time Warner Cable Inc. Methods and apparatus for event logging in an information network
US8302111B2 (en) 2003-11-24 2012-10-30 Time Warner Cable Inc. Methods and apparatus for hardware registration in a network device
US9213538B1 (en) 2004-02-06 2015-12-15 Time Warner Cable Enterprises Llc Methods and apparatus for display element management in an information network
EP1564990A3 (en) * 2004-02-16 2008-04-16 Matsushita Electric Industrial Co., Ltd. Equipment management system and method
US20050209990A1 (en) * 2004-03-18 2005-09-22 Ordille Joann J Method and apparatus for a publish-subscribe system with access controls
US7734731B2 (en) * 2004-03-18 2010-06-08 Avaya Inc. Method and apparatus for a publish-subscribe system with third party subscription delivery
EP1578058B1 (en) * 2004-03-19 2011-10-12 Sap Ag Distributing unique identifiers within a network
US20050273657A1 (en) * 2004-04-01 2005-12-08 Hiroshi Ichiki Information processing apparatus and method, and recording medium and program for controlling the same
TWI244868B (en) * 2004-04-21 2005-12-01 Wistron Corp Resource sharing system for household electronic appliances
JP3897774B2 (ja) * 2004-06-09 2007-03-28 株式会社ソニー・コンピュータエンタテインメント マルチメディア再生装置およびメニュー画面表示方法
US20050289613A1 (en) * 2004-06-18 2005-12-29 Honeywell International Inc. Control architecture for audio/video (A/V) systems
US8166217B2 (en) * 2004-06-28 2012-04-24 Marvell International Ltd. System and method for reading and writing data using storage controllers
TR201904404T4 (tr) 2004-09-10 2019-04-22 Koninklijke Philips Nv En azından bir medya veri işleme cihazını kontrol etmeyi sağlamak için cihaz ve yöntem.
JP3952053B2 (ja) * 2004-09-21 2007-08-01 船井電機株式会社 接続管理プログラム
US8086575B2 (en) 2004-09-23 2011-12-27 Rovi Solutions Corporation Methods and apparatus for integrating disparate media formats in a networked media system
US7953845B2 (en) * 2004-09-30 2011-05-31 Microsoft Corporation Network-specific estimation in network node discovery
US7660891B2 (en) * 2004-09-30 2010-02-09 Microsoft Corporation Node discovery involving stealth node enumerators
US7870247B2 (en) * 2004-09-30 2011-01-11 Microsoft Corporation Node discovery involving multiple node enumerators
US20060075113A1 (en) * 2004-09-30 2006-04-06 Microsoft Corporation Network node enumeration
JP4241577B2 (ja) 2004-11-05 2009-03-18 ブラザー工業株式会社 サービス登録システム、サーバ、端末装置および周辺装置
US7634780B2 (en) * 2004-11-23 2009-12-15 Microsoft Corporation Method and system for exchanging data between computer systems and auxiliary displays
US7581034B2 (en) 2004-11-23 2009-08-25 Microsoft Corporation Sending notifications to auxiliary displays
US7711868B2 (en) 2004-11-23 2010-05-04 Microsoft Corporation Waking a main computer system to pre-fetch data for an auxiliary computing device
US20060168268A1 (en) * 2004-12-02 2006-07-27 International Business Machines Corporation Specific method of setting transport-specific properties from transport-agnostic clients
US7768388B2 (en) 2005-01-05 2010-08-03 Rovi Solutions Corporation Methods and apparatus for providing notifications in a media system
KR100736930B1 (ko) * 2005-02-07 2007-07-10 삼성전자주식회사 홈서버, 상기 홈서버를 포함하는 컨텐츠 전송 시스템, 통합미디어 재생 프로그램을 이용한 컨텐츠 재생방법, 미디어포맷 변환 기능을 이용한 컨텐츠 전송방법 그리고 컨텐츠전송 여부 판별방법
US7784065B2 (en) * 2005-02-07 2010-08-24 Microsoft Corporation Interface for consistent program interaction with auxiliary computing devices
US8659546B2 (en) 2005-04-21 2014-02-25 Oracle America, Inc. Method and apparatus for transferring digital content
US9401822B2 (en) * 2005-06-09 2016-07-26 Whirlpool Corporation Software architecture system and method for operating an appliance exposing key press functionality to a network
US7813831B2 (en) * 2005-06-09 2010-10-12 Whirlpool Corporation Software architecture system and method for operating an appliance in multiple operating modes
US8131529B2 (en) * 2005-09-01 2012-03-06 Advanced Testing Technologies Inc. Method and system for simulating test instruments and instrument functions
RU2411685C2 (ru) * 2005-11-29 2011-02-10 Конинклейке Филипс Электроникс Н.В. Способ управления распределенной системой хранения
US9467322B2 (en) 2005-12-27 2016-10-11 Rovi Solutions Corporation Methods and apparatus for integrating media across a wide area network
US8607287B2 (en) 2005-12-29 2013-12-10 United Video Properties, Inc. Interactive media guidance system having multiple devices
US9681105B2 (en) 2005-12-29 2017-06-13 Rovi Guides, Inc. Interactive media guidance system having multiple devices
KR100677635B1 (ko) * 2006-02-02 2007-02-02 삼성전자주식회사 네트워크에서의 기기 제어 방법 및 시스템과 그 방법을수행하는 프로그램이 기록된 기록 매체
US20070283389A1 (en) * 2006-06-01 2007-12-06 Sharp Laboratories Of America, Inc. Method and system for helping operate a media-playing set
US9300920B2 (en) * 2006-03-03 2016-03-29 Sharp Laboratories Of America, Inc. Method and system for configuring media-playing sets
US20070245373A1 (en) * 2006-03-31 2007-10-18 Sharp Laboratories Of America, Inc. Method for configuring media-playing sets
US7929551B2 (en) 2006-06-01 2011-04-19 Rovi Solutions Corporation Methods and apparatus for transferring media across a network using a network interface device
US8127036B2 (en) * 2006-06-30 2012-02-28 Microsoft Corporation Remote session media data flow and playback
US7992086B2 (en) * 2006-06-30 2011-08-02 Sharp Laboratories Of America, Inc. System and method for adjusting a media-playing set
US8589523B2 (en) 2006-08-08 2013-11-19 Sharp Laboratories Of America, Inc. Personalized assistance with setup of a media-playing set
US20080040430A1 (en) * 2006-08-10 2008-02-14 Sharp Laboratories Of America, Inc. System and method to facilitate operating a media-playing set
KR100878438B1 (ko) * 2006-09-25 2009-01-13 삼성전자주식회사 가상 기기 구성 방법 및 이를 이용한 가상 기기 구성시스템
US20080288582A1 (en) * 2006-09-25 2008-11-20 Sms.Ac Systems and methods for passing application pods between multiple social network service environments
US20080178214A1 (en) * 2007-01-19 2008-07-24 Sharp Laboratories Of America, Inc. Context relevant controls
US7647326B2 (en) * 2007-01-29 2010-01-12 Sharp Laboratories Of America, Inc. Method and system for evaluating media-playing sets
US8266664B2 (en) * 2007-01-31 2012-09-11 At&T Intellectual Property I, Lp Methods and apparatus to provide messages to television users
US20080183645A1 (en) * 2007-01-31 2008-07-31 Microsoft Corporation Media continuity service between devices
WO2008103103A2 (en) * 2007-02-19 2008-08-28 Telefonaktiebolaget Lm Ericsson (Publ) A method and apparatus for enabling user group services in a communication network
US20080228685A1 (en) * 2007-03-13 2008-09-18 Sharp Laboratories Of America, Inc. User intent prediction
US8249845B1 (en) 2007-05-03 2012-08-21 Advanced Testing Technologies, Inc. Electro-mechanical system simulator arrangement and method
US20080295012A1 (en) * 2007-05-23 2008-11-27 Microsoft Corporation Drag-and-drop abstraction
US20090019492A1 (en) 2007-07-11 2009-01-15 United Video Properties, Inc. Systems and methods for mirroring and transcoding media content
US20090024687A1 (en) * 2007-07-20 2009-01-22 Thomas Quigley Method and system for formatting returned result from remote processing resource in wireless system
US20090031381A1 (en) * 2007-07-24 2009-01-29 Honeywell International, Inc. Proxy video server for video surveillance
US20090094658A1 (en) * 2007-10-09 2009-04-09 Genesis Microchip Inc. Methods and systems for driving multiple displays
JP2009146146A (ja) * 2007-12-13 2009-07-02 Panasonic Corp 情報処理装置およびホームネットワークシステム
US7904602B2 (en) * 2008-02-05 2011-03-08 Raptor Networks Technology, Inc. Distributed computing bus
US8862706B2 (en) 2007-12-14 2014-10-14 Nant Holdings Ip, Llc Hybrid transport—application network fabric apparatus
KR101582084B1 (ko) 2008-01-25 2016-01-05 삼성전자주식회사 홈 네트워크에서 이벤트를 처리하는 방법 및 이를 위한장치
US10895898B2 (en) * 2008-04-16 2021-01-19 Deka Products Limited Partnership Management of remotely controlled devices
JP2010050956A (ja) * 2008-07-24 2010-03-04 Toshiba Corp 映像処理システム、映像処理装置、および映像処理方法
US10063934B2 (en) 2008-11-25 2018-08-28 Rovi Technologies Corporation Reducing unicast session duration with restart TV
KR20100086837A (ko) * 2009-01-23 2010-08-02 삼성전자주식회사 디바이스 기능 및 상태를 고려한 디바이스 통합 제어 방법 및 장치
US9014546B2 (en) 2009-09-23 2015-04-21 Rovi Guides, Inc. Systems and methods for automatically detecting users within detection regions of media devices
IT1396303B1 (it) * 2009-10-12 2012-11-16 Re Lab S R L Metodo e sistema per l elaborazione di informazioni relative ad un veicolo
US11131747B2 (en) 2010-03-31 2021-09-28 United States Foundation For Inspiration And Recog Systems and methods for remotely controlled device position and orientation determination
KR101812165B1 (ko) 2010-07-06 2017-12-26 엘지전자 주식회사 애플리케이션 확장 방법 및 그 방법을 이용한 영상표시기기
US10797904B2 (en) * 2010-12-28 2020-10-06 Comcast Interactive Media, Llc Communication, monitoring and control architecture and method
US8868700B2 (en) 2010-12-28 2014-10-21 Nant Holdings Ip, Llc Distributed network interfaces for application cloaking and spoofing
US9723052B2 (en) 2011-01-28 2017-08-01 Hewlett-Packard Development Company, L.P. Utilizing content via personal clouds
US8805418B2 (en) 2011-12-23 2014-08-12 United Video Properties, Inc. Methods and systems for performing actions based on location-based rules
GB2499281B (en) * 2012-09-28 2014-06-25 Imagination Tech Ltd Method, system and device for selecting a device to satisfy a user request
GB2510512B (en) * 2012-09-28 2014-12-17 Imagination Tech Ltd Method, System and device for selecting a device to satisfy a user request
JP6282434B2 (ja) * 2012-10-22 2018-02-21 キヤノンイメージングシステムズ株式会社 デバイス制御装置、その制御方法、及びデバイス制御システム
CN103455328B (zh) * 2013-08-16 2017-06-06 奥博杰天软件(西安)有限公司 基于多层次状态机的媒体播放控制器的播放方法
US10594794B2 (en) * 2013-10-08 2020-03-17 Iotic Labs Limited Method and apparatus for synthesizing data feeds for internet of things
US9674563B2 (en) 2013-11-04 2017-06-06 Rovi Guides, Inc. Systems and methods for recommending content
CN105099931A (zh) * 2015-05-20 2015-11-25 小米科技有限责任公司 设备间互动处理方法及装置
USD794076S1 (en) * 2016-09-09 2017-08-08 Yehuda Goltche Control pad
US11716558B2 (en) 2018-04-16 2023-08-01 Charter Communications Operating, Llc Apparatus and methods for integrated high-capacity data and wireless network services
EP3864917A4 (en) 2018-10-12 2022-07-06 Charter Communications Operating, LLC APPARATUS AND METHODS FOR IDENTIFYING CELLS IN WIRELESS NETWORKS
US11129171B2 (en) 2019-02-27 2021-09-21 Charter Communications Operating, Llc Methods and apparatus for wireless signal maximization and management in a quasi-licensed wireless system
JP7368503B2 (ja) * 2019-05-16 2023-10-24 アストロニクス アドバンスド エレクトロニック システムズ コーポレイション 共通の分配ネットワーク上の消費者間のフロー均等化の管理方法
US11218374B2 (en) * 2019-07-30 2022-01-04 Microsoft Technology Licensing, Llc Discovery and resolution of network connected devices
US11026205B2 (en) 2019-10-23 2021-06-01 Charter Communications Operating, Llc Methods and apparatus for device registration in a quasi-licensed wireless system
CN113589782B (zh) * 2021-07-08 2023-08-04 重庆长安汽车股份有限公司 整车运算平台系统架构设计方法及整车运算平台系统架构

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4562535A (en) 1982-04-05 1985-12-31 Texas Instruments Incorporated Self-configuring digital processor system with global system
US4633392A (en) 1982-04-05 1986-12-30 Texas Instruments Incorporated Self-configuring digital processor system with logical arbiter
GB2203869B (en) 1987-04-17 1991-10-23 Apple Computer Computer resource configuration method and apparatus
US5226120A (en) 1990-05-21 1993-07-06 Synoptics Communications, Inc. Apparatus and method of monitoring the status of a local area network
JP3106495B2 (ja) 1990-11-21 2000-11-06 ソニー株式会社 ホームバス制御装置
US5307491A (en) 1991-02-12 1994-04-26 International Business Machines Corporation Layered SCSI device driver with error handling circuit providing sense data from device directly to the driver on the occurrence of an error
JP3173846B2 (ja) 1991-03-22 2001-06-04 ディー2ビー システムズ カンパニー リミテッド 局所的通信バス・システム
GB9121203D0 (en) 1991-10-04 1991-11-20 D2B Systems Co Ltd Local communication bus system and apparatus for use in such a system
US5289460A (en) 1992-07-31 1994-02-22 International Business Machines Corp. Maintenance of message distribution trees in a communications network
EP0588046A1 (en) 1992-08-14 1994-03-23 International Business Machines Corporation IEEE standard 802.2 virtual device driver
US5394556A (en) 1992-12-21 1995-02-28 Apple Computer, Inc. Method and apparatus for unique address assignment, node self-identification and topology mapping for a directed acyclic graph
US5621662A (en) * 1994-02-15 1997-04-15 Intellinet, Inc. Home automation system
US5724272A (en) * 1994-05-04 1998-03-03 National Instruments Corporation Method and apparatus for controlling an instrumentation system
US5724517A (en) 1994-09-27 1998-03-03 International Business Machines Corporation Method for generating a topology map for a serial bus
US5621901A (en) 1994-10-31 1997-04-15 Intel Corporation Method and apparatus for serial bus elements of an hierarchical serial bus assembly to electrically represent data and control states to each other
US5715475A (en) 1994-12-29 1998-02-03 Intel Corporation Topological identification and initialization of a system for processing video information
US5832298A (en) 1995-05-30 1998-11-03 Canon Kabushiki Kaisha Adaptive graphical user interface for a network peripheral
US5815678A (en) 1995-07-14 1998-09-29 Adaptec, Inc. Method and apparatus for implementing an application programming interface for a communications bus
US5809249A (en) 1995-09-27 1998-09-15 Texas Instruments Incorporated System having at least one auto-negotiation enabled physical media dependent (PMD) interface device operable to perform auto-negotiation with remote link partner on behalf of all PMD
EP0862826B1 (en) * 1995-11-22 2002-04-03 Samsung Electronics Co., Ltd. Home multimedia network architecture
US5946487A (en) * 1996-06-10 1999-08-31 Lsi Logic Corporation Object-oriented multi-media architecture
US5793366A (en) * 1996-11-12 1998-08-11 Sony Corporation Graphical display of an animated data stream between devices on a bus
US5784275A (en) * 1996-09-23 1998-07-21 National Instruments Corporation System and method for performing interface independent virtual instrumentation functions in a graphical data flow program
US5963726A (en) * 1998-03-20 1999-10-05 National Instruments Corporation Instrumentation system and method including an improved driver software architecture
US6233611B1 (en) * 1998-05-08 2001-05-15 Sony Corporation Media manager for controlling autonomous media devices within a network environment and managing the flow and format of data between the devices

Also Published As

Publication number Publication date
CA2330348A1 (en) 1999-11-18
ES2186360T3 (es) 2003-05-01
US6493753B2 (en) 2002-12-10
EP1076961B1 (en) 2003-01-08
JP2002514879A (ja) 2002-05-21
CN1299546A (zh) 2001-06-13
EP1076961A2 (en) 2001-02-21
EP1217787A3 (en) 2009-03-25
DE69904813T2 (de) 2003-10-02
US20010018718A1 (en) 2001-08-30
US20020087746A1 (en) 2002-07-04
CN100380888C (zh) 2008-04-09
US6496860B2 (en) 2002-12-17
WO1999059072A3 (en) 2000-02-24
AU758533B2 (en) 2003-03-27
CA2330348C (en) 2007-08-07
DE69904813D1 (de) 2003-02-13
ATE230910T1 (de) 2003-01-15
KR20010052284A (ko) 2001-06-25
WO1999059072A2 (en) 1999-11-18
KR100628468B1 (ko) 2006-09-26
EP1217787B1 (en) 2017-03-22
EP1217787A2 (en) 2002-06-26
US6233611B1 (en) 2001-05-15
AU3875099A (en) 1999-11-29

Similar Documents

Publication Publication Date Title
JP3977596B2 (ja) ネットワーク環境内の自律媒体装置を制御し、自律媒体装置間のデータフロー及びデータフォーマットを管理する媒体管理装置
TW406509B (en) A home audio/video network with updatable device control modules
JP4527279B2 (ja) オーディオビデオネットワーク
US6038625A (en) Method and system for providing a device identification mechanism within a consumer audio/video network
JP4721600B2 (ja) ブリッジングする多数のホームネットワークソフトウェアアーキテクチャ
US6349352B1 (en) Home audio/video network with both generic and parameterized device control
EP0929170A2 (en) Methods, systems and apparatus for providing device status information within a communication network
JP2002501238A (ja) オーディオ/ビデオネットワークに関する方法及びシステム
JP2002525732A (ja) 通信方法及び通信システム
JP4571751B2 (ja) 1つまたは複数の1394バスを有するネットワークにおける同報通信ディスカバリー
JP2002506552A (ja) 消費者電子システムの機能の管理
US7284259B1 (en) Transmitting method, transmitting system and transmission control device
CA2583598C (en) Media manager for controlling autonomous media devices within a network environment and managing the flow and format of data between the devices
WO2001020426A2 (en) Methodology for discovering extended capabilities of devices in an electronic network
JP2002538537A (ja) 電子ネットワークにおけるアクティブレジストリ実現システム及び方法
Foss et al. An Open Design and Implementation for the Enabler Component of the Plural Node Architecture of Professional Audio Devices

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061010

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070110

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070123

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070410

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070522

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070621

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100629

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100629

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110629

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120629

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130629

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term