KR100623380B1 - 개인용 비디오 녹화기에 있어서 타임 쉬프트 기능을 위한데이터 전송방법 - Google Patents

개인용 비디오 녹화기에 있어서 타임 쉬프트 기능을 위한데이터 전송방법 Download PDF

Info

Publication number
KR100623380B1
KR100623380B1 KR1020050023465A KR20050023465A KR100623380B1 KR 100623380 B1 KR100623380 B1 KR 100623380B1 KR 1020050023465 A KR1020050023465 A KR 1020050023465A KR 20050023465 A KR20050023465 A KR 20050023465A KR 100623380 B1 KR100623380 B1 KR 100623380B1
Authority
KR
South Korea
Prior art keywords
queue
upload
download
qdirp
quirp
Prior art date
Application number
KR1020050023465A
Other languages
English (en)
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 KR1020050023465A priority Critical patent/KR100623380B1/ko
Application granted granted Critical
Publication of KR100623380B1 publication Critical patent/KR100623380B1/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/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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

본 발명은 개인용 비디오 녹화기에 있어서 타임 쉬프트 기능을 위한 데이터 전송방법에 관한 것으로서, 특히 마이크로 소프트 윈도우즈 시스템과 같은 범용 운영체계 기반의 PVR 장치에서 발생할 수 있는 응답지연을 해결하기 위한 것이다. 이를 위하여 재생(Upload) 및 녹화(Download) 데이터의 전송요청을 일단 큐(queue)에 저장하고 비동기 처리함으로써 응답지연시 다른 작업을 수행하기 위한 기회를 제공한다. 이에 따라, 재생/녹화용 데이터 전송 이외의 나머지 PVR 기능이 커널과 명확하게 분리될 수 있고, 윈도우즈 기반의 PVR 장치에서 일어날 수 있는 녹화 및 재생 데이터의 전송지연을 최소화 할 수 있다.
PVR, 윈도우즈, 녹화, 재생, 타임 쉬프트, 비동기, 큐

Description

