KR20010056045A - 트리방식의 클라이언트-서버 멀티미디어 시스템 - Google Patents

트리방식의 클라이언트-서버 멀티미디어 시스템 Download PDF

Info

Publication number
KR20010056045A
KR20010056045A KR1019990057442A KR19990057442A KR20010056045A KR 20010056045 A KR20010056045 A KR 20010056045A KR 1019990057442 A KR1019990057442 A KR 1019990057442A KR 19990057442 A KR19990057442 A KR 19990057442A KR 20010056045 A KR20010056045 A KR 20010056045A
Authority
KR
South Korea
Prior art keywords
data
server
top box
multimedia
multimedia data
Prior art date
Application number
KR1019990057442A
Other languages
English (en)
Other versions
KR100313622B1 (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 홍성철
Priority to KR1019990057442A priority Critical patent/KR100313622B1/ko
Publication of KR20010056045A publication Critical patent/KR20010056045A/ko
Application granted granted Critical
Publication of KR100313622B1 publication Critical patent/KR100313622B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • 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/4363Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network
    • H04N21/43632Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network involving a wired protocol, e.g. IEEE 1394

Abstract

IEEE1394 인터페이스 카드를 가진 서버 컴퓨터와, 다수의 셋탑박스로 이루어진 클라이언트-서버 방식의 멀티미디어 시스템이 제공된다. 서버는 MPEG 등과 같은 디지털 오디오/비디오 데이터 포맷으로 된 여러 종류의 데이터베이스를 가지고 있는 고속의 대용량 하드디스크를 가진 일반 PC로 이루어진다. 클라이언트는 IEEE1394 인터페이스 기능과, MPEG 등과 같은 디지털 오디오/비디오 데이터 포맷의 비트스트림 재생기능을 가진 셋탑박스이다. 클라이언트는 트리방식으로 서버에 연결된다. 셋탑박스는 상호대화식 통신(interactive transaction)으로 서버와 명령을 주고받으면서 서버의 디지털 오디오/비디오 데이터베이스 중 원하는 것을 선택하며, 서버는 선택된 디지털 오디오/비디오 데이터를 각각의 셋탑박스에 실시간으로 전달한다. 셋탑박스에는 서버로 부터 전송된 디지털 오디오/비디오를 저장하기 위하여 2개의 메모리 블록이 있으며, 디지털 비디오 재생부가 제1의 메모리 블록으로부터 데이터를 읽어들여서 멀티미디어 데이터를 재생하는 동안에, 서버로부터 수신되는 멀티미디어 데이터는 제2의 메모리 블록에 저장되는 이른바 더블-버퍼링(Double-Bufferring) 방식으로 이루어진다.

Description

트리방식의 클라이언트-서버 멀티미디어 시스템{Tree structured client-server multi-media system}
본 발명은 트리방식의 클라이언트-서버 멀티미디어 시스템에 관한 것으로서, 특히 클라이언트-서버 방식으로 하나의 PC 서버에 다수의 셋탑박스를 트리방식으로 연결하여 구성되는 멀티미디어 시스템에 관한 것이다.
아날로그 어학 실습 시스템, 라이브러리 시스템, 비디오방 기기, 노래방 기기 등과 같은 종래의 아날로그 오디오/비디오 기기들은 아날로그 방식이 갖고 있는 근본적인 문제점인 음질/화질의 저하, 보존의 어려움 등의 문제점을 가지고 있다.
이러한 문제점을 해결하기 위하여 디지털 방식의 멀티미디어 시스템이 많이 등장하고 있다. 특히, VOD(Video On Demand)라고 불리우는 멀티미디어 시스템이 각광을 받고 있다. VOD란, 디지털 방식으로 기록된 오디오/비디오 데이터를 서버에 저장하여 두고 있다가, 사용자가 원하면 해당 비디오 데이터 스트림을 사용자에게 전송하여 실시간으로 또는 약간의 시간 간격을 두고 재생할 수 있도록 함으로써, 사용자가 원하는 멀티미디어 데이터를 보고 들을 수 있도록 한 시스템이다.
그러나, 디지털 방식의 멀티미디어 데이터들은 압축기술의 발달에도 불구하고 그 데이터 양이 방대하기 때문에 멀티미디어 데이터를 전송하기 위해서는 넓은 대역폭이 필요하다. 따라서, 종래에는 고속의 ATM 망을 이용하거나 이더넷과 고속 스위칭 허브를 이용한 LAN 상에서만 구현이 가능하였다.
그러나, 이러한 시스템은 광대역의 통신을 구현하기 위해 고속 ATM망이나 고속 LAN을 사용하고, 또한 서버와 클라이언트로 모두 PC를 사용하기 때문에 전체 VOD 시스템을 갖추기 위해서는 고가의 비용이 요구된다고 하는 단점이 있다.
본 발명은 이러한 점을 감안하여 이루어진 것으로서, 저가의 비용으로 구현이 가능한 클라이언트-서버 멀티미디어 시스템을 제공하는 것을 목적으로 한다.
본 발명의 다른 목적은 설치가 간편한 트리방식의 클라이언트-서버 멀티미디어 시스템을 제공하는 것이다.
도 1은 본 발명의 멀티미디어 시스템에서 서버와 셋탑박스가 트리방식으로 연결되어 있는 모습을 보여주는 개략도이다.
도 2는 셋탑박스의 내부 구성을 개략적으로 보여주는 개략블록도이다.
도 3은 셋탑박스의 내부 구성을 좀더 상세히 보여주는 블록도이다.
도 4는 셋탑박스의 파워온시의 1394 및 MPEG 제어부의 동작을 보여주는 흐름도이다.
도 5는 본 발명의 클라이언트-서버 방식의 멀티미디어 시스템에서 서버와 클라이언트 사이에서 데이터가 오고 가는 방식을 설명하기 위한 시간차트이다.
도 6은 본 발명의 셋탑박스에서 멀티미디어 데이터의 수신과 디코딩과의 시간 관계를 설명하기 위한 시간차트이다.
도 7은 서버와 클라이언트 사이의 커맨드 포맷의 일예이다.
도 8은 사용자의 셋탑박스에서의 조작에 따른 커맨드/응답 및 클라이언트 화면의 예이다.
본 발명의 클라이언트-서버 멀티미디어 시스템은 IEEE1394 시리얼 버스를 이용하여 서버와 클라이언트를 연결한다. 서버는 MPEG 등과 같은 디지털 오디오/비디오 데이터 포맷으로 된 여러 종류의 데이터베이스를 가지고 있는 고속의 대용량 하드디스크를 가진 일반 PC로 이루어진다. 클라이언트는 IEEE1394 기능과, MPEG 등과 같은 디지털 비디오 데이터 포맷의 비트스트림을 재생기능을 가진 셋탑박스이다. 클라이언트는 트리방식으로 서버에 연결된다. 셋탑박스는 상호대화식 통신(interactive transaction)으로 서버와 명령을 주고받으면서 서버의 디지털 오디오/비디오 데이터베이스 중 원하는 것을 선택하며, 서버는 선택된 디지털 오디오/비디오 데이터를 각각의 셋탑박스에 실시간으로 전달한다. 셋탑박스에는 서버로 부터 전송된 디지털 오디오/비디오를 저장하기 위하여 2개의 메모리 블록이 있으며, 디지털 비디오 재생부가 제1의 메모리 블록으로부터 데이터를 읽어들여서 멀티미디어 데이터를 재생하는 동안에, 서버로부터 수신되는 멀티미디어 데이터는 제2의 메모리 블록에 저장되는 이른바 더블-버퍼링(Double-Bufferring) 방식으로 이루어진다.
이하, 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다.
도 1은 본 발명의 멀티미디어 시스템에서 서버(100)와 셋탑박스(200a..200s)가 트리방식으로 연결되어 있는 모습을 보여주는 개략도이다.
서버와 셋탑박스 사이, 그리고 셋탑박스와 셋탑박스 사이는 IEEE1394 시리얼 버스로 연결되어 있다. 서버와 셋탑박스의 각 노드는 다수개의 IEEE1394 시리얼 버스 포트가 있으며, 따라서 다수개의 장치가 연결될 수 있다.
도 1은 서버와 셋탑박스의 각 노드에 3개의 IEEE1394 시리얼 버스 포트가 있는 실시 예를 보여주는 것으로서, 서버(100)에는 3개까지의 셋탑박스(200a..200c)가 연결된다. 셋탑박스에서는 3개의 연결단자 중에서 1개는 상위 장치로부터 오는 선에 연결되고, 나머지 2개의 단자를 사용하여 하위의 장치를 연결할 수 있으므로, 최대 2개까지의 셋탑박스가 연결된다. 즉, 셋탑박스 200a에서는 하나의 선이 상위 장치인 서버(100)로부터 오고, 나머지 2개의 단자는 하위의 장치인 셋탑박스 200d와 셋탑박스 200e에 연결되어 있다.
이와 같은 방식으로 계속 하위 장치로 연결됨으로써, 서버와 셋탑박스가 트리방식으로 연결되게 된다.
다음으로, 서버의 내부 구성에 대해서 설명한다.
먼저, 서버(100)는 일반적인 PC(Personal Computer)와 동일한 구성을 갖는다. 다만, 서버(100)가 일반적인 PC와 다른 점은 셋탑박스와의 통신을 위한IEEE1394 인터페이스 카드가 꽂힌다는 점이다. 또한, 대용량의 멀티미디어 데이터베이스를 위해서 별도의 대용량 하드디스크 또는 디스크 어레이가 연결될 수 있다. 또는, 멀티미디어 데이터베이스로서 CD-ROM 드라이버 또는 멀티 CD 체인저(다수의 CD 중에서 하나를 재생할 수 있는 장치)를 사용할 수도 있다. 기타 다른 부분은 일반적인 개인용 컴퓨터와 동일하므로 상세한 설명은 생략한다.
다음으로, 셋탑박스의 내부 구성에 대해서 설명한다.
도 2는 셋탑박스의 내부 구성을 개략적으로 보여주는 개략블록도이다.
유저인터페이스부(210)는 사용자와 기기 사이의 인터페이스를 위한 부분으로서, 통상적인 키보드나 키버튼 또는 터치스크린으로 이루어진다. 사용자의 조작 편리성을 위해서 리모콘 인터페이스를 채용할 수도 있다.
IEEE1394 인터페이스부(220)는 서버(100)와의 통신을 위한 것이다. 세개의 IEEE1394 인터페이스 단자에서 하나는 상위 장치로 연결되고, 나머지 두개는 하위 장치로 연결되어 트리 구조를 형성하게 된다.
메모리 제어부(230)는 IEEE1394 인터페이스부(220)를 통해서 들어오는 멀티미디어 데이터 스트림을 일시 저장하는 역할을 한다.
OSD부(240)는 서버(100)로부터의 비디오 화상 위에 문자를 표시하거나 또는 사용자에게 여러가지 기능 메뉴를 보여주기 위한 OSD(On-Screen Display) 기능을 구현하기 위한 부분으로서, 디지털 비디오 재생부(250)로부터의 비디오 신호에 문자 화면을 겹친 후, 모니터에서 표시할 수 있는 신호로 변환한다.
디지털 오디오/비디오 재생부(250)는, 메모리 제어부(230)에 저장되어 있는, 서버(100)로부터의 디지털 데이터 포맷을 디코딩하여 아날로그 오디오/비디오 신호로 변환하는 역할을 한다.
이렇게 재생된 멀티미디어 신호는 모니터(260)를 통해 시각적으로 디스플레이되고, 스피커 또는 이어폰을 통해 음성 신호로 변환되어 출력된다.
다음으로, 도 3 및 도 4를 참조하여 셋탑박스의 구성에 대하여 좀더 상세히 설명한다. 도 3은 셋탑박스의 내부 구성을 좀더 상세히 보여주는 블록도이고, 도 4는 셋탑박스의 파워온시의 1394 및 MPEG 제어부의 동작을 보여주는 흐름도이다.
도 3에서 리모콘/버튼 입력부(211)와 유저인터페이스 제어부(212)는 도 2의 유저인터페이스부(210)에 대응되고, 1394 제어부(221), 1394 링크계층부(222), 1394 물리계층부(223)는 IEEE1394 인터페이스부(220)에 대응된다.
또한, 도 3의 메모리 제어부에 대응되는 부분은 ISO(Isochronous) 데이터 컨트롤러(231)와 두개의 SRAM 메모리(232, 233)이다. 비디오 믹서(241)는 도 3의 OSD부(240)에 대응된다. 도 3의 디지털 오디오/비디오 재생부(250)에 대응되는 부분은, MPEG 제어부(251), TV 인코더(252), MPEG 인코더(253), 오디오 DAC(254), 비디오램(255)이다.
도 3의 예에서는 디지털 오디오/비디오 신호로서 MPEG 포맷이 사용되는 경우를 예로 들어 설명하고 있지만, 본 발명은 특정 디지털 오디오/비디오 포맷에 한정되는 것은 아니다.
파워온시의 셋탑박스의 각 제어부의 초기화 과정 및 그 이후의 동작에 대해서 도 4를 참조하여 설명한다. 셋탑박스는 유저인터페이스 제어부(212), 1394 제어부(221), MPEG 제어부(251)의 세 핵심부분에 의해서 전체 시스템의 동작이 제어된다..
< 1394 제어부의 초기화 과정 및 역할>
1394 제어부(221)는 IEEE1394 시리얼 버스의 프로토콜 스택에서 트랜잭션 계층, 시리얼 버스 매니저 그리고 IEEE1394의 응용 계층의 기능을 수행하며, 유저인터페이스 제어부(212)로부터의 명령을 처리하거나 또는 MPEG 제어부로 전달하는 기능을 담당한다. 1394 MCU는 파워온(power-on)시에 다음의 초기화 과정을 수행한다.
1) 프로그램 변수의 초기화: 프로그램에서 사용되는 여러가지 변수를 초기화한다.
2) 1394 MCU의 초기화: 인터럽트 레지스터 및 시리얼 포트를 초기화한다. 1394 MCU와 MPEG MCU와의 통신은 시리얼 통신으로 행할 수 있다.
3) 1394 링크계층칩의 초기화: IEEE1394 프로토콜에 맞추어 링크계층칩의 레지스터맵을 초기화한다. 여기에는 일반적인 링크제어, Async Tx/Rx, Iso Tx/Rx, 그리고 각종 인터럽트의 초기화 과정이 포함된다.
4) IEEE1394 토폴로지(topology) 구성을 위한 셀프-ID 확인: IEEE1394는 버스 초기화, 트리 아이덴터파이(identify), 셀프 아이덴터파이(identify) 과정을 통하여 1394 시리얼 버스 토폴로지를 구성하는데, 각 노드(셋탑박스)는 입력되는 'Self-ID Packet'으로부터 셀프-ID 확인과정을 수행하고, 이를 통해서 Root Node_ID와 자신의 Node_ID, 그리고 전체의 노드 갯수를 알게 된다.
5) 메인루프 수행: 폴링과 인터럽트 드리븐(interrupt-driven) 방식에 의해서 사용자 명령 세트(User command set)와 IEEE1394의 Async 및 ISO 트랜잭션을 처리한다.
IEEE1394 표준안에서는 데이터의 전송을 위한 채널 설정이 동적(dynamic)으로 이루어지도록 되어 있지만, 동적 채널설정을 위해서는 별도의 등시성 리소스 관리(isochronous resource management) 장치가 필요하다. 그러나, 본 발명에서는 각 셋탑박스의 파월-온 리셋 이후의 초기화 과정에서 딥스위치 등의 수단에 의해 미리각 셋탑박스에 고유의 채널 ID를 할당하고 이를 서버에 알려주어서, 서버는 각 노드(클라이언트 셋탑박스)에 대한 고유의 채널 ID를 미리 설정하게 함으로써 등시성 리소스 관리장치의 필요성을 제거하였다. 즉, 본 발명에서는 IEEE1394에서 제공되는 최대의 채널수(63개)만큼 연결될 수 있는 장치의 수를 제한시킴으로써, 채널 ID를 동적으로 할당할 필요성을 제거하고 있다.
셋탑박스(200)는 등시성 멀티미디어 데이터에 포함되어 있는 채널 ID를 자신의 채널 ID와 비교하여 일치하는 경우에만 데이터를 받아들이고, 일치하지 않는 경우에는 바이패스하도록 함으로써 트리구조의 클라이언트-서버 구조에서 특정 셋탑박스에 멀티미디어 데이터를 전송할 수 있도록 하고 있다. 또한, 채널 ID 중에서 63(3Fh)은 브로드캐스팅에 할당하여, ID가 63인 경우에는 모든 셋탑박스가 멀티미디어 데이터를 받아들이도록 한다.
< MPEG MCU의 초기화 과정 및 역할 >
MPEG MCU가 수행하는 주임무는 셋탑박스의 요청에 의해 서버로부터 셋탑박스로 입력된 ISO 데이터(MPEG 비트 스트림)를 실시간으로 MPEG 디코더에 전달하는 일이다. MPEG MCU는 파워온(power-on)시에 다음의 초기화 과정을 수행한다.
1) 프로그램 변수의 초기화: 프로그램에서 사용되는 여러가지 변수를 초기화한다.
2) MPEG MCU 초기화: 인터럽트 레지스터를 초기화하고 시리얼 포트 레지스터를 초기화한다.
3) MPEG 디코더칩의 포트어드레스 설정
4) MPEG 디코더의 CSR(Control and Status Register)의 초기화: MPEG 디코더에서 CSR 레지스터 영역에는 디코딩 및 디스플레이 매니지먼트 과정에 필요한 각종 변수들을 저장한다. 리셋 및 초기화 과정을 통하여 이들 변수들을 초기화한다.
5) 메인루프 수행: 폴링과 인터럽트 드리븐(interrupt-driven) 방식에 의해 MPEG 비트 스트림의 디코딩 과정이 수행된다.
< ISO 데이터 컨트롤러의 동작 >
본 발명의 멀티미디어 시스템은 시간압축 방식으로 멀티미디어 데이터를 전송한다. 따라서, 시간압축방식으로 실제의 데이터비트율보다 높은 전송율로 전송되는 멀티미디어 데이터는 짧은 시간동안 수신되어 일시 저장되었다가, MPEG 디코더에서 재생을 하고자 할 때 실제의 데이터비트율에 맞추어 긴 시간에 걸쳐서 출력되어야 한다. 이러한 동작은 ISO 데이터 컨트롤러(231)의 제어에 의해 이루어진다.
도 5와 도 6을 참조하여 ISO 데이터 컨트롤러(231)의 동작에 대해서 상세히 설명한다. 도 5는 본 발명의 클라이언트-서버 방식의 멀티미디어 시스템에서 서버와 클라이언트 사이에서 데이터가 오고 가는 방식을 설명하기 위한 시간차트이며, 도 6은 본 발명의 셋탑박스에서 멀티미디어 데이터의 수신과 디코딩과의 시간 관계를 설명하기 위한 시간차트이다.
본 발명의 시스템에서 서버(100)와 클라이언트(셋탑박스) 사이의 데이터의 전송은 도 5의 (a)에서 보인 것처럼 1초에 8000번의 사이클 구간으로 나누어서 행해진다. 또한 각 사이클 구간은 도 5의 (b)에 보인 것처럼 등시성(等時性, isochronous) 멀티미디어 데이터가 사이클 구간의 앞부분에 전송되고, 비동기(asynchronous) 커맨드 세트가 뒷부분에 전송된다. 물론, 등시성 멀티미디어 데이터와 비동기 커맨드 세트의 순서를 반대로 하는 것도 가능하다.
멀티미디어 데이터는 한곳의 클라이언트로 연속되는 여러 사이클 구간 동안에 전송된다. 즉, 도 5의 (b)에 도시한 것처럼 n개의 사이클 구간 동안 한곳의 클라이언트용의 등시성 멀티미디어 데이터가 전송된다.
사이클 구간의 할당은 클라이언트로부터의 요청에 의해 행해진다. 즉, 특정 클라이언트에서 서버로 데이터 요청이 올 때에만 해당 클라이언트에 일정 사이클 구간을 할당하여 멀티미디어 데이터를 전송하도록 하고, 각 사이클 구간의 앞부분에 클라이언트를 구분할 수 있는 ID 데이터를 삽입하는 것이다. 그리고, 각 클라이언트에서는 자신의 ID와 일치하는 데이터만을 받아들인다.
도 5의 (c)와 (d)는 이러한 경우의 데이터 전송예를 보여준다. 도면에서 각 클라이언트로부터의 요청이 노드 1(클라이언트 1), 노드 2, 노드 4, 노드 1,...의 순서로 도착하고 있으며(도 5의 (d)), 이에 대해서 n 사이클 구간이 노드 1, 노드 2, 노드 4, 노드 1,...의 순서로 할당되고 있음(도 5의 (c))을 알 수 있다.
여기에서, 시간압축방식의 전송이란, 도 5의 (b)에 도시된 이소크로너스 멀티미디어 데이터가 시간적으로 압축되어서 전송된다는 것을 의미한다. 즉, 도 5의 (b)에 표시된 아주 짧은 시간동안 전송되는 멀티미디어 데이터가 사실은 이보다 훨씬 더 긴 시간동안 재생될 수 있는 양의 데이터라는 의미이다.
따라서, 실시간 재생을 위해서는 셋탑박스에서는 데이터를 받아두었다가 실제의 재생시간에 맞추어 재생을 하며, 또한 재생을 하는 도중에 다음번 재생을 위하여 데이터를 받아두어야 하는 것이다. 그러므로, 본 발명에서는 메모리 제어부(230)에 두개의 메모리(232, 233)를 마련하여 두고 있다.
그래서, 도 6에 도시한 것처럼, 하나의 메모리로 재생하는 동안(도 6의 Mem 1 디코딩) 나머지 메모리로 데이터를 수신하며(도 6의 Mem 2 저장), 하나의 메모리에서 재생이 끝나면 서버에 데이터를 보내달라는 데이터 전송 요청을 함과 동시에(도 6의 데이터 전송 req.), 나머지 메모리에 수신되어 있는 데이터의 재생을 시작하며(도 6의 Mem 2 디코딩), 그동안 다시 하나의 메모리로 데이터를 수신한다(Mem 1 저장). 이때, 위에서 설명한 것처럼 시간압축방식을 사용하고 있기 때문에 서버로부터 데이터를 받아서 저장하는 기간은 매우 짧은 반면에, 디코딩 하는 기간은 상대적으로 길다는 것을 알 수 있다.
< 디지털 오디오/비디오 재생부의 동작 >
ISO 데이터 컨트롤러(231)는 하나의 메모리에 서버로부터의 멀티미디어 데이터 저장이 완료되면, MPEG 제어부(251)에 인터럽트를 보내어 이 사실을 알려준다. 인터럽트 신호를 받은 MPEG 제어부(251)는 ISO 데이터 컨트롤러(231)로부터 MPEG 데이터를 읽어서 MPEG 디코더(253)에 보내어 디코딩을 시작함과 동시에, 1394 제어부(221)에 ISO 멀티미디어 데이터 요청을 위한 /ISOREQ 인터럽트 신호를 보낸다. /ISOREQ 인터럽트 신호를 받은 1394 제어부(221)는 다른 메모리에의 데이터 저장을 위한 ISO 데이터 요청 신호를 서버(100)에 전송한다.
이와 같은 동작을 반복함으로써 서버로부터의 멀티미디어 데이터가 클라이언트에 전송되고, 클라이언트에서는 실시간으로 멀티미디어 데이터를 재생하게 되는 것이다.
이러한 디지털 오디오/비디오 신호의 디코딩은 MPEG 디코더(253)에서 이루어지며, 디코딩시의 일시적인 저장을 위해서 비디오램(255)이 사용된다.
이렇게 재생된 비디오 신호는 TV 인코더(252)에 입력되어 아날로그 TV 신호로 변환된다. TV 인코더(252)에서 출력된 비디오 신호는 비디오 믹서(241)에서 유저인터페이스 제어부(212)로부터의 문자 신호와 합쳐져서 온스크린 디스플레이(OSD: On-Screen Display) 기능을 구현하게 된다. 비디오 믹서(241)로부터의 최종적인 비디오 신호는 모니터(260)에 입력되어 서버로부터 보낸 비디오 신호가 사용자의 셋탑박스 화면에 나타나게 되는 것이다.
또한, MPEG 디코더(253)에서 재생된 오디오 신호는 오디오 DAC(Digital to Analog Converter)(254)에서 아날로그 신호로 변환되어 스테레오폰잭(270) 또는 모니터에 내장된 스피커를 통해서 음성신호로 변환되어 출력된다.
다음으로, 도 7을 참조하여 서버와 클라이언트 사이의 커맨드의 송수신에 대해서 설명한다.
서버와 클라이언트 사이의 커맨드의 송수신은 IEEE1394의 비동기 트랜잭션(asynchronous transaction)에 의하여 이루어진다. 즉, 도 5의 (b)에 도시된 비동기(asynchronous) 커맨드 전송 구간에 이루어지는 것이다. 이때의 커맨드의 포맷의 예가 도 7에 도시되어 있다.
각 셋탑박스는 초기화시에 IEEE1394 표준에 의해 노드 ID를 설정하도록 되어 있다. 셋탑박스(200)는 이 노드 ID와 커맨드의 Destination_ID가 일치하는 경우에만 자신에게 온 커맨드임을 인식한다.
커맨드(서버에서 셋탑박스로의 명령어) 또는 리퀘스트(셋탑박스에서 서버로의 요청)는 "Command frame/Request frame"에 포함되어 전송된다.
다음으로, 도 8을 참조하여 셋탑박스에서의 사용자의 기능작동에 따른 본 발명의 장치의 동작에 대해서 설명한다. 도 8은 사용자의 셋탑박스에서의 조작에 따른 커맨드/응답 및 클라이언트 화면의 예이다.
먼저, 셋탑박스(200)가 시스템에 연결되면 서버(100)는 시간설정 명령(Time Set Command)과 메뉴에 관한 정보(Menu Info Command)를 셋탑박스(200)에게 보낸다. 메뉴 정보는 여러 레벨의 메뉴를 포함할 수도 있다.
그러면, 셋탑박스(200)는 메뉴에 관한 정보에 따라 OSD 기능을 사용하여 화면에 메뉴를 디스플레이한다. 사용자가 리모콘이나 버튼 등의 입력장치를 사용하여 원하는 기능을 선택하면 해당 기능의 서브메뉴를 디스플레이한다. 도 8에서는 사용자가 "2. 비디오"를 선택한 경우의 예를 보여주고 있다.
다시 사용자가 서브메뉴중의 하나를 선택하면 해당 기능과 관련된 내용을 다시 디스플레이한다. 메뉴를 서버(100)로부터 전송받을 필요가 있는 경우에는 셋탑박스(200)는 메뉴정보를 요청하는 리퀘스트(Top menu display data request)를 서버(100)로 전송한다. 리퀘스트를 받은 서버(100)는 해당 정보를 셋탑박스(200)에 보낸다. 정보를 전송받은 셋탑박스(200)는 이를 다시 화면에 디스플레이한다.
이와 같은 절차를 거쳐서 사용자가 원하는 멀티미디어 데이터, 예를 들면 특정 영화나 특정 교육비디오를 선택하게 되면, 서버(100)는 데이터베이스로부터 해당 멀티미디어 데이터를 읽어와서 등시성 멀티미디어 데이터로 해당 셋탑박스에 전송하게 된다. 그러면, 셋탑박스의 화면에는 해당 영화 또는 비디오가 상영되게 되는 것이다.
이상과 같은 구성에 의해, 셋탑박스에서 요청에 따라 서버에서 비동기 커맨드를 사용하여 OSD 데이터를 보내주고, 사용자가 셋탑박스에서 원하는 멀티미디어 데이터를 선택하면, 서버에서 해당 셋탑박스의 채널 ID를 첨부한 등시성 멀티미디어 데이터를 전송하고, 셋탑박스는 자신의 채널 ID와 일치하는 멀티미디어 데이터를 수신하고 디코딩하여 모니터에 디스플레이함으로써, 트리구조에 의해 연결되어 있는 서버와 셋탑박스 사이에서 VOD 기능이 구현된다.
이상, 본 발명을 몇가지 실시예를 들어 설명하였지만, 본 발명은 이에 한정되는 것은 아니다. 본 발명이 속하는 기술분야에서 통상의 지식을 지닌 자라면 본 발명의 사상에서 벗어나지 않으면서 많은 수정과 변경을 가할 수 있음을 이해할 것이다.
이상 설명한 것처럼, 본 발명에 따르면 IEEE1394 프로토콜에 따른 트리방식의 클라이언트-서버 멀티미디어 시스템이 제공되므로, 저가로 다수의 단말장치를 가진 멀티미디어 시스템을 구현할 수 있다는 효과가 있다.
또한, 단말장치로서 고가의 개인용 컴퓨터를 사용하지 않고 전용 셋탑박스를 사용함으로써 멀티미디어 시스템을 저렴한 비용으로 구현할 수 있다는 효과가 있다.
또한, 본 발명은 트리방식으로 서버와 셋탑박스가 연결되므로 시스템의 설치가 간편하다는 효과가 있다.

