KR101059682B1 - 정보 처리 장치 - Google Patents

정보 처리 장치 Download PDF

Info

Publication number
KR101059682B1
KR101059682B1 KR1020040061743A KR20040061743A KR101059682B1 KR 101059682 B1 KR101059682 B1 KR 101059682B1 KR 1020040061743 A KR1020040061743 A KR 1020040061743A KR 20040061743 A KR20040061743 A KR 20040061743A KR 101059682 B1 KR101059682 B1 KR 101059682B1
Authority
KR
South Korea
Prior art keywords
information
application program
path
devices
program
Prior art date
Application number
KR1020040061743A
Other languages
English (en)
Other versions
KR20050016167A (ko
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 KR20050016167A publication Critical patent/KR20050016167A/ko
Application granted granted Critical
Publication of KR101059682B1 publication Critical patent/KR101059682B1/ko

Links

Images

Classifications

    • 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/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/4147PVR [Personal Video Recorder]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • 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/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42607Internal components of the client ; Characteristics thereof for processing the incoming bitstream
    • H04N21/4263Internal components of the client ; Characteristics thereof for processing the incoming bitstream involving specific tuning arrangements, e.g. two tuners
    • 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/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • 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
    • 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
    • H04N21/4383Accessing a communication channel
    • 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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44227Monitoring of local network, e.g. connection or bandwidth variations; Detecting new devices in the local network
    • 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/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4437Implementing a Virtual Machine [VM]
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/458Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
    • 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/47End-user applications
    • H04N21/485End-user interface for client configuration
    • 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]

Abstract

방송 수신 장치의 디바이스 매니저(2205f)는, 디바이스 매니저(2205f)가 취급하는 디바이스의 종류와 그 수, 그리고 디바이스 단체에 관한 정보를 유지하는 디바이스 기본 정보 관리부(3201), 디바이스와 디바이스를 표현하는 오브젝트의 1대1 대응을 관리하는 디바이스 오브젝트 관리부(3202), 하드웨어 구성 상의 디바이스의 물리 접속 정보를 관리하는 디바이스 물리 접속 관리부(3203), 디바이스의 논리 접속 상태를 관리하는 디바이스 논리 접속 관리부(3204), 디바이스를 논리적으로 접속하는 디바이스 논리 접속부(3205), 및 디바이스의 논리적인 접속의 해제를 행하는 디바이스 논리 접속 해제부(3206)를 구비한다.

Description

정보 처리 장치{INFORMATION PROCESSING APPARATUS}
도 1은 본 발명에 관한 과제를 설명하기 위한 하드웨어 구성도,
도 2는 본 발명에 관한 방송 시스템의 구성도,
도 3은 본 발명에 관한 케이블 텔레비전 시스템에서 방송국측 시스템과 단말장치 사이의 통신에 사용되는 주파수 대역의 사용 방법의 일례,
도 4는 본 발명에 관한 케이블 텔레비전 시스템에서 방송국측 시스템과 단말장치 사이의 통신에 사용되는 주파수 대역의 사용 방법의 일례,
도 5는 본 발명에 관한 케이블 텔레비전 시스템에서 방송국측 시스템과 단말장치 사이의 통신에 사용되는 주파수 대역의 사용 방법의 일례,
도 6은 MPEG2 사양으로 기정되는 TS 패킷의 구성도,
도 7은 MPEG2 트랜스포트 스트림의 모식도,
도 8은 MPEG2 사양으로 기정되는 PES 패킷이 TS 패킷을 이용하여 전송될 때의 분할예,
도 9는 MPEG2 사양으로 기정되는 MPEG2 섹션이 TS 패킷을 이용하여 전송될 때의 분할예,
도 10은 MPEG2 사양으로 기정되는 MPEG2 섹션의 구성도,
도 11은 MPEG2 사양으로 기정되는 MPEG2 섹션의 이용예,
도 12는 본 발명에 관한 방송 수신 장치의 하드웨어 구성의 구성예,
도 13은 본 발명에 관한 단말장치의 하드웨어 구성에서의 입력부의 프론트 패널의 예,
도 14는 본 발명에 관한 방송 수신 장치의 하드웨어 구성의 구성예,
도 15는 본 발명에 관한 방송 수신 장치의 하드웨어 구성의 구성예,
도 16은 본 발명에 관한 방송 수신 장치의 하드웨어 구성의 구성예,
도 17은 본 발명에 관한 방송 수신 장치의 하드웨어 구성예에 존재하는 프론트 패널의 예,
도 18은 본 발명에 관한 방송 수신 장치의 디바이스 접속예,
도 19는 본 발명에 관한 방송 수신 장치의 디바이스 접속예,
도 20은 본 발명에 관한 방송 수신 장치의 디바이스 접속예,
도 21은 본 발명에 관한 방송 수신 장치의 디바이스 접속예,
도 22는 본 발명에 관한 방송 수신 장치의 하드웨어와 소프트웨어의 관계를 도시하는 개념도,
도 23은 본 발명에 관한 단말장치가 보존하는 프로그램 구성의 구성도,
도 24(a), (b)는 본 발명에 관한 단말장치가 실행하는 EPG의 예,
도 25는 본 발명에 관한 2차 기억부가 보존하는 정보의 일례,
도 26(a), (b), (c)는 본 발명에 관한 1차 기억부가 보존하는 정보의 일례,
도 27은 본 발명에 관한 MPEG2 규격이 규정하는 PAT의 내용을 나타내는 모식도,
도 28은 본 발명에 관한 MPEG2 규격이 규정하는 PMT의 내용을 나타내는 모식도,
도 29는 본 발명에 관한 DVB-MHP 규격이 규정하는 AIT의 내용을 나타내는 모식도,
도 30은 본 발명에 관한 DSMCC 방식으로 송신되는 파일 시스템을 나타내는 모식도,
도 31(a), (b), (c), (d)는 본 발명에 관한 디바이스 접속 패스의 구성예,
도 32는 본 발명에 관한 디바이스 접속 패스의 전체 구성예,
도 33은 본 발명의 실시 형태 1에 관한 디바이스 매니저 내의 구성,
도 34는 본 발명에 관한 디바이스 매니저의 디바이스 타입 취득 시퀀스,
도 35는 본 발명에 관한 디바이스 매니저의 디바이스수 취득 시퀀스,
도 36은 본 발명에 관한 디바이스 매니저의 디바이스 오브젝트 취득시의 시퀀스,
도 37은 본 발명에 관한 디바이스 매니저의 디바이스 접속 가능성 취득 시퀀스이다.
도 38은 본 발명에 관한 디바이스 매니저의 디바이스 접속 상태 취득 시퀀스,
도 39는 본 발명에 관한 디바이스 매니저의 디바이스 접속 시퀀스,
도 40은 본 발명에 관한 디바이스 매니저의 디바이스 접속 해제 시퀀스,
도 41은 본 발명에 관한 디바이스 매니저를 이용하는 프로그램의 디바이스 접속 시퀀스,
도 42는 본 발명에 관한 방송 수신 장치의 하드웨어 구성의 구성예,
도 43은 본 발명의 실시 형태 10에서의 디바이스 접속 가능성 취득 시퀀스,
도 44는 본 발명의 실시 형태 11에서의 디바이스 접속 가능성 취득 시퀀스,
도 45는 본 발명의 실시 형태 11에서의 가장 간단한 실장의 디바이스 접속 가능성 취득 시퀀스,
도 46은 본 발명의 실시 형태 19에 관한 프로그램의 디바이스 접속 시퀀스예,
도 47은 본 발명의 실시 형태 22에서의 디바이스 오브젝트 취득시의 시퀀스,
도 48은 본 발명의 실시 형태 25에 관한 다수 프로그램 동작시의 시퀀스,
도 49는 본 발명의 실시 형태 26에 관한 프로그램간의 디바이스 접속 경합이 일어났을 때의 동작 시퀀스,
도 50은 본 발명의 실시 형태 27에 관한 프로그램간의 디바이스 접속 경합이 일어났을 때의 동작 시퀀스,
도 51은 본 발명의 실시 형태 28에 관한 프로그램간의 디바이스 접속 경합이 일어났을 때의 동작 시퀀스,
도 52는 본 발명의 실시 형태 29에 관한 프로그램간의 디바이스 접속 경합이 일어났을 때의 동작 시퀀스이다.
<도면의 주요부분에 대한 부호의 설명>
1800 : 단말장치 1202 : TS 디코더
1801 : 튜너 1802 : PID 필터
1803 : 섹션 필터 1804 : 디스크램블러
1805 : AV 디코더 1806 : 디스플레이/스피커
1807 : 1차 기억부
본 발명은, 프로그램을 실행하는 정보 처리 장치에 관한 것이다. 특히, 방송 수신 장치에서, 방송 수신 장치 고유의 디바이스를 다수 이용하는 프로그램을 실행하는 기구에 관한 것이다.
텔레비전이나 STB(Set Top Box)로 대표되는 방송 수신 장치의 하드웨어 상에서는, 다른 기능을 갖는 다수의 디바이스가, 다른쪽의 출력이 또 한쪽의 입력이 되도록 서로 접속되고, 일련의 “정보 수수 경로”를 형성함으로써 대기능을 실현하는 구성을 채용한다. 예를 들면, 디지털 방송 수신 장치로 영상·음성을 화면에 출력하는 경우를 예로 들면, 하드웨어 상에서는, 방송 신호를 입력으로 하고, 주파수 등의 튜닝 정보를 키로서 필터링하여 MPEG2(Motion Picture Expert Group-2) 트랜스포트 스트림을 출력하는 「튜너 디바이스」, MPEG2 트랜스포트 스트림을 입력으로 하고, 그 중에서 소망의 영상·음성을 전송하는 MPEG2 트랜스포트 스트림 패킷(이하, TS 패킷)을 선별하여, 합치한 TS 패킷이 전송되는, 영상·음성 데이터를 내포하는 PES(Packetized Elementary Stream) 패킷을 출력하는 「TS 디코더 디바이 스」, PES 패킷을 입력으로 하고, PES 패킷이 전송하는 영상·음성 데이터를 디코드하여, 화면 표시 가능한 상태로 출력하는 「AV 디코더 디바이스」가 서술한 순서로 접속되어 일련의 “정보 수수 경로”를 형성하고, 각각의 디바이스가 각각의 기능을 함으로써 영상·음성을 화면에 표시하는 것을 가능하게 하고 있다.
이와 같은 방송 수신 장치에서, 처리를 병렬화하기 위해서, 동일 종류의 디바이스가 다수개 존재하는 경우가 있다. 예를 들면 튜너 디바이스, AV 디코더 디바이스가 2개씩 존재하고, 그것들이 TS 디코더 디바이스에 접속되며, 또한 TS 디코더 디바이스는 다수의 튜너 디바이스, AV 디코더 디바이스에 대해서, 자유로운 조합으로 “정보 수수 경로”를 확립 가능한 능력을 갖는 경우, 튜너 디바이스(A)와 AV 디코더 디바이스의 사이에, TS 디코더 디바이스를 끼워서 “정보 수수 경로 1”을 확립하고, 튜너 디바이스(B)와 AV 디코더 디바이스(B)의 사이에, TS 디코더 디바이스를 끼워서 “정보 수수 경로 2”를 확립하는 것이 가능하다. 이와 같은 경우, “정보 수수 경로 1”과 “정보 수수 경로 2”는, 완전히 서로 독립하여 방송 신호로부터 MPEG2 트랜스포트 스트림을 복조하고, 동시에 다수의 영상·음성 데이터를 디코드하는 것이 가능해져서, 「Picture In Picture(이하, PIP)」라고 불리는, 2종류의 영상·음성을 동시에 한 화면에 표시하는 기능을 실현하는 것이 가능해진다. 이와 같은 기기에서는, 항상 PIP를 실현할 필요가 있는 것이 아니라, 통상, 유저의 리모콘 입력 등에 의해, 단일 영상의 화면 표시와 PIP 표시를 전환할 수 있게 되어 있다. 그와 같은 경우에서의 각 디바이스의 이용 수법의 대표예로서「일본국 특개평 8-289220호 공보」를 들 수 있다. 이 발명은 2개의 튜너 디바이 스, 1개의 AV 디코더, 1개의 PIP 데이터 처리 디바이스를 갖는 방송 수신 장치에서의 PIP의 실현 방법을 고안하고 있다. 이 발명에서는, 2개의 튜너를「메인 튜너」,「삽입 화면용 튜너」라고 위치를 부여하고, PIP 표시시에는「삽입 화면용 튜너」를 이용함으로써 이미 선택이 완료된 영상·음성을 화면 전역에 표시한 채로, 선택 후보의 영상·음성을 화면 상의 지정 영역으로 출력하는 것을 가능하게 하고 있다.
현재, DVB-MHP(Digital Video Broadcasting-Multimedia Home Platform)라고 불리는, 방송 수신 장치 상에서 어플리케이션을 동작시키기 위한 사양이 유럽에서 정의되어, 이미 운용이 개시되고 있다. 한편, 미국에서는 DVB-MHP 사양을 베이스로 하여 OCAP(OpenCable Application Platform) 사양을 책정 중에 있고, 2005년도 내에 운용이 개시될 예정이다. 또, 그 외의 각국에서도 동일한 사양의 책정, 운용이 진행되고 있다. 이와 같은 어플리케이션 실행 사양에 준거하는 방송 수신 장치는, 방송 신호로부터 다운로드하는 등의 수법을 이용하여 입수한 프로그램을 실행하는 기능을 구비하고 있다. 이와 같은 프로그램의 대표예로서 게임이나 EPG(Electrical Program Guide) 어플리케이션을 들 수 있다.
프로그램을 실행할 수 있는 방송 수신 장치 상에서 실행되는 프로그램으로서, 전술한 PIP나 고기능 EPG 등, 다수의 영상·음성을 동시에 한 화면에 표시하는 어플리케이션은 당연히 상정된다. 한 화면에 다수의 영상·음성을 동시에 출력하기 위해서는, 전술한 특허에 기재되는 예로 대표되는 바와 같이, 다수 디바이스의 제어, 특히 각 디바이스의 “정보 수수 경로”의 설정을 적절히 행할 필요가 있다. OCAP/DVB-MHP API(Application Program Interface)에는, 튜너 디바이스, TS 디코더 디바이스, AV 디코더 디바이스 등을 개별적으로 조작하기 위한 기능이 이미 구비되어 있고, 이와 같은 어플리케이션을 실장하는 것은 현재 상태로는 불가능하지 않다. 그러나, 현재 상태의 사양에는 각 디바이스끼리의 “정보 수수 경로”를 설정하기 위한 기능은 존재하지 않는다. 예를 들면 다수 존재하는 튜너 디바이스 중의 튜너 디바이스(A)와, 다수 존재하는 TS 디코더 디바이스 중의 어느 TS 디코더 디바이스(B)의 사이에 “정보 수수 경로”를 확립한다는 지정을 행하는 것은 불가능하다. OCAP/DVB-MHP에서는, 예를 들면 영상·음성을 출력할 때, 우선 튜너 디바이스에 주파수 등의 튜닝 정보를 부여하고, 출력하고 싶은 영상·음성을 전송하는 MPEG2 트랜스포트 스트림을 복조하도록 설정한다. 다음에 AV 디코더에 출력하고 싶은 영상·음성의 식별자를 설정한다. 그렇게 하면, 방송 수신 장치의 OS에 탑재되는 기능을 이용하여 OCAP/DVB-MHP 사양에 미리 정해진 기능을 실현하는“미들웨어”라고 불리는 프로그램(이후, OCAP/DVB-MHP 미들웨어)은, AV 디코더에 지정된 식별자가 가리키는 영상·음성을 포함하는 MPEG2 트랜스포트 스트림을 출력하는 튜너 디바이스를, 방송 수신 장치 내에서 탐색한다. 만일 존재하면 그 2개의 디바이스에 대해서, TS 디코더를 끼워서 “정보 수수 경로”를 암묵적으로 확립한다.
이와 같은 사양은, 프로그램을 디바이스 관리에 관한 번잡한 처리로부터 해방하고 있고, 일견하면 프로그램에 있어서 유익하다고 생각할 수 있다. 그러나, 반대의 관점에서는, 미들웨어가 “정보 수수 경로”의 확립을 암묵적으로 행하고 있기 때문에, 프로그램이 “정보 수수 경로”의 관리를 행할 수 없는 것을 의미한 다. 예를 들면 도 1에서 나타내는 하드웨어 구성을 생각할 수 있다. 도 1에서 나타내는 것은 튜너가 2개(튜너(101a) 및 튜너(101b)), AV 디코더가 2개(AV 디코더(103a) 및 AV 디코더(103b)) 존재하고, 그것들이 TS 디코더(102)에 의해서 접속된다는 구조를 갖는 디지털 방송 수신 장치이다. 본 하드웨어 상에서 PIP 프로그램을 동작시키는 것을 생각할 수 있다. 도 1에서는, 하드웨어 상에는 튜너 2개, AV 디코더 2개가 존재하기 때문에, 그 모두를 점유하여 튜너(101a)와 AV 디코더(103a) 사이 및 튜너(101b)와 AV 디코더(103b) 사이에, TS 디코더(102)를 통해서 2개의 “정보 수수 경로”를 확립해 버리면, 2개의 영상을 완전히 독립하여 변경 가능한 PIP 프로그램이 실현 가능하다. 그러나, 현재의 OCAP/DVB-MHP 미들웨어에는 디바이스간의 “정보 수수 경로”를 확립하는 기능은 존재하지 않고, AV 디코더는, PIP 프로그램이 영상과 음성을 지정하여 디코드 요구를 발행한 시점에서, 그 영상과 음성을 포함하는 MPEG2 트랜스포트 스트림을 복조하고 있는 튜너와의 사이에, TS 디코더를 통해서 “정보 수수 경로”가 암묵적으로 확립된다. 그 때문에, 예를 들면, 동일한 MPEG2 트랜스포트 스트림 내의 영상 음성에 대한 디코드 요구를 2개의 AV 디코더에 대해서 발행한 경우, 2개의 AV 디코더와 동일 튜너의 사이에 “정보 수수 경로”가 확립되어 버리는 경우가 있을 수 있다. 도 1의 예에서 말하면, 튜너(101a)와 AV 디코더(103a) 사이 및, 튜너(101a)와 AV 디코더(103b) 사이에 TS 디코더(102)를 통해서 “정보 수수 경로”가 설정된다. 그와 같은 경우에서, 또한 OCAP/DVB-MHP 미들웨어의 실장이, 한번 확립된 AV 디코더와 튜너 사이의 “정보 수수 경로”를 계속 유지하고, 그 이후 발행되는 AV 디코더에 대한 디코드 요구에 대 해서는, 최초로 확립한 “정보 수수 경로”를 이용하는 것인 경우, PIP 프로그램은 그 이후 1개의 튜너밖에 이용할 수 없게 되어 버려서, 2개의 AV 디코더는 동일 MPEG2 트랜스포트 스트림 내의 영상밖에 동시에 디코드할 수 없게 된다.
이와 같이 암묵적인 디바이스간의 “정보 수수 경로”의 확립을 미들웨어에 재촉하는 수법은, 프로그램의 디바이스 제어에 관한 부담을 경감하는 동시에, 디바이스 관리에 관한 유연성을 감소시킨다. 또한, 상기 도 1을 이용한 예에 나타내는 바와 같이, 프로그램 동작의 미들웨어 실장에 대한 의존성을 높여 버리기 때문에, 동작이 환경마다 다르다는 불안정성의 원인이 될 가능성이 있다.
그래서, 본 발명은 상기의 사정을 감안하여 이루어진 것으로, 프로그램(어플리케이션 프로그램)으로부터 디바이스간의 정보 수수 경로의 설정을 제어할 수 있는 정보 처리 장치를 제공하는 것을 목적으로 한다.
상기 목적을 달성하기 위해서, 본 발명에 관한 정보 처리 장치는, 소정의 기능을 실행하는 디바이스를 다수 구비하는 정보 처리 장치에 있어서, 프로그램을 실행하는 프로그램 실행 수단과, 상기 디바이스에 관한 정보를 관리하는 동시에, 상기 디바이스간에 정보 수수 경로를 설정하는 디바이스 관리 수단을 구비하고, 상기 디바이스 관리 수단은, 상기 프로그램 실행 수단에 의해 실행되는 프로그램으로부터의 요구에 기초하여, 상기 디바이스간에 정보 수수 경로를 설정하는 정보 경로 설정부를 구비하는 것을 특징으로 한다.
이것에 의해서, 프로그램 실행 수단에 의해 실행되는 프로그램은, 하드웨어 상의 정보 수수 경로를 설정하는 것이 가능하다.
여기에서, 상기 디바이스 관리 수단은, 또한, 상기 프로그램 실행 수단에 의해 실행되는 프로그램으로부터의 요구에 기초하여, 상기 디바이스를 식별하기 위한 디바이스 식별자를 상기 프로그램으로 통지하는 디바이스 식별자 통지부를 구비하고, 상기 정보 경로 설정부는, 상기 프로그램에 의해서 상기 디바이스 식별자를 다수 이용하여 지정된 디바이스 사이에, 지정된 순서로 정보 수수 경로를 설정해도 된다.
또, 상기 정보 경로 설정부는, 상기 프로그램에 의해서 상기 디바이스 식별자를 2개 이용하여 2개의 디바이스가 지정된 경우, 지정된 디바이스 사이에 정보 수수 경로를 설정해도 된다.
또, 상기 정보 경로 설정부는, 상기 프로그램에 의해서 상기 디바이스 식별자를 2개 이상 이용하여 2개 이상의 디바이스가 지정된 경우, 지정된 순서로, 지정된 디바이스 사이에 정보 수수 경로를 설정해도 된다.
이것에 의해서, 프로그램은, 디바이스를 지정하여, 하드웨어 상의 정보 수수 경로를 상세하게 설정하는 것이 가능하다.
또, 상기 디바이스 식별자 통지부는, 상기 프로그램에 의해서 지정된 종류의 디바이스에 대응하는 디바이스 식별자를 상기 프로그램으로 통지해도 된다.
이것에 의해서, 프로그램은 자신이 이용하고 싶은 디바이스의 종류에 합치하는 디바이스의 디바이스 식별자만을 취득하는 것이 가능해진다.
또, 상기 디바이스 식별자 통지부는, 상기 프로그램에 의해서 지정된 디바이 스 식별자로 특정되는 디바이스와의 사이에, 정보 수수 경로를 설정 가능한 모든 디바이스에 대응하는 디바이스 식별자를 상기 프로그램으로 통지해도 된다.
이것에 의해서, 프로그램은 지정한 디바이스와의 사이에 정보 수수 경로를 설정 가능한 디바이스를 나ㄴㄴ타내는 디바이스 식별자를 취득하는 것이 가능해진다.
또, 상기 디바이스 식별자 통지부는, 상기 프로그램에 의해서 지정된 디바이스 식별자로 특정되는 디바이스와의 사이에, 정보 수수 경로가 설정되어 있는 모든 디바이스에 대응하는 디바이스 식별자를 상기 프로그램으로 통지해도 된다.
이것에 의해서, 프로그램은 지정한 디바이스와의 사이에 이미 정보 수수 경로가 설정되어 있는 디바이스를 나타내는 디바이스 식별자를 취득하는 것이 가능해진다.
또, 상기 디바이스 식별자 통지부는, 상기 프로그램에 의해서 지정된 디바이스 식별자로 특정되는 디바이스와의 사이에, 정보 수수 경로를 설정 가능하고, 또한 아직 정보 수수 경로의 일부로 되어 있지 않은 디바이스에 대응하는 디바이스 식별자를 상기 프로그램으로 통지해도 된다.
이것에 의해서, 프로그램은 지정한 디바이스와 즉시 정보 수수 경로를 설정 가능한 디바이스를 나타내는 디바이스 식별자를 취득하는 것이 가능해진다.
또, 상기 디바이스 관리 수단은, 또한, 상기 프로그램에 의해서 지정된 디바이스 식별자로 특정되는 디바이스가, 다수의 정보 수수 경로에 포함되는 것의 여부를 상기 프로그램으로 통지하는 디바이스 공유 여부 통지부를 구비해도 된다.
이것에 의해서, 프로그램은 지정한 디바이스가 다수의 정보 수수 경로에 포함될 수 있는지의 여부의 판정 결과를 취득하는 것이 가능해진다.
여기에서, 상기 디바이스 공유 여부 통지부는, 상기 디바이스가 포함될 수 있는 정보 수수 경로의 최대수를 통지함으로써, 상기 여부를 상기 프로그램으로 통지해도 된다.
이것에 의해서, 프로그램은 지정한 디바이스가 포함될 수 있는 정보 수수 경로의 수를 취득하는 것이 가능해지고, 또한, 디바이스가 다수의 정보 수수 경로에 포함될 수 있는지의 여부의 판정을 행하는 것이 가능해진다.
또, 상기 디바이스 관리 수단은, 또한, 상기 프로그램에 의해서 지정된, 다수의 상기 디바이스에 의해 실현되는 대기능을 나타내는 기능 식별자에 기초하여, 상기 대기능을 실현하기 위해서 필요한 디바이스를 특정하는 기능 해석부를 구비하고, 상기 정보 경로 설정부는, 상기 기능 해석부에 의해서 특정된 상기 디바이스 사이에 정보 수수 경로를 설정해도 된다.
이것에 의해서, 개별의 디바이스를 지정하지 않고 정보 수수 경로를 설정하는 것이 가능하다.
또, 상기 프로그램은, 상기 디바이스 관리 수단에 대해서 요구를 행하였을 때에는, 상기 디바이스 관리 수단으로부터의 응답을 받아서, 동기하여 처리를 재개해도 된다.
이것에 의해서, 프로그램 실행 수단에 의해 실행되는 프로그램은, 정보 경로 설정 처리의 종료 타이밍을 용이하게 아는 것이 가능해진다.
또, 상기 프로그램은, 상기 디바이스 관리 수단에 대해서 요구를 행하였을 때에는, 상기 디바이스 관리 수단으로부터의 응답에 관계없이, 비동기적으로 처리를 실행해도 된다.
이것에 의해서, 프로그램 실행 수단에 의해 실행되는 프로그램은, 정보 처리 장치가 정보 경로 설정 처리를 행하는 사이에도, 자신의 다른 처리를 진행시키는 것이 가능하다.
또, 상기 정보 경로 설정부는, 상기 프로그램에 의해서 지정된 다수의 디바이스 중 어느 하나가, 이미 다른 정보 수수 경로의 일부로서 설정되어 있었던 경우, 새로운 정보 수수 경로를 설정하지 않아도 된다.
이것에 의해서, 이미 설정된 정보 수수 경로를 의도하지 않은 변경으로부터 보호하는 것이 가능해진다.
또, 상기 정보 경로 설정부는, 상기 프로그램에 의해서 지정된 다수의 디바이스 사이에 정보 수수 경로를 설정하는 것에 성공하였는지 실패하였는지를 나타내는 처리 결과를 상기 프로그램으로 통지해도 된다.
이것에 의해서, 프로그램 실행 수단에 의해 실행되는 프로그램은, 정보 수수 경로의 처리 결과를 얻는 것이 가능해진다.
또, 상기 정보 경로 설정부는, 상기 프로그램에 의해서 지정된 다수의 디바이스 사이에 정보 수수 경로를 설정하는 것에 실패한 경우, 실패의 이유를 상기 프로그램으로 통지해도 된다.
이것에 의해서, 프로그램 실행 수단에 의해 실행되는 프로그램은, 정보 수수 경로의 설정 처리가 실패한 이유를 취득하는 것이 가능해진다.
또, 상기 디바이스 관리 수단은, 또한, 상기 프로그램 실행 수단에 의해 실행되는 프로그램으로부터의 요구에 기초하여, 상기 디바이스 사이에 설정된 정보 수수 경로를 설정 해제하는 정보 경로 해제부를 구비해도 된다.
이것에 의해서, 프로그램은, 설정한 정보 수수 경로를 해제하는 것이 가능하다.
여기에서, 상기 디바이스 관리 수단은, 또한, 상기 프로그램 실행 수단에 의해 실행되는 프로그램으로부터의 요구에 기초하여, 상기 디바이스를 식별하기 위한 디바이스 식별자를 상기 프로그램으로 통지하는 디바이스 식별자 통지부를 구비하고, 상기 정보 경로 해제부는, 상기 프로그램에 의해서 상기 디바이스 식별자를 다수 이용하여 지정된 디바이스 사이에, 지정된 순서로 설정된 정보 수수 경로를 설정 해제해도 된다.
또, 상기 정보 경로 해제부는, 상기 프로그램에 의해서 상기 디바이스 식별자를 2개 이용하여 2개의 디바이스가 지정된 경우, 지정된 디바이스 사이에 설정된 정보 수수 경로를 설정 해제해도 된다.
또, 상기 정보 경로 해제부는, 상기 프로그램에 의해서 상기 디바이스 식별자를 2개 이상 이용하여 2개 이상의 디바이스가 지정된 경우, 2개 이상의 상기 디바이스 사이에 지정된 순서로 설정된 정보 수수 경로를 설정 해제해도 된다.
이것에 의해서, 프로그램은, 디바이스를 지정하여, 설정한 정보 수수 경로를 해제하는 것이 가능하다.
또, 상기 디바이스 관리 수단은, 또한, 상기 프로그램에 의해서 지정된, 다수의 상기 디바이스에 의해 실현되는 대기능을 나타내는 기능 식별자에 기초하여, 상기 대기능을 실현하기 위해서 필요한 디바이스를 특정하는 기능 해석부를 구비하고, 상기 정보 경로 해제부는, 상기 기능 해석부에 의해서 특정된 상기 디바이스 사이에 설정된 정보 수수 경로를 설정 해제해도 된다.
이것에 의해서, 개별의 디바이스를 지정하지 않고, 설정된 정보 수수 경로를 해제하는 것이 가능하다.
또, 상기 정보 경로 해제부는, 상기 프로그램에 의해서 지정된 다수의 디바이스 사이에 설정된 정보 수수 경로를 설정 해제하는 것에 성공하였는지 실패하였는지를 나타내는 처리 결과를 상기 프로그램으로 통지해도 된다.
이것에 의해서, 프로그램은, 정보 수수 경로의 해제 처리 결과를 얻는 것이 가능해진다.
또, 상기 정보 경로 해제부는, 상기 프로그램에 의해서 지정된 다수의 디바이스 사이에 설정된 정보 수수 경로를 설정 해제하는 것에 실패한 경우, 실패의 이유를 상기 프로그램으로 통지해도 된다.
이것에 의해서, 프로그램은, 정보 수수 경로의 해제 처리가 실패한 이유를 취득하는 것이 가능해진다.
또, 상기 디바이스 관리 수단은, 또한, 상기 프로그램 실행 수단에 의해 실행되는 프로그램으로부터의 요구에 기초하여, 상기 정보 처리 장치 상에 존재하는 상기 디바이스의 수를 상기 프로그램으로 통지하는 디바이스수 통지부를 구비해도 된다.
이것에 의해서, 프로그램은, 정보 처리 장치 상에 존재하는 디바이스의 수를 취득하는 것이 가능해진다.
또, 상기 디바이스수 통지부는, 상기 프로그램에 의해서 지정된 상기 디바이스의 종류에 대응하는 디바이스의 수를 상기 프로그램으로 통지해도 된다.
이것에 의해서, 프로그램은, 자신이 이용하고 싶은 디바이스의 종류에 합치하는 디바이스의 수를 취득하는 것이 가능해진다.
또, 상기 디바이스 관리 수단은, 또한, 상기 프로그램 실행 수단에 의해 실행되는 프로그램으로부터의 요구에 기초하여, 상기 디바이스 사이에 정보 수수 경로를 설정하는 것이 가능한지의 여부를 상기 프로그램으로 통지하는 경로 설정 여부 통지부를 구비해도 된다.
이것에 의해서, 프로그램은, 정보 수수 경로를 설정하는 것이 가능한지의 여부의 판단을 사전에 얻는 것이 가능해진다.
여기에서, 상기 디바이스 관리 수단은, 또한, 상기 프로그램 실행 수단에 의해 실행되는 프로그램으로부터의 요구에 기초하여, 상기 디바이스를 식별하기 위한 디바이스 식별자를 상기 프로그램으로 통지하는 디바이스 식별자 통지부를 구비하고, 상기 경로 설정 여부 통지부는, 상기 프로그램에 의해서 상기 디바이스 식별자를 다수 이용하여 지정된 디바이스 사이에, 지정된 순서로 정보 수수 경로를 설정하는 것이 가능한지의 여부를 상기 프로그램으로 통지해도 된다.
이것에 의해서, 프로그램은, 디바이스를 지정하여, 정보 수수 경로를 설정하 는 것이 가능한지의 여부의 판단을 사전에 취득하는 것이 가능해진다.
또, 상기 경로 설정 여부 통지부는, 상기 프로그램에 의해서 상기 디바이스 식별자를 2개 이용하여 2개의 디바이스가 지정된 경우, 지정된 디바이스 사이에 정보 수수 경로를 설정하는 것이 가능한지의 여부를 상기 프로그램으로 통지해도 된다.
이것에 의해서, 프로그램은, 2개의 디바이스 사이에 정보 수수 경로를 설정하는 것이 가능한지의 여부의 판단을 취득하는 것이 가능해진다.
또, 상기 경로 설정 여부 통지부는, 상기 프로그램에 의해서 상기 디바이스 식별자를 2개 이상 이용하여 2개 이상의 디바이스가 지정된 경우, 지정된 순서로, 지정된 디바이스 사이에 정보 수수 경로를 설정하는 것이 가능한지의 여부를 상기 프로그램으로 통지해도 된다.
이것에 의해서, 프로그램은, 2개 이상의 디바이스 사이에 정보 수수 경로를 설정하는 것이 가능한지의 여부의 판단을 취득하는 것이 가능해진다.
또, 상기 디바이스 관리 수단은, 또한, 상기 프로그램에 의해서 지정된, 다수의 상기 디바이스에 의해 실현되는 대기능을 나타내는 기능 식별자에 기초하여, 상기 대기능을 실현하기 위해서 필요한 디바이스를 특정하는 기능 해석부를 구비하고, 상기 경로 설정 여부 통지부는, 상기 기능 해석부에 의해서 특정된 상기 디바이스 사이에 정보 수수 경로를 설정하는 것이 가능한지의 여부를 상기 프로그램으로 통지해도 된다.
이것에 의해서, 개별의 디바이스를 지정하지 않고, 필요한 정보 수수 경로를 설정하는 것이 가능한지의 여부의 판단을 취득하는 것이 가능하다.
또, 상기 디바이스 관리 수단은, 또한, 상기 프로그램 실행 수단에 의해 실행되는 프로그램으로부터의 요구에 기초하여, 상기 디바이스 사이에 정보 수수 경로가 설정되어 있는지의 여부를 상기 프로그램으로 통지하는 경로 상태 통지부를 구비해도 된다.
이것에 의해서, 프로그램은, 디바이스 사이에 이미 정보 수수 경로가 설정되어 있는지의 여부의 판단을 취득하는 것이 가능해진다.
여기에서, 상기 디바이스 관리 수단은, 또한, 상기 프로그램 실행 수단에 의해 실행되는 프로그램으로부터의 요구에 기초하여, 상기 디바이스를 식별하기 위한 디바이스 식별자를 상기 프로그램으로 통지하는 디바이스 식별자 통지부를 구비하고, 상기 경로 상태 통지부는, 상기 프로그램에 의해서 상기 디바이스 식별자를 다수 이용하여 지정된 디바이스 사이에, 지정된 순서로 정보 수수 경로가 설정되어 있는지의 여부를 상기 프로그램으로 통지해도 된다.
이것에 의해서, 프로그램은, 디바이스를 지정하여, 디바이스 사이에 이미 정보 수수 경로가 설정되어 있는지의 여부의 판단을 취득하는 것이 가능해진다.
또, 상기 경로 상태 통지부는, 상기 프로그램에 의해서 상기 디바이스 식별자를 2개 이용하여 2개의 디바이스가 지정된 경우, 지정된 디바이스 사이에 정보 수수 경로가 설정되어 있는지의 여부를 상기 프로그램으로 통지해도 된다.
이것에 의해서, 프로그램은, 2개의 디바이스 사이에 이미 정보 수수 경로가 설정되어 있는지의 여부의 판단을 취득하는 것이 가능해진다.
또, 상기 경로 상태 통지부는, 상기 프로그램에 의해서 상기 디바이스 식별자를 2개 이상 이용하여 2개 이상의 디바이스가 지정된 경우, 지정된 순서로, 지정된 디바이스 사이에 정보 수수 경로가 설정되어 있는지의 여부를 상기 프로그램으로 통지해도 된다.
이것에 의해서, 프로그램은, 2개 이상의 디바이스 사이에 이미 정보 수수 경로가 설정되어 있는지의 여부의 판단을 취득하는 것이 가능해진다.
또, 상기 디바이스 관리 수단은, 또한, 상기 프로그램에 의해서 지정된, 다수의 상기 디바이스에 의해 실현되는 대기능을 나타내는 기능 식별자에 기초하여, 상기 대기능을 실현하기 위해서 필요한 디바이스를 특정하는 기능 해석부를 구비하고, 상기 경로 설정 여부 통지부는, 상기 기능 해석부에 의해서 특정된 상기 디바이스 사이에 정보 수수 경로가 설정되어 있는지의 여부를 상기 프로그램으로 통지해도 된다.
이것에 의해서, 개별의 디바이스를 지정하지 않고, 필요한 디바이스 사이에 이미 정보 수수 경로가 설정되어 있는지의 여부의 판단을 취득하는 것이 가능해진다.
또, 상기 정보 경로 설정부는, 상기 프로그램 실행 수단에 의해 실행되는 다수의 프로그램에 의해서, 동일한 디바이스를 포함하는 정보 수수 경로의 설정이 요구된 경우, 항상 먼저 요구된 정보 수수 경로를 우선하여 설정해도 된다.
이것에 의해서, 다수 프로그램 사이의 디바이스의 경합을 해결하는 것이 가능해진다.
또, 상기 프로그램 실행 수단은, 다수의 프로그램 사이에서 우선도를 관리하여, 상기 우선도를 이용하여 프로그램의 우선도 비교를 행해도 된다.
이것에 의해서, 다수 프로그램 사이에서 디바이스의 경합이 발생하였을 때에, 보다 높은 우선도를 갖는 프로그램에 디바이스의 사용권을 갖게 한다는 정합성이 취해진 디바이스 관리를 행하는 것이 가능해진다.
또, 상기 정보 경로 설정부는, 상기 프로그램 실행 수단에 의해 실행되는 다수의 프로그램에 의해서, 동일한 디바이스를 포함하는 정보 수수 경로의 설정이 요구된 경우, 항상 우선도가 높은 프로그램의 정보 수수 경로를 우선하여 설정해도 된다.
이것에 의해서, 다수 프로그램 사이에서 디바이스의 경합이 발생하였을 때에, 보다 높은 우선도를 갖는 프로그램이 우선적으로 정보 수수 경로를 설정하는 것이 가능해진다.
또, 상기 정보 경로 설정부는, 상기 정보 수수 경로의 설정 후, 보다 높은 우선도를 갖는 다른 프로그램에 의해서, 상기 정보 수수 경로에 설정한 디바이스를 포함하는 정보 수수 경로의 설정이 요구된 경우, 상기 다른 프로그램에 의해서 요구된 정보 수수 경로를 설정하는 동시에, 최초의 정보 수수 경로를 요구한 프로그램으로 그 취지를 통지해도 된다.
이것에 의해서, 최초의 정보 수수 경로를 요구한 우선도가 낮은 프로그램은, 정보 수수 경로 내의 디바이스가 빼앗긴 것을 아는 것이 가능해진다.
또, 상기 정보 경로 설정부는, 상기 최초의 정보 수수 경로에 포함되고, 또 한 상기 다른 프로그램에 의해서 요구된 정보 수수 경로를 구성하고 있었던 디바이스가, 재차 이용 가능하게 된 경우, 상기 디바이스가 재이용 가능한 취지를 최초의 정보 수수 경로를 요구한 프로그램으로 통지해도 된다.
이것에 의해서, 최초의 정보 수수 경로를 요구한 우선도가 낮은 프로그램은, 빼앗긴 디바이스가 재이용 가능하게 된 것을 아는 것이 가능해진다.
또, 상기 정보 경로 설정부는, 상기 최초의 정보 수수 경로에 포함되고, 또한 상기 다른 프로그램에 의해서 요구된 정보 수수 경로를 구성하고 있었던 디바이스가, 재차 이용 가능하게 된 경우, 상기 최초의 정보 수수 경로를 재설정하여, 상기 최초의 정보 수수 경로를 요구한 프로그램으로 재설정을 통지해도 된다.
이것에 의해서, 최초의 정보 수수 경로를 요구한 우선도가 낮은 프로그램은, 빼앗긴 디바이스가 재이용 가능하게 되어, 정보 수수 경로가 재설정된 것을 아는 것이 가능해진다.
또, 상기 디바이스 관리 수단은, 상기 프로그램으로부터의 요구에 의해 상기 디바이스를 제어하는 동시에, 상기 프로그램으로부터의 요구에 의해 상기 디바이스에 관한 정보를 상기 프로그램으로 통지하는 것이 바람직하다.
즉, 상기 디바이스 관리 수단은, 미들웨어이고, 프로그램 실행 수단에 의해 실행되는 프로그램으로부터 디바이스 사이의 정보 수수 경로의 설정을 제어할 수 있다.
또한, 본 발명은, 이와 같은 정보 처리 장치로서 실현할 수 있을 뿐만 아니라, 이와 같은 정보 처리 장치가 포함하는 특징적인 수단을 단계로서 포함하는 정 보 처리 방법으로서 실현하거나, 그들의 단계를 컴퓨터에 실행시키는 프로그램으로서 실현하거나 할 수도 있다. 그리고, 그와 같은 프로그램은, CD-ROM 등의 기록매체나 인터넷 등의 전송매체를 통해서 배송할 수 있는 것은 말할 필요도 없다.
이상의 설명으로부터 명확하게 알 수 있는 바와 같이, 본 발명에 관한 정보 처리 장치에 의하면, 프로그램(어플리케이션 프로그램)으로부터 디바이스 사이의 정보 수수 경로의 설정을 제어할 수 있다.
(실시 형태 1)
본 발명은, 대상이 되는 방송 시스템으로서, 위성 시스템, 지상파 시스템, 케이블 시스템의 3종류의 운용 형태를 상정한다. 위성 시스템은 위성을 이용하여 방송 신호를 방송 수신 장치에 전송하는 형태, 지상파 시스템은 지상파 신호 송출 장치를 이용하여 방송 신호를 방송 수신 장치에 전송하는 형태, 케이블 시스템은 케이블 헤드엔드를 이용하여 방송 신호를 방송 수신 장치에 전송하는 형태이다. 본 발명은 각 방송 시스템의 차이와 직접적인 관계를 갖지 않기 때문, 방송 시스템에 관계없이 적용 가능하다.
본 발명에 관한 방송 시스템의 실시 형태를, 도면을 참조하면서 설명한다. 도 2는, 방송 시스템을 구성하는 장치의 관계를 나타낸 블록도이고, 방송국측 시스템(201) 및 3개의 단말장치(A211), 단말장치(B212), 단말장치(C213)로 구성된다. 방송국측 시스템∼각 단말장치 사이의 결합(221)에 대해서는 유선/무선의 양 경우가 존재한다. 예를 들면, 케이블 시스템에서는, 방송국측 시스템∼각 단말장치 사 이는 유선으로 결합된다. 한편, 위성/지상파 시스템에서의 방송국측 시스템∼각 단말장치 사이에는, 하측(방송국측 시스템으로부터 각 단말장치로) 방향에는 유선 결합은 존재하지 않고, 방송 신호는 전파를 이용하여 전송된다. 상측(각 단말장치로부터 방송국측 시스템으로) 방향에 대해서는 전화 회선, 유선 인터넷 등을 이용한 유선 결합, 무선 통신을 이용한 무선 결합의 양 경우가 있고, 각 단말장치는 유저 입력 등의 정보를 방송국측 시스템으로 송신한다. 본 실시 형태에서는, 1개의 방송국측 시스템에 대해서 3개의 단말장치가 결합되어 있지만, 임의의 수의 단말장치를 방송국측 시스템에 결합해도, 본 발명은 적용 가능하다.
방송국측 시스템(201)은, 다수의 단말장치에 대해서 영상·음성·데이터 방송용 데이터 등의 정보를 방송 신호에 포함시켜서 송신한다. 방송 신호는 방송 시스템의 운용 기정이나, 방송 시스템이 운용되는 나라·지역의 법률에 의해 정해진 주파수 대역 내의 주파수를 이용하여 전송된다.
예로서, 케이블 시스템에 관한 방송 신호 전송 기정이 예를 나타낸다. 본 예에 나타내는 케이블 시스템에서는, 방송 신호 전송에 이용되는 주파수 대역은, 그 데이터의 내용과 전송 방향(상측, 하측)에 대해서, 분할하여 이용된다. 도 3은, 주파수 대역의 분할의 일례를 나타내는 표이다. 주파수 대역은, Out Of Band(약칭 OOB)와 In-Band의 2종류로 크게 구별된다. 5∼130㎒가 OOB에 할당되고, 주로 방송국측 시스템(201)과 단말장치(A211), 단말장치(B212), 단말장치(C213) 사이의 데이터의 교환에 사용된다. 130㎒∼864㎒는 In-Band에 할당되고, 주로, 영상·음성을 포함하는 방송 채널에 사용된다. OOB에서는 QPSK 변조 방식이, In-Band는 QAM64 또는 QAM256 변조 방식이 사용된다. 변조 방식 기술에 대해서는, 본 발명에 관여가 약한 공지 기술이기 때문에, 상세한 설명은 생략한다. 도 4는, OOB 주파수 대역의 더욱 상세한 사용의 일례이다. 70㎒∼74㎒는 방송국측 시스템(201)으로부터의 데이터 송신에 사용되고, 모든 단말장치(A211), 단말장치(B212), 단말장치(C213)가, 방송국측 시스템(201)으로부터 동일 데이터를 수취하게 된다. 한편, 10.0㎒∼10.1㎒는 단말장치(A211)로부터 방송국측 시스템(201)으로의 데이터 송신에 사용되고, 10.1㎒∼10.2㎒는 단말장치(B212)로부터 방송국측 시스템(201)으로의 데이터 송신에 사용되며, 10.2㎒∼10.3㎒는 단말장치(C213)로부터 방송국측 시스템(201)으로의 데이터 송신에 사용된다. 이것에 의해, 각 단말장치 고유의 데이터를 각 단말장치(A211), 단말장치(B212), 단말장치(C213)로부터 방송국측 시스템(201)에 송신할 수 있다. 도 5는, In-Band의 주파수대에 대한 사용의 일례이다. 150∼156㎒와 156∼162㎒는 각각 텔레비전 채널(1)과 텔레비전 채널(2)에 할당되고, 이후, 6㎒ 간격으로 텔레비전 채널이 할당되어 있다. 310㎒ 이후는, 1㎒ 단위로 라디오 채널에 할당되어 있다. 이들의 각 채널은 아날로그 방송으로서 사용해도 디지털 방송으로서 사용해도 된다. 디지털 방송의 경우에는, MPEG2 사양에 기초한 TS 패킷 형식으로 전송되고, 음성이나 영상에 더하여, 각종 데이터 방송용 데이터도 송신할 수 있다.
방송국측 시스템(201)은, 이들의 주파수 대역을 이용하여 단말장치에 적절한 방송 신호를 송신하기 위해서, QPSK 변조부나 QAM 변조부 등을 갖는다. 또, 단말장치로부터의 데이터를 수신하기 위해서, QPSK 복조기를 갖는다. 또, 방송국측 시 스템(201)은, 이들 변조부 및 복조부에 관련되는 다양한 기기를 갖는다고 생각된다. 그러나, 본 발명은 주로 단말장치에 관한 것이기 때문에, 상세한 설명은 생략한다.
단말장치(A211), 단말장치(B212), 단말장치(C213)는, 방송국측 시스템(201)으로부터의 방송 신호를 수신하여 재생한다. 또, 방송국측 시스템(201)에 대해서, 각 단말장치 고유의 데이터를 송신한다. 3개의 단말장치는, 본 실시 형태에서는 동일 구성을 취한다.
또한, 본 예에서는 케이블 시스템 운용에 관한 일례의 상세를 소개하고 있지만, 본 발명은 위성, 지상파 시스템 및 케이블 시스템의 다른 형태에서도 적용 가능하다. 위성 및 지상파 시스템에서의 방송국측 시스템과 각 단말장치의 결합은, 상기와 같이 유선/무선의 양 경우가 존재하고, 또한 주파수 대역이나 주파수 간격, 변조 방식, 방송국측 시스템의 구성 등은 방송 시스템의 종별이나 운용에 의존하여 다르지만, 그것들은 본 발명과의 관련성은 없고, 본 발명은 그것들이 어떻게 기정되든지 적용 가능하다.
방송국측 시스템(201)은, MPEG2 트랜스포트 스트림을 변조하여 방송 신호에 포함시켜서 전송한다. 방송 수신 장치는 방송 신호를 수신하고, 복조하여 MPEG2 트랜스포트 스트림을 재현하고, 그 중에서 필요한 정보를 추출하여 이용한다. 디지털 방송 수신 장치에 존재하는 디바이스의 기능과 접속의 구성을 설명하기 위해서, 우선 MPEG2 트랜스포트 스트림의 구성을 간단히 서술한다.
도 6은 TS 패킷의 구성을 도시하는 도면이다. TS 패킷(600)은 188바이트의 길이를 갖고, 헤더(601), 어댑테이션 필드(602), 페이로드(603)로 이루어진다. 헤더(601)는 TS 패킷의 제어 정보를 유지한다. 4바이트의 길이를 갖고, 604로 나타내는 구성을 취한다. 이 중에 “Packet ID(이하, PID)”로 기술되는 필드를 갖고, 이 PID의 값에 의해서, TS 패킷의 식별을 행한다. 어댑테이션 필드(602)는 시각 정보 등의 부가적인 정보를 유지한다. 어댑테이션 필드(602)의 존재는 필수가 아니고, 존재하지 않는 경우도 있다. 페이로드(603)는 영상·음성이나 데이터 방송용 데이터 등, TS 패킷이 전송하는 정보를 유지한다.
도 7은 MPEG2 트랜스포트 스트림의 모식도이다. TS 패킷(701) 및 TS 패킷(703)은 헤더에 PID(100)를 유지하고, 페이로드에 영상(1)에 관한 정보를 유지한다. TS 패킷(702) 및 TS 패킷(705)은 헤더에 PID(200)를 유지하고, 페이로드에 데이터(1)에 관한 정보를 유지한다. TS 패킷(704)은 헤더에 PID(300)를 유지하고, 페이로드에 음성(1)에 관한 정보를 유지한다.
MPEG2 트랜스포트 스트림(700)은 TS 패킷(701∼705)과 같은 연속한 TS 패킷에 의해서 구성된다. TS 패킷은 그 페이로드에 영상이나 음성, 데이터 방송용의 데이터 등 다영한 정보를 유지한다. 방송 수신 장치는 TS 패킷을 수신하여, 각 TS 패킷이 유지하는 정보를 추출함으로써, 영상·음성을 재생하여, 프로그램 편성 정보 등의 데이터를 이용한다. 이 때, 동일 PID를 갖는 TS 패킷은 동일 종류의 정보를 유지한다. 도 7에서도, TS 패킷(701) 및 TS 패킷(703)은 모두 영상(1)에 관한 정보를 전송하고, 또 TS 패킷(702) 및 TS 패킷(705)은 모두 데이터(1)에 관한 정보를 전송한다.
영상 및 음성은, PES(Packetized Elementary Stream) 패킷이라고 불리는 형식으로 표현된다. PES 패킷은 실제로 전송될 때, 분할하여 TS 패킷에 격납된다. 도 8은 PES 패킷을 전송할 때의 분할예를 나타낸다. PES 패킷(801)은 하나의 TS 패킷 내의 페이로드에 격납하여 전송하기에는 크기 때문에, PES 패킷 분할(A802a), PES 패킷 분할(B802b), PES 패킷 분할(C802c)로 분할되고, 동일 PID를 갖는 3개의 TS 패킷(803∼805)에 의해서 전송된다. 또한, PES 패킷은 운용에 의해서는 영상·음성뿐만 아니라, 서브타이틀이라고 불리는 자막용 데이터를 전송하는 경우도 있다.
프로그램 편성 정보나 데이터 방송용의 데이터 등의 정보는 MPEG2 섹션이라고 불리는 형식을 이용하여 표현된다. MPEG2 섹션은 실제로 전송될 때, 분할하여 TS 패킷에 격납된다. 도 9는 MPEG2 섹션을 전송할 때의 분할예를 나타낸다. MPEG2 섹션(901)은 하나의 TS 패킷 내의 페이로드에 격납하여 전송하기에는 크기 때문에, 섹션 분할(A902a), 섹션 분할(B902b), 섹션 분해(C902c)로 분할하여, 동일 PID를 갖는 3개의 TS 패킷(903∼905)에 의해서 전송된다.
도 10은 MPEG2 섹션의 구조를 표현한다. MPEG2 섹션(1000)은 헤더(1001) 및 페이로드(1002)로 구성된다. 헤더(1001)는 MPEG2 섹션의 제어 정보를 유지한다. 그 구성은 헤더 구성(1003)에 의해서 표현된다. 페이로드(1002)는 MPEG2 섹션(1000)이 전송하는 데이터를 유지한다. 헤더 구성(1003)에 존재하는 table_id는 MPEG2 섹션의 종류를 표현하고, 또한 table_id_extension은 table_id가 같은 MPEG2 섹션끼리를 구별할 때에 이용되는 확장 식별자이다. MPEG2 섹션의 사용예로서, 도 11에 프로그램 편성 정보를 전송하는 경우를 든다. 이 예에서는, 행(1104)에 기재되는 바와 같이, 방송 신호의 복조에 필요한 정보는 헤더 구성(1003) 내의 table_id가 64인 MPEG2 섹션에 기재되고, 또한 그 MPEG2 섹션은 PID에 16이 부여된 TS 패킷에 의해서 전송된다.
이와 같이 MPEG2 트랜스포트 스트림은 다양한 정보를 전송하기 위해서 계층 구성을 취한다. 방송 수신 장치는, 방송 신호 내에 존재하는 MPEG2 트랜스포트 스트림이 내포하는 정보를, MPEG2 트랜스포트 스트림의 계층 구성을 거쳐가면서 추출할 필요가 있고, 그것을 위한의 디바이스를 탑재하고 있다. 그들 디바이스는 한쪽의 출력이 다른쪽의 입력이 되도록 서로 물리적으로 접속된다. 또한, 동일 종류의 디바이스가 다수 존재할 때에는 단지 물리적으로 접속될 뿐만 아니라, 동일 종류의 디바이스 중, 어느 디바이스에 입력할 것인지, 혹은 동일 종류의 디바이스 중, 어느 디바이스로부터의 출력을 수취할 것인지의 “정보의 수수 경로”를 확립할 필요가 있다. 예를 들면, 튜너가 다수, TS 디코더가 1개, AV 디코더가 다수 존재하고, TS 디코더는 모든 튜너 및 모든 AV 디코더에 “물리적으로”접속되어 있는 환경에서도, 실제로 단일 영상 음성을 디코드할 때에는, 단일한 튜너와, 단일한 AV 디코더를, TS 디코더를 통해서 “논리적으로”“접속하여”“정보의 수수 경로”를 확립할 필요가 있다. 이하, 모든 실시 형태에서 이용하는 「물리적인 접속」「논리적인 접속」「디바이스 논리 접속 패스」라는 어구를 정의한다.
「물리적인 접속」및「물리 접속」은 디바이스가 하드웨어 상에서 접속되어 있는 것을 나타낸다. 디바이스(A)와 디바이스(B)가「물리적으로 접속」되어 있다 는 것은, 디바이스(A)와 디바이스(B)는 하드웨어 상에서 접속되어 있는 것을 나타낸다.
「논리적인 접속」및「논리 접속」은 디바이스가 단지「물리적으로 접속」될 뿐만 아니라, “정보의 수수 경로”를 구성하고 있는 것을 나타낸다. 디바이스(A)와 디바이스(B)가「논리적으로 접속」되어 있다는 것은, 디바이스(A)의 출력 정보가 디바이스(B)의 입력 정보가 되도록, 혹은 디바이스(B)의 출력 정보가 디바이스(A)의 입력 정보가 되도록, “데이터의 수수 경로”가 확립되어 있는 것을 나타낸다.
「디바이스 논리 접속 패스」는 “데이터 수수 경로” 그것을 가리킨다.
디바이스(A)와 디바이스(B)가「물리적으로 접속」되어 있는 것은, 디바이스(A)와 디바이스(B)가「논리적으로 접속」되는 최저 조건이다. 디바이스(A)와 디바이스(B)가「물리적으로 접속」되어 있지 않은 경우, 디바이스(A)와 디바이스(B)를「논리적으로 접속」하는 것은 불가능하다. 디바이스(A)와 디바이스(B)가「논리적으로 접속」되어 있는 경우, 당연히 디바이스(A)와 디바이스(B)는「물리적으로 접속」되어 있다.
이후, 본 실시 형태의 전제가 되는 상황에 관해서 설명한다.
디지털 방송 수신 장치가 일반적인 하드웨어 구성을 나타내는 블록도를 도 12에 도시한다. 단말장치(1200)는, 튜너(1201), TS 디코더(1202), AV 디코더(1203), 스피커(1204), 디스플레이(1205), CPU(1206), 2차 기억부(1207), 1차 기억부(1208), ROM(1209), 입력부(1210)로 구성된다.
튜너(1201)는 CPU(1206)가 지정하는 주파수를 포함하는 튜닝 정보에 따라서, 방송국측 시스템(201) 내에서 변조되어 전송되어 온 방송 신호를 복조하는 디바이스이다. 튜너(1201)가 복조하여 얻어지는 MPEG2 트랜스포트 스트림은 TS 디코더(1202)에 송신된다.
TS 디코더(1202)는, CPU(1206)가 지정하는 PID, 섹션 선별 조건 등의 지정에 기초하여 MPEG2 트랜스포트 스트림으로부터 지정 조건에 합치하는 PES 패킷이나 MPEG2 섹션을 선별하는 기능을 갖는 디바이스이다. TS 디코더(1202)가 선별한 PES 패킷은 AV 디코더(1203)에 전송된다. 또, TS 디코더(1202)가 선별한 MPEG2 섹션은, 1차 기억부(1208)에 DMA(Direct Memory Access) 전송되고, CPU(1206)가 실행하는 프로그램에 의해서 이용된다. 또한, TS 디코더(1202)는, 상기 PES 패킷 및 MPEG2 섹션의 선별 기능의 외에, 암호화(스크램블)된 PES 패킷 및 MPEG2 섹션의 암호 해제(디스크램블) 기능이나, 입력된 MPEG2 트랜스포트 스트림을, TS 디코더(1202)에 물리적으로 접속된 다른 디바이스에 전송하는 기능 등을 갖는다.
AV 디코더(1203)는 디지털 인코드된 영상 및 음성을 디코드하는 기능을 갖는 디바이스이다. AV 디코더(1203)가 디코드하여 얻어진 AV 신호는, 스피커(1204), 디스플레이(1205)에 송신된다. 또한, AV 디코더(1203)는 반드시 영상 및 음성을 동시에 디코드할 수 없는 경우도 있다. 영상 디코더, 음성 디코더 단체로서 존재하는 경우도 있다. 또한, AV 디코더(1203)는 경우에 따라서는 서브타이틀 데이터에 대한 디코드 기능을 갖는 경우도 있다.
스피커(1204), 디스플레이(1205)는 각각 AV 디코더(1203)로부터 송신된 음 성, 영상을 출력하는 기능을 갖는 디바이스이다.
CPU(1206)는 방송 수신 장치 상에서 동작하는 프로그램을 실행한다. CPU(1206)가 실행하는 프로그램은, ROM(1209)에 포함되는 경우, 방송 신호나 네트워크로부터 다운로드되어 1차 기억부(1208)에 유지되어 있는 경우, 방송 신호나 네트워크로부터 다운로드되어 2차 기억부(1207)에 보존되어 있는 경우 등이 존재한다. 실행하는 프로그램의 지시에 따라서, 튜너(1201), TS 디코더(1202), AV 디코더(1203), 스피커(1204), 디스플레이(1205), 2차 기억부(1207), 1차 기억부(1208), ROM(1209), 입력부(1210)를 제어한다.
2차 기억부(1207)는 FLASH-ROM 등의 불휘발성 메모리, HDD(Hard Disk Drive), CD-R이나 DVD-R 등의 개서 가능한 미디어 등, 단말장치(1200)의 전원 절단시에도 정보가 소거되지 않는 기기에 의해서 구성되고, CPU(1206)의 지시에 의해 정보의 보존을 행한다. 단말장치(1200)의 전원 절단에 의해서 소거되어서는 곤란한 데이터의 보존에 이용된다.
1차 기억부(1208)는 RAM 등에 의해서 구성되고, CPU(1206)나 DMA 가능한 디바이스의 지시에 따라서 정보를 일시적으로 보존하는 기능을 갖는 디바이스이다. 1차 기억부(1208)에 유지된 정보는, 단말장치(1200)의 전원 절단에 의해서 소거된다.
ROM(1209)은, 개서 불가능한 메모리 디바이스이고, 구체적으로는 ROM이나 CD-ROM, DVD 등으로 구성된다. ROM(1209)에는, CPU(1206)가 실행하는 프로그램이 격납되어 있다.
입력부(1210)는, 구체적으로는, 프론트 패널이나 리모콘으로 구성되고, 유저로부터의 입력을 접수한다. 도 13은, 프론트 패널로 입력부(1210)를 구성한 경우의 일례이다. 프론트 패널(1300)은 7개의 버튼, 상부 커서 버튼(1301), 하부 커서 버튼(1302), 좌측 커서 버튼(1303), 우측 커서 버튼(1304), OK 버튼(1305), 취소 버튼(1306), EPG 버튼(1307)을 구비하고 있다. 유저가 버튼을 가압하면, 가압된 버튼의 식별자가, CPU(1206)에 통지된다.
또한, 도 12에서는 디스플레이(1205), 스피커(1204)를 방송 수신 장치 내부에 포함하는 형태로 표현하지만, 방송 수신 장치에는 디스플레이(1205), 스피커(1204)를 내포하지 않고, 외부에 AV 신호만 출력하는 타입의 것도 존재한다. 디스플레이(1205) 및 스피커(1204)의 존재 장소는 본 발명과 관련성이 없고, 어느쪽의 타입에 대해서도 본 발명은 적용 가능하다.
다음에, 디바이스가 단말장치 상에 다수 존재하는 경우의 하드웨어 구성예 로서 도 14를 도시한다. 단말장치(1400)는, 튜너(1401), TS 디코더(1402), AV 디코더(1403), 스피커(1404), 디스플레이(1405), CPU(1406), 2차 기억부(1207), 1차 기억부(1208), ROM(1209), 입력부(1210)로 구성된다. 도 12와 도 14의 차이는 튜너(1401)로 표현되는 부분에 2개의 튜너(튜너(1401a)와 튜너(1401b))가 존재하는 것 및 AV 디코더(1403)로 표현되는 부분에 2개의 AV 디코더(AV 디코더(1403a)와 AV 디코더(1403b))가 존재하는 것이다. 단말장치(1400)에 존재하는, 도 12와 동일한 번호로 식별되는 디바이스는, 도 12의 경우와 동일 동작을 행하는 것으로 설명을 생략한다. 이하, 도 12에서의 하드웨어 구성과 도 14에서의 하드웨어 구성의 상이 점에 대해서 설명한다.
튜너(1401a) 및 튜너(1401b)는 CPU(1406)가 지정하는 주파수를 포함하는 튜닝 정보에 따라서, 방송국측 시스템(201)에서 변조되어 전송되어 온 방송 신호를 복조하는 디바이스로, 서로 독립하여 동작하는 것이 가능하다. 튜너(1401a) 및 튜너(1401b)가 복조하여 얻어지는 MPEG2 트랜스포트 스트림은, 각각 TS 디코더(1402)에 송신된다.
또한, 도 14에 나타내는 하드웨어 구성예에서는 튜너를 2개로 하고 있지만, 튜너의 수에 의존하지 않고 본 발명은 적용 가능하다.
TS 디코더(1402)는, TS 디코더(1202)와 동일하게, PID, 섹션 필터 조건 등의 지정에 기초하여, 입력된 MPEG2 트랜스포트 스트림으로부터 지정 조건에 합치하는 PES 패킷이나 MPEG2 섹션을 선별하는 기능을 갖는 디바이스이다. 도 14의 하드웨어 구성에서는, TS 디코더(1402)는 튜너(1401a)와 튜너(1401b)의 2개의 튜너로부터 MPEG2 트랜스포트 스트림이 입력되지만, 그 각각에 대해서 PES 패킷이나 MPEG2 섹션을 선별하는 것이 가능하다. 또한, 도 14의 하드웨어 구성에서, TS 디코더(1402)는 AV 디코더(1403a)와 AV 디코더(1403b)의 2개의 AV 디코더에 대해서 선별한 PES 패킷을 송부 가능하다.
또한, 도 14의 하드웨어 구성예에서는 TS 디코더(1402)의 MPEG2 트랜스포트 스트림 입력의 수는 2이지만, 본 발명은 이 수에는 의존하지 않고 적용 가능하다. 또 본 하드웨어 구성에서는 TS 디코더(1402)의 AV 디코더에 대한 PES 패킷의 출력수는 2이지만, 본 발명은 이 수에는 의존하지 않고 적용 가능하다. 또, TS 디코더 (1402) 자신이 다수 있다고 해도, 본 발명은 적용 가능하다.
AV 디코더(1403a) 및 AV 디코더(1403b)는 입력된 PES 패킷이 내포하는, 인코드된 영상 데이터 및 인코드된 음성 데이터를 디코드하는 기능을 갖는 디바이스이다. AV 디코더(1403a) 및 AV 디코더(1403b)가 디코드하여 얻어진 영상, 음성의 AV 신호는, 각각 디스플레이(1405), 스피커(1404)에 송신된다. 도 14의 하드웨어 구성예에서는 방송 수신 장치(1400) 내에는 AV 디코더(1403a)와 AV 디코더(1403b)의 2개가 존재하고, 각각 TS 디코더(1402)로부터 출력된 PES 패킷을 독립하여 디코드하는 것이 가능하다.
또한, 도 14의 하드웨어 구성예에서는 AV 디코더의 수는 2이지만, 본 발명은 이 수에는 의존하지 않고 적용 가능하다.
스피커(1404), 디스플레이(1405)는 각각 음성, 영상을 출력하는 기능을 갖는 디바이스이다. 본 실시 형태에서는 2개의 AV 디코더로부터 AV 신호가 입력되어 있고, 그 출력 형태는 CPU(1406)의 지시에 의해 결정된다. 예를 들면 AV 디코더(1403a)가 출력한 AV 신호만 출력하는, AV 디코더(1403b)가 출력한 영상을 전체 화면에 표시하고, AV 디코더(1403a)가 출력한 영상을 AV 디코더(1403b)가 출력한 영상의 바로 앞에 우측 하단의 4분의 1에 표시하는 등의 지정이 가능하다.
CPU(1406)는 방송 수신 장치(1400) 상에서 동작하는 프로그램을 실행한다. CPU(1406)가 실행하는 프로그램은 ROM(1209)에 포함되는 경우, 방송 신호나 네트워크로부터 다운로드되어 1차 기억부(1208)에 유지되어 있는 경우, 방송 신호나 네트워크로부터 다운로드되어 2차 기억부(1207)에 보존되어 있는 경우 등이 존재한다. 실행하는 프로그램의 지시에 따라서, 튜너(1401), TS 디코더(1402), AV 디코더(1403), 스피커(1404), 디스플레이(1405), 2차 기억부(1207), 1차 기억부(1208), ROM(1209), 입력부(1210)를 제어한다. 도 14의 하드웨어 구성에서의 튜너(1401)나 AV 디코더(1403)와 같이, 동일 종류의 디바이스가 다수 존재하는 경우에는, CPU(1406)는, 그 각각을 개별적으로 지정하여 제어하는 것이 가능하다.
도 12나 도 14에 나타내는 하드웨어 구성에서, 각 디바이스는 단말장치에 출하시에 디폴트로 내포되어 있다. 그러나, 단말장치 상에 탑재되어 있지 않은 디바이스를 추가하기 위해서, 및 단말장치 상에 탑재되어 있는 디바이스의 기능을 향상시키기 위해서, 추가하고 싶은 디바이스를 탑재한 어댑터를 또한 단말장치에 부여하는 경우가 있다. 이와 같은 하드웨어 구성예로서 도 15를 나타낸다. 단말장치(1500)는, 튜너(1051), TS 디코더(1502), AV 디코더(1203), 스피커(1204), 디스플레이(1205), CPU(1506), 2차 기억부(1207), 1차 기억부(1208), ROM(1209), 입력부(1210)로 구성된다. 단말장치(1500)에 탑재되는, 도 12와 동일 번호로 식별되는 디바이스는 도 12의 경우와 동일 기능을 갖기 때문에, 설명을 생략한다. 단말장치(1500)에는 어댑터(1511)가 부여된다. 어댑터(1511)에는 단말장치(1500)에 추가하고 싶은 기능을 갖는 디바이스를 탑재한다. 도 15의 하드웨어 구성예에 등장하는 어댑터(1511)에는 MPEG2 트랜스포트 스트림을 입력으로 하고, 입력된 MPEG2 트랜스포트 스트림에 포함되는 TS 패킷에 관해서, CPU(1506)가 지정한 PID를 갖는 TS 패킷에 대해서 디스크램블(암호 해제)을 행하는 디바이스(디스크램블러)를 유지한다. 어댑터(1511)가 유지하는 디바이스를 동작시키기 위해서는 어댑터(1511)에 대해서 튜너(1501)가 복조한 MPEG2 트랜스포트 스트림을 입력할 필요가 있다. 그 때문에, 튜너(1501)는 복조한 MPEG2 트랜스포트 스트림을 어댑터(1511)에 입력한다. 어댑터(1511)는, 입력된 MPEG2 트랜스포트 스트림 내의, CPU(1506)가 지정한 TS 패킷에 대한 암호 해제를 종료한 후, MPEG2 트랜스포트 스트림을 TS 디코더(1502)에 송신한다. TS 디코더(1502)는, 도 12에서의 TS 디코더(1202)가 튜너(1201)로부터 입력되는 MPEG2 트랜스포트 스트림에 대해서 처리를 행할 수 있는 것과 동일하게, 어댑터(1511)로부터 입력된 MPEG2 트랜스포트 스트림에 대해서 처리를 행하는 것이 가능하다. CPU(1506)는 단말장치(1500) 내에 존재하는 디바이스뿐만 아니라, 어댑터(1511) 내의 디바이스와 통신 혹은 제어하는 것이 가능하다.
또한, 도 15에 나타내는 하드웨어 구성에서는, 어댑터(1511)는 디스크램블러를 탑재하지만, 본 발명은 어댑터(1511)가 유지하는 디바이스의 종류나 수에 의존하지 않고 적용 가능하다. 또한, 도 15에 나타내는 하드웨어 구성에서는, 어댑터(1511)는, 튜너(1501)로부터 MPEG2 트랜스포트 스트림을 입력하여, TS 디코더(1502)에 MPEG2 트랜스포트 스트림을 송신하는 구성을 취하지만, 방송 신호를 가공하는 과정의 어느 부분에 어댑터(1511)가 탑재하는 디바이스가 삽입되어도 적용 가능하다. 예를 들면, 어댑터(1511)가 AV 디코더를 탑재하여, 어댑터(1511)가 TS 디코더(1502)로부터 PES 패킷을 입력하고, 디스플레이(1205) 및 스피커(1204)에 AV 신호를 출력하는 구성이어도 본 발명은 적용 가능하다. 또, 단말장치(1500)와 어댑터(1511) 사이의 인터페이스는 PCMCIA(Personal Computer Memory Card International Association)가 일반적이지만, 본 발명은 그 인터페이스의 형식과는 관련성이 없기 때문에, 어떠한 인터페이스여도 적용 가능하다. 또, 단말장치(1500)가 동시에 물리적으로 접속하는 것이 가능한 어댑터의 수에도 의존하지 않기 때문에, 다수의 어댑터와 물리적으로 접속 가능해도 적용 가능하다.
다음에, 다수의 디바이스가 존재하는 단말장치에 또한 어댑터를 부여하는 경우의 하드웨어 구성예를 도 16에 나타낸다. 단말장치(1600)는, 튜너(1601), TS 디코더(1602), AV 디코더(1403), 스피커(1404), 디스플레이(1405), CPU(1606), 2차 기억부(1207), 1차 기억부(1208), ROM(1209), 입력부(1210)로 구성된다. 단말장치(1600)에 탑재되는 디바이스로 도 12 혹은 도 14와 동일 번호로 식별되는 디바이스에 대해서는 도 12 혹은 도 14의 경우와 동일한 기능을 갖기 때문에, 설명을 생략한다. 단말장치(1600)에는 어댑터(1611)가 부여된다. 어댑터(1611)에는 단말장치(1600)에 추가하고 싶은 기능을 갖는 디바이스를 탑재한다. 도 16의 하드웨어 구성예에 등장하는 어댑터(1611)는 어댑터(1511)와 동일하게, 디스크램블러를 탑재한다. 1611에 탑재되는 디스크램블러는, 다수의 MPEG2 트랜스포트 스트림 입력을 접수하고, 다수의 MPEG2 트랜스포트 스트림을 출력한다. 도 16이 나타내는 하드웨어 구성에는 튜너가 2개 존재하기 때문에, 어댑터(1611)에 대해서, 튜너(1601a와 1601b)로부터 출력되는 MPEG2 트랜스포트 스트림을 입력한다. 어댑터(1611)에 탑재되는 디스크램블러는, 입력된 2개의 MPEG2 트랜스포트 스트림에 대해서 디스크램블 처리를 행하여, TS 디코더(1602)에 대해서 처리가 완료된 2개의 MPEG2 트랜스포트 스트림을 송신한다. TS 디코더(1602)는, 도 14에서의 TS 디코더(1402)가 튜너(1401a)와 튜너(1401b)가 출력하는 MPEG2 트랜스포트 스트림을 처리 가능한 것과 동일하게, 입력된 2개의 MPEG2 트랜스포트 스트림을 처리 가능하다. CPU(1606)는 단말장치(1600) 내의 디바이스뿐만 아니라, 어댑터(1611) 내의 디바이스와 통신 또는 제어를 행하는 것이 가능하다.
또한, 도 16이 나타내는 하드웨어 구성에서는, MPEG2 트랜스포트 스트림의 입력을 필요로 하는 어댑터(1611)에 대해서, 튜너(1601)의 수와 동일 수의 MPEG2 트랜스포트 스트림을 송신하고 있지만, 반드시 모든 MPEG2 트랜스포트 스트림을 어댑터(1611)에 입력할 필요는 없고, 예를 들면 튜너(1601a)의 것만 어댑터(1611)에 입력하는 구성이어도, 본 발명은 적용 가능하다. 또, 본 발명은, 단말장치(1600)와 어댑터(1611) 사이의 정보의 형식에도 의존하지 않는다. 예를 들면, 어댑터(1611)에 입력하기 전에, 단말장치(1600)측에서 튜너(1601a)와 튜너(1601b)의 출력인 MPEG2 트랜스포트 스트림을 합성하여 작성한 「어댑터(1611)가 해석 가능한 비트 스트림」을 어댑터(1611)에 입력하고, 어댑터(1611)가 출력하는 처리가 완료된 비트 스트림을 TS 디코더(1602)에 입력하기 전에 2개의 MPEG2 트랜스포트 스트림으로 분리해도 된다.
어댑터의 예로서, 미국 케이블 시스템에서 이용되는 POD에 대해서 설명한다. 도 17은 POD(1711)가 부여된 단말장치의 하드웨어 구성을 나타낸다. 단말장치(1700) 내에 존재하는 디바이스로, 도 12 혹은 도 15와 동일 번호로 식별되는 디바이스는, 도 12 혹은 도 15의 경우와 동일한 기능을 갖는다. POD(1711)는 디스크램블러를 탑재하고 있고, 도 15에서의 어댑터(1511)와 동일하게, 튜너(1701)로부터 MPEG2 트랜스포트 스트림을 입력하여, TS 디코더(1702)에 대해서, 디스크램블 처리 가 완료된 MPEG2 트랜스포트 스트림을 출력한다. 또, 미국 케이블 시스템에서는, 도 3, 도 4에서 나타내는 바와 같이, OOB라고 불리는 주파수 대역을 이용하여, 다양한 정보가 상측 및 하측 방향으로 전송되고 있다. 이 때, 방송국측 시스템(201)이 단말장치에 대해서 송출하는 정보의 형식과, 단말장치(1700)가 해석 가능한 정보의 형식은 다르기 때문에, 그 자체로는 정보의 교환이 불가능해진다. POD(1711)는 이들 OOB에서 전송되는 상측, 하측 정보의 형식 변환을 행하는 디바이스를 구비하고 있다. OOB에서 전송되는 정보는 QPSK 변조 방식으로 변조된다. 본 변조 방식은 공지의 기술이고, 상세한 설명은 생략한다. 단말장치는 QPSK 복조기(1712)와 QPSK 변조기(1713)를 구비한다. CPU(1706)는 단말장치(1700) 내의 디바이스뿐만 아니라, POD(1711) 내의 디바이스를 제어 가능하다.
하측 방향의 단말장치(1700)의 정보 수신에 관해서, 우선 QPSK 복조기(1712)는 OOB에서 방송국측 시스템(201)으로부터 송신되어 오는 하측의 신호를 복조하고, 생성된 비트 스트림을 POD(1711)에 입력한다. POD(1711)는 비트 스트림이 포함하는 다양한 정보 중에서, CPU(1706)가 지정하는 정보를 추출하여, CPU(1706) 상에서 동작하는 프로그램이 해석 가능한 형식으로 변환하여, CPU(1706)에 제공한다.
상측 방향의 단말장치(1700)의 정보 송신에 관해서, 우선 CPU(1706)가 방송국측 시스템(201)에 대해서 송신하고 싶은 정보를, POD(1711)에 송신한다. POD(1711)는 CPU(1706)로부터 입력된 정보를 방송국측 시스템(201)이 해석 가능한 형식으로 변환하여, QPSK 변조기(1713)에 송신한다. QPSK 변조기(1713)는 POD(1711)로부터 입력된 정보를 QPSK 변조하여, 방송국측 시스템(201)에 송신한다.
도 12 내지 도 17에 등장하는 각 디바이스를 이용하여, 방송 수신 장치는, 방송 신호에 포함되어 전송되는 영상·음성을 화면에 출력하는 기능이나, 방송 신호가 포함하는 프로그램 편성 정보 등의 데이터를 추출하여, 유저에게 제시하는 기능을 실현한다. 이들의 기능은, 방송 수신 장치에 존재하는 각종 디바이스를 적절한 형태, 적절한 순서로 물리적 및 논리적으로 접속하여, 그들 디바이스의 기능을 적절히 이용함으로써 실현된다. 도 18에, 각 디바이스의 물리적인 접속 순서와 처리 내용, 입출력의 데이터 형식을 표현하는 개념도를 도시한다. 단말장치(1800)는, 튜너(1801), PID 필터(1802), 섹션 필터(1803), 디스트램블(1804), AV 디코더(1805), 디스플레이/스피커(1806), 1차 기억부(1807)를 갖는다. 도 18에 등장하는 디바이스는 도 12에 등장하는 디바이스와 1대1 또는 1대 다수로 대응한다.
튜너(1801)는 튜너(1201)에 대응하고, 방송 신호를 입력으로 하여, MPEG2 트랜스포트 스트림을 출력한다.
TS 디코더(1202) 내에는 MPEG2 트랜스포트 스트림에 대해서 처리를 행하는 3종류의 디바이스, PID 필터(1802), 섹션 필터(1803), 디스크램블러(1804)가 존재한다. 이들의 기능에 대해서 여기에서 상술한다.
PID 필터(1802)는, 입력된 MPEG2 트랜스포트 스트림으로부터, CPU(1206)가 지정한 PID를 갖는 TS 패킷을 추출하고, 또한 그 페이로드에 존재하는 PES 패킷이나 MPEG2 섹션을 추출한다. 예를 들면 도 8에 나타내는 상황에서 PES 패킷(801)을 추출하는 경우를 예로 든다. 우선 CPU(1206)은 PID 필터(1802)에 PID(100)를 설정하여, PES 패킷을 추출하도록 요구를 내린다. 그렇게 하면, PID 필터는, MPEG2 트 랜스포트 스트림 내를 흐르는 TS 패킷 중에서 PID가 100인 TS 패킷(803∼805)을 추출하고, 또한 추출된 TS 패킷(803∼805)의 페이로드에 포함되는 PES 패킷 분할(A802a), PES 패킷 분할(B802b), PES 패킷분할(C802c)을 취출하여 연결하여, PES 패킷(801)을 구성한다. PID 필터(1802)는, TS 디코더(1202) 내에 1개 이상 존재한다.
디스크램블러(1804)는 PID 필터(1802)가 출력하는 PES 패킷, MPEG2 섹션에 대해서 디스크램블을 행한다. PES 패킷 및 MPEG2 섹션은 암호화된 경우도 도 8 및 도 9와 동일하게 분할되어 전송된다. 디스크램블러(1804)는, CPU(1206)의 PID 지정에 의해, 암호화된 PES 패킷 및 MPEG2 섹션을 전송하는 TS 패킷을 특정할 수 있고, 그 다음에 CPU(1206)가 지정하는 디스크램블 열쇠를 이용하여 디스크램블 처리를 행한다. 디스크램블 열쇠의 입수 방법에 대해서는, 본 발명과 관련성이 없기 때문에, 설명을 생략한다. 디스크램블러(1804)는, 디스크램블 처리가 완료된 PES 패킷을 AV 디코더(1805)로, 디스크램블 처리가 완료된 MPEG2 섹션을 섹션 필터(1803)로 각각 출력한다. 디스크램블은 암호화된 PES 패킷 및 MPEG2 섹션에만 적용되는 처리이고, 디스크램블러(1804)는 CPU(1206)의 지시에 의해, 필요한 경우에만 PID 필터로부터 PES 패킷 및 MPEG2 섹션을 입력하여, 디스크램블 처리를 행한다. 스크램블되어 있지 않은 PES 패킷 및 MPEG2 섹션에 대해서는, PID 필터(1802)로부터 직접 AV 디코더(1805) 및 섹션 필터(1803)에 각각 출력된다. 디스크램블러(1804)는 TS 디코더(1202) 내에 1개 이상 존재한다.
섹션 필터(1803)는, 입력된 MPEG2 섹션 중에서, CPU(1206)가 지정하는 섹션 필터 조건에 합치하는 MPEG2 섹션을 추출하여, 1차 기억부(1807)에 DMA 전송한다. 1차 기억부(1807)에 유지된 MPEG2 섹션은 CPU(1206)에 의해서 독출되어 이용된다. 예를 들면, 도 11에서 튜닝 정보를 유지하는 MPEG2 섹션을 취득하는 경우를 예로 든다. CPU(1206)는 우선 PID 필터(1802)에 PID(16)를 설정하고, 섹션을 취득하도록 요구를 내린다. PID 필터(1802)는 PID가 16인 TS 패킷으로부터 섹션을 추출하여, 섹션 필터(1803)에 제공한다. 다음에 CPU(1206)는 table_id가 64인 섹션을 추출하도록 섹션 필터(1803)에 대해서 요구한다. 섹션 필터(1803)는 PID 필터(1802)에 의해서 입력되는 MPEG2 섹션 중에서 table_id가 64인 섹션을 추출하여, 1차 기억부(1807)에 DMA 전송한다. 섹션 필터(1803)는 TS 디코더(1202) 내에 1개 이상 존재한다.
AV 디코더(1805)는, AV 디코더(1203)와 대응하여, PES 패킷을 입력, AV 신호를 디스플레이/스피커(1806)에 출력한다. 디스플레이/스피커(1806)는 디스플레이(1205) 및 스피커(1204)에 대응하여, AV 신호를 입력으로 하고, 디스플레이(1205)에 영상을, 스피커(1204)에 음성을 출력한다.
1차 기억부(1807)는 1차 기억부(1208)와 대응하여, MPEG2 섹션을 입력으로 하고, CPU(1206)가 실행하는 프로그램에 대해서 그 내용의 참조를 가능하게 한다.
도 18의 표현을 이용하여, 영상 및 음성을 각각 디스플레이 및 스피커에 출력하는 수속을 예시한다. 방송 수신 장치에 입력된 방송 신호는, 우선, 튜너(1801)에 의해서 MPEG2 트랜스포트 스트림으로 복조된다. 다음에 PID 필터(1802)에 의해서, CPU(1206)가 지정한 PID를 갖는 TS 패킷이 전송하는, 영상 및 음성 정 보를 내포하는 PES 패킷이 추출된다. 필요하면 PES 패킷은 디스크램블러(1804)에 송신되어, 디스크램블 처리가 행해진다. 그 후, PES 패킷은 AV 디코더(1805)에 입력되고, 디코드되어 AV 신호가 출력된다. 그 후, AV 신호는 디스플레이 및 스피커(1806)에 입력되어, 영상 및 음성의 재생을 행할 수 있다.
도 18의 표현을 이용하여, 프로그램 편성 정보 등의 데이터를 방송 신호로부터 추출하기 위한 수속을 예시한다. 방송 수신 장치에 입력된 방송 신호는, 우선, 튜너(1801)에 의해서 MPEG2 트랜스포트 스트림으로 복조된다. 다음에 PID 필터(1802)에 의해서, CPU(1206)가 지정한 PID를 갖는 TS 패킷이 전송하는, 데이터를 내포하는 MPEG2 섹션이 추출된다. 필요하면 MPEG2 섹션은 디스크램블러(1804)에 송신되어 디스크램블 처리가 행해진다. 또한, MPEG2 섹션은 섹션 필터(1803)에 입력되고, CPU(1206)가 지정한 섹션 필터 조건에 합치하는 MPEG2 섹션만이 출력된다. 그 후, MPEG2 섹션은, 1차 기억부(1807)에 입력되고, CPU(1206)에 제공된다.
또한 도 18도 도 12와 동일하게, 자신이 디스플레이/스피커(1806)를 갖는 방송 수신 장치로서 개념화되어 있지만, 디스플레이/스피커(1806)는 방송 수신 장치를 내포하지 않고, 외부에 존재하는 타입도 있다. 어느쪽의 타입에 대해서도 본 발명은 적용 가능하다. 또, 도 18이 나타내는 개념도에서는, 디스크램블러(1804)는 TS 디코더(1202) 내에 존재하지만, 하드웨어 구성에 따라서는, TS 디코더 외부에 존재하는 경우도 있다. 그 경우에도 본 발명은 적용 가능하다.
다음에 도 14에 나타내는 튜너, AV 디코더가 다수 존재하는 하드웨어 구성에 대응는 개념도를 도 19에 나타낸다. 단말장치(1900)는, 튜너(1901a) 및 튜너 (1901b), PID 필터(1902), 섹션 필터(1803), 디스크램블러(1904), AV 디코더(1905a) 및 AV 디코더(1905b), 디스플레이/스피커(1906), 1차 기억부(1807)를 갖는다. 도 19 중의 디바이스에서, 도 18과 동일한 번호로 식별되는 디바이스는 도 18과 동등한 기능을 갖기 때문에, 설명은 생략한다. 도 19에 등장하는 디바이스는 도 14에 등장하는 디바이스와 1대1 또는 1대 다수로 대응한다. 도 19에서는, 튜너가 튜너(1901a), 튜너(1901b)의 2개 존재하고, AV 디코더가 AV 디코더(1905a), AV 디코더(1905b)의 2개 존재하고 있다. 도 14에서는, TS 디코더(1402)는 다수 MPEG2 트랜스포트 스트림 입력 및 다수 PES 패킷 출력이 가능해지고 있고, 도 19에서도 다수의 튜너 및, 다수의 AV 디코더와의 사이에서 자유로운 조합으로 “정보 수수 경로”의 확립이 가능해지고 있다. TS 디코더(1402) 중의 PID 필터(1902)는 튜너(1901a) 및 튜너(1901b)의 어느쪽에서 입력되는 MPEG2 트랜스포트 스트림에 대해서도 PES 패킷 및 MPEG2 섹션의 추출이 가능하고, 또한, AV 디코더(1905a) 및 AV 디코더(1905b)의 어느쪽에 PES 패킷을 출력 가능하다. 디스크램블러(1904)에 관해서도 AV 디코더(1905a) 및 AV 디코더(1905b)의 어느쪽에 대해서도 PES 패킷을 출력 가능하다.
다음에 도 15에 나타내는, 어댑터가 물리적으로 접속되는 하드웨어 구성에 대응하는, 개념도를 도 20에 도시한다. 단말장치(2000)는, 튜너(2001), PID 필터(2002), 섹션 필터(1803), AV 디코더(1805), 디스플레이/스피커(1806), 1차 기억부(1807)를 갖는다. 또한, 단말장치(2000)에는, 어댑터(1511)가 물리적으로 접속되고, 어댑터(1511)는 디스크램블러(2004)를 갖는다. 도 18의 경우와 동일한 번호로 식별되는 디바이스는, 도 18의 경우와 동등한 기능을 갖기 때문에, 설명을 생략한다. 도 18에서의 단말과 다른 것은 디스크램블러의 물리적 및 논리적인 접속 개소와 기능이다. 도 18에서는, 디스크램블러(1804)는 TS 디코더(1202) 내에 존재하고, CPU(1206)가 지정하는 디스크램블 열쇠를 이용하여, PID 필터(1802)가 출력하는 PES 패킷 및 MPEG2 섹션의 디스크램블을 행한다. 그것에 대해서, 도 20에서는, 디스크램블러(2004)는 튜너(2001)와 직접 물리적 및 논리적으로 접속되고, 튜너(2001)가 복조한 MPEG2 트랜스포트 스트림이 입력된다. 디스크램블러(2004)는 CPU(1506)가 지정하는 PID를 갖는 TS 패킷을 추출하고, 자신이 MPEG2 트랜스포트 스트림 중에서 디스크램블에 필요한 열쇠를 추출하여, 디스크램블을 행한다. 디스크램블러(2004)가 디스크램블 처리를 행한 MPEG2 트랜스포트 스트림은 TS 디코더에 입력되고, 그 이후에는 도 18과 동일하게 처리가 흐른다. PID 필터(2002)는, 디스크램블러(2004)로부터 입력된 MPEG2 트랜스포트 스트림에 대해서, TS 패킷의 추출및 PES 패킷, MPEG2 섹션의 구성이 가능하다.
다음에 도 16에 나타내는, 튜너, AV 디코더가 다수 존재하는 장치에 어댑터가 물리적으로 접속된 경우의 개념도를 도 21에 나타낸다. 단말장치(2100)는, 튜너(2101a) 및 튜너(2101b), PID 필터(2102), 섹션 필터(1803), AV 디코더(1905a 및 1905b), 디스플레이/스피커(1906), 1차 기억부(1807)를 갖는다. 또한, 단말장치(2100)에는, 어댑터(1611)가 물리적으로 접속되고, 어댑터(1611)는 디스크램블러(2104)를 갖는다. 도 18 혹은 도 19와 동일한 번호로 식별되는 디바이스는, 도 18 혹은 도 19의 경우와 동등한 기능을 갖기 때문에, 설명은 생략한다. 도 19와 다른 점은, 디스크램블러(2104)의 물리적 및 논리적인 접속 개소와 기능이다. 디스크램블러(2104)의 기능에 대해서는 MPEG2 트랜스포트 스트림을 다수 입출력 가능한 점을 제외하고는 디스크램블러(2004)와 동일하다. 튜너(2101a) 및 튜너(2101b)는 디스크램블러(2104)에 대해서 MPEG2 트랜스포트 스트림을 입력한다. 디스크램블러(2104)는 TS 디코더(1602)에 대해서 디스크램블 처리가 완료된 MPEG2 트랜스포트 스트림을 입력한다. PID 필터(2102)는, 디스크램블러(2104)로부터 입력된 어느쪽의 MPEG2 트랜스포트 스트림에 대해서도 TS 패킷의 추출 및 PES 패킷, MPEG2 섹션의 구성이 가능하다.
도 17에 나타내는 POD가 존재하는 하드웨어 구성에 관해서는 In-Band로 전송되는 신호의 처리에 관해서는 도 20에 나타내는 것과 동일하기 때문에, 설명은 생략한다.
다음에, 상기에 설명한 하드웨어와 소프트웨어의 개념적인 관계에 대해서 설명한다. 도 22는, 하드웨어와 소프트웨어의 관계를 나타내는 개념도이다.
단말장치는, 도 22에 도시하는 바와 같이 하위층으로서 하드웨어(2211), 중위층으로서 API인 OCAP 명령군(2214)을 실행하고, 하드웨어(2211)를 제어하는 OCAP 소프트웨어(미들웨어)(2212), 및 상위층으로서 OCAP 명령군(2214) 등을 이용하여 소정의 동작을 제공하는 OCAP 어플리케이션 프로그램(2213)을 구비하고 있다.
다음에 단말장치 상에서의 프로그램 동작 수속에 대해서 서술한다. 도 23은, ROM(1209)에 기억되어, CPU(1206)에 실행되는 프로그램의 구성도의 일례이다.
프로그램(2200)은, 다수의 서브 프로그램으로 구성되고, 구체적으로는 OS(2201), EPG(2202), JavaVM(2203), 서비스 매니저(2204), Java 라이브러리(2205)로 구성된다.
여기에서, OS(2201), JavaVM(2203), 및 Java 라이브러리(2205)는, 도 22에서는 OCAP 소프트웨어(2212)로 분류된다. 또, EPG(2202) 및 서비스 매니저(2204)는, 도 22에서는 OCAP 어플리케이션 프로그램(2213)으로 분류된다. 또한, 본 실시 형태에서는 OS(2201) 등에 대해서도 OCAP 소프트웨어(2212)로 분류하고 있지만, 별도의 층으로서 취급해도 상관없다.
OS(2201)는, 단말장치(1200)의 전원이 투입되면, CPU(1206)가 기동하는 서브 프로그램이다. OS(2201)는, 오퍼레이팅 시스템의 약자이고, Linux, Windows 등이 일례이다. OS(2201)는, 다른 서브 프로그램을 평행하게 실행하는 커넬(2201a) 및 라이브러리(2201b)로 구성되는 공지의 기술의 총칭으로, 상세한 설명은 생략한다. 본 실시 형태에서는, OS(2201)의 커넬(2201a)은, EPG(2202)와 JavaVM(2203)을 서브 프로그램으로서 실행한다. 또, 라이브러리(2201b)는, 이들 서브 프로그램에 대해서, 단말장치(1200)가 유지하는 구성 요소를 제어하기 위한 다수의 기능을 제공한다.
기능의 일례로서, 튜닝 기능을 소개한다. 튜닝 기능은, 다른 서브 프로그램으로부터 주파수를 포함하는 튜닝 정보를 수취하고, 그것을 튜너(1201)에 인도한다. 튜너(1201)는 부여된 튜닝 정보에 기초하여 복조 처리를 행하고, 복조한 MPEG2 트랜스포트 스트림을 TS 디코더(1202)에 인도할 수 있다. 이 결과, 다른 서브 프로그램은 라이브러리(2201b)를 통해서 튜너(1201)를 제어할 수 있다.
EPG(2202)는, 유저에게 프로그램 일람을 표시 및, 유저로부터의 입력을 접수하는 프로그램 표시부(2202a)와, 채널 선국을 행하는 재생부(2202b)로 구성된다. 여기에서, EPG는 Electric Program Guide의 약자이다. EPG(2202)는, 단말장치(1200)의 전원이 투입되면, 커넬(2201a)에 의해서 기동되고, 기동된 EPG(2202)의 내부에서는, 프로그램 표시부(2202a)가 단말장치(1200)의 입력부(1210)를 통해서, 유저로부터의 입력을 기다린다. 여기에서, 입력부(1210)가 도 13에서 나타내는 프론트 패널로 구성되어 있는 경우, 유저가, 입력부(1210)의 EPG 버튼(1307)을 가압하면, EPG 버튼의 식별자가 CPU(1206)에 통지된다. CPU(1206) 상에서 동작하는 서브 프로그램인 EPG(2202)의 프로그램 표시부(2202a)는, 이 식별자를 수취하여, 프로그램 정보를 디스플레이(1205)에 표시한다. 도 24(a) 및 (b)는, 디스플레이(1205)에 표시된 프로그램표의 일례이다. 도 24(a)를 참조하여, 디스플레이(1205)에는, 격자형상으로 프로그램 정보가 표시되어 있다. 열(2301)에는, 시각 정보가 표시되어 있다. 열(2302)에는, 채널명「채널 1」과, 열(2301)의 시각에 대응하는 시간대에 방영되는 프로그램이 표시되어 있다. 「채널 1」에서는, 9:00∼10:30에 프로그램「뉴스 9」이 방영되고, 10:30∼12:00는「영화 AAA」가 방영되는 것을 나타낸다. 열(2303)도 열(2302)와 동일하게, 채널명「채널 2」과, 열(2301)의 시각에 대응하는 시간대에 방영되는 프로그램이 표시되어 있다. 9:00∼11:00에 프로그램「영화 BBB」가 방영되고, 11:00∼12.00는 「뉴스 11」이 방영된다. 2330는, 커서이다. 커서(2330)는, 프론트 패널(1300)의 좌측 커서(1303)와 우측 커서(1304)를 가압하면 이동한다. 도 24(a)의 상태로, 우측 커서(1304)를 가압하면, 커서(2330) 는 우측으로 이동하여, 도 24(b)와 같이 된다. 또, 도 24(b)의 상태로, 좌측 커서(1303)를 가압하면, 커서(2330)는 좌측으로 이동하여, 도 24(a)와 같이 된다.
도 24(a)의 상태로, 프론트 패널(1300)의 OK 버튼(1305)이 가압되면, 프로그램 표시부(2202a)는, 「채널 1」의 식별자를 재생부(2202b)에 통지한다. 도 24(b)의 상태로, 프론트 패널(1300)의 OK 버튼(1305)이 가압되면, 프로그램 표시부(2202a)는, 「채널 2」의 식별자를 재생부(2202b)에 통지한다.
또, 프로그램 표시부(2202a)는, 표시하는 프로그램 정보를, 방송국측 시스템(201)으로부터 정기적으로, 1차 기억부(1208) 또는 2차 기억부(1207)에 기억해 둔다. 일반적으로, 방송국측 시스템으로부터의 프로그램 정보의 취득은 시간이 걸린다. 입력부(1210)의 EPG 버튼(1307)이 가압되었을 때, 1차 기억부(1208) 또는 2차 기억부(1207)에 미리 보존된 프로그램 정보를 표시함으로써, 신속하게 프로그램표를 표시할 수 있다.
재생부(2202b)는, 수취한 채널의 식별자를 이용하여, 채널을 재생한다. 채널의 식별자와 채널의 관계는, 채널 정보로서, 2차 기억부(1207)에 미리 격납되어 있다. 도 25는 2차 기억부(1207)에 격납되어 있는 채널 정보의 일례이다. 채널 정보는 표 형식으로 격납되어 있다. 열(2401)은, 채널의 식별자이다. 열(2402)은, 채널명이다. 열(2403)은 튜닝 정보이다. 여기에서, 튜닝 정보는 주파수나 전송 레이트, 부호화율 등을 포함하여, 튜너(1201)에 부여하는 값이다. 열(2404)은 프로그램 넘버이다. 프로그램 넘버란, MPEG2 규격으로 규정되어 있는 PMT를 식별하기 위한 번호이다. PMT에 관해서는, 후술한다. 행(2411∼2414)의 각 행은, 각 채널의 식별자, 채널명, 튜닝 정보, 프로그램 넘버의 조가 된다. 행(2411)은 식별자가「1」, 채널명이「채널 1」, 튜닝 정보에 주파수「150㎒」, 프로그램 넘버가「101」을 포함하는 조로 되어 있다. 재생부(2202b)는, 채널의 재생을 행하기 위해서, 수취한 채널의 식별자를 그대로 서비스 매니저에게 인도한다.
또, 재생부(2202b)는, 재생 중에, 유저가 프론트 패널(1300)의 상부 커서(1301)과 하부 커서(1302)를 가압하면, 입력부(1210)로부터 CPU(1206)를 통해서, 가압된 통지를 수취하여, 재생하고 있는 채널을 변경한다. 우선, 재생부(2202b)는, 1차 기억부(1208)에 현재 재생 중인 채널의 식별자를 기억한다. 도 26(a) (b) 및 (c)는, 1차 기억부(1208)에 보존하고 있는 채널의 식별자의 예이다. 도 26(a)에서는 식별자「3」이 기억되어 있고, 도 25를 참조하여, 채널명「TV 3」의 채널이 재생 중인 것을 나타낸다. 도 26(a)의 상태로, 유저가 상부 커거(1301)를 가압하면 재생부(2202b)는, 도 25의 채널 정보를 참조하여, 표 중의 앞의 채널인 채널명「채널 2」의 채널로 재생을 전환하기 위해서, 서비스 매니저에게 채널명「채널 2」의 식별자「2」를 인도한다. 동시에, 1차 기억부(1208)에 기억되어 있는 채널 식별자「2」로 개서한다. 도 26(b)는, 채널 식별자가 개서된 상태를 나타낸다. 또, 도 26(a)의 상태로, 유저가 하부 커서(1302)를 가압하면 재생부(2202b)는, 도 25의 채널 정보를 참조하여, 표 중의 다음 채널인 채널명「TV Japan」의 채널로 재생을 전환하기 위해서, 서비스 매니저에게 채널명「TV Japan」의 식별자「4」를 인도한다. 동시에, 1차 기억부(1208)에 기억되어 있는 채널 식별자「4」로 개서한다. 도 26(c)는, 채널 식별자가 개서된 상태를 나타낸다.
Java VM(2203)은, Java(TM) 언어로 기술된 프로그램을 순차적으로 해석하여 실행하는 Java 버츄얼 머신이다. Java 언어로 기술된 프로그램은 바이트 코드라고 불리는, 하드웨어에 의존하지 않는 중간 코드로 컴파일된다. Java 버츄얼 머신은, 이 바이트 코드를 실행하는 인터프리터이다. 또, 일부의 Java 버츄얼 머신은, 바이트 코드를 CPU(1206)가 이해 가능한 실행 형식으로 번역한 후, CPU(1206)에 인도하여, 실행하는 것도 행한다. JavaVM(2203)은, 커넬(2201a)에 실행하는 Java 프로그램을 지정하여 기동된다. 본 실시 형태에서는, 커넬(2201a)은, 실행하는 Java 프로그램으로서 서비스 매니저(2204)를 지정한다. Java 언어의 상세한 것은, 서적「Java Language Specification(ISBN 0-201-63451-1)」등의 많은 서적에 해설되어 있다. 여기에서는, 그 상세한 설명을 생략한다. 또, JavaVM 자체의 상세한 동작 등은, 「Java Virtual Machine Specification(ISBN 0-201-63451-X)」등의 많은 서적에 해설되어 있다. 여기에서는, 그 상세한 설명을 생략한다.
서비스 매니저(2204)는, Java 언어로 쓰여진 Java 프로그램이고, JavaVM(1203)에 의해서 순차적으로 실행된다. 서비스 매니저(2204)는, JNI(Java Native Interface)를 통해서, Java 언어로 기술되어 있지 않은 다른 서브 프로그램을 호출하거나, 또는, 호출되거나 하는 것이 가능하다. JNI에 관해서도, 서적 「Java Native Interface」등의 많은 서적에 해설되어 있다. 여기에서는, 그 상세한 설명을 생략한다.
서비스 매니저(2204)는, JNI를 통해서, 재생부(2202b)로부터 채널의 식별자를 수취한다.
서비스 매니저(2204)는, 최초로 Java 라이브러리(2205) 중에 있는 Tuner(2205c)에 채널의 식별자를 인도하여, 튜닝을 의뢰한다. Tuner(2205c)는, 2차 기억부(1207)가 기억하는 채널 정보를 참조하여, 튜닝 정보를 획득한다. 현재, 서비스 매니저(2204)가 채널의 식별자「2」를 Tuner(2205c)에 인도하면, Tuner(2205c)는, 도 25의 행(2412)을 참조하여, 대응하는 튜닝 정보「156㎒」를 획득한다. Tuner(2205c)는, OS(2201)의 라이브러리(2201b)를 통해서, 튜너(1201)에 튜닝 정보를 인도한다. 튜너(1201)는 부여된 튜닝 정보에 따라서 방송국측 시스템(201)으로부터 송신되어 온 신호를 복조하여, TS 디코더(1202)에 인도한다.
다음에 서비스 매니저(2204)는, Java 라이브러리(2205) 중에 있는 CA(2205d)에 디스크램블을 의뢰한다. CA(2205d)는, OS(2201)의 라이브러리(2201b)를 통해서 복호에 필요한 정보를 TS 디코더(1202) 내의 디스크램블러(1804)에 부여한다.
다음에 서비스 매니저(2204)는, Java 라이브러리(2205) 중에 있는 JMF(2205a)에 채널의 식별자를 부여하여, 영상·음성의 재생을 의뢰한다.
우선, 최초로 JMF(2205a)는, 재생해야 하는 영상과 음성을 특정하기 위한 PID를 PAT, PMT로부터 취득한다. PAT나 PMT는 MPEG2 규격으로 규정되어 있는, MPEG2 트랜스포트 스트림 내의 프로그램 구성을 표현하는 테이블이고, MPEG2 트랜스포트 스트림에 포함되는 TS 패킷의 페이로드에 MPEG2 섹션으로서 매입되어, 음성이나 영상과 함께 송신되는 것이다. 상세한 것은 규격서를 참조하기 바란다. 여기에서는, 개략만 설명한다. PAT는, Program Association Table의 약자로, PID「0」의 TS 패킷에 격납되어 송신되는, table_id가 「0」인 MPGE2 섹션이다. JMF(2205a)는, PAT를 취득하기 위해서, OS(2201)의 라이브러리(2201b)를 통해서, TS 디코더(1202)에 PID「0」과 CPU(1206)를 지정한다. TS 디코더(1202)가 PID「0」및 table_id 「0」으로 필터링을 행하여, 1차 기억부(1208)를 통해서 CPU(1206)에 인도함으로써, JMF(2205a)는 PAT을 수집한다. 도 27은, 수집한 PAT의 정보의 일례를 모식적으로 나타낸 표이다. 열(2601)은, 프로그램 넘버이다. 열(2602)은, PID이다. 열(2602)의 PID는 PMT을 취득하기 위해서 이용된다. 행(2611∼2631)은, 채널의 프로그램 넘버와 대응하는 PID의 조이다. 여기에서는, 3개의 채널이 정의되어 있다. 행(2611)은 프로그램 넘버「101」과 PID「501」의 조가 정의되어 있다. 현재, JMF(2205a)에 부여된 채널의 식별자가「2」라고 하면, JMF(2205a)는, 도 25의 행(2412)을 참조하여, 대응하는 프로그램 넘버「102」를 획득하고, 다음에, 도 27의 PAT의 행(2612)을 참조하여, 프로그램 넘버「102」에 대응하는 PID「502」를 획득한다. PMT는, Program Map Table의 약자이고, PAT에서 규정된 PID의 TS 패킷에 격납되어 송신되는, table_id가「2」인 MPEG2 섹션이다. JMF(2205a)는, PMT을 취득하기 위해서, OS(2201)의 라이브러리(2201b)를 통해서, TS 디코더(1202)에 PAT로부터 취득한 PID와 table_id「2」를 지정한다. 여기에서, 지정하는 PID는「502」로 한다. TS 디코더(1201)가 PID「502」및 table_id「2」로 필터링을 행하여, 1차 기억부(1208)를 통해서 CPU(1206)에 인도함으로써, JMF(2205a)는 PMT를 수집한다. 도 28은, 수집한 PMT의 정보의 일례를 모식적으로 나타낸 표이다. 열(2701)은, 스트림 종별이다. 열(2702)은, PID이다. 열(2702)에서 지정되는 PID의 TS 패킷에는, 스트림 종별로 지정된 정보가 페이로드에 격납되어 송신되고 있다. 열(2703)은 보충 정보이다. 행(2711∼2714)은 엘리멘터리 스트림이라고 불리는, PID와 송신하고 있는 정보의 종별의 조이다. 행(2711)은, 스트림 종별「음성」과 PID「5011」의 조이고, PID「5011」의 TS 패킷의 페이로드에는 음성이 격납되어 있는 것을 나타낸다. JMF(2205a)는, PMT에서 재생하는 영상과 음성의 PID를 획득한다. 도 28을 참조하여, JMF(2205a)는, 행(2711)으로부터 음성의 PID「5011」를, 행(1712)으로부터 영상의 PID「5012」를 획득한다.
다음에, JMF(2205a)는, OS(2201)의 라이브러리(2201b)를 통해서, 획득한 영상/음성의 PID와 출력처로서 AV 디코더(1203), TS 디코더(1202)에 부여한다. TS 디코더(1202)는 부여된 PID와 출럭처에 기초하여 필터링을 행한다. 여기에서는 PID「5011」「5012」의 TS 패킷을 AV 디코더(1203)에 인도한다. AV 디코더(1203)는, 부여된 PES 패킷의 디코드를 행하여 디스플레이(1205), 스피커(1204)를 통해서 영상/음성을 재생한다.
마지막으로 서비스 매니저(2204)는, Java 라이브러리(2205) 중에 있는 AM(2205b)에 채널의 식별자를 부여하여, 데이터 방송 재생을 의뢰한다. 여기에서, 데이터 방송 재생이란, MPEG2 트랜스포트 스트림에 포함되는 Java 프로그램을 추출하여, Java VM(2203)에 실행시키는 것이다. MPEG2 트랜스포트 스트림에 Java 프로그램을 매입하는 방법은, MPEG 규격서 ISO/IEC13818-6에 기술된 DSMCC라는 방식을 이용한다. 여기에서는 DSMCC의 상세한 설명은 생략한다. DSMCC 방식은, MPEG2 트랜스포트 스트림의 TS 패킷 중에, 컴퓨터에서 사용되고 있는 디렉토리나 파일로 구성되는 파일 시스템을 MPEG2 섹션을 이용하여 인코드하는 방법을 규정하고 있다. 또, 실행하는 Java 프로그램의 정보는 AIT라고 불리는 형식으로, MPEG2 트랜스포트 스트림의 TS 패킷 중에 매입되어, table_id가 「0x74」인 MPEG2 섹션으로서 송신되고 있다. AIT는, DVB-MHP 규격(정식으로는, ETIS TS 101 812 DVB-MHP 사양 V1. 0. 2)의 10장에 정의되어 있는, Application Information Table의 약자이다.
AM(2205b)은, 우선, AIT을 획득하기 위해서, JMF(2205a)와 동일하게 PAT, PMT를 취득하고, AIT가 격납되어 있는 TS 패킷의 PID를 획득한다. 현재, 부여된 채널의 식별자가「2」이고, 도 27의 PAT, 도 28의 PMT가 송신되어 있으면, JMF(2205a)와 동일한 순서로, 도 28의 PMT를 획득한다. AM(2205b)은, PMT로부터 스트림 종별이「데이터」이고 보충 정보로서「AIT」를 갖는 엘리멘트리 스트림으로부터 PID를 추출한다. 도 28을 참조하여, 행(1713)의 엘리멘트리 스트림이 해당하고, PID「5013」를 획득한다.
AM(2205b)은, OS(2201)의 라이브러리(2201b)를 통해서 TS 디코더(1202)에 AIT의 PID와 table_id「0x74」를 부여한다. TS 디코더(1202), 부여된 PID 및 table_id에서 필터링을 행하여, 1차 기억부(1208)를 통해서 CPU(1206)에 인도한다. 이 결과, AM(2205b)은, AIT의 패킷을 수집할 수 있다. 도 29는, 수집한 AIT의 정보의 일례를 모식적으로 나타낸 표이다. 열(2801)은 Java 프로그램의 식별자이다. 열(2802)은 Java 프로그램의 제어 정보이다. 제어 정보에는「autostart」「present」「kill」등이 있고, 「autostart」는 즉시 단말장치(1200)가 이 프로그램을 자동적으로 실행하는 것을 의미하며, 「present」는 자동 실행하지 않는 것을 의미하고, 「kill」은 프로그램을 정지하는 것을 의미한다. 열(2803)은, DSMCC 방 식으로 Java 프로그램을 포함하고 있는 PID를 추출하기 위한 DSMCC 식별자이다. 열(2804)은 Java 프로그램의 프로그램명이다. 행(2811과 2812)은 Java 프로그램의 정보의 조이다. 행(2811)으로 정의되는 Java 프로그램은, 식별자「301」, 제어 정보「autostart」, DSMCC 식별자「1」, 프로그램명「a/TopXlet」의 조이다. 행(2812)에 정의되는 Java 프로그램은, 식별자「302」, 제어 정보「present」, DSMCC 식별자「1」, 프로그램명「b/GameXlet」의 조이다. 여기에서 2개의 Java 프로그램은 동일 DSMCC 식별자를 갖지만, 이것은 1개의 DSMCC 방식으로 인코드된 파일 시스템 내에 2개의 Java 프로그램이 포함되어 있는 것을 나타낸다. 여기에서는, Java 프로그램에 대해서 4개의 정보밖에 규정하지 않지만, 실제로는 보다 많은 정보가 정의된다. 상세한 것은 DVB-MHP 규격을 참조하기 바란다.
AM(2205b)은, AIT 중에서「autostart」의 Java 프로그램을 찾아내어, 대응하는 DSMCC 식별자 및 Java 프로그램명을 추출한다. 도 29를 참조하여, AM(2205b)는 행(2811)의 Java 프로그램을 추출하여, DSMCC 식별자「1」및 Java 프로그램명「a/TopXlet」을 획득한다.
다음에 AM(2205b)은, AIT에서 취득한 DSMCC 식별자를 이용하여, 파일 시스템을 DSMCC 방식으로 격납하고 있는 TS 패킷의 PID를 PMT로부터 획득한다. 구체적으로는, PMT 중에서 스트림 종별이「데이터」이고, 보충 정보의 DSMCC 식별자가 합치되는 엘리멘트리 스트림의 PID를 취득한다.
현재, DSMCC 식별자가「1」이고, PMT가 도 28로 되면, 행(2714)의 엘리멘트리 스트림이 합치되어, PID「5014」를 취출한다.
AM(2205b)은, OS(2201)의 라이브러리(2201b)를 통해서 TS 디코더(1202)에 DSMCC 방식으로 데이터가 매입된 MPEG2 섹션을 전송하는 TS 패킷의 PID 및 섹션 필터 조건을 지정한다. 여기에서는, PID「5014」를 부여한다. TS 디코더(1202)는 부여된 PID를 이용하여 DSMCC용 MPEG2 섹션의 필터링을 행하여, 1차 기억부(1208)을 통해서 CPU(1206)에 인도한다. 이 결과, AM(2205b)은, 필요한 DSMCC용 MPEG2 섹션을 수집할 수 있다. AM(2205b)은, 수집한 PMEG2 섹션으로부터, DSMCC 방식에 따라서 파일 시스템을 복원하여, 1차 기억부(1208)에 보존한다. MPEG2 트랜스포트 스트림 중의 TS 패킷으로부터 파일 시스템 등의 데이터를 취출하여 1차 기억부(1208), 2차 기억부(1207) 등의 기억 수단에 보존하는 것을 이후, 다운로드라고 부른다.
도 30은, 다운로드한 파일 시스템의 일례이다. 도면 중, 원은 디렉토리를, 사각은 파일을 나타내고, 2901은 루트 디렉토리, 2902는 디렉토리「a」, 2903은 디렉토리「b」, 2904는 파일「TopXlet.class」, 2905는 파일「GameXlet.class」이다.
다음에 AM(2205b)은, 1차 기억부(1208)에 다운로드한 파일 시스템 중에서 실행하는 Java 프로그램을 JavaVM(2203)에 인도한다. 현재, 실행하는 Java 프로그램명이「a/TopXlet」라고 하면, Java 프로그램명의 마지막에「.class」를 부가한 파일「a/TopXlet.class」가 실행해야 하는 파일이 된다. 「/」는 디렉토리나 파일명의 단락이고, 도 30을 참조하여, 파일(2904)이 실행해야 하는 Java 프로그램이다. 다음에 AM(2205b)은, 파일(2904)을 JavaVM(2203)에 인도한다.
또한, AM(2205b)이 실행해야 하는 Java 프로그램을 참조하는 수법은 AIT에 의한 것뿐만이 아니다. 미국 케이블 시스템에서 이용되는 것이 상정되는 OCAP에서는 도 3에 기재되는 OOB에서 어플리케이션의 참조 정보를 기재하는 XAIT가 이용되고 있다. 그 외에, ROM(1209)에 미리 기록되어 있는 것을 기동하는, 2차 기억부(1207)에 다운로드하여 기억한 것을 기동하는 등의 방법도 생각할 수 있다.
JavaVM(2203)은, 인도된 Java 프로그램을 실행한다.
서비스 매니저(2204)는, 다른 채널의 식별자를 수취하면, Java 라이브러리(2205)에 포함되는 각 라이브러리를 통해서 재생하고 있는 영상·음성 및 Java 프로그램의 실행을, 동일하게 Java 라이브러리(2205)에 포함되는 각 라이브러리를 통해서 정지하고, 새롭게 수취한 채널의 식별자에 기초하여, 영상·음성의 재생 및 Java 프로그램의 실행을 행한다.
Java 라이브러리(2205)는, ROM(1209)에 격납되어 있는 다수의 Java 라이브러리의 집합이다. 본 실시 형태에서는, 여기에서는, Java 라이브러리(2205)는, JMF(2205a), AM(2205b), Tuner(2205c), CA(2205d), Section Filter(2205e), 디바이스 관리 수단인 디바이스 매니저(2205f) 등을 포함하고 있다.
다음에 본 발명의 근간인 디바이스 매니저(2205f)에 관해서 설명한다.
상기한 바와 같이 기동되는 Java 언어로 기술된 프로그램은, 다양한 기능을 실현하는 것이 가능하다. Java 프로그램은 Java 라이브러리(2205)를 이용하여 그 기능을 실현한다. Java 라이브러리(2205) 내부에는 디지털 방송 수신 장치의 내부에 존재하는 디바이스에 관한 관리를 행하는 디바이스 매니저(2205f)가 포함된다. 디바이스 매니저(2205f)는, 다수의 디바이스를 논리적으로 접속하는 기능 및 그것 에 관한 정보를 제공하는 기능을 갖는다.
도 12 내지 도 17에 나타내는 하드웨어 구성예나, 그 각각 대응하는 디바이스 구성과 각 디바이스의 입출력을 나타내는 도 18 내지 도 21에 나타내는 바와 같이, 어떠한 하드웨어 구성이 되어도, 디지털 방송 신호로부터 필요한 정보를 추출하는 과정에서 이용되는 하드웨어는 종류가 어느 정도 한정된다. 본 실시 형태에서는 「튜너」「PID 필터」「섹션 필터」「디스크램블러」「AV 디코더」를 방송 신호 처리에 이용하는 디바이스로 포착하여, Java 프로그램에 그 제어 기능을 제공한다. 도 12를 그 하드웨어 구성도로 하고, 본 실시 형태에서의 각 디바이스의 수는 도 12에 준거한다. AV 디코더(1203)는 영상 및 음성을 동시에 디코드하는 기능을 갖고, 영상을 전송하는 PES 패킷과 음성을 전송하는 PES 패킷을 동시에 취입 가능하다. TS 디코더(1202) 내에 존재하는 PID 필터의 수는 X개, 섹션 필터의 수는 Y개, 디스크램블러의 수를 Z개로 한다. 동일 종류의 디바이스가 다수 존재하는 경우, 그 전부는 도 18에 표현되는 순서에 따라서 물리적으로 접속되어 있는 한, 어느 디바이스에도 논리적으로 접속 가능한 것으로 한다. 요컨대 모든 PID 필터는 튜너와 논리적으로 접속 가능하고, 모든 디스크램블러는 모든 PID 필터와 논리적으로 접속 가능하며, 모든 섹션 필터는 모든 PID 필터 및 모든 디스크램블러와 논리적으로 접속 가능하고, AV 디코더는 모든 PID 필터 및 모든 디스크램블러와 논리적으로 접속 가능하다. 이 상황 하에서 가능해지는 디바이스 논리 접속 패스를 도 31에 나타낸다. 도 31(a)는 영상 및 음성을 재생할 때에 이용되는 디바이스 논리 접속 패스이고, 스크램블이 걸려 있지 않은 PES 패킷에 의해서 전송되는 영상 및 음성을 재생할 때에 이용된다. 도 31(b)는 영상 및 음성을 재생할 때에 이용되는 디바이스 논리 접속 패스이고, 스크램블이 걸려 있는 PES 패킷에 의해서 전송되는 영상 및 음성을 재생할 때에 이용된다. 도 31(c)는 MPEG2 섹션에 의해서 전송되는 데이터에 액세스할 때에 이용되는 디바이스 논리 접속 패스이고, 스크램블이 걸려 있지 않은 MPEG2 섹션에 의해서 전송되는 데이터에 액세스하는 경우에 이용된다. 도 31(d)는 MPEG2 섹션에 의해서 전송되는 데이터에 액세스할 때에 이용되는 디바이스 논리 접속 패스이고, 스크램블이 걸려 있는 MPEG2 섹션에 의해서 전송되는 데이터에 액세스하는 경우에 이용된다. 도 31에 나타내는 4개의 패스 중 어느 하나를 이용하여, Java 프로그램은 방송 신호에 액세스하는 것이 가능하다. 본 실시 형태에서의 논리 접속의 전체 개념도를 도 32에 나타낸다. 본 실시 형태에서는, 그 하드웨어 구성은 도 12에 준하기 때문에, 튜너(1801) 및 AV 디코더(1805)는 각각 1개씩 존재하고, PID 필터(1802), 섹션 필터(1803), 디스크램블러(1804)는 다수 존재하며, 순서를 준수한 다음에 서로 논리적으로 접속된다.
Java 프로그램은 디바이스 매니저(2205f)에 액세스함으로써 디바이스 논리 접속 패스를 형성하는 것이 가능해진다. 본 실시 형태에서는, 디바이스 매니저(2205f)는 도 33에 표현하는 바와 같은 구성을 취한다. 디바이스 매니저(2205f)는 디바이스 기본 정보 관리부(3201), 디바이스 오브젝트 관리부(3202), 디바이스 물리 접속 관리부(3203), 디바이스 논리 접속 관리부(3204), 디바이스 논리 접속부(3205), 디바이스 논리 접속 해제부(3206)의 6개의 모듈로 이루어진다.
디바이스 기본 정보 관리부(3201)는 디바이스 매니저(2205f)가 취급하는 디 바이스의 종류와 그 수, 그리고 디바이스 단체에 관한 정보를 유지한다. 디바이스 기본 정보 관리부(3201)는 1차 기억부(1208) 혹은 2차 기억부(1207) 혹은 ROM(1209) 내에 정보를 유지하고, 디바이스 매니저(2205f)에 의해서 관리된다. 또, 레지스터 등, 전용의 하드웨어 상에 관리되어도 된다.
디바이스 오브젝트 관리부(3202)는 디바이스와 디바이스를 표현하는 오브젝트의 1대1 대응을 관리한다. 디바이스 오브젝트 관리부(3202)는, 1차 기억부(1208) 내에 정보를 유지하고, 디바이스 매니저(2205f)에 의해서 관리된다. 또, 레지스터 등, 전용의 하드웨어 상에 관리되어도 된다.
디바이스 물리 접속 관리부(3203)는 하드웨어 구성 상의 디바이스의 물리 접속 정보를 관리한다. 예를 들면 도 18에서는 튜너(1801)는 PID 필터(1802)와 물리적으로 접속되어 있고, PID 필터(1802)는 튜너(1801) 및 섹션 필터(1803) 및 디스크램블러(1804) 및 AV 디코더(1805)와 물리적으로 접속되어 있다는 정보를 관리한다. 디바이스 물리 접속 관리부(3203)는 기본적으로 1차 기억부(1208) 혹은 2차 기억부(1207) 혹은 ROM(1209) 내에 정보를 유지하고, 디바이스 매니저(2205f)에 의해서 관리된다. 또, 그 대체 실장으로서, 디바이스 자신의 상태를 디바이스 물리 접속 관리부로서 이용하여, 물리 접속 상태의 취득이 필요할 때에는 디바이스의 하드웨어 상의 물리 접속 구성, 그것을 체크하는 실장을 취해도 된다. 또, 레지스터 등, 전용의 하드웨어 상에 관리되어도 된다.
디바이스 논리 접속 관리부(3204)는 디바이스의 논리 접속 상태를 관리한다. 디바이스 논리 접속 관리부(3204)는 기본적으로 1차 기억부(1208) 내에 정보를 유 지하고, 디바이스 매니저(2205f)에 의해서 관리되지만, 그 대체 실장으로서, 디바이스 자신의 상태를 그것으로서 이용하여, 접속 상태의 취득이 필요할 때에는 디바이스 그것을 체크하는 실장을 취해도 된다. 또, 레지스터 등, 전용의 하드웨어 상에 관리되어도 된다.
디바이스 논리 접속부(3205)는 디바이스를 논리적으로 접속하는 기능을 갖는다. 디바이스 논리 접속부(3205)는 디바이스의 접속을 행하는 라이브러리로서 실현되고, ROM(1209)에 격납되며, CPU(1206)에 의해서 실행된다.
디바이스 논리 접속 해제부(3206)는 디바이스의 논리적인 접속의 해제를 행하는 기능을 갖는다. 디바이스 논리 접속 해제부(3206)는 디바이스의 접속 해제를 행하는 라이브러리로서 실현되고, ROM(1209)에 격납되며, CPU(1206)에 의해서 실행된다.
다음에, 디바이스 매니저(2205f)에 필요하게 되는 기능을 열거하여, 각각의 기능에 대해서 도 33의 각 부(3201∼3206)와의 관련성을 도시하면서, 그 실장 수속을 나타낸다.
디바이스 매니저(2205f)의 제1 기능으로서, 디바이스 매니저(2205f)가 관리하는 디바이스의 종류(이후, 디바이스 타입이라고 부른다)를 취득하는 기능을 Java 프로그램에 제공한다. 본 실시 형태에서는, 전술한 바와 같이, 「튜너」「PID 필터」「섹션 필터」「디스크램블러」「AV 디코더」를 취급하기 위해서, 이 디바이스의 종류를 취득하는 기능을 Java 프로그램에 제공한다. 본 기능을 이용함으로써 Java 프로그램은 자신이 논리 접속을 행하는 것이 가능한 디바이스의 디바이스 타 입을 취득할 수 있다. 본 기능을 실현하기 위한 수속은 도 34의 플로 챠트에 나타낸다. 우선 Java 프로그램으로부터 디바이스 타입 취득 요구를 수취하면(S3301), 디바이스 매니저(2205f)는 디바이스 기본 정보 관리부(3201)에 문의를 행하여 디바이스 기본 정보 관리부(3201)가 관리하는 모든 디바이스 타입을 취득하여(S3302), Java 프로그램으로 되돌려 보낸다(S3303).
디바이스 매니저(2205f)의 제2 기능으로서, 디바이스 매니저(2205f)가 관리하는 디바이스의 수를 되돌려 보내는 기능을 Java 프로그램에 제공한다. 본 실시 형태에 대해서는, 튜너에 대해서는 튜너(1801)의 1개밖에 하드웨어 상에 존재하지 않기 때문에 1을, PID 필터이면 X개 존재하기 때문에 X를 되돌려 보낸다. 본 기능을 이용하여, Java 프로그램은 디바이스 타입마다 하드웨어 구성 상에 존재하는 디바이스의 수를 얻는 것이 가능해진다. 본 기능을 실현하기 위한 수속은 도 35의 플로 챠트에 나타낸다. Java 프로그램으로부터 디바이스 타입을 지정하여 디바이스수 취득 요구를 수취하면(S3401), 디바이스 매니저(2205f)는 디바이스 기본 정보 관리부(3201)에 문의하여, 지정된 디바이스 타입에 합치하는 디바이스의 수를 취득하고(S3402), 취득한 디바이스수를 되돌려 보낸(S3403). 또한, 수속(S3401)에서, 디바이스 타입의 지정을 수취하지 않고, 방송 수신 장치에 존재하는 모든 디바이스의 수를 되돌려 보내는 실장도 있을 수 있다.
디바이스 매니저(2205f)의 제3의 기능으로서, 디바이스 매니저(2205f)가 관리하는 디바이스와 1대1로 대응하는 Java 오브젝트(이후, 디바이스 오브젝트(디바이스 식별자)라고 부른다)를 되돌려 보내는 기능을 제공한다. 본 실시 형태에서의 튜너는 도 18에서의 튜너(1801)의 1개뿐이기 때문에, 디바이스 타입이“튜너”인 「디바이스 오브젝트 취득 요구」에 대해서는 튜너(1801)와 1대1로 대응하는 오브젝트를 되돌려 보낸다. 또, 본 실시 형태에서의 섹션 필터는 전술한 바와 같이 Y개 존재하기 때문에, 디바이스 타입이 “섹션 필터”인 「디바이스 오브젝트 취득 요구」에 대해서는 각각의 섹션 필터와 1대1로 대응하는 Y개의 오브젝트를 되돌려 보낸다. 본 기능에서 되돌아오는 오브젝트는 그 디바이스와 대응하고 있기 때문에, Java 프로그램의 실행시에 그 오브젝트를 디바이스의 식별자로서 이용하는 것이 가능하다. 예를 들면, 튜너와 PID 필터의 논리적인 접속을 행하는 경우, 튜너(1801)를 표현하는 디바이스 오브젝트와 PID 필터(1802)의 X개 중 1개를 1대1로 표현하는 디바이스 오브젝트에 대한 논리 접속 조작은, 그대로 튜너(1801)와“PID 필터(1802)의 X개 중, 디바이스 오브젝트와 1대1로 대응하는 PID 필터”를 논리적으로 접속하는 것으로 해석된다. 본 기능을 이용하여, Java 프로그램은 하드웨어 구성 상에 존재하는 디바이스에 대한 식별자를 얻는 것이 가능해진다. 본 기능을 실현하기 위한 수속예를 도 36의 플로 챠트에 나타낸다. 우선, Java 프로그램으로부터 디바이스 타입을 지정하여, 「전체 디바이스 오브젝트 취득 요구」를 수취한다(S3501). 그렇게 하면 디바이스 매니저(2205f)는 디바이스 오브젝트 관리부(3202)에 문의하여, 지정된 디바이스 타입을 갖는 디바이스에 대응하는 모든 디바이스 오브젝트를 취득한다(S3502). 그 후, 취득한 모든 디바이스 오브젝트를 Java 프로그램으로 되돌려 보낸다(S3503).
디바이스 매니저(2205f)의 제4의 기능으로서, 디바이스 매니저(2205f)는, 디 바이스 매니저(2205f)가 관리하는 디바이스 사이에서의 논리 접속이 가능한지의 여부의 판정 결과(논리 접속 가능성)를 취득하는 디바이스 논리 접속 가능성 취득 기능을 Java 프로그램에 제공한다. 예를 들면, 본 실시 형태에서, 도 18로부터 알 수 있는 바와 같이, 섹션 필터와 AV 디코더는 직접 물리적으로 접속되어 있지 않기 때문에, 논리적으로 접속하는 것은 불가능하다. 그와 같이 디바이스 지정에 의해, 그 접속 자체가 가능한지의 여부를 취득하는 기능을 실현한다. 본 기능을 이용하여, Java 프로그램은 디바이스 사이의 논리 접속 가능성을 아는 것이 가능해진다. 본 기능을 실현하기 위한 수속을 도 37에 나타낸다. 우선 디바이스 매니저(2205f)는 Java 프로그램으로부터, 논리 접속 가능성을 조사하고 싶은 2개의 디바이스에 대응하는 디바이스 오브젝트를 지정하여 「디바이스의 논리 접속 가능성 취득 요구」를 수취하면(S3601), 디바이스 오브젝트 관리부(3202)에 문의하여, 지정된 2개의 디바이스 오브젝트에 대응하는 디바이스를 얻는다(S3602). 다음에, 디바이스 물리 접속 관리부(3203)에 문의하여 2개의 디바이스에 관한 물리 접속 상태를 취득한다(S3603). 취득한 물리 접속 상태를 판단하여(S3604), 만일 직접 물리적으로 접속되어 있으면 “가능”을(S3605), 직접 물리적으로 접속되어 있지 않으면 “불가”를 되돌려 보낸다(S3606). 물리적으로 접속되어 있지 않으면 아무것도 하지 않는다.
디바이스 매니저(2205f)의 제5의 기능으로서, 디바이스 매니저(2205f)가 관리하는 디바이스의 논리 접속 상태를 취득하는 기능을 Java 프로그램에 제공한다. 예를 들면, 어느 섹션 필터가 PID 필터에 논리적으로 접속되어 있는 경우, 그 섹션 필터를 다른 PID 필터에 논리 접속하면, 디바이스 논리 접속 패스 내의 디바이스 구성이 변화되어 버려서, 디바이스의 동작 결과에 영향을 주기 때문에, 바람직하지 않다. 본 기능을 이용하여, Java 프로그램은 디바이스가 논리 접속되어 있는지 어떤지, 디바이스의 상태를 취득하는 것이 가능해진다. 본 기능을 실장하기 위한 수속으로서, 도 38을 나타낸다. 디바이스 매니저(2205f)는, Java 프로그램으로부터, 논리적인 접속의 상태를 조사하고 싶은 2개의 디바이스에 대응하는 디바이스 오브젝트를 지정하여 「디바이스 논리 접속 상태 취득 요구」를 수취하면(S3701), 디바이스 오브젝트 관리부(3202)에 문의하여, 2개의 디바이스 오브젝트에 대응하는 디바이스를 얻는다(S3702). 다음에, 디바이스 논리 접속 관리부(3204)에 문의하여, 2개의 디바이스의 논리적인 접속의 상태를 얻고(S3703), 그 결과를 Java 프로그램으로 되돌려 보낸다(S3704).
디바이스 매니저(2205f)의 제6의 기능으로서, 디바이스 매니저(2205f)가 관리하는 디바이스 사이의 논리적인 접속을 행하는 기능을 Java 프로그램에 제공한다. 논리적으로 접속 가능한 디바이스가 지정된 경우에는, 디바이스를 논리적으로 접속한다. 본 기능을 이용하여, Java 프로그램은 디바이스의 논리적인 접속을 행한다. 본 기능을 실장하기 위한 수속을 도 39에 도시한다. 디바이스 매니저(2205f)는 Java 프로그램으로부터, 논리적으로 접속하고 싶은 2개의 디바이스에 대응하는 디바이스 오브젝트를 지정하여 「디바이스 논리 접속 요구」를 수취하면(S3801), 디바이스 오브젝트 관리부(3202)에 문의하여, 지정된 2개의 디바이스 오브젝트에 대응하는 디바이스를 얻는다(S3802). 다음에, 디바이스 물리 접속 관리 부(3203)에 문의하여, 2개의 디바이스의 물리 접속 상태를 취득하여(S3803), 논리 접속 가능성을 판정한다(S3804). 만일 논리 접속 가능하면, 디바이스 논리 접속 관리부(3204)에 문의하여(S3805), 2개의 디바이스의 논리 접속 상태를 취득하여, 판정을 행한다(S3806). 만일 2개의 디바이스 사이가 논리적으로 접속되어 있지 않고, 또한 한쪽의 디바이스가 또다른 한쪽과 동일 디바이스 타입의 다른 디바이스와 논리적으로 접속되어 있지 않은 것이면, 디바이스 논리 접속부(3205)를 이용하여 2개의 디바이스를 논리적으로 접속하여(S3807), 디바이스 논리 접속 관리부(3204)에 2개의 디바이스를 접속한 취지를 기록한다(S3808). S3806에서의 판정에 대해서 보다 상세히 서술하면, 우선 “2개의 디바이스 사이에 이미 논리 접속이 존재하는”경우에는 재차 접속을 행하는 것은 불필요한 일이기 때문에, 아무것도 하지 않는다. 또한, 만일 “2개의 디바이스의 한쪽이 또다른 한쪽과 동일 디바이스 타입의 다른 디바이스와 논리적으로 접속되어 있는”것이면, 무리하게 논리적으로 접속하면, 이미 존재하는 디바이스 논리 접속 패스를 파괴하여 버린다. 예를 들면, PID 필터(A)와 섹션 필터(A)가 지정되었을 때에, 논리 접속 상태의 조사를 행하여, 만일 PID 필터(A)가 이미 섹션 필터(B)와 접속되어 있었던 경우에는, 아무것도 하지 않는다. 단 PID 필터(A)가 튜너(A)와 논리 접속 상태에 있지만, 다른 섹션 필터와는 논리적으로 접속되어 있지 않은 것이면, “동일 디바이스 타입”이 아니기 때문에, 디바이스 논리 접속 패스를 파괴하지 않고, 접속을 행한다.
디바이스 매니저(2205f)의 제7의 기능으로서, 디바이스 매니저(2205f)가 관리하는 디바이스 사이의 논리적인 접속을 해제하는 기능을 Java 프로그램에 제공한 다. 본 기능을 이용하여, Java 프로그램은 디바이스의 논리적인 접속의 해제를 행한다. 본 기능을 실장하기 위한 수속을 도 40에 나타낸다. 디바이스 매니저(2205f)는 Java 프로그램으로부터, 논리적인 접속을 해제하고 싶은 2개의 디바이스에 대응하는 디바이스 오브젝트를 지정하여 「디바이스 논리 접속 해제 요구」를 수취하면(S3901), 디바이스 오브젝트 관리부(3202)에 문의하여, 지정된 2개의 디바이스 오브젝트에 대응하는 디바이스를 얻는다(S3902). 다음에, 디바이스 논리 접속 관리부(3204)에 문의하여, 2개의 디바이스의 논리 접속 상태를 취득하여(S3903), 판정한다(S3904). 만일 논리적으로 접속되어 있으면, 디바이스 논리 접속 해제부(3206)를 이용하여 2개의 디바이스를 접속 해제하고(S3905), 디바이스 논리 접속 관리부(3204)에 2개의 디바이스를 접속 해제한 취지를 기록한다(S3906). 만일 논리적으로 접속되어 있지 않으면 아무것도 하지 않는다.
도 41에 Java 프로그램이 디바이스의 논리적인 접속을 행하는 수속예를 나타낸다. 도 41에 나타내는 플로 챠트는 3개의 섹션 필터를 이용하여 방송 신호로부터 데이터를 추출할 때에 이용되는 수속을 예시한다. 본 실시 형태에서는, Java 프로그램은 섹션 필터를 이용할 때에 필요한 디바이스 및, 그 디바이스의 접속 순서에 관한 지식을 미리 갖는다. 우선, 디바이스의 종류를 취득한다(S4001). 다음에 얻어진 디바이스의 종류에 튜너, PID 필터, 섹션 필터가 취급되어 있는지의 여부를 확인한다(S4002). 만일 필요한 디바이스 타입이 모두 디바이스 매니저(2205f)에 취급되어 있으면, 디바이스의 디바이스 타입마다 디바이스의 수를 취득한다(S4003). 실제로 존재하는 디바이스의 수가, 이용하고 싶은 디바이스수를 상 회하는지의 여부(이 예에서는, 튜너가 1이상, PID 필터가 3이상, 섹션 필터가 3이상인지의 여부)를 판정하여(S4004), 상회하는 경우에는 각 디바이스 타입에 관해서 디바이스 오브젝트를 취득한다(S4005). 다음에 디바이스 오브젝트끼리의 논리 접속 가능성을 취득하여(S4006), 서로 논리 접속 가능한지의 여부를 조사한다(S4007). 구체적으로는 튜너와 각 PID 필터의 논리 접속 가능성, 및 각 PID 필터와 각 섹션 필터의 논리 접속 가능성을 조사한다. 모두 논리 접속 가능하면, 다음에 각 디바이스의 논리 접속 상태를 취득한다(S4008). 미접속 상태의 디바이스가 발견되면(S4009), 각 디바이스를 논리적으로 접속한다(S4010). 이 수속을 밟음으로써, Java 프로그램은 디바이스를 서로 논리적으로 접속할 수 있고, 이후, Java 라이브러리(2205)에 존재하는 튜너(2205a) 등의「으로 되돌의 각 디바이스에 대한 조작 라이브러리」를 이용함으로써, 소망의 기능의 실현이 가능해진다. 판정 수속(S4002), 판정 수속(S4004), 판정 수속(S4007), 판정 수속(S4009)에서, 조건을 만족시키지 않는 경우에는 그 자체로는 디바이스의 논리적인 접속은 불가능하다. 판정 수속(S4007) 및 판정 수속(S4009)에서 조건을 만족시키지 않은 경우에는, S4005에서 취득한 디바이스 오브젝트에 여유가 있는 것이면 그것들에 대해서 시험하는 것이 가능하다. 또 판정 수속(S4009)에서 조건을 만족시키지 않은 경우에는, 디바이스 매니저(2205f)의 제7의 기능인 디바이스 논리 접속 해제 기능을 이용하여, 기존의 디바이스 사이의 논리 접속을 해제한 후, 재차 시험하는 것이 가능하다.
또한, 본 실시 형태에서는, ROM(1209)이 보존하는 내용을 2차 기억부(1207)가 보존함으로써, ROM(1209)을 삭제하는 것도 실시 가능하다. 또, 2차 기억부 (1207)는, 다수의 서브 2차 기억부로 구성하고, 으로 되돌의 서브 2차 기억부가 다른 정보를 보존해도 실시 가능하다. 예를 들면, 1개의 서브 2차 기억부는 튜닝 정보만을 보존하고, 다른 서브 2차 기억부는, OS(2201)의 라이브러리(2201b)를 보존하며, 또한 다른 서브 2차 기억부는, 다운로드한 Java 프로그램을 보존하는 등, 상세하게 분할하는 것이 가능하다.
또, 본 실시 형태에서는, 다운로드한 Java 프로그램을 2차 기억부(1207)에 보존하고 있었지만, 1차 기억부(1208)에 보존하는 것도 실시 가능하다. 1차 기억부(1208)에 보존하는 경우, 전원 OFF시에, 보존된 정보는 모두 소거된다.
또, 본 발명은, 정보 처리 장치로서 방송 수신 장치를 예로 설명을 하였지만, 이것 이외에도 퍼스널 컴퓨터나 휴대전화 등의 정보 처리 장치에서도 적응 가능하다. 또, 방송 수신이 가능하지 않아도 CD, DVD, BD(Blue-ray Disc), DVHS, 메모리 등의 정보를 기록하기 위한 기록매체 내의 데이터 처리(예를 들면, 기록 처리, 재생 처리 등)를 행하는 정보 처리 장치에서도 당연히 적용 가능하다.
(실시 형태 2)
실시 형태 1의 하드웨어 구성은 도 12에 준거하고 있고, 디스크램블러(1804)는 TS 디코더(1202) 중에 존재하는 전제이다. 그러나, 디바이스 매니저(2205f)가 취급하는 디바이스의 물리 접속 순서는 항상 일정한 것은 아니다. 본 실시 형태의 하드웨어 구성은 도 15에 준거한다. 도 15에 나타내는 하드웨어 구성에서는, 대응하는 도 20에 나타내는 바와 같이, TS 디코더(1502) 중에 디스크램블러는 존재하지 않고, 어댑터(1511) 내부에 디스크램블러(2004)가 존재한다. 본 구성에서는 물리 접속의 순서가 실시 형태 1과 다르다. 이와 같은 경우에서도, 디바이스 물리 접속 관리부(3203)는, 디바이스의 물리 접속 순서에 관한 정보를 관리한다. 디바이스 매니저(2205f)는 디바이스의 접속 가능성을 취득할 때, 도 37과 동일하게, 디바이스 물리 접속 관리부(3203)에 문의함으로써 디바이스의 접속 순서를 취득하여, 그것을 고려한 판정이 가능하다. 이와 같은 실장을 행함으로써, 본 발명은, 디바이스의 물리 접속 순서에 의존하지 않고, 어떠한 하드웨어 구성 상에서도 적용 가능하다.
(실시 형태 3)
실시 형태 1의 하드웨어 구성은 도 12에 준거하고 있고, 디바이스 매니저(2205f)는「튜너」「PID 필터」「섹션 필터」「디스크램블러」「AV 디코더」를 디바이스로서 취급하고 있었다. 그러나, 도 12에는, 「디스플레이」「스피커」등의 다른 디바이스가 존재한다. 또, 도 12 및 도 18에 존재하는 것 이외의 디바이스가 존재하는 경우도 있다. 예를 들면 도 12에 존재하는 TS 디코더(1202)에는, 도 18에 존재하는 디바이스 이외에도, 입력된 MPEG2 트랜스포트 스트림을, TS 디코더(1202)에 물리 접속된 다른 디바이스에 출력하는 「스위치」 디바이스가 존재하는 경우가 있다. 또, 입력된 MPEG2 트랜스포트 스트림으로부터 CPU(1206)의 지정에 따라서 불필요한 정보를 삭제하여, “ 퍼셜 TS”라고 불리는 부분적인 TS를 TS 디코더(1202)에 물리 접속된 다른 디바이스에 흐르게 하는 디바이스가 존재하는 경우도 있다. HDD(Hard Disk Drive)를 갖는 HDD 리코더에서는 “HDD”가 입력을 MPEG2 트랜스포트 스트림으로 하는 디바이스로서 존재하고, DVD 리코더에 관해서는 “DVD 미디어 제어 장치”가 MPEG2 프로그램 스트림을 입력으로 하는 디바이스로서 존재한다. 이와 같이, 방송 수신 장치 내부에는 실시 형태 1에서 취급하는 디바이스 이외에도, 다양한 디바이스가 존재한다.
예를 들면, 도 42에 도시하는 바와 같은 하드웨어 구성도 가능하다. 이 하드웨어 구성에서는, 도 12의 구성에 더하여 MPEG2 트랜스포트 스트림이 입력되는 HDD(1221), 및 네트워크 등에 MPEG2 트랜스포트 스트림을 출력하는 외부 출력부(1222)를 구비하고 있다.
본 실시 형태의 디바이스 매니저(2205f)는 이들의 정보에 관해서도 취급하는 것이 가능하다. 이것을 위해서는, 디바이스 매니저(2205f)의 각 부가 그것들을 디바이스로서 취급하는 취지의 정보를 관리하면 충분하다. 구체적으로는, 디바이스 기본 정보 관리부(3201)에서 관리하는 디바이스 단체의 정보를 증가시켜서, 디바이스 오브젝트 관리부(3202)에서 관리하는 디바이스와 디바이스 오브젝트의 조를 증가시키고, 디바이스 물리 접속 관리부(3203)가 관리하는 물리 접속 정보를 증가시켜서, 디바이스 논리 접속 관리부(3204)는 추가된 디바이스에 관한 논리 접속 정보를 관리하며, 디바이스 논리 접속부(3205) 및 디바이스 논리 접속 해제부(3206)는, 추가된 디바이스를 취급하도록 변경된다. 다른 실시 형태에서, 디바이스 매니저 내에 또한 모듈이 추가되는 경우에는, 그것에 대해서도 추가한 디바이스의 정보를 관리할 수 있도록 함으로써 본 발명을 적용 가능하다.
이와 같이, 본 발명에서는, 디바이스 매니저(2205f) 내의 각 부의 기본적인 구성 관계나 디바이스 매니저(2205f)의 각 기능의 실현 시퀀스를 변경하지 않고, 용이하게 다른 디바이스를 취급하도록 하는 것이 가능하다.
(실시 형태 4)
실시 형태 1에서는, 디바이스 매니저(2205f)가 관리하는 디바이스로서「튜너」「PID 필터」「섹션 필터」「디스크램블러」「AV 디코더」를 들었다. 그러나 이들 중에서 특히 접속할 필요가 없는 것이나, 관리를 암묵적으로 하고 싶은 것이 존재하는 경우가 있다. 도 31에서는, PID 필터는 반드시 섹션 필터, AV 디코더 중 어느쪽과 접속되어 이용되기 때문에, 다소 유연성은 손상되지만, “PID 필터는 미리 섹션 필터, AV 디코더 중 어느쪽과 접속되어 있다”고 전제하여, 「PID 필터와 섹션 필터」「PID 필터와 AV 디코더」라는 2종류의 디바이스와 추상화하여 인식하는 것도 가능하다. 예를 들면, 섹션 필터를 이용하는 경우, 실시 형태 1에서는, 「튜너」와 「PID 필터」와「섹션 필터」라는 3종류의 디바이스를 접속할 필요가 있지만, 본 실시 형태에서는, 「튜너」와「PID 필터와 섹션 필터」라는 2종류의 디바이스의 접속을 행하면 되고, Java 프로그램의 편리성을 높이는 것이 가능해진다. 실제로, OCAP/DVB-MHP 사양 내에서는, 예를 들면 섹션 필터에 관해서는 “섹션 필터는 미리 PID 필터와 접속되어 있다”고 전제하여, 「PID 필터와 섹션 필터」의 페어가 1종류인 디바이스로서 추상화되어 있다. 이와 같이, 본 발명은, 미리 논리 접속된 디바이스를 1개의 디바이스로서 추상화하여 취급하였다고 해도 적용 가능하다.
본 실시 형태에서는, 디바이스 매니저(2205f)에 존재하는 모든 모듈(3201∼3206)이 실제의 디바이스 페어를 1개의 디바이스로 인식하여 기록을 행함으로써, 상기 기능을 실현한다. 이와 같은 실장을 행함으로써, 본 발명에서의 디바이스 매니저의 개념과 기존의 다른 라이브러리의 친화성을 향상시키는 것이 가능해진다.
(실시 형태 5)
실시 형태 1에서는, 디바이스 매니저(2205f)는 제2의 기능으로서 디바이스수 취득 기능을 구비하고 있다. 본 기능은 디바이스 타입마다 그 디바이스 타입에 합치하는 디바이스의 수를 아는 것이 가능하다. 단, 디바이스의 수는 디바이스 매니저(2205f)의 제3의 기능인 디바이스 오브젝트 취득 기능을 이용하여 구한 디바이스 오브젝트의 수를 계산하는 것으로도 취득 가능하다. 요컨대, 디바이스수 취득 기능은 필수 기능이 아니다.
본 실시 형태에서는, 디바이스 매니저(2205f)는 제2의 기능인 디바이스수 취득 기능을 구비하지 않는다. Java 프로그램은 제3의 기능인 디바이스 오브 젝트 취득 기능을 이용하여 취득된 디바이스 오브젝트의 수를 계산함으로써 디바이스의 수를 취득 가능하다.
(실시 형태 6)
실시 형태 1에서는, 디바이스 매니저(2205f)는 제1의 기능인 디바이스 타입 취득 기능을 Java 프로그램에 대해서 제공하고 있다. 그러나, 특히 DVB-MHP/OCAP에서의 미들웨어 사양 등에서는, 미들웨어가 취급하는 디바이스의 종류는 사양으로 기정되어 있는 경우가 있다. 이와 같은 경우, 디바이스 매니저(2205f)에 지정하는 디바이스 타입으로서, 그와 같은 사양으로 결정되어 있는 디바이스 타입을 사용하면 충분하다.
본 실시 형태에서는, 디바이스 매니저(2205f)는 제1의 기능인 디바이스 타입 취득 기능은 탑재하지 않는다. 본 실시 형태에서는, 디바이스 매니저(2205f)는 제1의 기능인 디바이스 타입 취득 기능을 갖지 않고, Java 프로그램은 미리 기정되어 있는 디바이스 타입을 이용함으로써 디바이스 매니저(2205f)에 대해서 지시를 행한다.
(실시 형태 7)
실시 형태 6에서는, 디바이스 매니저(2205f)는 제1의 기능인 디바이스 타입 취득 기능을 제공하지 않고, Java 프로그램이 이용 가능한 미들웨어가 기정하는 디바이스 타입을, 디바이스 매니저에게 지정하는 디바이스 타입으로서 이용하고 있다. 또한, DVB-MHP/OCAP 사양에는, 디바이스를 1대1로 표현하는 디바이스 오브젝트를 되돌려 보내는 것이 가능한 라이브러리가 존재한다. 예를 들면, DVB-MHP/OCAP 미들웨어에 존재하는 튜너 제어 라이브러리는, 방송 수신 장치 상에 존재하는 튜너와 대응하는 디바이스 오브젝트를 제공하는 기능을 유지하고 있고, Java 프로그램은 이 기능을 이용함으로써, 디바이스 오브젝트를 취득하는 것이 가능하다. 본 기능은 원래, 튜너 제어 라이브러리의 기능을 이용할 때에 튜너를 특정하기 위해서 지정되는 것이 상정되어 있지만, 디바이스를 특정할 수 있다는 점에서는, 실시 형태 1에서 설명되는 디바이스 오브젝트와 동일한 기능을 갖는다.
본 실시 형태에서의 디바이스 매니저(2205f)는 제1의 기능인 디바이스 타입 취득 기능 및 제3의 기능인 디바이스 오브젝트 취득 기능을 유지하지 않는다. 본 실시 형태에서는, 방송 수신 장치 상에서 동작하는 Java 프로그램은, 미들웨어로부 터 취득한 디바이스 오브젝트를 디바이스의 식별자로서, 디바이스 매니저(2205f)의 각 기능을 이용할 때에 지정하는 것을 가능하게 한다. 디바이스 매니저(2205f)는 그 내부 실장에서, 미들웨어의 다른 라이브러리와 협조하여, 디바이스 오브젝트 관리부(3202)를 다른 라이브러리와 공용함으로써, 다른 라이브러리가 되돌려 보내는 디바이스 오브젝트를, 디바이스 매니저(2205f)에 지정할 수 있도록 실장 가능하다.
(실시 형태 8)
실시 형태 1에서는, 디바이스 매니저(2205f)는 제4의 기능으로서, 디바이스 논리 접속 가능성 취득 기능을 구비하고 있다. 이 기능은, 도 41의 수속(S4006)에서 사용되도록, 방송 수신 장치 상에서 동작하는 Java 프로그램이, 디바이스의 논리 접속을 행하기 전에, 디바이스의 논리 접속이 가능한지의 여부를 판단하기 위해서 이용한다. 디바이스의 논리 접속이 가능한지의 여부는 도 37의 수속(S3603)에 도시되는 바와 같이, 디바이스 물리 접속 관리부(3203)에 문의함으로써 취득한다. 그러나, 도 39의 수속(S3803) 및 수속(S3804)에 나타내는 바와 같이, 디바이스 매니저(2205f)의 제6의 기능인 디바이스 논리 접속 기능의 실장에서도 디바이스 논리 접속 가능성의 판단이 행해지고 있고, 만일 디바이스 논리 접속 가능이 아닌 디바이스가 지정된 경우에는 디바이스의 논리 접속을 행하지 않는다. 요컨대 디바이스 논리 접속 가능성의 판단은 생략 가능한 수속이다. 또 디바이스 논리 접속 해제 기능의 경우에는, 도 40의 수속(S3903)에서 디바이스 논리 접속 관리부(3204)에 문의하여 디바이스 논리 접속 상태를 확인하고, 디바이스 논리 접속이 확립되어 있는 경우에만 논리 접속 해제를 행하기 때문에, 특히 디바이스 논리 접속 가능성의 판 단은 필요없다.
본 실시 형태에서의 디바이스 매니저(2205f)는 제4의 기능인 디바이스 논리 접속 가능성 취득 기능은 구비하지 않는다. 그와 같은 경우에서도, 방송 수신 장치 상에서 동작하는 Java 프로그램은, 디바이스 논리 접속 기능의 이용시에는 자동적으로 디바이스의 논리 접속 가능성이 판단된다. 만일 제6의 기능인 디바이스 논리 접속 기능이 결과를 되돌려 보내도록 실장되어 있으면, 디바이스 논리 접속이 불가능한 경우에는, 디바이스 논리 접속 기능 이용시에 나타내는 결과 통지에 의해서, Java 프로그램은 그것을 아는 것이 가능하다.
(실시 형태 9)
지금까지 서술한 실시 형태에서는, 디바이스 매니저(2205f)는 제5의 기능으로서, 디바이스 논리 접속 상태 취득 기능을 구비하고 있다. 이 기능은, 도 41의 수속(S4008)에서 사용되는 바와 같이, 방송 수신 장치 상에서 동작하는 Java 프로그램이 디바이스의 논리 접속 또는 논리 접속 해제를 행하기 전에, 디바이스 사이의 논리 접속이 이미 확립되어 있는지의 여부를 알기 위해서 이용한다. 디바이스의 논리 접속 상태는, 도 38의 수속(S3703)에 나타내는 바와 같이, 디바이스 논리 접속 관리부(3204)에 문의함으로써 취득한다. 그러나, 디바이스 논리 접속 상태의 체크는, 디바이스 논리 접속 기능 및 디바이스 논리 접속 해제 기능의 이용전에 필수라는 것은 아니다. 디바이스 논리 접속 기능이 도 39에서 도시되는 시퀀스로 실장되어 있었던 경우에는, 디바이스를 논리 접속할 때, 암묵적으로 논리 접속 상태의 체크가 행해진다. 또 디바이스 논리 접속 해제 기능의 이용시에는, 도 40의 수 속(S3903)에서 디바이스 논리 접속 상태의 판단은 논리 접속 해제전에 암묵적으로 행해진다. 요컨대 디바이스 논리 접속 상태의 취득은 디바이스 논리 접속 기능 및 디바이스 논리 접속 해제 기능의 이용에 필수적인 기능이 아니라, 존재하지 않는 경우에도 디바이스 매니저(2205f)를 이용한 디바이스의 논리 접속 및 논리 접속 해제는 가능하다.
본 실시 형태에서의 디바이스 매니저(2205f)는 제5의 기능인 디바이스 논리 접속 상태 취득 기능을 구비하지 않는다. 방송 수신 장치 상에서 동작하는 Java 프로그램은, 디바이스 논리 접속 기능 및 디바이스 논리 접속 해제 기능을 이용할 때, 디바이스 논리 접속 상태의 체크없이 각각의 기능을 이용 가능하다. 단 이 경우, 디바이스의 논리 접속 상태를 취득하는 기능은 디바이스 매니저(2205f)에는 존재하지 않기 때문에, 디바이스 매니저(2205f)의 제6의 기능 및 제7의 기능인 디바이스의 논리 접속 기능 및 디바이스의 논리 접속 해제 기능을 이용하여 확립한 디바이스 논리 접속 패스의 정보를 Java 프로그램 자신이 관리할 필요가 있다.
(실시 형태 10)
실시 형태 1에서는, 모든 디바이스는, 물리적으로 접속되어 있는 한, 논리적으로 접속 가능이라는 전제가 존재하였다. 그러나, 현실의 하드웨어 구성에서는, 하드웨어 사양으로부터, 자주 물리적으로 접속되어 있는 디바이스여도, 방송 수신 장치 상에 존재하는 다른 디바이스의 논리 접속 상태에 따라서는 논리 접속 불가능한 것이 존재하는 경우가 있다. 실시 형태 10의 참조 하드웨어 구성으로서, 도 14를 이용한다. 도 14의 하드웨어 구성에서는, 튜너는 튜너(1401a) 및 튜너(1401b), AV 디코더는 AV 디코더(1403a) 및 AV 디코더(1403b)와 각각 2개 존재한다. 이 경우에서도 디바이스 논리 접속 패스는 도 31(a) 내지 도 31(d)에서 도시된 것으로 되고, 튜너와 AV 디코더는 PID 필터나 디스크램들러를 사이에 끼워서 접속된다.
이와 같은 환경 하에서, 본 실시 형태에서는, TS 디코더(1402)의 하드웨어 사양으로서, “동일 튜너로부터 입력되는 MPEG2 트랜스포트 스트림으로부터 얻어지는 PES 패킷을 동시에 다수의 AV 디코더에 출력할 수 없는”취지의 기정이 존재하는 것으로 한다. 구체적으로는, 예를 들면 튜너(1401a)로부터 TS 디코더(1402)에 입력되는 MPEG2 트랜스포트 스트림으로부터 PID 필터를 이용하여 선별되는 PES 패킷을 AV 디코더(1403a)에 출력하고 있는 동안에는, 동일 MPEG2 트랜스포트 스트림으로부터 다른 PID 필터를 이용하여 선별되는 PES 패킷을 AV 디코더(1403b)에 출력할 수 없다. 이와 같은 환경 하에서는, 튜너∼PID 필터 사이의 논리 접속 상태에 따라서 PID 필터∼AV 디코더 사이의 접속 가능성이 동적으로 변경된다. 왜냐하면, 튜너∼PID 필터 사이의 접속의 유무에 따라서 PID 필터∼AV 디코더 사이의 접속 가능성도 변경되기 때문이다.
이와 같은 경우, 디바이스 매니저가 새롭게 관리하지 않으면 안되는 정보는, 「PID 필터 사이∼AV 디코더 사이에서의 접속 조건」이다. 예를 들면, 금번의 환경 하에서는, PID 필터와 AV 디코더를 논리 접속할 때에, 그 논리 접속이 가능해지는 조건은, “지정 PID 필터가 튜너의 어느쪽과도 논리 접속되어 있지 않은”, 혹은 “지정 PID 필터는 튜너와 논리 접속되어 있지만 그 튜너는 다른 PID 필터와 논리 접속되어 있지 않은”, 혹은“지정 PID 필터는 튜너와 논리 접속되어 있고 그 튜너는 다른 PID 필터와 논리 접속되어 있지만, 그 다른 PID 필터는 다른 AV 디코더와 논리 접속되어 있지 않다”는 것이다.
본 실시 형태에서는, 디바이스 매니저(2205f)에 새로운 구성 요소로서, 디바이스 논리 접속 조건 관리부를 도입한다. 디바이스 논리 접속 조건 관리부는 상기와 같은 디바이스의 논리 접속 조건을 관리하여, 디바이스 매니저(2205f)가 필요할 때에 디바이스 논리 접속 조건 관리부에 액세스함으로써 디바이스 논리 접속 조건을 취득 가능하게 한다. 디바이스 논리 접속 조건 관리부는, 1차 기억부(1208), 2차 기억부(1207), ROM(1209) 내에 정보를 유지하여, 디바이스 매니저(2205f)에 의해서 관리된다.
디바이스 매니저(2205f)가 Java 프로그램으로부터「디바이스 논리 접속 가능성 취득 요구」를 수취한 경우의 시퀀스를 도 43에 나타낸다. Java 프로그램이 발행한 「디바이스 논리 접속 가능성 취득 요구」를 디바이스 매니저(2205f)가 수취하면(S4101), 디바이스 오브젝트 관리부(3202)에 액세스하여, 지정된 2개의 디바이스 오브젝트에 대응한 디바이스를 얻는다(S4102). 다음에 디바이스 물리 접속 관리부(3203)에 문의하여, 대응하는 2개의 디바이스의 물리 접속 상태를 취득하고(S4103), 만일 물리 접속되어 있으면(S4104), 본 실시 형태에서 도입한 디바이스 논리 접속 조건 관리부에 문의하여 2개의 디바이스의 논리 접속에 관한 디바이스 논리 접속 조건을 취득한다(S4105). 다음에 취득한 디바이스 논리 접속 조건에 따라서, 그것에 대응하는 디바이스 논리 접속 상태를 디바이스 논리 접속 관리부(3204)로부터 취득한다(S4106). 디바이스 논리 접속 상태가, 디바이스 논리 접속 조건에 합치하는지의 여부를 판정하여(S4107), 만일 합치하면, “가능”을 되돌려 보낸다(S4108). 판정 수속(S4104) 및 판정 수속(S4107)에서 조건을 만족시키지 않는 경우에는, “불가”를 되돌려 보낸다(S4109). PID 필터와 AV 디코더의 예에서는, 수속(S4105)에서 “지정 PID 필터는 어느 튜너와도 논리 접속되어 있지 않은”, 혹은 “지정 PID 필터와 튜너는 논리 접속되어 있지만, 그 튜너는 다른 PID 필터와 접속되어 있지 않은”, 혹은 “지정 PID 필터와 튜너는 논리 접속되어 있고, 그 튜너는 다른 PID 필터와 논리 접속되어 있지만, 그 PID 필터는 지정한 것과는 다른 AV 디코더와 논리 접속되어 있지 않다”는 논리 접속 조건을 얻는다. 그것에 따라서, 수속(S4106)에서 논리 접속 조건에 등장하는 조합의 디바이스 사이의 논리 접속 상태를 조사하여, 판정 수속(S4107)에서 논리 접속 조건을 만족시키는지의 여부를 판정한다는 수속을 취한다.
또, 디바이스 매니저(2205f)가 Java 프로그램으로부터「디바이스 접속 요구」를 수취한 경우에는, 도 43에서의 논리 접속 가능성 취득의 시퀀스와 동일하게, 도 39에서의 디바이스 물리 접속 관리부(3203)를 이용한 조건 취득(S3803)에 더하여, 디바이스 접속 조건 관리부로부터 취득한 디바이스 접속 조건에 따라서, 다른 디바이스 사이의 접속을, 디바이스 논리 접속 관리부(3204)를 이용하여 조사하고, 그 결과를 합한 다음에 접속 가능성을 판단한다. 이 경우, 접속 조건에 의한 판정에 의해 접속 불가능한 경우, 접속 조건에 의해 접속 불가능한 취지를 표현하는 에러를 Java 프로그램으로 되돌려 보내도 된다.
이와 같은 실장을 행함으로써, 디바이스의 접속 상태에 따라서 동적으로 접 속 가능성이 변경되는 하드웨어 구성 상에서도, 본 발명은 적용 가능하다.
(실시 형태 11)
실시 형태 1에서는, TS 디코더(1202) 내의 각 디바이스(PID 필터, 섹션 필터, 디스크램블러)는 서로 1대1의 논리 접속밖에 허가하지 않는 취지의 제한이 존재하였다. 그러나, 실제로는 각 디바이스에 대해서 1대 다수의 논리 접속을 허가하는 TS 디코더가 존재한다. 또, 디바이스 사이의 접속의 최대수가 기정되어 있는 하드웨어 구성도 존재한다. 본 실시 형태에서는, 1개의 PID 필터에 대해서 다수의 섹션 필터를 논리 접속 가능하고, 단 최대 5개까지라는 기정이 존재하는 것으로 한다.
이와 같은 환경에서, 디바이스 매니저(2205f)가 관리하지 않으면 안되는 것은 「각 디바이스 사이 논리 접속의 최대수」이다. 금번의 환경에서는 “PID 필터는, 동시에 5개의 섹션 필터와 논리 접속 가능하다”는 조건이다.
본 실시 형태에서는, 디바이스 매니저(2205f)에, 신규 구성 요소로서, 디바이스 논리 접속 최대수 관리부를 도입한다. 디바이스 논리 접속 최대수 관리부는 상기한 바와 같이 디바이스가, 어떠한 디바이스 타입의 디바이스와 몇개의 논리 접속을 구축 가능한지의 디바이스 사이의 논리 접속의 최대수를 관리하여, 디바이스 매니저(2205f)가 필요할 때에 액세스하고, 디바이스 논리 접속 최대수를 취득 가능하다. 디바이스 논리 접속 최대수 관리부는, 1차 기억부(1208), 2차 기억부(1207), ROM(1209) 내에 정보를 유지하여, 디바이스 매니저(2205f)에 의해서 관리된다. 또, 레지스터 등, 전용의 하드웨어를 이용하여 관리되어도 된다.
디바이스 매니저(2205f)가 Java 프로그램으로부터「디바이스 논리 접속 가능성 취득 요구」를 수취한 경우의 시퀀스를 도 44에 나타낸다. Java 프로그램이 발행한 「디바이스 논리 접속 가능성 취득 요구」를 디바이스 매니저(2205f)가 수취하면(S4201), 디바이스 오브젝트 관리부(3202)에 액세스하여, 지정된 2개의 디바이스 오브젝트에 대응한 디바이스를 얻는다(S4202). 다음에 디바이스 물리 접속 관리부(3203)에 문의하여, 대응하는 2개의 디바이스의 물리 접속 상태를 취득하고(S4203), 만일 물리 접속되어 있으면(S4204), 본 실시 형태에서 도입한 디바이스 논리 접속 최대수 관리부에 문의하여 2개의 디바이스의 논리 접속에 관한 논리 접속 최대수를 취득한다(S4205). 다음에 이미 존재하는 논리 접속수를 구하기 위해서 디바이스 논리 접속 상태를 디바이스 논리 접속 관리부(3204)로부터 취득한다(S4206). 논리 접속이, 논리 접속 최대수 미만인지의 여부를 판정하여(S4207), 만일 조건을 만족시키면, “가능”을 되돌려 보낸다(S4208). 판정 수속(S4204) 및 판정 수속(S4207)에서 조건을 만족시키지 않는 경우에는, “불가”를 되돌려 보낸다(S4209). PID 필터와 섹션 필터의 예에서는, 수속(S4205)에서 논리 접속 최대수 “5”를 얻는다. 다음에 지정 PID 필터와 다른 섹션 필터의 논리 접속 상태를 디바이스 논리 접속 관리부(3204)로부터 취득하여, 존재하는 논리 접속수를 얻는다(S4206). 그것들을 이용하여 판정 수속(S4207)에서 논리 접속 최대수와 기존의 논리 접속수를 비교하여, 기존의 논리 접속수의 쪽이 적은 것이면, “가능”을 되돌려 보낸다(S4208).
또, 디바이스 매니저(2205f)가 Java 프로그램으로부터「디바이스 접속 요구 」를 수취한 경우에는, 도 44에 나타내는 논리 접속 가능성 취득 시퀀스와 동일하게, 도 39에서의 디바이스 물리 접속 관리부(3203)를 이용한 조건 취득(S3803)에 더하여, 디바이스 논리 접속 최대수 관리부로부터 취득한 최대수에 도달하고 있지 않은지 어떤지를, 디바이스 논리 접속 관리부(3204)를 이용하여 조사하고, 그 결과를 합한 다음에 접속 가능성을 판단, “가능”이면 디바이스 사이의 논리 접속을 행한다. 디바이스 논리 접속이 최대수에 도달함으로써 논리 접속 불가능이라고 판단된 경우에는, 그 취지를 표현하는 에러를 Java 프로그램으로 되돌려 보내는 실장이어도 된다.
또, 본 실시 형태에 나타내는 상태에서는, 접속 최대수가 2이상인 디바이스는, 다수의 디바이스 논리 접속 패스에 포함되는 것이 가능하고, 「공유 가능」하다고 말할 수 있다. Java 프로그램은 어느 디바이스가「공유 가능」한지의 여부를 알 수 있으면, 필요 이상의 디바이스를 논리 접속할 필요가 없고, 디바이스 관리의 관점으로부터 효율적인 논리 접속이 가능하다. 본 실시 형태에서는, 디바이스 매니저(2205f) 제8의 기능으로서, 디바이스 접속 공유 가능성 취득 기능을 Java 프로그램에 제공한다. Java 프로그램은 본 기능을 이용하여, 디바이스 오브젝트가 나타내는 디바이스가 공유 가능한지의 여부를 아는 것이 가능하다. 본 기능의 가장 간단한 실장의 시퀀스도를 도 45에 나타낸다. 1개의 디바이스 타입, 1개의 디바이스 오브젝트 지정과 함께「디바이스 접속 공유 가능성 취득 요구」를 Java 프로그램으로부터 수취한 디바이스 매니저(2205f)는(S4301), 우선 디바이스 오브젝트 관리부(3202)에 문의하여, 대응하는 디바이스를 얻는다(S4302). 다음에 대상 디바이 스에 관해서, 디바이스 논리 접속 최대수 관리부에 문의하여, 지정 디바이스 타입에 관한 논리 접속 최대수를 취득한다(S4303). 이것이 2이상이면(S4304), 지정 디바이스의 지정 디바이스 타입과 합치하는 디바이스 사이의 논리 접속은 2개 이상 동시에 존재 가능하고, 공유 가능하다고 판단할 수 있다(S4305). 또한, 「공유 가능」의 표현 방법으로서, 상기한 바와 같이「가능」「불가」를 Java 프로그램으로 되돌려 보내지 않고, 논리 접속 최대수 그것을 되돌려 보내는 방법도 있다. 그와 같은 실장이 이루어져도 Java 프로그램은 디바이스가「공유 가능」한지의 여부가 판단 가능하다.
이와 같이 실장함으로써, 동시 접속에 최대수가 기정되어 있는 하드웨어 구성 상에서도, 본 발명은 적용 가능하다.
또한, 실시 형태 10에서 서술한 디바이스 논리 접속 관리부 및 본 실시 형태에서 서술한 디바이스 논리 접속 최대수 관리부는 동시에 존재하는 것도 당연히 상정된다. 그 경우, 디바이스 논리 접속 가능성 취득시 및 디바이스 논리 접속시에는, 도 43에서의 논리 접속 조건의 판정(S4105∼S4107) 및 도 44에서의 논리 접속 최대수의 판정(S4205∼S4207)은 양쪽 모두 필요하다.
(실시 형태 12)
실시 형태 1에서는, Java 프로그램이 디바이스 매니저(2205f)의 제5의 기능인 논리 접속 상태 취득 기능을 이용하여 논리 접속 상태를 문의할 때에, 2개의 디바이스 사이의 논리 접속이 행해지고 있는지의 여부의 정보만 취득 가능하다. 그러나, Java 프로그램은, 어느 디바이스에 다른 어떠한 디바이스가 논리 접속되어 있는지 알고 싶은 상황이 있을 수 있다.
본 실시 형태에서의 디바이스 매니저(2205f)는 제3의 기능인 디바이스 오브젝트 취득 기능을 확장하여, 어느 디바이스가 그 시점에서 어느 디바이스에 논리 접속되어 있는지의 정보를 취득하는 기능을 Java 프로그램에 제공한다. 본 기능은 Java 프로그램이 1개의 디바이스 오브젝트를 지정하여 「디바이스 오브젝트 취득 요구」를 발행하였을 때, 그것을 수신한 디바이스 매니저(2205f)는, 디바이스 논리 접속 관리부(3204)가 관리하는 논리 접속 상태에 관한 정보 중에서 지정된 디바이스 오브젝트와 대응하는 디바이스와 그 시점에서 논리 접속되어 있는 디바이스를 탐색하여, 발견된 디바이스와 대응하는 디바이스 오브젝트를 모두 되돌려 보낸다. 또한, Java 프로그램에 의해 디바이스 타입의 지정까지 행해진 경우에는, 지정된 디바이스가 그 시점에서 논리 접속되어 있는 디바이스 중에서 지정된 디바이스 타입을 갖는 것만을 또한 선별하여, 선별된 디바이스에 대응하는 디바이스 오브젝트를 모두 되돌려 보낸다.
본 실시 형태에서는, Java 프로그램은 어느 디바이스에 논리 접속되어 있는 디바이스를 1회의 조작으로 취득 가능하다.
(실시 형태 13)
실시 형태 1에서는, Java 프로그램이 디바이스 매니저(2205f)의 제4의 기능인 논리 접속 가능성 취득 기능을 이용하여 논리 접속 가능성을 문의할 때에, Java 프로그램이 지정한 2개의 디바이스 사이의 논리 접속 가능성만 취득 가능하다. 그러나, Java 프로그램은, 어느 디바이스에 다른 어떠한 디바이스가 논리 접속 가능 한지 알고 싶은 상황이 있을 수 있다.
본 실시 형태에서의 디바이스 매니저(2205f)는 제3의 기능인 디바이스 오브젝트 취득 기능을 확장하여, 어느 디바이스가 그 시점에서 어느 디바이스와 논리 접속 가능한지의 정보를 취득하는 기능을 Java 프로그램에 제공한다. 본 기능은, Java 프로그램이 1개의 디바이스 오브젝트를 지정하여 「디바이스 오브젝트 취득 요구」를 발행하였을 때, 그것을 수신한 디바이스 매니저(2205f)는, 디바이스 물리 접속 관리부(3203)가 관리하는 물리 접속에 관한 정보 중에서, 지정된 디바이스 오브젝트와 대응하는 디바이스와 논리 접속 가능한 디바이스를 탐색하여, 발견된 디바이스와 대응하는 디바이스 오브젝트를 모두 되돌려 보낸다. 또한, Java 프로그램에 의해 디바이스 타입의 지정까지 행해진 경우에는, 지정된 디바이스 타입을 갖는 것만을 또한 선별하여, 선별된 디바이스에 대응하는 디바이스 오브젝트를 모두 되돌려 보낸다.
본 실시 형태에서는, Java 프로그램은 어느 디바이스에 논리 접속 가능한 디바이스를 1회의 조작으로 취득 가능하다.
(실시 형태 14)
실시 형태 1에서는, Java 프로그램이 디바이스 매니저(2205f)의 제4의 기능인 논리 접속 가능성 취득 기능 및, 제5의 기능인 논리 접속 상태 취득 기능을 이용할 때에, Java 프로그램이 지정한 2개의 디바이스 사이의 논리 접속 가능성 및 논리 접속 상태만 취득 가능하다. 그러나, Java 프로그램은, 어느 디바이스에 어떠한 디바이스가 접속 가능하고, 그 중 어느 디바이스가 미접속인지 알고 싶은 경 우가 있다. 그와 같은 경우, 실시 형태 1에서는, 디바이스 타입을 지정하여 취득한 디바이스 오브젝트의 각각에 대해서 논리 접속 가능성 및 논리 접속 상태를 조사할 필요가 있었다.
본 실시 형태에서는, 디바이스 매니저(2205f)의 제3의 기능인 디바이스 오브젝트 취득 기능을 확장하여, 어느 디바이스가, 그 시점에서 어느 디바이스에 논리 접속 가능하고, 또한 논리적으로 미접속인지의 정보를 취득하는 기능을 Java 프로그램에 제공한다. 본 기능은, Java 프로그램이 1개의 디바이스 오브젝트를 지정하여 「디바이스 오브젝트 취득 요구」를 발행하였을 때, 그것을 수신한 디바이스 매니저(2205f)는, 우선 디바이스 물리 접속 관리부(3203)가 관리하는 물리 접속에 관한 정보 중에서 지정된 디바이스 오브젝트와 대응하는 디바이스와, 논리 접속 가능한 디바이스를 탐색한다. 다음에 발견된 디바이스 중에서, 논리적으로 미접속인 것을 탐색하여, 얻어진 디바이스에 대응하는 디바이스 오브젝트를 모두 되돌려 보낸다. 또한, Java 프로그램에 디바이스 타입의 지정까지 행해진 경우에는, 지정된 디바이스 타입을 갖는 것만을 또한 선별하여, 선별된 디바이스에 대응하는 디바이스 오브젝트를 모두 되돌려 보낸다.
본 실시 형태에서는, Java 프로그램은 어느 디바이스에 논리 접속 가능하고 또한 논리적으로 미접속인 디바이스를 1회의 조작으로 취득 가능하다.
(실시 형태 15)
실시 형태 1에서는, 디바이스 매니저(2205f)의 제6의 기능인 디바이스 논리 접속 기능의 실장 내에서, 디바이스 논리 접속 상태의 판단을 행한다. 이 경우, 도 39의 수속(S3806)에서 디바이스의 논리 접속 상태의 판정이 행해진다. 실시 형태 1에서는, 이 때, “지정된 2개의 디바이스 사이가 이미 논리적으로 접속되어 있는지”및“지정된 2개의 디바이스의 한쪽이 또다른 한쪽의 디바이스와 동일 디바이스 타입인 다른 디바이스와 논리적으로 접속되어 있는지”의 2종류의 판정이 행해지고 있었다. 전자는 접속 상태의 불필요함을 줄이기 위해서, 후자는 디바이스 논리 접속 패스를 변경하지 않기 위해서였다.
본 실시 형태에서는, 디바이스 매니저(2205f)의 제6의 기능인 디바이스 논리 접속 기능의 실장 내에서, 도 39의 수속(S3806)에서 행해지는 디바이스의 논리 접속 상태의 판정에서, “지정된 2개의 디바이스 사이가 이미 논리적으로 접속되어 있는지”의 판정만 행하고, 만일 이미 행해져 있는 것이면 아무것도 하지 않는다. 만일 2개의 디바이스의 한쪽이, 또다른 한쪽과 동일 디바이스 타입인 다른 디바이스와 접속되어 있었다고 해도, 원래의 디바이스 논리 접속 패스를 자동적으로 해제하고, 새롭게 지정된 2개의 디바이스를 논리적으로 접속하여, 새로운 디바이스 논리 접속 패스에 대해서 디바이스 논리 접속 관리부(3204)에 기록한다.
이 실장을 채용한 경우, 디바이스 매니저(2205f)의 제7의 기능인 디바이스 논리 접속 해제 기능은 필요하지 않게 된다. 디바이스의 논리 접속을 행할 때에, 기존의 논리 접속이 만일 존재하였다고 해도, 자동적으로 해제되기 때문이다.
본 실시 형태에 의해, Java 프로그램은, 기존의 디바이스 논리 접속 패스를 의식하지 않고 새로운 디바이스 논리 접속 패스를 구축할 수 있다. 단, Java 프로그램이 의도적으로 남기고 싶은 디바이스 논리 접속 패스여도, 디바이스의 논리 접 속시에 자동적으로 해제되어 버릴 가능성이 있기 때문에, Java 프로그램은 자신이 그들 디바이스 논리 접속 패스와 그 구성 요소가 되는 디바이스 오브젝트를 관리할 필요가 있다.
(실시 형태 16)
실시 형태 1 및 실시 형태 15에서는, Java 프로그램이 디바이스 매니저(2205f)의 제6 및 제7의 기능을 사용하여 논리 접속 및 논리 접속 해제를 행할 때에, 디바이스 매니저(2205f)는 그 결과를 되돌려 보내지 않는다.
예를 들면, 도 39에 나타내는 경우, 디바이스 물리 접속 관리부(3203)에 의해서 되돌아온 결과를 이용하여 논리 접속 가능성을 판정할 때(S3804) 및, 논리 접속 상태를 판정할 때(S3806)에, 실제로 논리 접속 처리(S3807)가 행해지는지의 여부가 결정되지만, 실시 형태 1 및 실시 형태 15에서는, 논리 접속 처리가 행해졌는지 행해지지 않았는지, Java 프로그램은 그 결과를 알 수 없다.
예를 들면, 도 40에 나타내는 경우, 디바이스 논리 접속 관리부(3204)에 의해서 되돌아온 결과를 이용하여 논리 접속 상태를 판정할 때(S3904)에 실제로 논리 접속 해제 처리(S3905)가 행해지는지의 여부가 결정되지만, 실시 형태 1에서는, 논리 접속 해제 처리가 행해졌는지 행해지지 않았는지, Java 프로그램은 그 결과를 알 수 없다.
본 실시 형태에서는, 디바이스 매니저(2205f)의 제6 및 제7의 기능인 논리 접속 기능 및 논리 접속 해제 기능을 이용하였을 때, 실제로 논리 접속 및 논리 접속 해제가 행해졌는지의 여부를 Java 프로그램의 실행에 동기하여 되돌려 보낸다. 논리 접속 기능에 대해서는, 도 39의 시퀀스에서, 되돌아온 결과는 “디바이스 접속 성공”,“디바이스 접속 실패”의 2종류이다. 논리 접속 해제 기능에 대해서는 도 40의 시퀀스에서, “디바이스 접속 해제 성공”,“디바이스 접속 해제 실패”의 2종류이다.
(실시 형태 17)
실시 형태 16에서는, Java 프로그램이 디바이스 매니저(2205f)의 제6 및 제7의 기능을 사용하여 논리 접속 및 논리 접속 해제를 행할 때에, 디바이스 매니저(2205f)는 논리 접속 및 논리 접속 해제가 행해졌는지의 여부를 되돌려 보낸다. 그러나, 예를 들면 도 39의 시퀀스에서는, 디바이스의 접속이 행해지지 않은 이유는 수속(S3804)에서 판단되는 “접속 불가능한”것, 혹은 수속(S3806)에서 판단되는 “이미 접속중인 것”및“다른 디바이스 논리 접속 패스가 존재하는 것”의 3종류 존재하지만, 디바이스의 접속이 행해졌는지의 여부의 결과에서는, 디바이스 접속이 행해지지 않은 이유를 Java 프로그램이 알 수 없다.
본 실시 형태에서는 디바이스 매니저(2205f)의 제6 및 제7의 기능인 디바이스 논리 접속 기능 및 디바이스 논리 접속 해제 기능의 이용시, 실제로 논리 접속이 행해졌는지의 여부, 또한 행해지지 않은 경우에는 왜 행해지지 않았는지를 나타내는 이유를 동기로 되돌려 보낸다. 예를 들면, 도 39의 시퀀스인 경우에는 되돌아온 결과는 “디바이스 논리 접속 성공”,“디바이스는 논리 접속 불가능”,“디바이스는 이미 논리 접속 중”,“다른 디바이스 논리 접속 패스가 존재”의 4종류이다. 예를 들면, 도 40의 시퀀스인 경우에는 되돌아온 결과는 “디바이스 논리 접속 해제 성공”,“디바이스는 논리 접속 상태가 아닌” 2종류이다.
(실시 형태 18)
실시 형태 17에서는, Java 프로그램이 디바이스 매니저(2205f)의 제6의 기능을 사용하여 논리 접속을 행할 때에, 디바이스 매니저(2205f)는 4종류의 결과를 되돌려 보낸다. 그러나, 이 중, “디바이스는 이미 논리 접속 중”이라는 결과는, 처리 후의 상태로서는, 디바이스 사이의 논리 접속은 행해지고 있기 때문에, “디바이스 논리 접속 성공”인 것과 동등하다.
본 실시 형태에서는, 디바이스 매니저(2205f)의 제6의 기능인 디바이스 논리 접속 기능의 이용시, 실제로 논리 접속이 행해졌는지의 여부, 또한 행해지지 않은 경우에는 왜 행해지지 않았는지를 나타내는 이유를 동기로 되돌려 보낸다. 단, “디바이스가 이미 논리 접속 중”인 경우에는, “디바이스 논리 접속 성공”을 나타내는 결과를 되돌려 보낸다. 요컨대, 되돌아온 결과는, 예를 들면 도 39의 시퀀스인 경우에는“디바이스 논리 접속 성공”,“디바이스는 논리 접속 불가능”,“다른 디바이스 논리 접속 패스가 존재”의 3종류이다.
(실시 형태 19)
실시 형태 16 내지 18에서는, Java 프로그램이 디바이스 매니저(2205f)의 기능을 이용할 때, 각 기능은 동기 처리에 의해 실현되고, 디바이스 매니저(2205f)가 각 기능의 처리를 하고 있는 동안, Java 프로그램은 실행을 진행시키는 것이 불가능하다. 예를 들면, Java 프로그램이「디바이스 논리 접속 요구」를 발행하면, 디바이스 매니저(2205f)는 디바이스의 논리 접속 처리를 행하지만, 그 사이 Java 프 로그램은, 디바이스 매니저(2205f)에 의한 논리 접속 처리가 종료할 때까지 기다리지 않으면 안된다. 그러나, 디바이스 매니저(2205f)가 취급하는 디바이스에 따라서는 디바이스의 논리 접속에 시간이 걸리는 것이 존재한다. 그와 같은 디바이스의 접속 처리는 비동기 처리로서 실현되면, Java 프로그램은 디바이스 매니저(2205f)가 디바이스의 논리 접속 처리를 행하는 동안에도, 다른 처리를 진행시킬 수 있기 때문에, Java 프로그램에 있어서 상황이 좋다.
본 실시 형태에서는, 디바이스 매니저(2205f)가 실현하는 기능에 대해서, 비동기에서의 결과 통지를 행한다. 그 때문에, 디바이스 매니저(2205f)는 제9의 기능으로서, 디바이스 처리 결과 통지 청취자 등록 기능을 유지한다. 디바이스 처리 결과 통지 청취자는, 디바이스 매니저(2205f)의 제1 내지 제8의 기능을 이용할 때에, 그 처리 결과를 비동기로 수취하기 위해서, Java 프로그램이 디바이스 매니저(2205f)에 대해서 등록한다. Java 프로그램은 비동기의 통지를 받기 위해서, 디바이스 매니저(2205f)의 기능을 이용하는 데에 앞서서 혹은 동시에, 비동기 통지를 받기 위한 디바이스 처리 결과 통지 청취자를 디바이스 매니저(2205f)에 등록한다. 그 후, Java 프로그램은 디바이스 매니저(2205f)의 기능을 이용한다. 디바이스 매니저(2205f)는 처리 결과를, 디바이스 처리 결과 통지 청취자를 통해서 Java 프로그램에 통지한다.
본 실시 형태에서, 디바이스 매니저(2205f)는 디바이스 처리 결과 통지 청취자를 등록하기 위해서, 신규로 디바이스 청취자 관리부를 갖는다. 디바이스 청취자 관리부는, 디바이스 매니저(2205f)에 의해서 액세스되어, 등록이 완료된 디바이 스 처리 결과 통지 청취자를 제공한다. 디바이스 청취자 관리부는 1차 기억부(1208) 또는 2차 기억부(1207) 또는 ROM(1209) 내에 정보를 유지하고, 디바이스 매니저(2205f)에 의해서 관리된다.
본 실시 형태에서 이용하는 Java 프로그램에 의한 비동기적인 조작의 예로서, 제6의 기능인 디바이스 논리 접속의 시퀀스를 도 46에 나타낸다. 우선 Java 프로그램(1)은「디바이스 처리 결과 통지 청취자 등록 요구」를 디바이스 매니저(2205f)에 대해서 발행하고(S4401), 그것을 받아서 디바이스 매니저(2205f)는 Java 프로그램(1)의 디바이스 처리 결과 통지 청취자를 Java 프로그램(1)과 조로 하여 디바이스 청취자 관리부에 등록한다(S4402). 다음에 Java 프로그램(1)은 PID 필터(A)와 AV 디코더(B)에 관한 「디바이스 논리 접속 요구」를 디바이스 매니저(2205f)를 향해서 발행하고(S4403), 디바이스 매니저(2205f)는 PID 필터(A)와 AV 디코더(B)를 논리 접속한다(S4404). Java 프로그램(1)은 수속(S4403)의 종료 이후, 디바이스 매니저(2205f)가 PID 필터(A)와 AV 디코더(B)의 논리 접속 처리를 행하고 있는 동안, 자신의 실행을 진행시킬 수 있다. 디바이스 매니저(2205f)는, 논리 접속 처리가 종료되면, Java 프로그램(1)의 디바이스 처리 결과 통지 청취자를 디바이스 청취자 관리부로부터 취득하여(S4405), 논리 접속 결과를 통지한다(S4406).
또한, 본 실시 형태에서, 디바이스 매니저(2205f)가 제공하는 모든 기능을 비동기로 할 필요는 없다. 예를 들면, 디바이스 매니저(2205f)의 제6의 기능인 디바이스 논리 접속 기능 및 제7의 기능인 디바이스 논리 접속 해제 기능만 비동기 통지를 행하고, 다른 기능은 동기 통지를 행하는 실장이 적용되어도 된다.
본 실시 형태를 이용함으로써, Java 프로그램은 시간이 걸리는 디바이스 매니저(2205f)의 기능 이용 중에도 Java 프로그램 자신의 실행을 진행시킬 수 있고, 효율적인 동작을 실현하는 것이 가능해진다.
(실시 형태 20)
실시 형태 19에서, Java 프로그램이 등록한 디바이스 처리 결과 통지 청취자는, 디바이스 오브젝트의 지정없이 디바이스 매니저(2205f)에 등록되었기 때문에, 모든 디바이스에 대한 처리의 결과가 동일한 디바이스 처리 결과 통지 청취자에게 통지된다. 그러나 Java 프로그램에 따라서는, 디바이스마다 다른 디바이스 처리 결과 통지 청취자를 등록하고 싶은 경우가 있다.
본 실시 형태에서는, Java 프로그램이 디바이스 매니저(2205f)는 제9의 기능인 디바이스 처리 결과 통지 청취자 등록 기능을 이용할 때, 디바이스 처리 결과 통지 청취자와 함께, 디바이스 오브젝트를 1개 지정한다. 디바이스 매니저(2205f)는, Java 프로그램과 디바이스 처리 결과 통지 청취자와 디바이스 오브젝트가 나타내는 디바이스를 조로 하여 디바이스 청취자 관리부에 기록한다. 디바이스 매니저(2205f)는, 통지를 행할 때, 앞서서 행해진 처리에 관계되는 디바이스에 관한 디바이스 처리 결과 통지 청취자를 디바이스 청취자 관리부로부터 취득하고, 취득된 디바이스 처리 결과 통지 청취자에 대해서만 통지를 행한다.
(실시 형태 21)
실시 형태 1에서, 디바이스 매니저(2205f)의 제3의 기능인 디바이스 오브젝 트 취득 기능을 이용하여 취득된 디바이스 오브젝트는, 방송 수신 장치에 존재하는 디바이스에 대한 식별자로서 이용될 뿐이고, 디바이스 자신에 관한 정보를 유지하지 않는다. 그 때문에, Java 프로그램이 디바이스 매니저(2205f)에 대해서「디바이스 오브젝트 취득 요구」를 발행하여 취득한 디바이스 오브젝트군을, Java 프로그램 자신이 관리하지 않으면 안된다. 예를 들면, 실시 형태 1에서, 디바이스 타입에 “섹션 필터”를 지정하여 디바이스 오브젝트를 취득하면, Y개의 디바이스 오브젝트를 취득할 수 있다. Java 프로그램은, 이들을 관리할 때, “디바이스 타입”및“몇번째의 디바이스 오브젝트인지를 나타내는 인덱스”를 이용하지 않으면 안된다. 이것은 디바이스 오브젝트 관리의 관점에서 대단히 불편하다.
본 실시 형태에서는, 디바이스 오브젝트 자신이 디바이스 오브젝트와 대응하는 디바이스에 관한 정보를 격납한다. 적어도, 모든 디바이스 오브젝트는 “자신의 디바이스의 디바이스 타입”과“동일 디바이스 타입인 디바이스 내에서 일의적으로 할당된 ID”를 유지한다. 이것에 의해, Java 프로그램은 디바이스 오브젝트 자신이 정보를 유지하기 위해서, 관리를 용이하게 하는 것이 가능하다. 또한, 디바이스 오브젝트는 또한 디바이스 관리를 용이하게 하기 위해서, 디바이스 오브젝트 자신에 관한 보조 정보를 관리하는 것이 가능하다. 예를 들면, 디바이스 오브젝트는 “디바이스의 명칭”을 관리하는 것을 생각할 수 있다. Java 프로그램은 그 명칭을 취급함으로써, 보다 디바이스의 관리를 더욱 다양하게 취급하는 것이 가능해진다. 예를 들면, 도 14에서의 튜너(1401a)와 튜너(1401b)에 각각 “튜너(A)”,“튜너(B)”라는 명칭을 부여하고, Java 프로그램은 이들 명칭을, 디바이스를 관리할 때에 이용하는 것이 가능해진다.
이들 기능은 디바이스 기본 정보 관리부(3201)가 각 디바이스의 종류, ID, 명칭을 관리함으로써 실현된다. Java 프로그램이 디바이스 오브젝트를 취득할 때에, 디바이스 매니저(2205f)는 디바이스 기본 정보 관리부(3201)에 액세스하고, 디바이스의 명칭을 취득하여 디바이스 오브젝트에 세트한 것을 되돌려 보냄으로써 실장된다.
(실시 형태 22)
실시 형태 1에서, 디바이스 매니저(2205f)의 제3의 기능인 디바이스 오브젝트 취득 기능을 이용하여 취득된 디바이스 오브젝트는, 방송 수신 장치에 존재하는 디바이스에 대한 식별자로서 디바이스 매니저(2205f)의 기능을 이용할 때에 지정된다. 또한 실시 형태 21에서는, 디바이스 오브젝트는 자신과 대응하는 디바이스를 특정하기 위한 정보를 유지하고, Java 프로그램은 디바이스 오브젝트로부터, 그와 같은 정보를 취득하는 것이 가능하다. 본 실시 형태에서는, 디바이스 오브젝트의 기능을 더욱 확장하여, 디바이스 오브젝트를 통해서 디바이스 매니저(2205f)의 기능을 이용하는 기능을 부여한다. 구체적으로는, 디바이스 오브젝트는(2205f)가 갖는 기능 중, 제3의 기능인 디바이스 오브젝트 취득 기능, 제4의 기능인 디바이스 논리 접속 가능성 취득 기능, 제5의 기능인 디바이스 논리 접속 상태 취득 기능, 제6의 기능인 디바이스 논리 접속 기능, 제7의 기능인 디바이스 논리 접속 해제 기능에 관한 요구를 접수하여, 디바이스 매니저(2205f)에 중계한다. 그 때에, 자기 자신이 1대1로 대응하는 디바이스를 지정 디바이스로서 디바이스 매니저(2205f)에 게 통지한다.
제3의 기능인 디바이스 오브젝트 취득 기능을 이용할 때, Java 프로그램은 디바이스 오브젝트 취득 기능에 관해서는, 실시 형태 12 및 실시 형태 13 및 실시 형태 14에서 정의되는 기능을 실현 가능하다. 실시 형태 12에서는, 디바이스 매니저(2205f)에 대해서 1개의 디바이스 오브젝트를 지정하여 「디바이스 오브젝트 취득 요구」를 발행함으로써, 지정된 디바이스와 논리 접속 상태에 있는 디바이스 오브젝트를 취득 가능하다. 이 경우, 본 실시 형태에서는, 디바이스 오브젝트에 대해서「디바이스 오브젝트 취득 요구」를 발행하는 것이 가능하다. 그 경우의 시퀀스를 도 47에 도시한다. Java 프로그램이 디바이스 오브젝트에 대해서「디바이스 오브젝트 취득 요구」를 발행하면(S4501), 그것을 수신한 디바이스 오브젝트는, 디바이스 매니저(2205f)에 대해서, 자기 자신을 지정하여 「디바이스 오브젝트 취득 요구」를 중계한다(S4502). 디바이스 매니저(2205f)는 그 디바이스 오브젝트가 나타내는 디바이스와 논리 접속 상태에 있는 디바이스의 디바이스 오브젝트를 취득하여(S4503), 원래의 디바이스 오브젝트로 되돌려 보내고(S4504), 디바이스 오브젝트는 그것을 Java 프로그램으로 되돌려 보낸다(S4505). Java 프로그램이 디바이스 타입을 지정한 경우에도 동일하게, 디바이스 매니저(2205f)에 대해서, 자기 자신과, 그 디바이스 타입을 지정하여 「디바이스 오브젝트 취득 요구」를 중계하고, 디바이스 매니저(2205f)로부터 되돌아온 디바이스 오브젝트를 Java 프로그램으로 되돌려 보낸다. 실시 형태 13에서는, 디바이스 매니저(2205f)에 대해서 1개의 디바이스 오브젝트를 지정하여 「디바이스 오브 젝트 취득 요구」를 발행함으로써, 지정된 디바이스와 논리 접속 가능한 디바이스를 나타내는 디바이스 오브 젝트를 취득 가능하다. 또, 실시 형태 14에서는, 디바이스 매니저(2205f)에 대해서 1개의 디바이스 오브젝트를 지정하여 「디바이스 오브젝트 취득 요구」를 발행함으로써, 지정된 디바이스와 논리 접속 가능하고 또한 논리적으로 미접속 상태인 디바이스를 나타내는 디바이스 오브젝트를 취득 가능하다. 이들에 관해서도 디바이스 오브젝트가 요구를 수신 가능하고, Java 프로그램은 도 47의 시퀀스에서 구하는 디바이스 오브젝트를 취득하는 것이 가능하다.
제4의 기능인 디바이스 논리 접속 가능성 취득 기능을 이용할 때, 실시 형태 1에서는, Java 프로그램은 2개의 디바이스 오브젝트를 지정하고, 그것들이 나타내는 디바이스 사이의 논리 접속 가능성을 취득하고 있었다. 이것을 디바이스 오브젝트가 중계하는 경우, Java 프로그램은, 디바이스 오브젝트에 대해서, 1개의 디바이스 오브젝트를 지정하고, 「디바이스 논리 접속 가능성 취득 요구」를 발행한다. 디바이스 오브젝트는 그것을 수신하면, 자기 자신 및 Java 프로그램이 지정한 디바이스 오브젝트를 지정하고, 디바이스 매니저(2205f)에「디바이스 논리 접속 가능성 취득 요구」를 중계한다. 디바이스 매니저(2205f)는 실시 형태 1의 도 37과 동일 시퀀스로 논리 접속 가능성을 취득하여, 원래의 디바이스 오브젝트로 되돌려 보낸다. 원래의 디바이스 오브젝트는 디바이스 매니저(2205f)로부터 수취한 논리 접속 가능성을 Java 프로그램으로 되돌려 보낸다. 또한, 디바이스 매니저(2205f)가 논리 접속 가능성을 취득할 때의 시퀀스는, 도 43 및 도 44에 따라서, 디바이스 논리 접속 조건 관리부 및 디바이스 논리 접속 최대수 관리부가 유지하는 정보도 그 판 단에 이용해도 된다.
제5의 기능인 디바이스 논리 접속 상태 취득 기능을 이용할 때, 실시 형태 1에서는 Java 프로그램은 2개의 디바이스 오브젝트를 지정하고, 그것들이 나타내는 디바이스 사이의 논리 접속 상태를 취득하고 있었다. 이것을 디바이스 오브젝트가 중계하는 경우, Java 프로그램은, 디바이스 오브젝트에 대해서, 1개의 디바이스 오브젝트를 지정하고, 「디바이스 논리 접속 상태 취득 요구」를 발행한다. 디바이스 오브젝트는 그것을 수신하면, 자기 자신 및 Java 프로그램이 지정한 디바이스 오브젝트를 지정하고, 디바이스 매니저(2205f)에「디바이스 논리 접속 상태 취득 요구」를 중계한다. 디바이스 매니저(2205f)는 실시 형태 1의 도 38과 동일 시퀀스로 논리 접속 상태를 취득하고, 원래의 디바이스 오브젝트로 되돌려 보낸다. 원래의 디바이스 오브젝트는 디바이스 매니저(2205f)로부터 수취한 논리 접속 상태를 Java 프로그램으로 되돌려 보낸다.
제6의 기능인 디바이스 논리 접속 기능을 이용할 때, 실시 형태 1에서는 Java 프로그램은 2개의 디바이스 오브젝트를 지정하고, 그것들이 나타내는 디바이스 사이를 논리적으로 접속하고 있었다. 이것을 디바이스 오브젝트가 중계하는 경우, Java 프로그램은, 디바이스 오브젝트에 대해서, 1개의 디바이스 오브젝트를 지정하고, 「디바이스 논리 접속 요구」를 발행한다. 디바이스 오브젝트는 그것을 수신하면, 자기 자신 및 Java 프로그램이 지정한 디바이스 오브젝트를 지정하고, 디바이스 매니저(2205f)에「디바이스 논리 접속 요구」를 중계한다. 디바이스 매니저(2205f)는 실시 형태 1의 도 39와 동일 시퀀스로 논리적으로 접속한다. 또한, 디바이스 매니저(2205f)가 논리 접속 결과를 되돌려 보내는 실장이면, 디바이스 오브젝트는, 디바이스 매니저(2205f)로부터 얻은 접속 결과를, Java 프로그램으로 되돌려 보낸다. 또, 디바이스 매니저(2205f)가 디바이스 논리 접속 조건 관리부, 디바이스 논리 접속 최대수 관리부를 갖는 경우에는, 논리 접속전의 논리 접속 가능성의 판단시, 그들이 유지하는 정보도 판단에 이용한다.
제7의 기능인 디바이스 논리 접속 해제 기능을 이용할 때, 실시 형태 1에서는 Java 프로그램은 2개의 디바이스 오브젝트를 지정하고, 그것들이 나타내는 디바이스 사이의 논리 접속을 해제하고 있었다. 이것을 디바이스 오브젝트가 중계하는 경우, Java 프로그램은, 디바이스 오브젝트에 대해서, 1개의 디바이스 오브젝트를 지정하고, 「디바이스 논리 접속 해제 요구」를 발행한다. 디바이스 오브젝트는 그것을 수신하면, 자기 자신 및 Java 프로그램이 지정한 디바이스 오브젝트를 지정하고, 디바이스 매니저(2205f)에「디바이스 논리 접속 해제 요구」를 중계한다. 디바이스 매니저(2205f)는 실시 형태 1의 도 40과 동일 시퀀스로 논리 접속을 해제한다. 또한, 디바이스 매니저(2205f)가 논리 접속 해제 결과를 되돌려 보내는 실장이면, 디바이스 오브젝트는, 디바이스 매니저(2205f)로부터 얻은 접속 해제 결과를, Java 프로그램으로 되돌려 보낸다.
제8의 기능인 디바이스 접속 공유 가능성 취득 기능을 이용할 때, 실시 형태 11에서는, Java 프로그램은 1개의 디바이스 오브젝트 및 1개의 디바이스 타입을 지정하여, 지정 디바이스 오브젝트가 나타내는 디바이스가 지정 디바이스 타입의 디바이스와의 사이에 다수의 디바이스 논리 접속 패스를 설정 가능한지의 여부의 판 정 결과를 취득하고 있었다. 이것을 디바이스 오브젝트가 중계하는 경우, Java 프로그램은 1개의 디바이스 타입을 지정하고, 디바이스 오브젝트에 대해서「디바이스 접속 공유 가능성 취득 요구」를 발행한다. 디바이스 오브젝트는, Java 프로그램이 지정한 디바이스 타입과 디바이스 오브젝트로서 자기 자신을 지정하여 「디바이스 접속 공유 가능성 취득 요구」를 중계한다. 디바이스 매니저(2205f)는, 실시 형태 11과 동일하게, 디바이스 접속 공유 가능성을 취득하여 디바이스 오브젝트로 되돌려 보낸다. 디바이스 오브젝트는, 디바이스 매니저(2205f)로부터 얻어진 결과를 Java 프로그램으로 되돌려 보낸다.
제9의 기능인 디바이스 처리 결과 통지 청취자 등록 기능을 이용할 때, 실시 형태 20에서는, Java 프로그램은 디바이스 처리 결과 통지 청취자 및 1개의 디바이스 오브젝트를 지정하고 있었다. 이것을 디바이스 오브젝트가 중계하는 경우, Java 프로그램은 디바이스 처리 결과 통지 청취자를 지정하고, 디바이스 오브젝트에 대해서「디바이스 처리 결과 통지 청취자 등록 요구」를 발행한다. 디바이스 오브젝트는, Java 프로그램이 지정한 디바이스 처리 결과 통지 청취자와, 디바이스 오브젝트로서 자기 자신을 지정하여 「디바이스 처리 결과 통지 청취자 등록 요구」를 중계한다. 디바이스 매니저(2205f)는, 실시 형태 20과 동일하게, 디바이스 처리 결과 통지 청취자를, 디바이스와 Java 프로그램과 조로 하여 디바이스 청취자 관리부에 기록한다. 이후, 그 디바이스에 대해서 Java 프로그램이 처리를 행한 경우, 디바이스 처리 결과 통지 청취자에 결과 통지가 행해진다.
상기, 각 기능에 대해서, 전부를 디바이스 오브젝트가 유지할 필요는 없다. 각 기능에 대한 Java 프로그램으로부터의 요구를 디바이스 오브젝트가 중계한다는 구성 상, 실시 형태에 의해서, 디바이스 매니저(2205f)에 존재하지 않는 기능을 디바이스 오브젝트가 갖는 것은 불가능하다. 또한, 디바이스 매니저(2205f)에 존재하는 기능이어도, 그 중의 어느 기능을 디바이스 오브젝트가 중계하는지에 관해서는 실장에 의존하여 결정되어도 된다.
(실시 형태 23)
실시 형태 1에서는, 도 35에서의 디바이스수 취득시(S3402)에서 지정 디바이스 타입을 갖는 디바이스의 수를 되돌려 보내고 있다. 본 실시 형태에서는, 디바이스 타입 지정없이 방송 수신 장치에 존재하는 모든 디바이스의 수를 취득하는 것을 가능하게 한다. 이것은 수속(S3401)에서 디바이스 타입의 지정을 없애고, 수속(S3402)에서 모든 디바이스의 수를 취득하여 Java 프로그램에 제공함으로써, 실시 가능해진다.
(실시 형태 24)
실시 형태 1에서는, 도 36에서의 디바이스 오브젝트 취득시(S3502)에서 지정 디바이스 타입을 갖는 디바이스 모두에 대응하는 디바이스 오브젝트를 되돌려 보내고 있다. 본 실시 형태에서는, 디바이스 지정없이 방송 수신 장치에 존재하는 모든 디바이스에 대응하는 디바이스 오브젝트를 취득하는 것을 가능하게 한다. 이것은, 수속(S3501)에서 디바이스 타입의 지정을 없애고, 수속(S3502)에서 모든 디바이스 타입에 대응하는 디바이스 오브젝트를 취득하여 Java 프로그램에 제공함으로써, 실시 가능해진다. 또한, 이 경우, 취득한 디바이스 오브젝트가 무엇을 나타내 는지의 정보를 Java 프로그램에 제공하기 위해서, 실시 형태 21과 같이, 각 디바이스 오브젝트는 자기 자신에 관한 정보를 유지하고 있을 필요가 있다. 최저로도 디바이스 타입을 유지하는 것으로 한다.
(실시 형태 25)
본 발명에서 상정하는 방송 수신 장치는 다수의 Java 프로그램을 동시에 실행 가능하다. 그 때문에, 디바이스의 논리 접속 상태를 변경하는 Java 프로그램은 다수 존재하는 경우가 있다. 그 경우, Java 프로그램이, 어느 디바이스의 논리 접속 상태의 변화를 알고 싶은 경우가 있다. 예를 들면, Java 프로그램(1)이 이용하고 싶은 디바이스가 이미 Java 프로그램(2)에 의해서 논리 접속되어 있는 경우, Java 프로그램(1)이, Java 프로그램(2)이 그 디바이스에 관한 논리 접속을 해제한 타이밍을 알 수 있으면, Java 프로그램(1)이 정기적으로 그 디바이스의 논리 접속 상태를 조사할 필요가 없어서, 편리하다.
본 실시 형태에서는, 디바이스 매니저(2205f)의 제10의 기능으로서, 디바이스 상태 변화 통지 청취자 등록 기능을 도입한다. 본 기능의 이용예를 도 48에 나타낸다. 우선 Java 프로그램(2)이 PID 필터(A)와 AV 디코더(B)의「디바이스 논리 접속 요구」를 디바이스 매니저(2205f)에 대해서 발행하여(S4601), 논리 접속이 행해진다(S4602). Java 프로그램(1)은 그 후, PID 필터(A)와 AV 디코더(C)의「디바이스 논리 접속 요구」를 발행하지만, 이미 Java 프로그램(2)이 PID 필터에 관한 논리 접속을 행하고 있기 때문에, 논리 접속에 실패한다(S4603). 그래서, Java 프로그램(1)은 디바이스 상태 변화 통지 청취자와 PID 필터(A)를 지정하여 「디바이 스 상태 변화 통지 청취자 등록 요구」를 발행한다(S4604). 디바이스 매니저(2205f)는「디바이스 상태 변화 통지 청취자 등록 요구」수신시, 지정 디바이스 상태 변화 통지 청취자와 지정 디바이스 오브젝트가 나타내는 디바이스를 조로 하여 디바이스 청취자 관리부에 기억한다. 이 예의 경우, PID 필터(A)와 디바이스 상태 변화 통지 청취자를 조로 하여 디바이스 청취자 관리부에 기억한다(S4605). Java 프로그램(2)이 PID 필터(A)와 AV 디코더(B)의 디바이스 논리 접속 해제 요구를 발행하고(S4606), 디바이스 매니저(2205f)가 접속 해제를 행하며(S4607), 디바이스 청취자 관리부로부터 PID 필터(A)에 관한 디바이스 상태 변화 통지 청취자를 취득하여 통지를 행한다(S4608). 그 상태에서는, PID 필터(A)는 아무도 논리 접속을 행하고 있지 않을 것이므로, Java 프로그램(1)은 PID 필터(A)와 AV 디코더(C)의「디바이스 논리 접속 요구」를 발행하고(S4609), 디바이스 매니저(2205f)는 논리 접속을 행한다(S4610).
(실시 형태 26)
본 발명에서 상정하는 방송 수신 장치는 다수의 Java 프로그램을 동시에 실행 가능하다. 또한 으로 되돌의 Java 프로그램은 우선도를 유지하고 있는 것으로 한다. 이와 같은 경우, 우선도가 낮은 Java 프로그램이 구축한 디바이스 논리 접속 패스는 우선도가 높은 Java 프로그램에 의해서 재구성 가능한 것으로 하면 디바이스 관리의 관점에서 자연스럽다. 디바이스 매니저(2205f)에 대해서 「디바이스 논리 접속 요구」가 발행된 경우, 그것이 논리적으로 미접속 상태의 디바이스인 경우, 논리 접속시에 디바이스 논리 접속 관리부(3204)는, 디바이스를 논리 접속한 Java 프로그램의 우선도를 기록한다. 이미 논리 접속 상태의 디바이스인 경우, 디바이스 매니저(2205f)는 디바이스 논리 접속 관리부(3204)가 유지하는 현재 논리 접속하고 있는 Java 프로그램의 우선도를 조사하여, 만일 금번의「디바이스 논리 접속 요구」를 발행한 Java 프로그램의 쪽이 우선도가 높은 경우, 금번의 명령에 따라서 논리 접속을 변경하여, 디바이스 논리 접속 관리부(3204)에 새로운 Java 프로그램의 우선도를 기록한다.
구체적인 시퀀스를 도 49에 나타낸다. Java 프로그램(1)과 Java 프로그램(2)은 방송 수신 장치 상에서 동시에 동작하는 Java 프로그램이고, Java 프로그램(2)은 Java 프로그램(1)보다도 우선도가 높은 것으로 한다. 우선 Java 프로그램(1)이 PID 필터(A)와 AV 디코더(B)의「디바이스 논리 접속 요구」를 발행한다(S4701). 그것을 수신한 디바이스 매니저(2205f)는 요구에 따라서 PID 필터(A)와 AV 디코더(B)를 논리 접속한다(S4702). 그 후, Java 프로그램(1)보다도 우선도가 높은 Java 프로그램(2)이 PID 필터(A)와 AV 디코더(C)의「디바이스 논리 접속 요구」를 발행한다(S4703). 그것을 수신한 디바이스 매니저(2205f)는, PID 필터(A)는 이미 AV 디코더(B)와 접속되어 있는 것을 알아차리고, 이미 확립되어 있는 논리 접속을 행한 Java 프로그램(1)과 새로운 논리 접속 요구를 발행한 Java 프로그램(2)의 우선도를 비교, Java 프로그램(2)의 쪽이 우선도가 높기 때문에, 디바이스 매니저(2205f)는 PID 필터(A)와 AV 디코더(C)를 논리 접속한다(S4704).
(실시 형태 27)
실시 형태 26에서는, 암묵적으로 디바이스 논리 접속을 변경하고 있지만, Java 프로그램이「디바이스 논리 접속 요구」발행시 혹은「디바이스 논리 접속 요구」발행 이전에 디바이스에 대해서 디바이스 상태 변화 통지 청취자를 등록해 둠으로써, 디바이스 논리 접속 패스가 자기 이외의 Java 프로그램에 의해서 변경된 것에 관한 통지를 받는 것을 가능하게 한다.
본 실시 형태에서는, Java 프로그램이 등록한 디바이스 상태 변화 통지 청취자를 디바이스 청취자 관리부가 유지한다. 디바이스 매니저(2205f)가, Java 프로그램으로부터의「디바이스 논리 접속 요구」를 수취하였을 때, 지정 디바이스가 이미 논리 접속되어 있고, 실시 형태 26과 동일한 우선도 조사에 기초하여 디바이스 논리 접속 패스의 변경을 행하였을 때, 디바이스 논리 접속 패스를 빼앗긴 Java 프로그램에 관해서, 만일 디바이스 상태 변화 통지 청취자가 디바이스 청취자 관리부에 등록되어 있으면 이벤트를 여기한다.
구체적인 시퀀스를 도 50에 나타낸다. Java 프로그램(1)과 Java 프로그램(2)은 방송 수신 장치 상에서 동시에 동작하는 Java 프로그램이고, Java 프로그램(2)은 Java 프로그램(1)보다도 우선도가 높은 것으로 한다. 우선 Java 프로그램(1)은 디바이스 상태 변화 통지 청취자를 등록하기 위한「디바이스 상태 변화 통지 청취자 등록 요구」를 디바이스 매니저(2205f)에 대해서 발행하고(S4801), 그것을 수신한 디바이스 매니저(2205f)는 Java 프로그램(1)의 디바이스 상태 변화 통지 청취자를 등록한다(S4802). 다음에, Java 프로그램(1)이 PID 필터(A)와 AV 디코더(B)의「디바이스 논리 접속 요구」를 발행한다(S4803). 그것을 수신한 디바이스 매니저(2205f)는 요구에 따라서 PID 필터(A)와 AV 디코더(B)를 논리 접속한다 (S4804). 그 후, Java 프로그램(1)보다도 우선도가 높은 Java 프로그램(2)이 PID 필터(A)와 AV 디코더(C)의「디바이스 논리 접속 요구」를 발행한다(S4805). 그것을 수신한 디바이스 매니저(2205f)는, PID 필터(A)는 이미 AV 디코더(B)와 논리 접속되어 있는 것을 알아차리고, 이미 확립되어 있는 논리 접속을 행한 Java 프로그램(1)과 새로운 논리 접속 요구를 발행한 Java 프로그램(2)의 우선도를 비교, Java 프로그램(2)의 쪽이 우선도가 높기 때문에, 디바이스 매니저(2205f)는 PID 필터(A)와 AV 디코더(C)를 접속한다(S4806). 또한 수속(S4801)에서 Java 프로그램(1)은 디바이스 상태 변화 통지 청취자를 등록하고 있기 때문에, 디바이스 매니저(2205f)는 Java 프로그램(1)이 접속한 PID 필터(A)와 AV 디코더(B)가 논리 접속 해제된 것을 통지한다(S4807).
(실시 형태 28)
실시 형태 27에 의해, 디바이스 논리 접속이 보다 우선도가 높은 것 이외의 Java 프로그램에게 빼앗긴 Java 프로그램은, 그대로 그 논리 접속을 계속함으로써, 빼앗은 Java 프로그램이 종료 또는 논리 접속을 해제하였을 때에, 디바이스 상태 변화 통지 청취자를 이용하여 사용 가능 통지를 수취하는 것을 가능하게 한다. 디바이스 논리 접속 관리부(3204)는, 디바이스 매니저(2205f)가 디바이스 논리 접속 패스의 재구성을 행하여 논리 접속을 빼앗긴 Java 프로그램에 대해서 통지를 행한 후에도, 논리 접속을 빼앗긴 Java 프로그램의 디바이스 상태 변화 통지 청취자를 유지해 두고, 빼앗은 Java 프로그램이 논리 접속을 해제한 혹은 실행 종료하였을 때에는, 빼앗기고 있었던 Java 프로그램에 대해서, 디바이스 매니저(2205f)가 새롭 게 통지를 행한다.
구체적인 시퀀스를 도 51에 나타낸다. Java 프로그램(1)과 Java 프로그램(2)은 방송 수신 장치 상에서 동시에 동작하는 Java 프로그램이고, Java 프로그램(2)은 Java 프로그램(1)보다도 우선도가 높은 것으로 한다. 우선 Java 프로그램(1)은 디바이스의 상태 변화 통지를 수취하기 위한 디바이스 상태 변화 통지 청취자를 등록하기 위한「디바이스 상태 변화 통지 청취자 등록 요구」를 디바이스 매니저(2205f) 에 대해서 발행하고(S4901), 그것을 수신한 디바이스 매니저(2205f)는 Java 프로그램(1)의 디바이스 상태 변화 통지 청취자를 등록한다(S4902). 다음에, Java 프로그램(1)이 PID 필터(A)와 AV 디코더(B)의「디바이스 논리 접속 요구」를 발행한다(S4903). 그것을 수신한 디바이스 매니저(2205f)는 요구에 따라서 PID 필터(A)와 AV 디코더(B)를 논리 접속한다(S4904). 그 후, Java 프로그램(1)보다도 우선도가 높은 Java 프로그램(2)이 PID 필터(A)와 AV 디코더(C)의「디바이스 논리 접속 요구」를 발행한다(S4905). 그것을 수신한 디바이스 매니저는, PID 필터(A)는 이미 AV 디코더(B)와 논리 접속되어 있는 것을 알아차리고, 이미 확립되어 있는 논리 접속을 행한 Java 프로그램(1)과 새로운 논리 접속 요구를 발행한 Java 프로그램(2)의 우선도를 비교, Java 프로그램(2)의 쪽이 우선도가 높기 때문에, 디바이스 매니저(2205f)는 PID 필터(A)와 AV 디코더(C)를 논리 접속한다(S4906). 또한 수속(S4901)에서 Java 프로그램(1)은 디바이스 상태 변화 통지 청취자를 등록하고 있기때문에, 디바이스 매니저(2205f)는 Java 프로그램(1)이 논리 접속된 PID 필터(A)와 AV 디코더(B)가 논리 접속 해제된 것을 통지한다(S4907). 그 후, Java 프로 그램(2)이 PID 필터(A)와 AV 디코더(C)의「디바이스 논리 접속 해제 요구」를 발행하면(S4908), 디바이스 매니저(2205f)는 PID 필터(A)와 AV 디코더(C)의 논리 접속을 해제하고(S4909), Java 프로그램(1)에 대해서, PID 필터(A)에 관한 논리 접속이 가능하게 된 취지의 통지를 행한다(S4910).
또한, 도 51에서, Java 프로그램(2)의 요구에 따라서, PID 필터(A)와 AV 디코더(C)가 논리 접속된 후, 논리 접속을 해제하기 전에, Java 프로그램(2)이 어떠한 원인으로 실행을 종료하는 경우가 있다. 그 경우, 어플리케이션 관리를 행하는 AM(5005b)으로부터, 디바이스 매니저(2205f)는 Java 프로그램(2)이 종료한 것을 통지받는 것이 가능하기 때문에, 그 경우에는 Java 프로그램(2)이 확립한 논리 접속을 논리 접속 해제한다. 그 때, Java 프로그램(1)과의 사이에 경합이 일어나고 있었던 경우에는, Java 프로그램(1)의 디바이스 상태 변화 통지 청취자에게 상태 변화 통지를 행한다.
(실시 형태 29)
실시 형태 28에서는, 디바이스의 논리 접속을 빼앗은 Java 프로그램을 논리 접속 해제 또는 실행 종료한 경우, 빼앗긴 Java 프로그램에 대해서 통지를 행할 뿐이었지만, 이 때에 앞의 논리 접속을 부활한다. 또한 이 때, 이전의 논리 접속처가 이미 다른 Java 프로그램에 의해서 논리 접속되어 있었던 경우에는, 이 단계에서도 우선도의 판단이 행해진다. 만일 논리 접속을 부활할 수 있었던 경우에는, 빼앗기고 있었던 Java 프로그램에 대해서 그 취지의 통지가 행해진다.
구체적인 시퀀스를 도 52에 나타낸다. Java 프로그램(1)과 Java 프로그램 (2)은 방송 수신 장치 상에서 동시에 동작하는 Java 프로그램이고, Java 프로그램(2)은 Java 프로그램(1)보다도 우선도가 높은 것으로 한다. 우선 Java 프로그램(1)은 디바이스 상태 변화 통지를 수취하기 위한 디바이스 상태 변화 통지 청취자를 등록하기 위한「디바이스 상태 변화 통지 청취자 등록 요구」를 디바이스 매니저(2205f)에 대해서 발행하고(S5001), 그것을 수신한 디바이스 매니저(2205f)는 Java 프로그램(1)의 상태 변화 통지 청취자를 등록한다(S5002). 다음에, Java 프로그램(1)이 PID 필터(A)와 AV 디코더(B)의「디바이스 논리 접속 요구」를 발행한다(S5003). 그것을 수신한 디바이스 매니저(2205f)는 요구에 따라서 PID 필터(A)와 AV 디코더(B)를 논리 접속한다(S5004). 그 후, Java 프로그램(1)보다도 우선도가 높은 Java 프로그램(2)이 PID 필터(A)와 AV 디코더(C)의「디바이스 논리 접속 요구」를 발행한다(S5005). 그것을 수신한 디바이스 매니저(2205f)는, PID 필터(A)는 이미 AV 디코더(B)와 논리 접속되어 있는 것을 알아차리고, 이미 확립되어 있는 논리 접속을 행한 Java 프로그램(1)과 새로운 논리 접속 요구를 발행한 Java 프로그램(2)의 우선도를 비교, Java 프로그램(2)의 쪽이 우선도가 높기 때문에, 디바이스 매니저(2205f)는 PID 필터(A)와 AV 디코더(C)를 논리 접속한다(S5006). 또한 수속(S5001)에서 Java 프로그램(1)은 디바이스 상태 변화 통지 청취자를 등록하고 있기 때문에, 디바이스 매니저(2205f)는 Java 프로그램(1)이 접속된 PID 필터(A)와 AV 디코더(B)가 논리 접속 해제된 것을 통지한다(S5007). 그 후, Java 프로그램(2)이 PID 필터(A)와 AV 디코더(C)의「디바이스 논리 접속 해제 요구」를 발행하면(S5008), 디바이스 매니저(2205f)는 PID 필터(A)와 AV 디코더(C)의 논리 접속 을 해제하여(S5009), PID 필터(A)와 AV 디코더(B)의 재접속을 행하고, Java 프로그램(1)에 대해서, PID 필터(A)와 AV 디코더(B)의 재접속을 행한 취지의 통지를 행한다(S5010).
또한, 도 52에서, Java 프로그램(2)의 요구에 따라서, PID 필터(A)와 AV 디코더(C)가 논리 접속된 후, 논리 접속을 해제하기 전에, Java 프로그램(2)이 어떠한 원인으로 실행을 종료하는 경우가 있다. 그 경우, 어플리케이션 관리를 행하는 AM(5005b)으로부터, 디바이스 매니저(2205f)는 Java 프로그램(2)이 종료한 것을 통지받는 것이 가능하기 때문에, 그 경우에는 Java 프로그램(2)이 확립한 논리 접속을 논리 접속 해제한다. Java 프로그램(1)과의 사이에 경합이 일어나고 있었던 경우에는, 재차 그 Java 프로그램이 요구한 논리 접속을 확립하여, Java 프로그램(1)의 디바이스 상태 변화 통지 청취자에게 상태 변화 통지를 행한다.
(실시 형태 30)
실시 형태 1에서는, 디바이스 논리 접속 관리부(3204)는, 디바이스의 논리 접속 상태를 관리하고 있을 뿐이었다. 그러나, Java 프로그램이 접속을 행하여, 디바이스 논리 접속 패스가 구축된 디바이스에 관해서도, 사용되고 있지 않으면 아무런 효과도 나타나지 않는다. 본 실시 형태에서는, 디바이스 사용 상태 관리부를 도입하여, 디바이스의 사용 상태를 관리한다. 디바이스 매니저(2205f)는 Java 프로그램이「디바이스 논리 접속 요구」를 발행하였을 때에, 우선도가 낮은 Java 프로그램이 이미 접속을 구축하고 있었다고 해도, 디바이스 사용 상태 관리부에 문의하여, 사용 중이면 접속의 재구축을 행하지 않는다.
(실시 형태 31)
실시 형태 3에서는, 방송 수신 장치 내에 존재하는 디바이스이면 디바이스 매니저(2205f) 내의 각 부가 그들 디바이스에 관한 정보를 취급함으로써, 디바이스 매니저(2205f)가 논리 접속을 관리하는 것이 가능한 것을 나타내었다. 그러나, 도 15에서의 어댑터(1511) 내의 디바이스와 같이, 방송 수신 장치에 미리 존재하지 않고, 뒤에서 추가하는 디바이스도 존재한다. 이것에 관해서는, 방송 수신 장치 내의 디바이스 매니저(2205f)가 미리 이들 디바이스의 정보를 관리하는 것은 불가능하다.
본 실시 형태에서는, 그들 디바이스에 관해서도 디바이스 매니저(2205f)가 관리를 행한다. 그 때문에, 디바이스 매니저(2205f) 내에 디바이스 기술 취득부 및 디바이스 기술 해석부 및 디바이스 물리 접속 변경 취득부를 도입한다.
디바이스 기술 취득부는 새롭게 추가된 디바이스가 유지하는 디바이스 기술을 디바이스로부터 취득하는 기능을 갖는다. 디바이스 기술 취득부는, 디바이스로부터 디바이스 기술을 읽어들이기 위한 라이브러리로서 실현되고, ROM(1209)이 유지하며, CPU(1506)가 이용한다.
디바이스 기술 해석부는, 디바이스로부터 취득한 디바이스 기술을 해석하여, 디바이스 매니저(2205f)가 이해 가능한 형태로 고친다. 디바이스 기술 해석부는, 디바이스 기술을 해석하는 라이브러리로서 실현되고, ROM(1509)이 유지하며, CPU(1506)가 이용한다.
디바이스 물리 접속 변경 취득부는, 디바이스가 추가된 것에 의한 방송 수신 장치 내에 존재하는 디바이스의 물리 접속 관계의 변경을 취득하기 위해서 이용한다. 디바이스 매니저(2205f)는 디바이스 물리 접속 변경 취득부를 이용하여, 2개의 기능을 실현한다. 하나는 방송 수신 장치 내에 존재하는 디바이스 구성의 변화의 검지이다. 디바이스 매니저(2205f)는 디바이스 구성의 변화(디바이스의 추가 또는 삭제)가 일어났을 때, 디바이스 물리 접속 변경 취득부로부터 통지를 받음으로써 그것을 아는 것이 가능해진다. 또 하나는 디바이스의 물리 접속 구성의 변화 취득이다. 디바이스 매니저(2205f)는 디바이스의 물리 접속의 변화를 취득하는 것이 가능해진다. 디바이스 물리 접속 변경 취득부는, 디바이스의 물리 접속 변경을 취득하기 위한 라이브러리로서 실현되고, ROM(1509)이 유지하며, CPU(1506)가 이용한다.
디바이스 기술은 추가되는 디바이스가 유지한다. 디바이스 매니저(2205f)는, 방송 수신 장치의 기동시에, 접속된 디바이스의 디바이스 기술을, 디바이스 기술 취득부를 이용하여 읽어들이고, 디바이스 기술 해석부를 이용하여, 해석을 행한다. 그 후, 해석된 정보를 디바이스 매니저(2205f) 내의 다른 모듈의 정보를 설정한다. 디바이스 기술은 특히 “디바이스 타입 문자열“을 포함하고, 또한 필요하면 “디바이스 논리 접속 조건”이나“디바이스 논리 접속 최대수”를 포함한다. “디바이스 타입”은 디바이스 기본 정보 관리부(3201)가 관리한다. “디바이스 논리 접속 조건”이나“디바이스 논리 접속 최대수”는, 추가되는 디바이스의 하드웨어 사양에 기정되는 요건을 표현하고, 디바이스 논리 접속 최대수 관리부나 디바이스 접속 조건 관리부가 관리한다. 또한 디바이스 매니저(2205f)는 디바이스의 추가에 의해 변경된 물리 접속을 디바이스 물리 접속 변경 취득부로부터 취득하여, 디바이스 물리 접속 관리부(3203)에 설정한다. 이후, 실시 형태 1에서 정의한 디바이스 매니저(2205f)의 기능 실현 시퀀스를 변경하지 않고, 디바이스 매니저(2205f)는 동작 가능하다.
(실시 형태 32)
실시 형태 31에서는 디바이스 기술을 읽어들이는 형태에 대해서 서술하였지만, 또한, 본 실시 형태에서는, 디바이스 기술을 방송 수신 장치의 기동 중에 읽어들일 수 있다. 이 경우, 예를 들면 도 15에서의 어댑터(1511)가 동적으로 추가되고, 또한 동적으로 추가 가능한 디바이스를 탑재하고 있었던 경우, 디바이스 매니저(2205f)는 디바이스 물리 접속 변경 취득부로부터 통지를 받음으로써 그것을 검지하고, 실시 형태 31과 동일하게, 디바이스의 추가를 행한다. 그 추가시 시퀀스 내에서, 디바이스 매니저(2205f)는 디바이스 기술의 취득, 해석을 행하여, 정보를 각 부에 설정한다. 또한 물리 접속의 변경을 취득하여 디바이스 물리 접속 관리부(3203)에 설정한다. 이와 같이 실장함으로써, 디바이스 매니저(2205f)는 동적인 접속의 추가에 대응 가능하다.
(실시 형태 33)
실시 형태 32에서는 디바이스가 동적인 추가에 관해서 서술하였지만, 그와 같이 동적으로 추가 가능한 디바이스는 동적으로 삭제되는 경우도 많다. 그와 같은 경우, 디바이스 매니저(2205f)는, 그것을 디바이스 물리 접속 변경 취득부로부터 통지 받음으로써 그것을 검지하여, 디바이스 물리 접속 변경 취득부를 이용하여 디바이스의 물리 구성의 변경을 디바이스 물리 접속 관리부(3203)에 설정한다. 또한, 그 시점에서 확립되어 있는 논리 접속 중, 삭제된 물리 접속을 이용하고 있었던 것에 관해서는, 논리 접속을 자동적으로 해제한다. 그 때, 디바이스 상태 변화 통지 청취자가 등록되어 있으면, Java 프로그램에 대해서, 디바이스 상태 변화 통지 청취자를 통해서, 자동적으로 논리 접속을 해제한 취지의 통지를 행한다.
이것에 의해, 디바이스 매니저(2205f)는 디바이스의 동적인 삭제에 대응 가능하다.
(실시 형태 34)
실시 형태 1 내지 32에서는, 디바이스 매니저(2205f)가 관리하는 디바이스는, 디바이스 오브젝트를 기준으로 하여, 디바이스 단체로서 취급하고 있었다. 그 때문에, 논리 접속하는 단이 되었을 때에 으로 되돌의 디바이스를 지정하지 않으면 안되므로, Java 프로그램에서 논리 접속은 번거로운 조작이 되어 버리고 있다.
본 실시 형태에서는, 디바이스의 조를 정리하여 취급할 수 있는 「디바이스 세트」의 개념을 도입하고, 디바이스 매니저(2205f)는 디바이스 세트를 나타내는 오브젝트의 입력을 접수하는 것을 가능하게 한다. 디바이스 세트는 디바이스 오브젝트의 집합이라고 정의되고, 또한, 디바이스 세트는 디바이스 오브젝트가 디바이스 세트에 등록된 순서를 유지한다. 요컨대, 디바이스 세트가 표현하는 것은 “디바이스 논리 접속 패스를 구성하는 디바이스열”이다. 지금까지의 실시 형태에서는, 디바이스 매니저(2205f)의 각 기능을 이용할 때, 디바이스 오브젝트 2개를 이용하여 2개의 디바이스 사이의 논리 접속을 표현할 수 밖에 없었다. 본 실시 형태 에서는, 디바이스 매니저(2205f)의 기능을 이용할 때, 다수의 디바이스로 구성되는 “디바이스 논리 접속 패스”를 표현하는 디바이스 세트를 지정함으로써, 지정된 디바이스 논리 접속 패스를 대상으로 하는 것이 가능하다. 예를 들면, 섹션 필터를 이용하여 MPEG2 섹션이 전송하는 데이터를 취득하고 싶은 경우, 튜너, PID 필터, 섹션 필터의 각 디바이스에 대응하는 디바이스 오브젝트를 디바이스 매니저(2205f)로부터 취득하여, 논리 접속하고 싶은 디바이스 오브젝트를 논리 접속하고 싶은 순서로 디바이스 세트에 설정하고, 그 디바이스 세트를 이용하여 논리 접속 가능성의 판단이나 논리 접속을 행하는 것이 가능해진다. 이 때, 디바이스 매니저(2205f)는 디바이스 매니저(2205f) 내의 각 부를 이용하여, 디바이스 세트 내에 포함되는 디바이스가 세트된 순서로 디바이스 논리 접속 패스를 확립 가능하였을 때에만 논리 접속을 행한다. 이것에 의해 Java 프로그램은 논리 접속 자체를 간단히 행하는 것이 가능해진다.
(실시 형태 35)
실시 형태 34에서는, Java 프로그램이 디바이스 세트를 지정하여 「디바이스 논리 접속 요구」를 발행한 경우, 디바이스 매니저(2205f)는 지정 디바이스 세트 내의 디바이스가 세트된 순서로 논리 접속 가능한 경우에만 접속을 행한다. 본 실시 형태에서는, 그와 같은 경우, 지정 디바이스 세트 내의 모든 디바이스끼리가 논리 접속 가능하지 않아도, 논리 접속 가능한 부분만 논리 접속을 행한다.
(실시 형태 36)
실시 형태 34 내지 35에서는 디바이스 세트의 개념을 도입하여, 다수 종류의 디바이스를 한번에 취급할 수 있는 실장을 하였지만, 실시 형태 36에서는 더욱 고도의 기능으로서, 기능을 표현하는 오브젝트의 지정에 의해 디바이스의 논리 접속을 행하는 기능을 디바이스 매니저(2205f)가 제공한다. 예를 들면 섹션 필터를 이용하는 경우, 실시 형태 34에서는 으로 되돌의 디바이스에 대응하는 디바이스 오브젝트를 디바이스 오브젝트로 설정하고, 그것을 이용하여 논리 접속 조작을 행할 필요가 있었지만, 실시 형태 36에서는, “기능”을 디바이스 매니저(2205f)에 대해서 지정하는 것을 가능하게 한다. 예를 들면, 「W개의 MPEG2 섹션의 선별을 행하고 싶다」라는 “기능”을 지정하여 디바이스 매니저(2205f)의 제6의 기능인 디바이스 논리 접속 기능을 이용함으로써, 자동적으로, 지정된 “기능”에 대해서 필요한 디바이스를 논리 접속하고, 실제로 확립한 디바이스 논리 접속 패스 내의 디바이스에 대응하는 디바이스 오브젝트를 유지하는 디바이스 세트를 되돌려 보낸다. 이것에 의해, Java 프로그램은 “어느 디바이스를 어떻게 논리 접속하면 소망의 기능을 실현할 수 있는지”를 알 필요가 없고, 소망의 “기능” 자체를 지정함으로써 그것에 필요한 디바이스 논리 접속 패스를 얻을 수 있다.
본 실시 형태에서는, “기능”을 표현하기 위한 기능 오브젝트를 정의한다. Java 프로그램은 자신이 이용하고 싶은 “기능”을 기능 오브젝트에 설정한다. 그 기능 오브젝트를 디바이스 매니저(2205f)에 지정하고, 디바이스 매니저(2205f)의 기능을 이용한다.
디바이스 매니저(2205f)는 기능 오브젝트가 유지하는 “기능”으로부터, 그것에 필요한 디바이스 논리 접속 패스를 인도할 필요가 있다. 본 실시 형태에서 는, 디바이스 매니저(2205f)에 기능 해석부를 도입한다. 기능 해석부는, 디바이스 매니저(2205f)가 기능 오브젝트를 수취하였을 때에, 그 기능을 실현하는 데에 필요한 디바이스 논리 접속 패스에 포함되는 디바이스를 인도하는 기능을 갖는 라이브러리로서 실현되고, ROM(1209) 내에 존재하며, CPU(1206)에 의해서 사용된다.
디바이스 매니저(2205f)는, 각 기능의 이용시에 기능 오브젝트가 지정되면, 기능 해석부를 이용하여 필요한 디바이스를 인도한다. 얻어진 디바이스에 관해서, 디바이스 매니저(2205f)는 각 기능을 적용한다. 예를 들면, 제6의 기능인 디바이스 논리 접속 기능을 이용하는 경우, 예를 들면「W개의 MPEG2 섹션을 선별」한다고 지정된 경우, 우선 디바이스 매니저(2205f)는 기능 해석부를 이용하여「W개의 MPEG2 섹션을 선별」하기 위해서 필요한 디바이스 논리 접속 패스를 확립하는 데에 필요한 모든 디바이스를 취득하고, 디바이스 논리 접속 패스를 확립한다.
본 기능을 이용하여, Java 프로그램은 자신의 이용하고 싶은 “기능”을 지정하여 디바이스 논리 접속 패스를 확립하는 것이 가능해진다.
(실시 형태 37)
실시 형태 1 내지 36에서는, 방송 수신 장치의 기동 중에 확립된 디바이스 논리 접속 패스는, 방송 수신 장치의 전원 절단에 의해서 해제되고, 재기동시에는 새롭게 방송 수신 장치 상의 Java 프로그램이 디바이스의 논리 접속을 행할 필요가 있다. 본 실시 형태에서는, 디바이스 매니저(2205f)는, 방송 수신 장치의 전원 투입시에 방송 수신 장치의 전회 종료시에 확립되어 있었던 디바이스 논리 접속 패스를 자동적으로 재확립한다. 이 때문에, 디바이스 논리 접속 관리부(3204)를 2차 기억부(1207)에 두고, 전원 절단이 행해져도 디바이스 논리 접속 관리부(3204)가 관리하는 정보가 소거되지 않도록 한다. 디바이스 매니저(2205f)는 방송 수신 장치의 전원 투입시에 2차 기억부(1207) 상에 존재하는 디바이스 논리 접속 관리부(3204)를 조사하고, 논리 접속된 채로 전원이 끊어진 디바이스 논리 접속 패스에 관해서, 자동적으로 재논리 접속을 행한다.
(실시 형태 38)
실시 형태 37에서는 방송 수신 장치의 전원 투입시, 전회의 전원 절단시의 디바이스 논리 접속 패스를 자동적으로 부활한다. 그러나, 방송 수신 장치 상에서 동작하고 있었던 Java 프로그램은 어느 디바이스 논리 접속 패스가 부활된 것인지 아는 수단이 없다. 본 실시 형태에서는, 방송 수신 장치의 전원 투입시, 전회의 전원 절단시의 디바이스 논리 접속 패스를 자동적으로 부활하는 동시에, 자동적으로 부활한 디바이스 논리 접속 패스를 확립하는 「디바이스 논리 접속 요구」를 발행하고 있었던 Java 프로그램이 기동하였을 때, 자동적으로 부활한 디바이스 논리 접속 패스를 통지한다. 이것은 2차 기억부(1207) 상의 디바이스 논리 접속 관리부(3204)가 디바이스 논리 접속 패스 정보를 격납할 때에, 그 요구를 발행한 Java 프로그램의 식별자를 동시에 유지해 둠으로써, 방송 수신 장치의 전원 투입시, 디바이스 논리 접속 패스를 부활할 때에 Java 프로그램의 식별자를 취득하고, 합치하는 Java 프로그램이 동작하고 있으면 통지를 행한다는 수속을 밟는 것으로 실현 가능하다.
이상의 각 실시 형태에서는, 모든 방송 수신 장치는 Java 언어에 의해 기술 된 프로그램을 실행하는 것을 전제로 하고 있지만, 본 발명은 언어에는 의존하지 않기 때문에, 다른 언어에 의해서 기술된 프로그램이 실행되는 환경이어도 이상의 각 실시 형태와 동일하게, 본 발명은 적용 가능하다.
본 발명에 관한 방송 수신 장치는, 방송 수신 장치 상에 있는 디바이스의 접속·접속 해제 수단을 방송 수신 장치 상에서 동작하는 프로그램에 제공함으로써, 보다 상세한 디바이스 관리를 실현하는 것으로, 디지털 텔레비전 등의 방송 수신 장치, 퍼스널 컴퓨터, 휴대전화, 기록매체 내의 데이터 처리를 행하는 장치의 정보 처리 장치 상에서 보다 고기능인 프로그램의 동작을 가능하게 한다.

Claims (44)

  1. 소정의 기능을 갖는 하드웨어로서, 어플리케이션 프로그램으로부터의 요구에 따라 제어되는 디바이스를 다수 구비하는 정보 처리 장치에 있어서,
    어플리케이션 프로그램과 AV 데이터를 포함하는 방송 신호를 수신하는 수신 수단과,
    상기 수신한 방송 신호에 포함되는 어플리케이션 프로그램을 추출하는 추출 수단과,
    상기 추출한 어플리케이션 프로그램을 실행하는 프로그램 실행 수단과,
    상기 디바이스를 관리하는 디바이스 관리 수단과,
    상기 수신한 방송 신호에 포함되는 AV 데이터를 처리하는 AV 데이터 처리 수단을 구비하고,
    상기 디바이스 관리 수단은, 상기 프로그램 실행 수단에 의해 실행되는 어플리케이션 프로그램으로부터의 요구에 기초하여, 상기 정보 처리 장치가 구비한 디바이스를 식별하기 위한 식별자를 상기 어플리케이션 프로그램으로 통지하는 식별자 통지부와,
    상기 통지를 받은 어플리케이션 프로그램으로부터, 상기 식별자를 이용하여, 다수의 디바이스 중 적어도 2개의 디바이스의 지정을 받으면, 상기 지정된 디바이스 사이에 정보 수수(授受) 경로를 설정하는 정보 경로 설정부를 구비하고,
    상기 AV 데이터 처리 수단은, 상기 정보 수수 경로가 설정된 적어도 2개의 디바이스를 이용하여 상기 수신한 방송 신호에 포함되는 AV 데이터를 처리하는 것을 특징으로 하는 정보 처리 장치.
  2. 제1항에 있어서, 상기 정보 경로 설정부는, 상기 어플리케이션 프로그램에 의해서 상기 식별자가 다수 지정된 경우, 상기 지정된 다수의 식별자 각각에 대응하는 디바이스 사이에, 지정된 순서로 정보 수수 경로를 설정하는 것을 특징으로 하는 정보 처리 장치.
  3. 삭제
  4. 삭제
  5. 제2항에 있어서, 상기 식별자 통지부는, 상기 어플리케이션 프로그램에 의해서 지정된 종류의 디바이스에 대응하는 식별자를 상기 어플리케이션 프로그램으로 통지하는 것을 특징으로 하는 정보 처리 장치.
  6. 제2항에 있어서, 상기 식별자 통지부는, 상기 어플리케이션 프로그램에 의해서 지정된 식별자로 특정되는 디바이스와의 사이에, 정보 수수 경로를 설정 가능한 모든 디바이스에 대응하는 식별자를 상기 어플리케이션 프로그램으로 통지하는 것을 특징으로 하는 정보 처리 장치.
  7. 제2항에 있어서, 상기 식별자 통지부는, 상기 어플리케이션 프로그램에 의해서 지정된 식별자로 특정되는 디바이스와의 사이에, 정보 수수 경로가 설정되어 있는 모든 디바이스에 대응하는 식별자를 상기 어플리케이션 프로그램으로 통지하는 것을 특징으로 하는 정보 처리 장치.
  8. 제2항에 있어서, 상기 식별자 통지부는, 상기 어플리케이션 프로그램에 의해서 지정된 식별자로 특정되는 디바이스와의 사이에, 정보 수수 경로를 설정 가능하고, 또한 아직 정보 수수 경로의 일부로 되어 있지 않은 디바이스에 대응하는 식별자를 상기 어플리케이션 프로그램으로 통지하는 것을 특징으로 하는 정보 처리 장치.
  9. 제2항에 있어서, 상기 디바이스 관리 수단은,
    상기 어플리케이션 프로그램에 의해서 지정된 식별자로 특정되는 디바이스가, 다수의 정보 수수 경로에 포함되는 지의 여부를 상기 어플리케이션 프로그램으로 통지하는 디바이스 공유 여부 통지부를 더 구비하는 것을 특징으로 하는 정보 처리 장치.
  10. 제9항에 있어서, 상기 디바이스 공유 여부 통지부는, 상기 어플리케이션 프로그램에 의해서 지정된 식별자로 특정되는 디바이스가 포함될 수 있는 정보 수수 경로의 최대수를 통지함으로써, 상기 여부를 상기 어플리케이션 프로그램으로 통지하는 것을 특징으로 하는 정보 처리 장치.
  11. 제1항에 있어서, 상기 디바이스 관리 수단은,
    상기 어플리케이션 프로그램에 의해서 지정된, 다수의 상기 디바이스가 각각의 기능을 함으로써 실현되는 대기능을 나타내는 기능 식별자에 기초하여, 상기 대기능을 실현하기 위해서 필요한 디바이스를 특정하는 기능 해석부를 더 구비하고,
    상기 정보 경로 설정부는, 상기 기능 해석부에 의해서 특정된 상기 디바이스 사이에 정보 수수 경로를 설정하는 것을 특징으로 하는 정보 처리 장치.
  12. 제1항에 있어서, 상기 어플리케이션 프로그램은, 상기 디바이스 관리 수단에 대해서 요구를 행하였을 때에는, 상기 디바이스 관리 수단으로부터의 응답을 받아서, 동기하여 처리를 재개하는 것을 특징으로 하는 정보 처리 장치.
  13. 제1항에 있어서, 상기 어플리케이션 프로그램은, 상기 디바이스 관리 수단에 대해서 요구를 행하였을 때에는, 상기 디바이스 관리 수단으로부터의 응답에 관계없이, 비동기적으로 처리를 실행하는 것을 특징으로 하는 정보 처리 장치.
  14. 제1항에 있어서, 상기 정보 경로 설정부는, 상기 어플리케이션 프로그램에 의해서 지정된 다수의 디바이스 중 어느 하나가, 이미 다른 정보 수수 경로의 일부로서 설정되어 있던 경우, 새로운 정보 수수 경로를 설정하지 않는 것을 특징으로 하는 정보 처리 장치.
  15. 제1항에 있어서, 상기 정보 경로 설정부는, 상기 어플리케이션 프로그램에 의해서 지정된 다수의 디바이스 사이에 정보 수수 경로를 설정하는 것에 성공하였는지 실패하였는지를 나타내는 처리 결과를 상기 어플리케이션 프로그램으로 통지하는 것을 특징으로 하는 정보 처리 장치.
  16. 제15항에 있어서, 상기 정보 경로 설정부는, 상기 어플리케이션 프로그램에 의해서 지정된 다수의 디바이스 사이에 정보 수수 경로를 설정하는 것에 실패한 경우, 실패의 이유를 상기 어플리케이션 프로그램으로 통지하는 것을 특징으로 하는 정보 처리 장치.
  17. 제1항에 있어서, 상기 디바이스 관리 수단은,
    상기 프로그램 실행 수단에 의해 실행되는 어플리케이션 프로그램으로부터의 요구에 기초하여, 상기 디바이스 사이에 설정된 정보 수수 경로를 설정 해제하는 정보 경로 해제부를 더 구비하는 것을 특징으로 하는 정보 처리 장치.
  18. 제17항에 있어서, 상기 정보 경로 해제부는, 상기 어플리케이션 프로그램에 의해서 상기 식별자를 다수 이용하여 지정된 디바이스 사이에, 지정된 순서로 설정된 정보 수수 경로를 설정 해제하는 것을 특징으로 하는 정보 처리 장치.
  19. 삭제
  20. 삭제
  21. 제17항에 있어서, 상기 디바이스 관리 수단은,
    상기 어플리케이션 프로그램에 의해서 지정된, 다수의 상기 디바이스가 각각의 기능을 함으로써 실현되는 대기능을 나타내는 기능 식별자에 기초하여, 상기 대기능을 실현하기 위해서 필요한 디바이스를 특정하는 기능 해석부를 더 구비하고,
    상기 정보 경로 해제부는, 상기 기능 해석부에 의해서 특정된 상기 디바이스 사이에 설정된 정보 수수 경로를 설정 해제하는 것을 특징으로 하는 정보 처리 장치.
  22. 제17항에 있어서, 상기 정보 경로 해제부는, 상기 어플리케이션 프로그램에 의해서 지정된 다수의 디바이스 사이에 설정된 정보 수수 경로를 설정 해제하는 것에 성공하였는지 실패하였는지를 나타내는 처리 결과를 상기 어플리케이션 프로그램으로 통지하는 것을 특징으로 하는 정보 처리 장치.
  23. 제22항에 있어서, 상기 정보 경로 해제부는, 상기 어플리케이션 프로그램에 의해서 지정된 다수의 디바이스 사이에 설정된 정보 수수 경로를 설정 해제하는 것에 실패한 경우, 실패의 이유를 상기 어플리케이션 프로그램으로 통지하는 것을 특징으로 하는 정보 처리 장치.
  24. 제1항에 있어서, 상기 디바이스 관리 수단은,
    상기 프로그램 실행 수단에 의해 실행되는 어플리케이션 프로그램으로부터의 요구에 기초하여, 상기 정보 처리 장치상에 존재하는 상기 디바이스의 수를 상기 어플리케이션 프로그램으로 통지하는 디바이스수 통지부를 더 구비하는 것을 특징으로 하는 정보 처리 장치.
  25. 제24항에 있어서, 상기 디바이스수 통지부는, 상기 어플리케이션 프로그램에 의해서 지정된 상기 디바이스의 종류에 대응하는 디바이스의 수를 상기 어플리케이션 프로그램으로 통지하는 것을 특징으로 하는 정보 처리 장치.
  26. 제1항에 있어서, 상기 디바이스 관리 수단은,
    상기 프로그램 실행 수단에 의해 실행되는 어플리케이션 프로그램으로부터의 요구에 기초하여, 상기 디바이스 사이에 정보 수수 경로를 설정하는 것이 가능한지의 여부를 상기 어플리케이션 프로그램으로 통지하는 경로 설정 여부 통지부를 더 구비하는 것을 특징으로 하는 정보 처리 장치.
  27. 제26항에 있어서, 상기 경로 설정 여부 통지부는, 상기 어플리케이션 프로그램에 의해서 상기 식별자를 다수 이용하여 지정된 디바이스 사이에, 지정된 순서로 정보 수수 경로를 설정하는 것이 가능한지의 여부를 상기 어플리케이션 프로그램으로 통지하는 것을 특징으로 하는 정보 처리 장치.
  28. 삭제
  29. 삭제
  30. 제26항에 있어서, 상기 디바이스 관리 수단은,
    상기 어플리케이션 프로그램에 의해서 지정된, 다수의 상기 디바이스가 각각의 기능을 함으로써 실현되는 대기능을 나타내는 기능 식별자에 기초하여, 상기 대기능을 실현하기 위해서 필요한 디바이스를 특정하는 기능 해석부를 더 구비하고,
    상기 경로 설정 여부 통지부는, 상기 기능 해석부에 의해서 특정된 상기 디바이스 사이에 정보 수수 경로를 설정하는 것이 가능한지의 여부를 상기 어플리케이션 프로그램으로 통지하는 것을 특징으로 하는 정보 처리 장치.
  31. 제1항에 있어서, 상기 디바이스 관리 수단은,
    상기 프로그램 실행 수단에 의해 실행되는 어플리케이션 프로그램으로부터의 요구에 기초하여, 상기 디바이스 사이에 정보 수수 경로가 설정되어 있는지의 여부를 상기 어플리케이션 프로그램으로 통지하는 경로 상태 통지부를 더 구비하는 것을 특징으로 하는 정보 처리 장치.
  32. 제31항에 있어서, 상기 경로 상태 통지부는, 상기 어플리케이션 프로그램에 의해서 상기 식별자를 다수 이용하여 지정된 디바이스 사이에, 지정된 순서로 정보 수수 경로가 설정되어 있는지의 여부를 상기 어플리케이션 프로그램으로 통지하는 것을 특징으로 하는 정보 처리 장치.
  33. 삭제
  34. 삭제
  35. 제31항에 있어서, 상기 디바이스 관리 수단은,
    상기 어플리케이션 프로그램에 의해서 지정된, 다수의 상기 디바이스가 각각의 기능을 함으로써 실현되는 대기능을 나타내는 기능 식별자에 기초하여, 상기 대기능을 실현하기 위해서 필요한 디바이스를 특정하는 기능 해석부를 더 구비하고,
    상기 경로 상태 통지부는, 상기 기능 해석부에 의해서 특정된 상기 디바이스 사이에 정보 수수 경로가 설정되어 있는지의 여부를 상기 어플리케이션 프로그램으로 통지하는 것을 특징으로 하는 정보 처리 장치.
  36. 제1항에 있어서, 상기 정보 경로 설정부는, 상기 프로그램 실행 수단에 의해 실행되는 다수의 어플리케이션 프로그램에 의해서, 동일한 디바이스를 포함하는 정보 수수 경로의 설정이 요구된 경우, 항상 먼저 요구된 정보 수수 경로를 우선하여 설정하는 것을 특징으로 하는 정보 처리 장치.
  37. 제1항에 있어서, 상기 프로그램 실행 수단은, 실행되는 다수의 어플리케이션 프로그램 사이에서 우선도를 관리하고, 상기 우선도를 이용하여 어플리케이션 프로그램의 우선도 비교를 행하는 것을 특징으로 하는 정보 처리 장치.
  38. 제37항에 있어서, 상기 정보 경로 설정부는, 상기 프로그램 실행 수단에 의해 실행되는 다수의 어플리케이션 프로그램에 의해서, 동일한 디바이스를 포함하는 정보 수수 경로의 설정이 요구된 경우, 항상 우선도가 높은 어플리케이션 프로그램의 정보 수수 경로를 우선하여 설정하는 것을 특징으로 하는 정보 처리 장치.
  39. 제37항에 있어서, 상기 정보 경로 설정부는, 상기 정보 수수 경로의 설정 후, 최초의 정보 수수 경로를 요구한 어플리케이션 프로그램보다 높은 우선도를 갖는 다른 어플리케이션 프로그램에 의해서, 상기 정보 수수 경로에 설정한 디바이스를 포함하는 정보 수수 경로의 설정이 요구된 경우, 상기 다른 어플리케이션 프로그램에 의해서 요구된 정보 수수 경로를 설정하는 동시에, 최초의 정보 수수 경로를 요구한 어플리케이션 프로그램으로 그 취지를 통지하는 것을 특징으로 하는 정보 처리 장치.
  40. 제39항에 있어서, 상기 정보 경로 설정부는, 상기 최초의 정보 수수 경로에 포함되고, 또한 상기 다른 어플리케이션 프로그램에 의해서 요구된 정보 수수 경로를 구성하고 있던 디바이스가, 재차 이용 가능하게 된 경우, 상기 디바이스가 재이용 가능하다는 취지를 최초의 정보 수수 경로를 요구한 어플리케이션 프로그램으로 통지하는 것을 특징으로 하는 정보 처리 장치.
  41. 제39항에 있어서, 상기 정보 경로 설정부는, 상기 최초의 정보 수수 경로에 포함되고, 또한 상기 다른 어플리케이션 프로그램에 의해서 요구된 정보 수수 경로를 구성하고 있던 디바이스가, 재차 이용 가능하게 된 경우, 상기 최초의 정보 수수 경로를 재설정하여, 상기 최초의 정보 수수 경로를 요구한 어플리케이션 프로그램으로 재설정을 통지하는 것을 특징으로 하는 정보 처리 장치.
  42. 제1항에 있어서, 상기 디바이스 관리 수단은, 상기 어플리케이션 프로그램으로부터의 요구에 의해 상기 디바이스를 제어하는 것을 특징으로 하는 정보 처리 장치.
  43. 소정의 기능을 갖는 하드웨어로서, 어플리케이션 프로그램으로부터의 요구에 따라 제어되는 디바이스를 다수 구비하는 정보 처리 장치에서의 정보 처리 방법에 있어서,
    어플리케이션 프로그램과 AV 데이터를 포함하는 방송 신호를 수신하는 수신 단계와,
    상기 수신한 방송 신호에 포함되는 어플리케이션 프로그램을 추출하는 추출 단계와,
    상기 추출한 어플리케이션 프로그램을 실행하는 프로그램 실행 단계와,
    상기 디바이스를 관리하는 디바이스 관리 단계와,
    상기 수신한 방송 신호에 포함되는 AV 데이터를 처리하는 AV 데이터 처리 단계를 포함하고,
    상기 디바이스 관리 단계는, 상기 프로그램 실행 단계에 의해 실행되는 어플리케이션 프로그램으로부터의 요구에 기초하여, 상기 정보 처리 장치가 구비한 디바이스를 식별하기 위한 식별자를 상기 어플리케이션 프로그램으로 통지하는 식별자 통지 단계와,
    상기 통지를 받은 어플리케이션 프로그램으로부터, 상기 식별자를 이용하여 다수의 디바이스 중 적어도 2개의 디바이스의 지정을 받으면, 상기 지정된 디바이스 사이에 정보 수수(授受) 경로를 설정하는 정보 경로 설정 단계를 포함하고,
    상기 AV 데이터 처리 단계에서는, 상기 정보 수수 경로가 설정된 적어도 2개의 디바이스를 이용하여 상기 수신한 방송 신호에 포함되는 AV 데이터를 처리하는 것을 특징으로 하는 정보 처리 방법.
  44. 삭제
KR1020040061743A 2003-08-06 2004-08-05 정보 처리 장치 KR101059682B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2003287626 2003-08-06
JPJP-P-2003-00287626 2003-08-06
US55228204P 2004-03-12 2004-03-12
US60/552,282 2004-03-12

Publications (2)

Publication Number Publication Date
KR20050016167A KR20050016167A (ko) 2005-02-21
KR101059682B1 true KR101059682B1 (ko) 2011-08-25

Family

ID=34395569

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040061743A KR101059682B1 (ko) 2003-08-06 2004-08-05 정보 처리 장치

Country Status (4)

Country Link
US (1) US8001208B2 (ko)
EP (1) EP1526714A1 (ko)
KR (1) KR101059682B1 (ko)
CN (1) CN100452796C (ko)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7555540B2 (en) * 2003-06-25 2009-06-30 Microsoft Corporation Media foundation media processor
US8201191B2 (en) * 2004-06-30 2012-06-12 Time Warner Cable Inc. Apparatus and methods for implementation of network software interfaces
US8196161B2 (en) * 2005-02-09 2012-06-05 Ati Technologies Ulc Processing digital television programs at a receiver so as to prevent interception of unscrambled programs
JP2006229510A (ja) * 2005-02-17 2006-08-31 Sharp Corp ディジタル衛星放送システム、送信局、受信機
US20060225108A1 (en) * 2005-04-01 2006-10-05 Nextel Communications, Inc. System and method for interactivity between mobile stations and a television device
US20070098069A1 (en) * 2005-04-27 2007-05-03 Stephen Gordon Inverse scan, coefficient, inverse quantization and inverse transform system and method
US7634760B1 (en) 2005-05-23 2009-12-15 Netapp, Inc. System and method for remote execution of a debugging utility using a remote management module
US7827554B2 (en) * 2005-06-20 2010-11-02 Microsoft Corporation Multi-thread multimedia processing
CA2609827A1 (en) * 2005-06-23 2006-12-28 Matsushita Electric Industrial Co. Ltd. Program execution apparatus and execution method
US20070091919A1 (en) * 2005-10-24 2007-04-26 Sandoval Francis R Method and system of supporting enhanced television signaling
KR20070079257A (ko) 2006-02-01 2007-08-06 엘지전자 주식회사 데이터 방송 관련 어플리케이션의 제한 방법, 클래스와인터페이스 구조 및 이를 위한 방송 수신기
KR20070113427A (ko) * 2006-05-23 2007-11-29 엘지전자 주식회사 방송 수신기, 진단 정보 데이터 구조 및 진단 정보 표출방법
KR20070115326A (ko) * 2006-06-01 2007-12-06 엘지전자 주식회사 방송 수신기, 진단 정보 데이터 구조 및 진단 정보 표출방법
JP2007336094A (ja) * 2006-06-13 2007-12-27 Canon Inc 視聴システム及びその制御方法、視聴装置及びその制御方法、並びに制御プログラム
US20080126471A1 (en) 2006-09-19 2008-05-29 Samsung Electronics Co., Ltd. Method and apparatus for generating plurality of applications, and method and apparatus for processing application suitable for broadcasting receiving apparatus
US20080072265A1 (en) * 2006-09-19 2008-03-20 Samsung Electronics Co., Ltd. Method and apparatus for processing plurality of applications for broadcasting service and information storage medium storing the method
JP4912856B2 (ja) * 2006-12-15 2012-04-11 株式会社東芝 フィルタリング装置及びデジタル放送受信装置
KR101361511B1 (ko) * 2007-01-30 2014-02-10 삼성전자 주식회사 방송신호 처리장치 및 방송신호 처리장치에서의 채널전환방법
KR100919053B1 (ko) * 2007-12-03 2009-09-24 한국전자통신연구원 이동통신 단말기 프레임워크에서의 하드웨어 컴포넌트관리방법 및 장치
JP5007681B2 (ja) * 2008-02-14 2012-08-22 ソニー株式会社 放送システム
JP2010044752A (ja) * 2008-07-14 2010-02-25 Panasonic Corp 情報処理装置およびそのシステム環境設定方法
US20100088732A1 (en) * 2008-10-02 2010-04-08 Samsung Electronics Co., Ltd. Method and apparatus for using service based on objects for implementing different functions of service
US8898723B2 (en) * 2010-08-20 2014-11-25 Sony Corporation Virtual channel declarative script binding
WO2012161129A1 (ja) * 2011-05-20 2012-11-29 日本放送協会 放送通信連携システム、アプリケーション管理サーバー、受信機、受信機における受信方法、および、アプリケーション管理サーバーにおけるアプリケーション管理方法
JP5343150B2 (ja) * 2012-04-10 2013-11-13 株式会社ソニー・コンピュータエンタテインメント 情報処理装置および番組表表示方法
US9483283B1 (en) 2014-11-20 2016-11-01 Apptimize, Inc. Enhanced code callback
CN105956463B (zh) * 2016-04-23 2019-01-11 腾讯科技(深圳)有限公司 一种设备控制方法、装置及终端
JP6822050B2 (ja) * 2016-10-14 2021-01-27 富士通株式会社 情報処理システム、情報処理装置、情報処理方法、情報処理プログラム及び端末
CN109246589B (zh) * 2017-06-14 2020-10-30 普天信息技术有限公司 一种实现遥晕终端定位业务的方法和设备
CN108156513B (zh) * 2017-12-26 2020-04-24 深圳创维数字技术有限公司 节目解扰录制方法、机顶盒及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001244942A (ja) 2000-02-29 2001-09-07 Sony Corp 情報処理装置および方法、並びに記録媒体
US20030005130A1 (en) 2001-06-29 2003-01-02 Cheng Doreen Yining Audio-video management in UPnP

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US28782A (en) * 1860-06-19 Improvement in machines for reaping and mowing
US18768A (en) * 1857-12-01 Improvement in corn-planters
US5130A (en) * 1847-05-29 Improvement in shovel-plows
US6252964B1 (en) * 1995-04-03 2001-06-26 Scientific-Atlanta, Inc. Authorization of services in a conditional access system
US5557338A (en) 1995-04-05 1996-09-17 Thomson Consumer Electronics, Inc. Television receiver using received channel guide information and a secondary video signal processor for displaying secondary channel information
JP3697317B2 (ja) * 1996-05-28 2005-09-21 株式会社東芝 通信装置
US7383341B1 (en) * 1996-10-15 2008-06-03 Kabushiki Kaisha Toshiba Data transfer control device, relay device and control device suitable for home network environment
JP3212921B2 (ja) * 1997-09-17 2001-09-25 シャープ株式会社 複合端末機
US6407998B1 (en) * 1997-10-02 2002-06-18 Thomson Licensing S.A. Multimedia decoder for prioritized bi-directional communication in a broadcast system
KR100511250B1 (ko) * 1998-04-09 2005-11-03 엘지전자 주식회사 디지탈오디오/비디오(a/v)시스템
US6219839B1 (en) * 1998-05-12 2001-04-17 Sharp Laboratories Of America, Inc. On-screen electronic resources guide
FR2779595B1 (fr) * 1998-06-08 2000-07-21 Thomson Multimedia Sa Procede de gestion de priorites d'acces a des ressources dans un reseau domestique et appareil de mise en oeuvre
US6360275B1 (en) * 1998-10-29 2002-03-19 Shanghai Wonders Information Co., Ltd. System and method for transmitting and receiving data in a network
US6169725B1 (en) * 1998-10-30 2001-01-02 Sony Corporation Of Japan Apparatus and method for restoration of internal connections in a home audio/video system
JP2001086419A (ja) * 1999-09-14 2001-03-30 Sony Corp 電子機器
JP4135047B2 (ja) * 1999-11-17 2008-08-20 ソニー株式会社 情報伝送システム、情報出力装置、情報入力装置および接続関係特定方法
JP2001285729A (ja) * 2000-03-29 2001-10-12 Canon Inc 受信装置及びディジタル放送受信装置とシステム及びそれらの方法
US7023858B2 (en) * 2000-04-14 2006-04-04 Sony Corporation Data delivery in set-top box
US7181759B2 (en) * 2000-05-26 2007-02-20 Bigband Networks, Inc. System and method for providing interactivity for end-users over digital broadcast channels
US6954641B2 (en) * 2000-08-14 2005-10-11 Vesivius, Inc. Communique wireless subscriber device for a cellular communication network
CN100397899C (zh) * 2000-10-11 2008-06-25 联合视频制品公司 提供数据存储到点播媒体传递系统中服务器上的系统和方法
KR100389986B1 (ko) * 2000-11-10 2003-07-04 주식회사 알티캐스트 텔레비젼 화면에 연속적인 광고 표시가 가능한 디지털방송용 셋탑 박스 및 그 방법
US20020099800A1 (en) * 2000-11-27 2002-07-25 Robert Brainard Data mark and recall system and method for a data stream
AU2002355530A1 (en) * 2001-08-03 2003-02-24 John Allen Ananian Personalized interactive digital catalog profiling
KR100412503B1 (ko) * 2001-12-13 2003-12-31 삼성전자주식회사 디지털방송신호의 해상도 설정이 용이한 디지털방송신호수신용 셋톱박스
US6763019B2 (en) * 2002-03-05 2004-07-13 Nokia Corporation Method and system for authenticated fast channel change of media provided over a DSL connection
KR100454959B1 (ko) * 2002-04-30 2004-11-06 삼성전자주식회사 디지털방송을 시청할 수 있는 셋탑박스 시스템 및 그시청방법
US6891471B2 (en) * 2002-06-06 2005-05-10 Pui Hang Yuen Expandable object tracking system and devices
US20040054771A1 (en) * 2002-08-12 2004-03-18 Roe Glen E. Method and apparatus for the remote retrieval and viewing of diagnostic information from a set-top box
US20040031052A1 (en) * 2002-08-12 2004-02-12 Liberate Technologies Information platform
US7154566B2 (en) * 2002-12-05 2006-12-26 Koninklijke Philips Electronics N.V. Programmable universal remote control unit and method of programming same
US7313137B2 (en) * 2003-02-26 2007-12-25 International Business Machines Corp. System and method for efficient replication and distribution of data objects

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001244942A (ja) 2000-02-29 2001-09-07 Sony Corp 情報処理装置および方法、並びに記録媒体
US20030005130A1 (en) 2001-06-29 2003-01-02 Cheng Doreen Yining Audio-video management in UPnP

Also Published As

Publication number Publication date
US8001208B2 (en) 2011-08-16
CN100452796C (zh) 2009-01-14
EP1526714A1 (en) 2005-04-27
CN1581945A (zh) 2005-02-16
US20050044201A1 (en) 2005-02-24
KR20050016167A (ko) 2005-02-21

Similar Documents

Publication Publication Date Title
KR101059682B1 (ko) 정보 처리 장치
EP1886490B1 (en) Broadcast receiving terminal
EP1511297A2 (en) Broadcast receiving apparatus
CN1612510B (zh) 广播接收装置
CN101383895B (zh) 显示处理方法和显示处理装置
CN101208750B (zh) 记录和再现装置以及记录和再现方法
EP1841228A1 (en) Broadcast reception device
US20090222867A1 (en) Broadcast receiving apparatus, video storing apparatus, and multimedia delivering system
WO2009050901A1 (en) Content processing device and content processing method
KR20080012293A (ko) 콘텐트 재생 장치
WO2007072958A1 (en) Content management system
US20060290775A1 (en) Program execution apparatus and execution method
KR20080015087A (ko) 방송 기록 및 재생 장치와 그 방법
WO2006075557A1 (ja) プログラム実行装置
KR20080015096A (ko) 기록 및 재생 장치
CN100438591C (zh) 显示处理方法和显示处理装置
JP2005071330A (ja) 情報処理装置
MX2007013880A (es) Aparato de grabacion y reproduccion.

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150716

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160701

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170720

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180719

Year of fee payment: 8