개인용 비디오 녹화기에 있어서 타임 쉬프트 기능을 위한 데이터 전송방법{ Method of transmitting data for time shift in a Personal Video Recorder }
도 1은 PVR 장치의 구성에 관한 예,
도 2는 본 발명에 따른 데이터 전송방법의 일 실시예,
도 3은 다운로드가 이루어지는 상태의 개요,
도 4는 업로드가 이루어지는 상태의 개요,
도 5와 도 6은 다운로드 과정과 업로드 과정이 변환되는 과정의 개요이다.
* 도면의 주요부분에 대한 부호의 설명
11: 튜너 12: SAW 필터
13: 다운 컨버터 14: VSB 복조부
15: A/V 디코더 16: 제어부
17: 저장장치 18: 디스플레이 화면
19: 스피커 Qd, Qdirp, Quirp: 큐
본 발명은 개인용 비디오 녹화기에 있어서 타임 쉬프트 기능을 위한 데이터 전송방법에 관한 것으로서, 특히 마이크로 소프트 윈도우즈 시스템과 같은 범용 운영체계를 기반으로 하여 개인용 비디오 녹화기(PVR)를 구성할 때 저장매체 자원의 접근제한에 따른 영향(응답지연)을 고려하여 타임 쉬프트(Time Shift) 데이터를 효과적으로 전달할 수 있는 방법에 관한 것이다.
근래에 HD 방송이 일반화되면서 HD급 방송 데이터를 녹화하고 재생하기 위한 다양한 시도가 이루어지고 있다. 그 대표적인 예를 들자면, 개인용 비디오 녹화기(Personal Video Recorder, 이하 PVR이라 한다)를 들 수 있다.
PVR은 DVR(Digital Video Recorder)이라고도 불리우며, 하드 디스크 드라이브(HDD: Hard Disk Drive)에 현재 방송 중인 디지털 비디오 스트림을 리얼 타임으로 녹화하고 재생할 수 있다. 즉, 종래의 아날로그 VCR용 테이프와는 달리 오디오나 비디오 정보를 디지털로 저장하기 때문에 녹화와 재생이 반복적으로 이루어지더라도 정보 손실이 없는 깨끗한 화질을 보장할 수 있다.
이하에서의 'PVR'은 하드 디스크 드라이브나 플래시 메모리(Flash Memory)와 같이 디지털 데이터를 저장할 수 있는 각종 저장매체에 방송 데이터를 녹화하고 재생할 수 있는 영상처리장치를 포괄적으로 의미하는 것으로 사용하기로 한다.
한편, PVR은 시청자로 하여금 현재 시청중인 방송 프로그램을 동시에 녹화하고 재생할 수 있도록 해주는 타임 쉬프트(time shift) 기능을 가지고 있다. 예컨대 현재 방송 프로그램을 시청하다가 전화가 걸려 왔을 경우 리모콘의 일시 정지(pause) 버튼을 누르면 그 이후에 수신하는 방송 스트림은 하드 디스크 드라이브에 저장되고, 전화 통화가 끝난 후 다시 재생(play) 버튼을 누르면 하드 디스크 드라이브에 저장되어 있던 일시정지 화면 이후의 장면부터 시청이 가능하게 된다. 즉, 일정한 시간 간격을 두고 계속해서 녹화와 재생이 동시에 이루어지게 된다.
도 1을 참조하자면, 일반적인 PVR은 튜너(11), SAW 필터(12), 다운 컨버터(13), VSB 복조부(14), 오디오/비디오 디코더(15), 제어부(16), 및 저장장치(17) 등을 포함하여 구성될 수 있다. 이 때, 제어부(16)는 마이크로 프로세서를 이용하여 바람직하게 구성할 수 있다. 또한, 저장장치(17)는 하드 디스크 드라이브(HDD)나 플래시 메모리 등 디지털 데이터를 저장할 수 있는 저장매체로 이루어진다.
하나의 예로서 방송신호가 VSB 방식으로 전송된다고 가정하면, VSB 방식으로 변조된 RF(Radio Frequency) 신호가 안테나를 통해 튜너(11)로 수신되고, 튜너(11)는 사용자가 원하는 특정 채널 주파수만을 선택한 후 해당 채널 주파수에 실려진 RF 대역의 VSB 신호를 고정된 1차 중간 주파수 대역(IF: 보통 44MHz나 43.75MHz가 널리 사용됨)으로 내리고 타 채널 신호를 적절히 걸러낸다.
그리고, 임의 채널의 스펙트럼을 고정된 1차 IF 대역으로 내리는 튜너(11)의 출력신호는 인접 채널 신호와 잡음 신호를 제거하는 SAW(Surface Acoustic Wave) 필터(12)를 통과하게 된다. 이러한 예에서 디지털 방송 신호는 44MHz의 중간 주파수로부터 6MHz에 이르는 대역 내에 모든 정보가 존재하므로 SAW 필터(12)에서는 튜너(11)의 출력으로부터 정보가 존재하는 6MHz의 대역만 남기고 나머지 구간을 모두 제거한 후 다운 컨버터(13)로 출력한다.
다운 컨버터(13)는 SAW 필터(12)에서 필터링된 신호를 제 2 IF 신호를 발생 시키기 위한 발진 주파수로 다운 컨버젼하여 제 2 IF 신호로 변환한 후 VSB 복조부(14)로 출력한다.
VSB 복조부(14)는 제 2 IF 신호에 대해 디지털 처리를 하여 트랜스포트(TP) 스트림 형태로 오디오/비디오 디코더(15)로 출력한다. 오디오/비디오 디코더(15)는 오디오와 비디오 스트림이 다중화된 트랜스포트 스트림으로부터 오디오와 비디오 스트림을 분리한 후 각각의 디코더에서 디코딩을 수행하여 각각 스피커(19)와 디스플레이 화면(18)으로 출력한다.
또한, 저장장치(17)에 방송 신호를 녹화할 때에는 트랜스포트 스트림에 대해 디코딩을 수행하지 않고 바로 저장장치(17)에 저장한다. 이후 저장장치(17)에 녹화된 방송신호를 재생할 경우에는 저장장치(17)에 저장된 트랜스포트 스트림은 오디오/비디오 디코더(15)에서 디코딩된 후 각각 스피커(19)와 디스플레이 화면(18)으로 출력된다.
이와 같이, PVR의 동작은 크게 공중파에서 받은 트랜스포트 스트림을 즉시 디코딩해서 재생하는 기능, 트랜스포트 스트림을 녹화하는 기능, 저장된 트랜스포트 스트림을 재생하는 기능으로 나눌 수 있다. 이 때, 제어부(16)는 위에서 설명한 각 기능들이 수행될 수 있도록 각 구성요소를 제어한다.
공중파에서 받은 트랜스포트 스트림을 리얼 타임으로 재생할 때는 오디오/비디오 디코더(15)가 트랜스포트 스트림을 오디오 신호와 비디오 신호로 분리하고, 분리된 오디오 신호와 비디오 신호를 디코딩해서 각각 스피커(19)와 디스플레이 화면(18)으로 보낸다. 그리고, 공중파에서 받은 트랜스포트 스트림을 저장장치(17)에 저장하는 경우 오디오/비디오 디코더(15)는 디코딩을 하지 않고 트랜스포트 스트림을 바이패스(bypass)하여 저장장치(17)에 저장한다.
또한, 저장장치(17)에 저장된 트랜스포트 스트림을 재생할 때는 저장장치(17)에서 트랜스포트 스트림을 읽어와서 오디오 신호와 비디오 신호로 분리하고, 분리된 오디오 신호와 비디오 신호를 디코딩해서 각각 스피커(19)와 디스플레이 화면(18)으로 보낸다.
한편, 현재의 PVR 장치는 셋탑박스와 같은 기존 HD급 방송수신장치에 PVR 기능을 도입한 임베디드(embedded) 시스템이 주를 이루고 있다. 또한, 방송신호의 녹화나 재생 등 특정 기능에 한정된 형태이므로 저장장치와 관련된 자원은 대부분의 경우 이러한 PVR 기능 모듈에 의해 상당한 시간동안 독점적으로 점유된다. 그러나, 단순한 방송 수신 기능 이외에도 다양한 부가기능이 요구되는 환경을 고려하면 실시간 운영체계(RTOS)를 기반으로 한 기능 확장은 그 한계를 가져올 것으로 예상되므로 범용적인 일반 운영체계를 기반으로 한 장치 구성이 요구된다.
한편, 마이크로 소프트 윈도우즈 시스템과 같은 범용 운영체계를 기반으로 PVR 장치를 구성하는 경우에는 PVR 기능을 위한 저장장치 자원의 접근을 윈도우즈 고유의 관리 기능들과 공유해야 한다. 그러므로 자원접근이 제한되는 상황을 고려해야 하는데, 이러한 제한의 결과인 응답지연은 불규칙한 특성을 갖게 되어 원활한 PVR 기능의 구현에 장애요인이 될 수 있다. 따라서 응답의 지연을 예상하는 효과적인 PVR 데이터 전송방법이 필요하다 할 것이다.
이에 본 발명은 상기와 같은 필요성에 부응하기 위하여 안출된 것으로서, 마이크로 소프트 윈도우즈 시스템과 같은 범용 운영체계를 기반으로 PVR 장치를 구성하는 경우 저장매체 자원의 접근을 제한하는데 따른 응답지연을 해결하기 위하여 재생(Upload) 및 녹화(Download) 데이터 전송요청들을 큐(queue)에 저장하고 비동기 처리함으로써, PVR 기능을 구현하는 데이터를 효과적으로 전송할 수 있는 방법을 제공하는데 그 목적이 있다.
상기와 같은 목적을 달성하기 위하여, 본 발명에 따른 개인용 비디오 녹화기에 있어서 타임 쉬프트 기능을 위한 데이터 전송방법은, 영상신호의 재생을 요구하는 업로드 요구신호(IRPu)가 수신되면 상기 IRPu를 일정 큐(Quirp)에 저장하고, 업로드 데이터를 처리할 버퍼공간에 관한 EMPTY 인터럽트가 수신되면 업로드에 이용할 수 있는 버퍼의 수(ROOMu)를 증가시키는 업로드 이벤트 수신단계; 현재 다운로드가 이루어지고 있는지의 여부, 상기 큐 Quirp의 상태, 상기 ROOMu 정보에 따라 상기 큐 Quirp에 존재하는 IRPu를 디큐(Dequeue)하여 해당 IRPu에 대한 업로드를 진행하는 업로드 수행 단계; 영상신호의 녹화를 요구하는 다운로드 요구신호(IRPd)가 수신되면 상기 IRPd를 일정 큐(Qdirp)에 저장하고, 다운로드 데이터를 처리하는 버퍼공간에 관한 FULL 인터럽트가 수신되면 해당 버퍼정보를 일정 큐(Qd)에 저장하는 다운로드 이벤트 수신단계; 및 현재 업로드가 이루어지고 있는지의 여부, 상기 큐 Qdirp의 상태, 상기 Qd의 상태에 따라 상기 큐 Qdirp에 존재하는 IRPd를 디큐(Dequeue)하여 해당 IRPd에 대한 다운로드를 진행하되, 상기 큐 Quirp의 상태와 상기 ROOMu가 업로드가 이루어져야 하는 상황을 가리키는 경우에는 상기 업로드 수행 단계를 우선하여 진행하는 다운로드 수행단계를 포함하여 이루어진다.
상기 업로드 수행 단계는, 상기 다운로드가 진행되고 있지 않은 상태에서 상기 큐 Quirp가 비어 있지 않거나 상기 ROOMu가 0이 아닌 경우에는 상기 큐 Quirp로부터 해당 IRPu를 디큐(Dequeue)하는 단계; 및 상기 디큐(Dequeue)된 IRPu에 대한 업로드 데이터를 DMA(Direct Memory Access) 방식을 통해 업로드하는 단계를 포함하도록 구성할 수 있다.
상기 다운로드 수행단계는, 상기 업로드가 진행되고 있지 않은 상태에서 상기 큐 Qdirp 또는 상기 큐 Qd가 비어 있지 않은 경우에는 상기 큐 Qdirp로부터 IRPd를 디큐(Dequeue)하는 단계; 상기 디큐(Dequeue)된 IRPd에 대한 다운로드 데이터를 해당 버퍼로부터 DMA(Direct Memory Access) 방식을 통해 다운로드하는 단계; 상기 큐 Quirp가 비어 있지 않고 상기 ROOMu가 0보다 큰 경우에는 상기 업로드 수행 단계를 수행하는 과정을 반복하는 단계; 및 상기 큐 Qd와 Qdirp의 상태에 따라 상기 큐 Qdirp로부터 IRPd를 디큐(Dequeue)하는 단계로 되돌아가거나 절차를 종료하는 단계를 포함하도록 구성할 수 있다.
상기 업로드 이벤트 수신단계, 상기 업로드 수행 단계, 상기 다운로드 이벤트 수신단계 및 상기 다운로드 수행단계 중 하나 이상의 단계는 병렬적으로 이루어지도록 구성할 수 있다.
상기 각 단계는 윈도우즈 시스템의 WDM(Windows Driver Model) 드라이버를 이용하여 구성할 수 있다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다.
도 2를 참조하자면, 본 발명에 따른 타임 쉬프트 기능을 위한 데이터 전송방법은 크게 녹화와 관련한 다운로드 과정 및 재생과 관련한 업로드 과정으로 이루어질 수 있다. 또한, 다운로드 과정은 다운로드 이벤트 수신단계(S21)와 다운로드 수행단계(S22)로 이루어질 수 있으며, 업로드 과정은 업로드 이벤트 수신단계(S23)와 업로드 수행 단계(S24)로 이루어질 수 있다. 이러한 다운로드 이벤트 수신단계(S21), 다운로드 수행단계(S22), 업로드 이벤트 수신단계(S23), 업로드 수행 단계(S24)는 필요에 따라 서로 병렬적으로 이루어지도록 구성할 수 있다.
업로드 이벤트 수신단계(S23)에서 수신하는 이벤트는 영상신호의 재생을 요구하는 IRP 신호(I/O Request Packet, 이하 IRPu라 한다) 및 업로드 데이터를 처리할 버퍼 공간이 비어 있다는 것을 알리는 EMPTY 인터럽트 신호(이하, EMPTY INTR이라 한다)를 들 수 있다.
업로드 이벤트 수신단계(S23)에서는 IRPu가 수신되면 수신된 IRPu를 일정 큐(Quirp)에 저장하고(S23-1), EMPTY INTR이 수신되면 업로드에 이용할 수 있는 버퍼의 수를 표시하는 변수(이하, ROOMu라 한다)를 1 증가시킨다(S23-2).
그리고, 현재 다운로드가 진행되고 있지 않은 상태에서 ROOMu가 0이 아닌 경우(S24-1)이거나 큐 Quirp가 비어 있지 않는 상태인 경우(S24-2)에는, 큐 Quirp로부터 하나의 IRPu를 디큐(Dequeue)하고(S24-3), 해당 IRPu에 대한 업로드 데이터를 DMA(Direct Memory Access) 방식을 통해 업로딩한다(S24-4).
그러나, 단계 S24-1이나 S24-2에서의 판단 결과, 현재 다운로드가 진행되고 있거나 큐 Quirp가 비어 있어서 처리할 IRPu가 존재하지 않거나, 또는 업로드 데이터를 처리할 수 있는 빈 버퍼가 없어서 ROOMu가 0일 경우에는 해당 조건이 만족할 때까지 절차를 종료한다.
한편, 다운로드 이벤트 수신단계(S21)에서 수신하는 이벤트는 영상신호의 녹화를 요구하는 IRP 신호(I/O Request Packet, 이하 IRPd라 한다) 및 다운로드 데이터가 이미 버퍼에 준비되어 있다는 것을 알리는 FULL 인터럽트 신호(이하, FULL INTR이라 한다)를 들 수 있다.
다운로드 이벤트 수신단계(S21)에서는 FULL INTR이 수신되면 해당 버퍼위치에 관한 정보를 일정 큐(Qd)에 저장하고(S21-1), IRPd가 수신되면 수신된 IRPd를 일정 큐(Qdirp)에 저장한다(S21-2).
그리고, 현재 업로드가 이루어지고 있지 않은 상태에서 큐 Qdirp 또는 큐 Qd가 비어 있지 않은 경우에는(S22-1,S22-2), 큐 Qdirp에서 IRPd를 디큐(Dequeue)하고(S22-3), 해당 IRPd에 대한 다운로드 데이터를 해당 버퍼로부터 DMA(Direct Memory Access) 방식을 통해 다운로딩한다(S22-4).
또한, 큐 Quirp와 ROOMu의 상태를 조사하여 ROOMu가 0보다 크고 큐 Quirp가 비어 있지 않은 경우에는(S22-5), 업로드 대상이 존재하는 것이므로 단계 S24-3으로 진행하여 단계 S24-3과 S24-4를 진행한다. 이 과정은 단계 S22-5의 조건이 만족하는 동안 계속하여 반복되는 것으로서, 업로드가 가능한 상태의 모든 IRPu에 대하여 현재 비어있는 업로드 버퍼를 이용한 업로딩을 수행하는 과정이다. 즉, 업로드 를 다운로드보다 우선시킨다는 것을 의미한다.
그러나, 단계 S22-5에서의 조사 결과 ROOMu가 0이거나 큐 Quirp가 비어 있는 경우에는 다운로드가 가능한 상태인지를 파악하기 위하여 큐 Qd와 Qdirp의 상태를 조사한다. 그리고, 조사 결과 큐 Qd와 Qdirp가 모두 비어있지 않은 경우에는 다운로드를 진행하기 위하여 단계 S22-3으로 진행하며, 큐 Qd나 Qdirp가 비어 있는 경우에는 다운로드가 가능한 시점이 아니므로 절차를 종료한다(S22-6).
도 3을 참조하여 위에서 설명한 다운로드 과정이 이루어지는 상태를 보충 설명하기로 한다.
다운로드 요청(IRPd)은 이후에 FULL INTR에 의해 사용될 수 있도록 큐 Qdirp에 저장해 놓는다(31).
한편, 다운로드 버퍼에 다운로드 대상 데이터가 준비되어 있음을 알리는 FULL INTR가 발생하면(32), 이 FULL INTR에 대한 인덱스 버퍼의 위치를 참조하여 인덱스 버퍼에서 해당 인덱스값을 찾는다(33). 또한, FULL INTR에 대한 다운로드 버퍼의 위치를 참조하여(34), 다운로드 버퍼에 저장되어 있는 트랜스포트 스트림을 DMA 방식을 통해 전달한다(36). 이 때, 전달 위치는 인덱스 버퍼에서 찾은 인덱스값이 표시한다(35).
도 4를 참조하여 위에서 설명한 업로드 과정이 이루어지는 상태를 보충 설명하기로 한다.
업로드 요청(IRPu)은 업로드 버퍼가 사용 가능한 순간에 처리되기 위하여 큐 Quirp에 저장되어 관리된다(41).
업로드에 사용되는 버퍼가 비어있음을 알리는 EMPTY INTR이 발생하면(42), 사용 가능한 업로드 버퍼의 개수(ROOMu)를 1 증가시킨다. 그리고, 큐 Quirp에서 디큐(Dequeue)된 IRPu가 표시하는 전송 스트림(TP)을 이 EMPTY INTR에 대한 업로드 버퍼 위치에(43), DMA 방식을 이용하여 업로딩한다(44).
이후에도 큐 Quirp에 업로드 요청(IRPu)이 대기중이라면 계속해서 업로드 요청 및 사용가능한 업로드 버퍼 개수를 확인하여 업로드 요청을 처리한다. 이 과정은 다운로드 요청에 우선하여 처리한다. 만약 업로드 요청이 없거나 모두 완료되었다면 남아있는 다운로드 요청을 처리한다.
이와 관련하여, 도 5는 사용 가능한 업로드 버퍼가 없을 때 다운로드 요청을 수행하는 실행예를 도식적으로 보인 것이다. 또한, 도 6은 다운로드 요청이 남아있다 하더라도 업로드 요청을 우선하여 처리하는 실행예를 도식적으로 보인 것이다. 즉, 다운로드 요청은 업로드 요청이 없거나 모두 완료된 경우에만 수행되도록 구성할 수 있다.
본 발명을 마이크로 소프트 윈도우즈 시스템을 기반으로 하여 구현된 PVR 장치에 적용하는 경우, 위에서 설명한 각 단계는 윈도우즈 시스템의 WDM(Windows Driver Model) 드라이버를 이용하여 구성할 수 있다.
본 발명은 상술한 실시예에 한정되지 않고 본 발명의 기술적 사상을 벗어나지 않는 범위내에서 당업자에 의해 다양하게 변형하여 실시할 수 있는 것이다.
본 발명에 따르면, 마이크로 소프트 윈도우즈 시스템과 같은 범용 운영체계 기반의 PVR 장치에서 일어날 수 있는 녹화 및 재생 데이터의 전송지연을 최소화 할 수 있다. 또한, 윈도우즈 WDM(Windows Driver Model) 드라이버로 구현하면 데이터 전송 이외의 나머지 PVR 기능이 커널과 명확하게 분리될 수 있고, 기 개발된 PVR을 최소한으로 수정하여 운영체계의 전환을 가능하게 하는 효과가 있다