Claims (5)

  1. IEEE1394 인터페이스 카드를 가진 서버 컴퓨터와, 다수의 셋탑박스로 이루어진 멀티미디어 시스템에 있어서,
    상기 셋탑박스는
    사용자의 장치 조작과 메뉴선택을 위한 유저 인터페이스부와,
    상기 서버 컴퓨터와 데이터 통신을 하기 위한 IEEE1394 인터페이스부와,
    상기 IEEE1394 인터페이스부로부터의 멀티미디어 데이터를 일시 저장하기 위한 메모리 제어부와,
    상기 메모리 제어부에 저장되어 있는 멀티미디어 데이터를 읽어내어 재생하기 위한 디지털 비디오 재생부와,
    상기 디지털 비디오 재생부로부터의 비디오 신호에 상기 유저 인터페이스부로부터의 문자 신호를 중첩시킨 비디오 신호를 생성하여 출력하는 OSD부와,
    상기 OSD부로부터의 비디오 신호를 재생하기 위한 모니터
    를 구비하는 것을 특징으로 하는 멀티미디어 시스템.
  2. 제1항에 있어서,
    상기 셋탑박스의 메모리 제어부는 적어도 2개의 메모리 블록을 가지고 있으며,
    상기 디지털 비디오 재생부가 제1의 메모리 블록으로부터 데이터를 읽어들여서 멀티미디어 데이터를 재생하는 동안에, 상기 서버로부터 수신되는 멀티미디어 데이터는 제2의 메모리 블록에 저장되는 것을 특징으로 하는 멀티미디어 시스템.
  3. 제2항에 있어서,
    상기 메모리 제어부는 상기 제1의 메모리 블록으로부터의 데이터의 재생이 완료되면 상기 IEEE1394 인터페이스부에 인터럽트를 보내어 상기 서버 컴퓨터에 데이터를 요청하는 커맨드를 전송하도록 하며,
    상기 서버 컴퓨터는 멀티미디어 데이터를 요청하는 커맨드를 보낸 셋탑박스로 다음번 멀티미디어 데이터 블록을 전송하는 것을 특징으로 하는 멀티미디어 시스템.
  4. 제1항 내지 제3항중 어느 한 항에 있어서,
    상기 멀티미디어 데이터는 MPEG 데이터이며,
    상기 디지털 비디오 재생부는
    MPEG 디코더와,
    상기 MPEG 디코더에서 디코딩시에 데이터를 일시저장하기 위하여 사용하는 비디오램과,
    상기 MPEG 디코더로부터 추출된 디지털 음성 데이터를 아날로그 신호로 변환하기 위한 디지털-아날로그 변환기와,
    상기 MPEG 디코더로부터 추출된 디지털 비디오 데이터를 아날로그 TV 신호로변환하기 위한 TV 인코더와,
    상기 메모리 제어부로부터 멀티미디어 데이터를 읽어내어 상기 MPEG 디코더로 전달하기 위한 MPEG 제어부
    를 포함하는 것을 특징으로 하는 멀티미디어 시스템.
  5. 제1항 내지 제3항중 어느 한 항에 있어서,
    상기 셋탑박스에는 고정 채널 ID를 설정하고 서버가 이를 미리 알 수 있게 하는 수단이 마련되어 있고, 상기 셋탑박스는 상기 설정된 채널 ID와 일치하는 ID를 가진 멀티미디어 데이터만 받아들이는 것을 특징으로 하는 멀티미디어 시스템.
KR1019990057442A 1999-12-14 1999-12-14 트리방식의 클라이언트-서버 멀티미디어 시스템 KR100313622B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990057442A KR100313622B1 (ko) 1999-12-14 1999-12-14 트리방식의 클라이언트-서버 멀티미디어 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990057442A KR100313622B1 (ko) 1999-12-14 1999-12-14 트리방식의 클라이언트-서버 멀티미디어 시스템

Publications (2)

Publication Number Publication Date
KR20010056045A true KR20010056045A (ko) 2001-07-04
KR100313622B1 KR100313622B1 (ko) 2001-11-15

Family

ID=19625644

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990057442A KR100313622B1 (ko) 1999-12-14 1999-12-14 트리방식의 클라이언트-서버 멀티미디어 시스템

Country Status (1)

Country Link
KR (1) KR100313622B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101001010B1 (ko) * 2010-06-09 2010-12-15 주식회사 위즈메타 더블 버퍼링을 이용한 색인 기반 동영상 재생 장치 및 방법

Also Published As

Publication number Publication date
KR100313622B1 (ko) 2001-11-15

Similar Documents

Publication Publication Date Title
US9693384B2 (en) Method of controlling connection between nodes in digital interface
USRE45886E1 (en) Information signal transmission system and remote control device for the same
JP2001503930A (ja) トポロジーマップを有するディバイスユーザインターフェース
US8819746B2 (en) Network device for a home entertainment network
WO1999066716A9 (en) A method of and apparatus for partitioning, scaling and displaying video and/or graphics across several display devices
JP2001512274A (ja) Av/cベースのディスク媒体プレーヤ/レコーダサブユニットのためのモデル及びコマンドセット
WO2007075816A2 (en) Programmable multimedia controller with programmable services
KR20070080453A (ko) 홈 네트워크에서 tv 채널을 이용한 콘텐트 처리 방법 및그 장치
US20010001564A1 (en) Method of and apparatus for separating audio and video data from a combined audio/video stream of data
CN102170547A (zh) 通信设备、通信控制方法以及程序
KR20010006987A (ko) 정보 변환 방법, 정보 변환 장치 및 정보 재생 장치
KR100313622B1 (ko) 트리방식의 클라이언트-서버 멀티미디어 시스템
US20130086222A1 (en) Content processing system, server device, and content reproducing device
JP2007128589A (ja) 再生機器
JPH09185577A (ja) ディジタルインターフェース装置
JP2001257707A (ja) マルチ再生システム、サーバ装置、端末装置
JP2002281038A (ja) データ伝送方法およびデータ伝送装置
KR100304898B1 (ko) 디지털 인터페이스의 기기간 접속 제어방법
JPH09510331A (ja) 選択可能なオーディオ/ビデオ(a/v)配布
JP2001237660A (ja) イコライザ制御装置、通信システム
WO1999030463A1 (fr) Procede et dispositif de communication de donnees, et support de programme servant a fournir un programme de communication de donnees
KR20010018893A (ko) 디지털 인터페이스의 기기간 접속 제어방법
JPH11102573A (ja) データ再生出力方法ならびに装置
JP2000196639A (ja) 送信方法、受信方法、通信方法及び双方向バスシステム

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee