상기와 같은 목적을 달성하기 위한 본 발명에 따른 부재중 메시지 저장 기능 을 갖는 PVR 장치는, 수신되는 방송 신호를 복조하여 트랜스포트 스트림 형태로 출력하는 방송 수신부; 상기 트랜스포트 스트림으로부터 비디오 ES를 추출하여 인덱스 생성 및 비디오 특징을 추출하고, 동시에 상기 트랜스포트 스트림에 타임 스탬프를 부가하여 방송 스트림으로서 출력하는 방송 스트림 처리부; 인터폰이나 화상 전화로부터 출력되는 동영상 메시지를 MPEG-2 비트 스트림 형태로 변환하여 메시지 스트림으로서 출력하는 메시지 스트림 처리부; 상기 방송 스트림 처리부로부터 출력되는 방송 스트림과 인덱스 및 비디오 특징 그리고, 상기 메시지 스트림 처리부로부터 출력되는 메시지 스트림을 저장하는 저장 매체; 그리고 상기 저장 매체로부터 재생되는 방송 스트림 또는, 메시지 스트림을 디코딩하여 디스플레이하는 A/V 디코딩부를 포함하여 구성되는 것을 특징으로 한다.
상기 메시지 스트림 처리부는 상기 인터폰에서 촬상되어 출력되는 방문자의 동영상 메시지를 프로그램 스트림 형태의 MPEG-2 비트 스트림으로 부호화하는 엔코더로 구성되는 것을 특징으로 한다.
상기 메시지 스트림 처리부는 상기 화상 전화로부터 출력되는 발신자의 압축 동영상 메시지를 프로그램 스트림 형태의 MPEG-2 비트 스트림으로 변환하는 트랜스코더로 구성되는 것을 특징으로 한다.
상기 저장 매체에 저장되는 메시지 스트림에는 타임 스탬프를 부가하지 않는 것을 특징으로 한다.
상기 저장 매체로부터 출력되는 방송 스트림에 부가된 타임 스탬프를 참조하여 비트율을 조절하면서 상기 타임 스탬프가 제거된 방송 스트림을 A/V 디코딩부로 출력하는 업로드 제어부가 더 구비되는 것을 특징으로 한다.
상기 A/V 디코딩부는 상기 저장 매체로부터 출력되는 메시지 스트림의 시스템 클럭 기준(SCR) 값을 파싱하여 상기 메시지 스트림의 비트율을 조절하는 것을 특징으로 한다.
상기 저장 매체는 방송 스트림 영역, 메시지 스트림 영역, 인덱스 파일 영역, 비디오 특징 데이터 영역 그리고, 파일 매핑 테이블 영역으로 구분되어 있으며, 각 영역에 데이터가 저장될 때마다 파일 매핑 테이블을 갱신하는 것을 특징으로 한다.
본 발명에 따른 PVR 장치의 부재중 메시지 저장 방법은, 수신되는 방송 신호를 복조하여 트랜스포트 스트림 형태로 변환한 후 타임 스탬프를 부가하여 하드 디스크에 저장하는 PVR 장치의 저장 방법에 있어서, 인터폰에서 출력되는 방문자의 동영상 메시지를 MPEG-2 비트 스트림 형태로 부호화하여 메시지 스트림으로서 출력하는 단계와, 화상 전화로부터 출력되는 발신자의 압축 동영상 메시지를 MPEG-2 비트 스트림 형태로 변환하여 메시지 스트림으로서 출력하는 단계와, 상기 단계에서 출력되는 메시지 스트림을 타임 스탬프가 부가된 방송 스트림과 구분하여 상기 저장 매체에 저장하는 단계와, 사용자의 요청에 따라 상기 저장 매체에 저장된 메시지 스트림을 읽어 와 디코딩하여 디스플레이하는 단계를 포함하여 이루어지는 것을 특징으로 한다.
본 발명의 다른 목적, 특징 및 잇점들은 첨부한 도면을 참조한 실시예들의 상세한 설명을 통해 명백해질 것이다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예의 구성과 그 작용을 설명하며, 도면에 도시되고 또 이것에 의해서 설명되는 본 발명의 구성과 작용은 적어도 하나의 실시예로서 설명되는 것이며, 이것에 의해서 상기한 본 발명의 기술적 사상과 그 핵심 구성 및 작용이 제한되지는 않는다.
본 발명은 PVR과 화상 전화 및/또는 인터폰이 연결된 홈 네트워크 환경에서 사용자가 부재중인 경우에 전화를 건 상대방 또는 방문자가 남기는 동영상 메시지를 MPEG 데이터로 변환하여 상기 PVR의 하드디스크에 저장할 수 있도록 하는데 있다.
도 1은 이러한 본 발명에 따른 PVR 장치가 포함된 홈 네트워크 시스템 구성의 일 실시예를 나타낸 것으로서, 홈 네트워크 시스템은 PVR과 화상 전화(Video Phone), 그리고 인터폰(Interphone)을 포함하고 있다.
이때, 각 기기들은 유선 또는 무선의 형태로 서로 물리적으로 연결되어 있으며, 일정한 프로토콜에 의하여 서로 통신이 가능하며 이러한 프로토콜에 의하여 화상 전화 또는 인터폰을 통하여 입력되는 동영상 데이터, 즉 메시지 스트림을 PVR의 하드 디스크에 전송할 수 있다. 여기서, 상기 PVR에는 화상 전화와 인터폰이 모두 연결될 수도 있고, 둘 중 어느 하나만 연결될 수도 있다.
한편, 방송 수신과 관련된 방송 수신부(100)는 시청하고자 하는 방송 채널을 튜닝하는 튜너(101), 상기 튜닝된 신호에 대해 채널 디코딩 및 복조를 수행하는 채널 디코딩 및 복조부(102), 및 복조된 신호를 트랜스포트 스트림 형태로 출력하는 트랜스포트 디코더(103)로 구성되며, 이러한 방송 수신부(100)는 DTV 및 PVR 복합 시스템(110) 내에 포함될 수도 있다.
상기 DTV 및 PVR 복합 시스템(110)은 일반적인 지상파, 위성, 또는 케이블 디지털 방송을 수신할 수 있으며 수신되는 방송 프로그램을 HDD(120)에 녹화 또는 현재 시청 중인 방송에 대한 타임 시프트 기능을 제공한다. 그리고, 상기 DTV 및 PVR 복합 시스템(110)은 기본적으로 MPEG 비트 스트림을 디코딩할 수 있어야 한다.
상기 화상 전화(Video Phone)(104)의 경우, 전화를 한 발신자는 상기 화상 전화(104)의 사용자가 부재시에 일정한 인터페이스를 통하여 메시지를 남길 수 있으며 이 메시지는 HDD(120)에 저장된다. 이때, 상기 화상 전화(104)를 통해 수신되는 동영상 데이터는 전화선을 이용한 멀티미디어 데이터 전송에 적합한 방법에 의하여 압축된 비트 스트림이다. 즉, 디지털 방송에 사용되는 MPEG-1 또는 MPEG-2가 아닌 ITU H.263 또는 MPEG-4와 같은 저 전송률 환경에 적합한 다른 압축 방식을 사용한 비트 스트림일 수도 있다. 따라서 해당 스트림을 DTV 및 PVR 복합 시스템(110)에서 재생이 가능하도록 MPEG-2 비트 스트림으로 변환해주는 트랜스코더(transcoder)(105)가 있어야 한다. 상기 트랜스코더(105)에서 변환된 MPEG-2 비트 스트림은 상기 DTV 및 PVR 복합 시스템(110)을 통해 HDD(120)에 저장된다. 만약, 상기 DTV 및 PVR 복합 시스템(110) 내부에 화상 전화(104)에서 사용되는 비트 스트림에 대한 디코더가 존재하는 경우, 상기 트랜스코더(105)는 생략될 수 있다.
상기 인터폰(Interphone)(106)의 경우 사용자가 부재중일 때, 방문자는 메시지를 남길 수 있으며 이러한 메시지도 DTV 및 PVR 복합 시스템(110)을 통해 HDD(120)에 저장된다. 이때, 외부 인터폰(106)에 부착된 카메라(도시되지 않음)와 마이크(도시되지 않음)는 각각 동영상 및 음성 신호를 수집하며, 수집된 동영상 및 음성 신호들은 각각 디지털 신호로 변환한다. 이렇게 변환된 디지털 신호는 MPEG-2 엔코더(107)에서 MPEG-2 규격에 의한 압축 방식을 사용하여 부호화된다. 이렇게 부호화된 MPEG-2 규격의 비트 스트림은 DTV 및 PVR 복합 시스템(110)을 통해 HDD(120)에 저장된다. 상기 엔코더(107)는 비디오 신호의 경우 하나의 실시 예로 카메라 사양을 10만 화소 수준으로 가정할 때 MPEG-2 MP@LL(Main Profile @ Low Level)로 압축하며 이때, 디지털 비디오의 해상도는 최대 352x288의 크기를 갖는다. 또 다른 실시 예에 의하여 상기 인터폰(106) 내에 MPEG-2 엔코더가 내장될 수도 있다.
본 발명에서는 화상 전화(104) 또는 인터폰(106)을 통하여 출력되는 동영상 데이터를 메시지 스트림으로 정의한다.
결과적으로 상기 메시지 스트림의 전체적인 크기는 실제 HD급 방송 스트림에 비하여 매우 작은 수준이므로 메시지 스트림의 저장에 의한 하드디스크(120) 입출력에 요구되는 대역폭의 증가는 미미하다고 할 수 있다. 상기 메시지 스트림 내의 각각의 비디오 및 오디오 스트림은 트랜스코더(105) 또는 엔코더(107)에서 프로그램 스트림(Program Stream)으로 다중화(multiplexing)되어 DTV 및 PVR 복합 시스템(110)으로 전송된다.
도 2는 본 발명에 따른 부재중 메시지 스트림 저장 기능을 갖는 PVR 장치의 구성의 일 실시 예를 나타낸 것으로서, 방송 스트림을 저장하기 위한 방송 스트림 처리부(200), 메시지 스트림을 저장하기 위한 메시지 스트림 처리부(210), 상기 방 송 스트림, 메시지 스트림 처리부(200,210)와 HDD(120)와의 인터페이스를 수행하는 HDD 인터페이스(220), 및 상기 HDD(120)에서 재생되는 비트 스트림의 비트율(bit rate)을 제어하는 업로드 제어부(205)로 구성된다.
상기 메시지 스트림 처리부(210)는 화상 전화(104)에서 출력되는 신호를 MPEG-2 형태의 프로그램 스트림(PS)으로 변환하는 트랜스코더 및/또는 인터폰(106)에서 출력되는 신호를 MPEG-2 형태의 PS로 부호화하는 엔코더로 구성된다.
또한, 상기 PVR 장치는 디지털 비디오 및 오디오 스트림의 하드디스크 저장을 위한 기본적인 기능을 제공하며 재생 또는 현재 방송의 시청에 필요한 비디오 및 오디오의 디코딩 기능은 외부에 연결된 A/V 디코더 칩(도시되지 않음)에서 수행한다.
상기 방송 스트림 처리부(200)는 시스템 디코더(201), 다운로드 제어부(202), 및 인덱스 생성 및 비디오 특징(Video Feature ; VF) 추출부(203)로 구성된다. 상기 시스템 디코더(201)는 방송 수신부(100)에서 출력되는 트랜스포트 스트림에서 비디오 요소 스트림(video elementary stream ; Video ES)을 추출하여 인덱스 생성 및 VF 추출부(203)로 출력함과 동시에 상기 트랜스포트 스트림을 PES(packetized elementary stream)로 디코딩하여 다운로드 제어부(202)로 출력한다.
상기 다운로드 제어부(202)는 상기 시스템 디코더(201)에서 출력되는 트랜스포트 스트림의 각 패킷이 입력될 때의 시스템 클럭 값을 참조하여 상기 트랜스포트 스트림에 타임 스탬프(time stamp)를 부여한 후 HDD 인터페이스(220)로 출력한다. 상기 타임 스탬프는 향후 HDD(120)에 저장된 스트림을 재생할 때, 실제 수신된 속도와 같은 비트율(rate)로 재생을 하기 위해 필요하다. 즉, HD급 스트림과 같이 높은 비트율을 갖는 스트림의 경우에 일일이 패킷을 디코딩하여 SCR(System Clock Reference) 값을 파싱하면 재생시 비트율(rate) 조절에 실패할 가능성이 높으므로 트랜스포트 패킷마다 헤더의 형태로 타임 스탬프를 덧붙여서 사용할 경우 해당 값만 파싱하면 되므로 간단한 방법으로 비트율 조절이 가능하다.
상기 인덱스 생성 및 VF 추출부(203)는 비디오 ES로부터 데이터 저장 위치 및 비디오에 대한 특징을 추출하여 HDD(120)에 저장되는 방송 스트림의 트릭 플레이의 구현에 필요한 데이터를 생성하여 HDD 인터페이스(220)로 출력한다.
즉, 인덱스 생성부에서는 향후 HDD(120)에 저장된 스트림에 대한 트릭 플레이 구현을 위하여 비디오 데이터의 픽쳐 시작 코드(picture start code)들의 위치 정보 등을 포함한다. VF 추출부에서는 보다 향상된 형태의 트릭 플레이 구현을 위하여 장면 구간 분할 및 움직임 정보 추출에 필요한 프레임 단위의 히스토그램 정보 등을 추출한다.
상기 HDD 인터페이스(220)는 상기 방송 스트림, 메시지 스트림 처리부(200,210)와 HDD(120)와의 제어 신호 및 데이터 입/출력을 제어하는 IDE(Integrated Drive Electronics 또는, Enhanced Integrated Drive Electronics(EIDE) 인터페이스이다.
한편, 화상 전화나 인터폰으로부터 출력되는 메시지 데이터는 메시지 데이터 처리부(210)의 트랜스코더 또는 엔코더에 의하여 MPEG-2 형태의 프로그램 스트림(PS)으로 변환된 후 HDD 인터페이스(220)로 출력된다. 통상적으로 메시지 스트림은 길어야 30초에서 1분 정도의 분량이므로 이러한 스트림에 대하여 트릭 플레이를 구현한다는 것은 의미가 없으므로 메시지 스트림에 대하여 인덱스 또는 비디오 특징(VF)을 추출하지 않는다. 또한 메시지 스트림은 그 크기가 작으므로 굳이 타임 스탬프를 붙이지 않아도 외부에 연결된 A/V 디코더 칩에서 해당 스트림의 SCR 값을 파싱하여 비트율(rate) 조절이 가능하다. 즉, 외부 A/V 디코더 칩과의 인터페이스에 의하여 일정량의 메시지 스트림 데이터를 외부 A/V 디코더 칩에 전송하면 외부 A/V 디코더 칩에 포함된 버퍼에 해당 데이터를 임시 저장한 다음 버퍼에 저장된 스트림의 SCR 값을 이용하여 충분히 비트율(rate)을 조절할 수 있다. 즉, 메시지 스트림의 비트율이 매우 낮으므로 보다 여유 있는 제어가 가능하므로 저장되는 메시지 스트림에 굳이 타임 스탬프를 붙일 필요가 없다.
결과적으로 메시지 스트림은 다운로드 제어부 또는 인덱스 생성 및 VF 추출부를 거치지 않고 바로 HDD 인터페이스(220)를 통해 하드디스크(120)에 저장된다.
한편, 방송 스트림과 메시지 스트림은 저장할 때, 소프트웨어 또는 하드웨어적인 방법으로 구분이 가능하도록 한다. 즉, 각 스트림에 대한 저장 모드를 구분하도록 레지스터의 설정 값을 변경하는 등의 방법을 사용하여 두 스트림을 구분할 수 있도록 한다. 또한, 두 스트림의 확실한 구분을 위하여 하드디스크(120)에 저장할 때, 저장되는 영역을 구분하는 방법을 사용할 수 있다.
도 3은 본 발명에 의한 PVR 장치에서 데이터의 종류에 따른 하드디스크 내 영역 분할의 일 실시 예를 나타내고 있다. 도 3에서 알 수 있듯이 방송 스트림(TTS : time-stamped transport stream)과 메시지 스트림(PS : Program stream)이 저장되는 영역이 구분되어 있다. 도 3에서 파일 매핑 테이블 영역(File mapping table area)은 하드디스크(120) 내의 전체적인 파일 시스템의 관리에 필요한 핵심적인 정보가 저장되는 부분으로 하드 디스크(120)의 전체적인 영역 분할에 대한 물리적 정보 및 각 파일의 물리적 위치를 나타내는 테이블 등이 저장되어 있는 영역이다. 즉, DOS에서 쓰이는 FAT가 저장되는 영역과 같은 역할을 담당한다. 아울러 EPG, 인덱스, 그리고 비디오 특징(VF) 데이터도 각각의 분리된 영역에 저장된다.
도 4는 본 발명에 의한 PVR 장치에서 방송 스트림 및 메시지 스트림을 동시에 저장하기 위한 저장 요구(request) 처리 과정의 일 실시 예를 나타낸 것으로서, 서로 다른 두 종류의 스트림에 의한 하드디스크 사용 요구의 중재(arbitration) 과정을 나타낸다. 이러한 작업 흐름이 요구되는 실시 예는 사용자가 부재중일 때, 예약 녹화 일정에 의하여 PVR이 방송을 녹화하고 있는 상황에서 방문자나 전화 발신자가 인터폰이나 화상 전화를 통하여 메시지를 남기는 상황이다. 이때, 하드디스크(120)에 대한 사용을 요구하는 데이터는 총 3가지이며, 타임 스탬프가 부가된 트랜스포트 스트림(TTS : time-stamped transport stream), 방송 스트림에 대한 인덱스 및 VF 데이터, 그리고 PS 형태의 메시지 스트림으로 구성된다. 결과적으로 3가지 종류의 하드디스크 저장 요구(request) 신호가 존재한다.
도 4의 실시 예에서는 TTS와 인덱스/VF의 request 신호를 동일하게 취급하였다. 또한, 일정 기간 동안에 동시에 발생하는 request를 처리하기 위하여 입력되는 request 신호를 발생 순서에 따라 ReQue라는 FIFO에 순차적으로 저장한다. 이때, request가 처리되면 해당 신호를 즉시 FIFO에서 삭제한다. 즉, request가 발생하면 바로 ReQue FIFO에 입력되며 현재 처리 중인 request FIFO의 번지(ReQue[i])에 저장된 request의 종류에 따라서 현재 처리하고자 하는 스트림을 하드 디스크 내의 해당 영역에 저장한 다음 파일 매핑 테이블을 갱신한다.
즉, ReQue FIFO가 비어있는지를 확인하여(단계 401), 비어 있지 않다고 판별되면 현재 처리중인 request FIFO의 번지(ReQue[i])에 저장된 request 데이터를 읽는다(단계 402). 그리고 나서, 상기 request 데이터가 방송 스트림을 지시하는지, 메시지 스트림을 지시하는지를 판별한다(단계 403).
만일, 상기 단계 403에서 방송 스트림이라고 판별되면 상기 방송 스트림 처리부(200)를 통해 출력되는 방송 스트림의 TTS 및 인덱스/VF를 상기 하드 디스크(120) 내의 방송 스트림 영역과 인덱스 파일/VF 데이터 영역에 각각 저장한다(단계 404).
한편, 상기 단계 403에서 메시지 스트림이라고 판별되면 상기 메시지 스트림 처리부(210)에서 출력되는 메시지 스트림의 PS를 상기 하드 디스크(120) 내의 메시지 스트림 영역에 저장한다(단계 405).
상기 단계 404 또는 단계 405가 수행되고 나면, 상기 ReQue FIFO의 다음 번지를 읽기 위하여 i를 하나 증가시키고 나서(i=i+1) 단계 401로 되돌아간다(단계 406).
하기의 표 1은 본 발명에 의한 PVR 장치에서 방송 스트림 및 메시지 스트림에 의한 저장 및 재생과 관련된 하드웨어적 동작의 차이를 나타낸 테이블이다.
항목 스트림 종류 |
방송 스트림 |
메시지 스트림 |
타임 스탬프 |
반드시 필요 |
불필요 |
인덱스 및 VF |
트릭 플레이를 위해 필요 |
불필요 |
저장 경로 |
시스템 디코더 및 다운로드 제어부를 반드시 거쳐야 함 |
바로 저장 |
저장 형태 |
타임 스탬프가 부가된 트랜스포트 스트림(TTS) |
프로그램 스트림(PS) |
업로드 경로 |
업로드 제어부에서 타임 스탬프에 의하여 비트율 제어 |
일정한 단위로 업로드한 후, 외부 A/V 디코더 칩의 버퍼에서 비트율 조절 |
상기된 표 1의 테이블은 각 항목별로 두 종류의 스트림 즉, 방송 스트림과 메시지 스트림에 의한 처리 과정의 차이점을 요약하고 있다.
즉, 상기 방송 스트림은 타임 스탬프가 반드시 필요하며 재생할 때, 업로드제어부(230)에서 상기 타임 스탬프를 사용하여 비트율을 조절한다. 상기 메시지 스트림의 경우 타임 스탬프가 필요 없으며 일정한 단위로 업로드를 수행한 다음 외부 A/V 디코더 칩과의 연결 신호에 의한 제어 또는 PVR의 출력단의 버퍼 등에서 SCR 값을 사용하여 비트율을 조절한다. 상기 인덱스 및 VF는 트릭 플레이 기능을 위한 것으로 방송 스트림에 대하여 반드시 생성하며 메시지 스트림에 대해서는 생성하지 않는다. 결과적으로 방송 스트림은 하드디스크(120)에 TTS의 형태로, 메시지 스트림은 PS의 형태로 저장된다.
한편, 상기 설명한 과정에 의하여 부재중 메시지 스트림이 PVR의 하드디스크(120)에 저장되었을 때 OSD(On Screen Display) 기능을 이용하여 적절한 화면을 표시함으로써 사용자에게 새로운 메시지 스트림이 저장되었다는 것을 알려줄 수 있다. 따라서 사용자는 귀가 후에 TV의 전원을 온시켰을 때 TV 화면에 표시되는 OSD를 확인함으로써 새로운 메시지가 저장되었음을 알 수 있다.
그리고, 상기 하드 디스크(120)에 저장된 메시지 스트림을 재생함으로써, 전화를 한 사람 또는, 방문자를 확인할 수 있게 된다.
이와 같이 본 발명은 사용자가 외출하여 부재중일 때 PVR 장치가 화상 전화 또는 인터폰 등과 연결되어 발신자 또는 방문자의 메시지를 저장하는 기능은 향후 유용하게 사용될 것으로 예상된다.
본 발명은 디지털 TV에 하드디스크가 장착된 PVR의 부가 기능에 관련된 응용 분야와 화상 전화 및 인터폰을 포함하는 홈 네트워크 시스템과 관련된 응용 분야 등에 적용하여 사용자에게 보다 향상된 홈 네트워크 환경을 제공할 수 있다.