Claims (5)

  1. 영상신호의 재생을 요구하는 업로드 요구신호(IRPu)가 수신되면 상기 IRPu를 일정 큐(Quirp)에 저장하고, 업로드 데이터를 처리할 버퍼공간에 관한 EMPTY 인터럽트가 수신되면 업로드에 이용할 수 있는 버퍼의 수(ROOMu)를 증가시키는 업로드 이벤트 수신단계;
    현재 다운로드가 이루어지고 있는지의 여부, 상기 큐 Quirp의 상태, 상기 ROOMu 정보에 따라 상기 큐 Quirp에 존재하는 IRPu를 디큐(Dequeue)하여 해당 IRPu에 대한 업로드를 진행하는 업로드 수행 단계;
    영상신호의 녹화를 요구하는 다운로드 요구신호(IRPd)가 수신되면 상기 IRPd를 일정 큐(Qdirp)에 저장하고, 다운로드 데이터를 처리하는 버퍼공간에 관한 FULL 인터럽트가 수신되면 해당 버퍼정보를 일정 큐(Qd)에 저장하는 다운로드 이벤트 수신단계; 및
    현재 업로드가 이루어지고 있는지의 여부, 상기 큐 Qdirp의 상태, 상기 Qd의 상태에 따라 상기 큐 Qdirp에 존재하는 IRPd를 디큐(Dequeue)하여 해당 IRPd에 대한 다운로드를 진행하되, 상기 큐 Quirp의 상태와 상기 ROOMu가 업로드가 이루어져야 하는 상황을 가리키는 경우에는 상기 업로드 수행 단계를 우선하여 진행하는 다운로드 수행단계를 포함하여 이루어지는 개인용 비디오 녹화기에 있어서 타임 쉬프트 기능을 위한 데이터 전송방법.
  2. 제 1 항에 있어서, 상기 업로드 수행 단계는
    상기 다운로드가 진행되고 있지 않은 상태에서 상기 큐 Quirp가 비어 있지 않거나 상기 ROOMu가 0이 아닌 경우에는 상기 큐 Quirp로부터 해당 IRPu를 디큐(Dequeue)하는 단계; 및
    상기 디큐(Dequeue)된 IRPu에 대한 업로드 데이터를 DMA(Direct Memory Access) 방식을 통해 업로드하는 단계를 포함하여 구성되는 것을 특징으로 하는 개인용 비디오 녹화기에 있어서 타임 쉬프트 기능을 위한 데이터 전송방법.
  3. 제 1 항에 있어서, 상기 다운로드 수행단계는
    상기 업로드가 진행되고 있지 않은 상태에서 상기 큐 Qdirp 또는 상기 큐 Qd가 비어 있지 않은 경우에는 상기 큐 Qdirp로부터 IRPd를 디큐(Dequeue)하는 단계;
    상기 디큐(Dequeue)된 IRPd에 대한 다운로드 데이터를 해당 버퍼로부터 DMA(Direct Memory Access) 방식을 통해 다운로드하는 단계;
    상기 큐 Quirp가 비어 있지 않고 상기 ROOMu가 0보다 큰 경우에는 상기 업로드 수행 단계를 수행하는 과정을 반복하는 단계; 및
    상기 큐 Qd와 큐 Qdirp의 상태에 따라, 상기 큐 Qdirp로부터 IRPd를 디큐(Dequeue)하는 단계로 되돌아가거나 절차를 종료하는 단계를 포함하여 구성되는 것을 특징으로 하는 개인용 비디오 녹화기에 있어서 타임 쉬프트 기능을 위한 데이터 전송방법.
  4. 제 1 항에 있어서,
    상기 업로드 이벤트 수신단계, 상기 업로드 수행 단계, 상기 다운로드 이벤트 수신단계 및 상기 다운로드 수행단계 중 하나 이상의 단계는 병렬적으로 이루어지도록 구성되는 것을 특징으로 하는 개인용 비디오 녹화기에 있어서 타임 쉬프트 기능을 위한 데이터 전송방법.
  5. 제 1 항 내지 제 4 항 중 어느 하나의 항에 있어서,
    상기 각 단계는 윈도우즈 시스템의 WDM(Windows Driver Model) 드라이버를 이용하여 구성되는 것을 특징으로 하는 개인용 비디오 녹화기에 있어서 타임 쉬프트 기능을 위한 데이터 전송방법.
KR1020050023465A 2005-03-22 2005-03-22 개인용 비디오 녹화기에 있어서 타임 쉬프트 기능을 위한데이터 전송방법 KR100623380B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050023465A KR100623380B1 (ko) 2005-03-22 2005-03-22 개인용 비디오 녹화기에 있어서 타임 쉬프트 기능을 위한데이터 전송방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050023465A KR100623380B1 (ko) 2005-03-22 2005-03-22 개인용 비디오 녹화기에 있어서 타임 쉬프트 기능을 위한데이터 전송방법

Publications (1)

Publication Number Publication Date
KR100623380B1 true KR100623380B1 (ko) 2006-09-13

Family

ID=37624772

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050023465A KR100623380B1 (ko) 2005-03-22 2005-03-22 개인용 비디오 녹화기에 있어서 타임 쉬프트 기능을 위한데이터 전송방법

Country Status (1)

Country Link
KR (1) KR100623380B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101402483B1 (ko) 2012-09-25 2014-06-03 고려대학교 산학협력단 네트워크 전송 장치 및 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002203363A (ja) 2000-10-30 2002-07-19 Matsushita Electric Ind Co Ltd Avストリーム記録再生装置、avストリーム記録装置、avストリーム記録再生方法、avストリーム記録方法
JP2002271740A (ja) 2001-03-12 2002-09-20 Sharp Corp データ入出力装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002203363A (ja) 2000-10-30 2002-07-19 Matsushita Electric Ind Co Ltd Avストリーム記録再生装置、avストリーム記録装置、avストリーム記録再生方法、avストリーム記録方法
JP2002271740A (ja) 2001-03-12 2002-09-20 Sharp Corp データ入出力装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101402483B1 (ko) 2012-09-25 2014-06-03 고려대학교 산학협력단 네트워크 전송 장치 및 방법

Similar Documents

Publication Publication Date Title
KR100456441B1 (ko) 저장 매체에 저장된 서비스의 중지 시점부터 서비스를제공하는 방법 및 장치
JP4244752B2 (ja) 記録再生装置、再生処理方法
CN1747036B (zh) 播放节目的记录方法、播放接收装置
KR100623380B1 (ko) 개인용 비디오 녹화기에 있어서 타임 쉬프트 기능을 위한데이터 전송방법
CN1770836A (zh) 播放接收装置及信息再现方法
KR20040023009A (ko) 멀티 채널 녹화 가능한 개인용 비디오 녹화 장치
US8744235B2 (en) Method and apparatus for processing additional data in broadcast signal, method and apparatus for recording broadcast signal, and method and apparatus for reproducing recorded broadcasting signal
JP2002152652A (ja) 放送受信記録再生方法及び放送受信記録再生装置
US20070047903A1 (en) Method for controlling personal video recorder and personal video recorder using the same
KR100615242B1 (ko) 타임 쉬프트 구현이 가능한 디지털 텔레비전 및 동작 방법
JP2007149298A (ja) 放送記録装置及び放送記録方法
JPH0614288A (ja) 情報記録再生装置
JP4584063B2 (ja) 記録再生装置及びプログラム
KR100767682B1 (ko) 방송 프로그램 저장방법 및 그에 따른 텔레비전 방송수상기
JP3458787B2 (ja) 録画再生装置
JP4735560B2 (ja) デジタル放送再生装置
JP3233340B2 (ja) デジタル放送受信再生装置
JP3796203B2 (ja) 録画装置制御機能付き放送受信装置
KR100564572B1 (ko) 개인용 기록 장치에 있어서 트릭 플레이 영역 설정 방법
KR100610680B1 (ko) 디지털 방송 녹화 편집장치 및 방법
JP3750847B2 (ja) 番組信号記録再生装置
KR100312511B1 (ko) 방송 데이터의 저장 및 재생 장치와 그 방법
KR20040079042A (ko) 티브이 방송에 대한 오디오 녹음 및 재생 방법
JP3181698B2 (ja) 記録再生装置
KR20060030235A (ko) 휴대용 저장 매체를 이용한 방송 녹화/재생 장치 및 그 방법

Legal Events

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

Payment date: 20120827

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130823

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140822

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150824

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee