KR20050036998A - 주문형 비디오 서버 시스템 및 방법 - Google Patents

주문형 비디오 서버 시스템 및 방법 Download PDF

Info

Publication number
KR20050036998A
KR20050036998A KR1020057004054A KR20057004054A KR20050036998A KR 20050036998 A KR20050036998 A KR 20050036998A KR 1020057004054 A KR1020057004054 A KR 1020057004054A KR 20057004054 A KR20057004054 A KR 20057004054A KR 20050036998 A KR20050036998 A KR 20050036998A
Authority
KR
South Korea
Prior art keywords
program
representation
bit rate
quality
representations
Prior art date
Application number
KR1020057004054A
Other languages
English (en)
Other versions
KR101014451B1 (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 KR20050036998A publication Critical patent/KR20050036998A/ko
Application granted granted Critical
Publication of KR101014451B1 publication Critical patent/KR101014451B1/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/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • H04N21/23655Statistical multiplexing, e.g. by controlling the encoder to alter its bitrate to optimize the bandwidth utilization
    • 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/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • 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/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Television Signal Processing For Recording (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

주문형 비디오 서버 구조(100, 200, 300)는 고정된 대역폭의 채널(11)을 통해서 서로 다른 비트 속도를 갖는 사전-코딩된 복수의 프로그램을 송신한다. 각 프로그램에 대해서, 발생기(120-12 P-1 , 110, 210)는 각 프로그램에 대해 복수의 서로 다른 비트 속도의 표현들을 생성한다. 각 발생기는 또한 각 비트 속도의 표현에 대해서 복수의 연속적 시간 윈도우 T 각각에서 제어 정보를 제공한다. 제어 정보는 각 시간 윈도우 T 동안에 비트 속도 및 품질 측정을 제공한다. 제어 정보는, 통계적 다중화기(16, 160, 260)가, 각 시간 윈도우 T 동안 각 프로그램에 대한 비트 속도 표현을 선택하여, 사용가능한 전체 채널 용량을 초과하지 않으면서, 선택된 표현들의 품질을 극대화하도록 한다.

Description

주문형 비디오 서버 시스템 및 방법{VIDEO ON DEMAND SERVER SYSTEM AND METHOD}
본 발명은 고정된 채널의 대역폭 제한을 유지하면서 주문형 비디오를 효과적으로 공급하는 기술에 관한 것이다.
오늘날 주문형 비디오(VoD;Video-on-Demand) 시스템에서는 일반적으로 고정 비트 속도(CBR;Constant Bit Rate) 비디오를 전송한다. CBR 비디오 전송은, 동등한 장기(long-term) 평균 비트 속도에 대해서 변동 비트 속도(VBR)로 비디오를 전송하는 것과 동일한 효율성을 얻을 수 없다. 고정 대역폭 채널을 통한 다중의 사전 기록된 VBR-인코딩 비디오 프로그램의 전송은, 각 프로그램에 의해 요구되는 순간적인 비트 속도의 합이 종종 전체 사용가능한 비트 속도를 초과하기 때문에, 문제점을 갖는다. 반면에, 실시간 인코더를 채용한 방송 애플리케이션은, 동일한 캐리어 또는 트랜스폰더에서 수행될 다중 프로그램들 사이의 순간적인 비트 속도 변화들을 활용하도록 통계적 다중화를 사용한다. 인코더는, 시스템이 모든 프로그램에 대해 전체 결합된 비트 속도를 억제하여, 주어진 시간 윈도우에 대한 채널 용량을 초과하지 않도록 하여 실시간으로 동작한다. 각 비디오 프로그램은 관련된 복잡도가 측정된다. 중앙 제어기는, 각 비디오 프로그램으로 할당된 비트 속도를 상대적 복잡도에 따라서 동적으로 조정한다.
현재, "비디오 트랜스레이터(video transrater)"로 공지된 장치가 있으며, 이는, 예를 들어, MPEG 2와 같은 일반적 압축 표준내에서 비디오 스트림의 비트 속도를 줄이도록 동작한다. 현재의 트랜스레이터는, 고정 및 변동 비트 속도 사이에서 전환하는 경우, 종종 문제점이 발생한다. 이러한 트랜스레이터는 또한, 장면 변경이 많거나, I-픽쳐의 수가 큰 비트 스트림에 대한 비트 속도를 바꾸려고 하는 경우, 어려움을 겪을 수 있다.
비디오 신호를 기초층과 하나 이상의 인핸스먼트층으로 나눌 수 있도록 하는 스칼라블 비디오 인코딩 또한 비트 속도 문제를 해결할 수 있다. 공간적, SNR, 시간적, 데이터 분할, 미세 그레인 스칼라빌리티(FGS;Fine grain scalability), 주파수 스칼라빌리티를 포함하는, 스칼라블 비디오 인코딩의 여러 방법들이 존재한다. MPEG 2 및 MPEG 4 비디오 압축 표준은 여러 스칼라빌리티 방법들을 포함한다. 스칼라블 인코딩을 사용하면, 송신기 및 수신기 둘 다가 서로 다른 코딩 알고리즘을 구현할 수 있는 동일한 능력을 가져야 하고, 이에 따라 복잡성이 더 부가된다.
따라서, 종래 기술의 문제점들을 제거하는 변동 비트 속도의 주문형 비디오를 조정하기 위한 기술이 필요하게 된다.
도 1은 본 발명의 원리에 따라서 주문형 비디오 서버 구조의 양호한 제1 실시예의 블록도를 도시한다.
도 2는 본 발명의 원리에 따라서 주문형 비디오 서버 구조의 양호한 제2 실시예의 블록도를 도시한다.
도 3은 본 발명의 원리에 따라서 주문형 비디오 서버 구조의 양호한 제3 실시예의 블록도를 도시한다.
간략하게, 본 발명의 원리에 따르면, 고정된 대역폭 채널을 통해 서로 다른 비트 속도를 갖는 복수의 사전 코딩된 프로그램들을 전송하는 방법이 제공된다. 각 프로그램에 대해, 적어도 2개의, 양호하게는 복수의 서로 다른 비트 속도 표현들이 생성된다. 각 비트 속도 표현에 대해 복수의 연속적 시간 윈도우 각각에서 제어 정보가 제공된다. 제어 정보는 각 시간 윈도우 동안에 비트 속도 및 품질 측정을 제공한다. 제어 정보는, 각 시간 윈도우 동안에 각 프로그램에 대해서 비트 속도 표현의 선택을 가능하게 하여, 그 시간 윈도우에서 사용가능한 전체 채널 용량을 초과하지 않으면서, 선택된 표현들의 품질을 극대화한다.
본 발명의 원리에 따른 기술을 설명하기 전에, 다음의 용어들이 도움이 될 것이다:
T는 시스템 최적화가 고려되는 시간 간격
C는 시간 프레임 T에서 사용가능한 전체 채널 용량
P는 전체 프로그램 수
p∈(0, P-1)은 특정 프로그램의 인덱스
N[p]는 프로그램 p의 표현의 전체 수
n[p]∈(0, N[p]-1)은 프로그램 p의 특정 표현의 인덱스
r[p, x]는 T 동안 프로그램 p의 표현 x의 비트 속도
q[p, x]는 T 동안 프로그램 p의 표현 x의 품질
도 1은, 전체 채널 용량 C를 갖는 고정된 대역폭 채널(11)을 통해, 사전 인코딩된 CBR 및/또는 VBR 오디오/비디오 프로그램을 송신하기 위한 본 발명의 원리에 따른 주문형 비디오 서버 구조(10)의 양호한 제1 실시예를 도시한다. 서버 구조(10)는 복수의 다중 속도 스트림 발생기 120, 121...12 P -1를 포함하고, 여기에서 P는 개별 입력 스트림의 수에 대응하는 0보다 큰 정수이다. 스트림 속도 발생기 120-12 P-1 는 각각 프로그램 0, 프로그램 1...프로그램 P-1 중에서 대응하는 것을 복수의 서로 다른 비트 속도로 사전 코딩한다. 상술한 바와 같이, 각각의 다중 속도 스트림 발생기는 대응하는 프로그램이 적어도 2개 이상의 서로 다른 비트 속도 표현을 갖도록 사전 코딩한다. 표현은 특정 저장된 인코딩된 비트 스트림, 또는 서로 다른 인코딩된 비트 스트림의 다양한 부분들의 조합을 포함할 수 있다. 일반적으로 단일 디스크 드라이브, RAID(Redundant Array of Inexpensive Discs) 또는 복수의 RAID 형태인 저장 장치(14)는 다중 속도 스트림 발생기 120-12 P-1 에 의해 생성된 사전 코딩된 표현들을 저장하도록 제공된다.
각각의 다중 속도 스트림 발생기 120-12 P-1 는 프로그램 0 내지 P-1 중에서 대응하는 것에 대한 제어 정보를 각 시간 윈도우 T에 대해서 각각 발생한다. 각 프로그램의 표현 각각에 대한 시간 윈도우 T에 대한 제어 정보는 표현의 비트 속도 지시, 및 표현의 피크 신호대 잡음비(PSNR)와 같은 품질 측정을 포함한다. 중앙 통계적 다중화기("stat mux")(16)는 각 표현에 대한 제어 정보를 수신한다. 각각의 연속적 시간 윈도우 T에서, 통계적 다중화기(16)는, 전체 비트 속도를 채널(11)의 전체 용량 C 이하로 유지하면서, 송신된 프로그램의 품질을 극대화하도록 각 프로그램에 대한 표현을 선택한다.
각 프로그램에 대한 최저 비트 속도 표현은, 모든 프로그램에 대한 최저 비트 속도의 합이 각 간격 T에 대한 채널 용량을 초과하지 않도록, 규정된 값을 초과해서는 안된다. 이러한 방식으로, 각 프로그램의 적어도 하나의 표현이 채널(11)을 통해 송신될 수 있다. 이러한 제한은, 각 프로그램에 대한 최저 비트 속도가 C/P의 피크 비트 속도 이하로 되면 만족한다. 모든 프로그램의 모든 시간 윈도우 T에 대한 제한 을 만족하는 다른 방법도 있다. 일반적으로, 특정 프로그램의 재생이 시작될 때는 사전 지식이 없다. 따라서, 용량 제한의 실시는, 최저 비트 속도 표현의 비트 속도 한계를 특정 프로그램의 모든 시간 윈도우 T에 대해 동일하게 함으로써 쉽게 달성될 수 있다.
전체 결합된 품질을 극대화하기 위한 처리는 여러가지 다른 방법들로 수행될 수 있다. 모든 경우에, 제한 은 모든 프로그램의 모든 시간 윈도우 T에 대해 계속 만족해야만 한다. 미니맥스(minimax) 접근법에서는, 최저 품질 프로그램의 품질을 극대화(즉, 최대 왜곡을 최소화)하기 위해서, 각 p∈(0, P-1)에 대해 n[p]를 선택함으로써 이 제한을 만족시킬 수 있다.
미니맥스 접근법은 각 프로그램의 각 표현에 대한 제어 정보를 분류함으로써 구현될 수 있으며, 이에 따라 품질 및 비트 속도 인덱스는 인덱스가 증가함에 따라 단방향으로 증가한다. 다음으로, 각 단계에서 비트 속도의 변화("델타(△)" 비트 속도로서 지칭됨)가 저장된다. 통계적 다중화기(16)는 각 프로그램 표현에 대한 최저 인덱스로 시작하고, 전체 용량 S를 계산한다. 통계적 다중화기(16)는 최저 품질의 프로그램 표현을 선택하고, S에 델타 비트 속도를 부가한 것이 C를 초과하는지 검사한다. 이 표현의 부가가 C를 초과하지 않으면, 그 표현의 인덱스가 증가하고, 처리가 반복된다. 일단 C를 초과하면, S에 델타 비트 속도를 부가한 것이 C를 초과하는지를 알아 보기 위해, 최저 품질 다음의 품질을 갖는 표현이 검사된다. 처리는 채널 용량 C를 초과하지 않으면서 어느 표현에서도 증가가 없을 때까지 반복된다. 선택적으로, 모든 프로그램의 전체 품질은 개별 프로그램 품질들의 합을 최대화함으로써 최적화될 수 있고, 이는 다음의 제한된 최적화 문제를 해결하는 것과 관련된다.
다음 방식에 따라 개별 프로그램 품질들의 곱을 최적화할 수 있다.
서로 다른 시청자들에 대해서 서로 다른 계층의 서비스를 제공하기 위해서 가중화된 평균이 또한 사용될 수 있다.
다중 속도 스트림 발생기 120-12 P-1 는 각 프로그램의 다중 표현을 형성하기 위해서 여러가지 서로 다른 방법들, 또는 방법들의 조합을 사용할 수 있다. 모든 경우에서, 내부-코딩된(I) 프레임과 같은 랜덤 액세스점은 각 표현에 대해서 각 시간 윈도우 T의 개시시에 발생해야 하고, 이에 따라, 각 시간 윈도우 T에 대해서 서로 다른 표현이 드리프트없이 선택될 수 있다. 각 표현은, 최저 비트 속도 표현의 용량이 전체 채널 용량 제한을 만족하는 한, CBR 또는 VBR 코딩 중 하나를 사용할 수 있다.
제1 방법에서, 다중 속도 비디오 인코더는 각 프로그램을 여러가지 서로 다른 비트 속도에서 여러개의 독립 비트 스트림으로 인코딩한다. 각각의 서로 다른 비트 속도의 비트 스트림은 서로 다른 표현으로서 제공된다. 도 2는 이 방법을 수행하기 위한 구조(100)를 도시한다. 도 2에 도시된 바와 같이, 다중 속도 비디오 인코더(110)는 서로 다른 속도의 복수의 표현들을 제공하도록 대응 프로그램을 인코딩한다. 개별 전송 패킷화기 1120, 1122...112 p-1 는 각각 상응하는 표현을 패킷화한다. 다중 속도 인코더(110)에 의해 수행되는 다중 속도 인코딩, 및 패킷화기 1120-112 P-1 에 의해 수행되는 패킷화는, 도 1의 저장 장치(14)와 유사한 구성인 저장 장치(140)에 저장되기 전에 한번 발생하며, 이는 반드시 실시간일 필요는 없다.
실시간 출력을 위해 저장 장치(140)에 저장된 표현들은 선택기 블록(150)으로부터 수신된 신호에 응답해서 선택된다. 선택기 블록(150)은 특정 표현에 대해 통계적 다중화기(160)로부터의 요구에 응답해서 출력하기 위해 저장된 표현을 식별한다. 선택기 블록(150)으로부터의 신호의 수령에 따라서, 저장 장치(140)는 출력을 위해 통계적 다중화기(160)로 선택된 패킷화된 표현들을 공급한다.
제2 방법에서, 여러가지 서로 다른 비트 스트림의 부분들은 프로그램의 추가 표현들을 갖도록 결합된다. 프로그램의 모든 비트 스트림에서 동일한 위치에 존재하는 랜덤 액세스점(장면 변화에서 자연스럽게 발생함), 또는 고정된 픽쳐 그룹 구조의 사용은, 새로운 표현을 형성하기 위해 랜덤 액세스 경계들에서 서로 다른 비트 속도의 스트림으로부터 압축된 데이터의 결합을 가능하게 한다. 저장된 데이터로부터의 각 표현을 생성할 수 있는 능력이 있는 한, 각 표현을 독립적으로 저장할 필요가 없다. 다음 예에서는 T가 1초인 경우를 고려하고, 여기에서 데이터는 30fps에서 코딩되고, I 프레임은 15 프레임마다 삽입되고, 비트 스트림 0, 비트 스트림 1, 및 비트 스트림 2로서 각각 지정된 3개의 서로 다른 비트 속도의 비트 스트림을 가진다. 각 비트 스트림은 개별 표현을 구성한다. 추가의 표현은, 제1 15프레임동안 비트스트림 0을, 제2 15 프레임동안 비트스트림 1, 등등을 사용하여 형성될 수 있다.
전송 패킷을 갖는 랜덤 액세스점의 정렬을 가정할 때, 도 2의 서버 구조(100)는, 전송 패킷화가 사전에 발생할 때 잘 동작한다. 도 3은 랜덤 액세스점이 전송 패킷과 반드시 정렬해야 하는 것은 아닌 경우에 더 적합한 VoD 서버 구조(200)를 도시한다. 도 3을 참조하면, VoD 서버 구조(200)는, 저장 장치(14 및 140)와 유사한 저장 장치(240)에 저장하기 위한 복수의 서로 다른 비트 속도의 표현들을 생성하기 위해서 다중 속도 비디오 인코더(210)를 포함한다. 저장 장치(140)에 저장된 표현들은 패킷화되지 않은 비트 스트림으로서 존재한다.
실시간으로 출력하기 위해 저장 장치(240)에 저장된 표현들의 선택은 선택기 블록(250)으로부터 수신된 신호에 응답해서 발생한다. 도 2의 선택기 블록(150)과 성격이 유사한 선택기 블록(250)은, 특정 표현에 대해서 통계적 혼합기/다중화기(260)로부터의 요청에 응답해서 저장된 표현을 출력하기 위해 식별한다. 선택기 블록(250)으로부터 신호를 수령하면, 저장 장치(240)는 선택된 패킷화된 표현을 통계적 혼합기/다중화기(260)로 공급한다. 패킷화기(212)는 채널(도시 생략)에서 출력하기 위해 통계적 혼합기/다중화기(260)의 출력 스트림을 패킷화한다.
표현은 또한, MPEG-2 B 프레임 또는 JVT 비-저장된 픽쳐와 같이 다른 픽쳐들을 예측하기 위한 참조 픽쳐로서 사용되지 않는 픽쳐들을 포함하는, 비디오 코덱(도시 생략)과 같은 비-참조 픽쳐에 대해서 저장된 비트 스트림들 간의 전환을 통해 형성될 수 있다. 각각의 비-참조 픽쳐는, 비-저장된 픽쳐가 예측에 사용되지 않음으로써, 연속적으로 코딩된 픽쳐의 품질에 영향을 미치지 않고 서로 다른 저장된 비트 스트림으로부터 선택될 수 있다. 표현에서 비-참조 픽쳐의 완전한 삭제 또한 발생할 수 있다. 각각의 비-참조 픽쳐는 개별적으로 전환될 수 있고, 비-참조 픽쳐의 그룹은, 다수의 전체 비트 속도의 표현들을 가능하게 하면서 함께 전환될 수 있다. 도 1의 다중 속도 스트림 신호 발생기 120-12 P-1 는, 품질 및 비트 속도에서 중요한 차이점을 갖는 표현들을 선택하기 위해, 도 1의 통계적 다중화기(16)로 보내지는 가능한 표현들의 수를 제한하도록 선택될 수 있다. 각각의 표현이 반드시 저장 장치에 독립적으로 저장될 필요는 없지만, 각각의 코딩된 프레임의 위치 및 길이를 리스트한 표는 필요한 경우 표현의 생성을 간략화하기 위해서 저장될 수 있다. 또한, 비-저장된 픽쳐에 대해서만 다중 비트 속도의 비트 스트림을 저장할 수 있고, 참조 (I 및 P) 픽쳐의 단일 버젼만을 저장할 수 있고, 이는 저장 요건을 현저히 감소시킬 수 있다.
도 2 및 3의 VoD 서버 구조(100 및 200)에서는, 각각 통계적 다중화기(16) 및 통계적 혼합기/다중화기(260)가 선택된 표현에 상응하는 비트 스트림을 발생한다. 개별 픽쳐들이 할당된 전송 패킷이 아니라면, 도 3의 구조(200)는, 특정 표현에 대한 비트 스트림의 발생 후에 전송 패킷화를 수행한다. 그렇지 않은 경우, 도 2의 VoD 서버 구조(100)가 잘 동작할 것이다.
본 발명의 원리의 또 다른 양상에 따르면, 스칼라블 비디오 코딩은, 기초층과 하나 이상의 인핸스먼트층을 형성하도록 스칼라블 비디오 인코더(도시 생략)를 사용함으로써 수행될 수 있다. 드리프트를 피하기 위해서, 주파수 스칼라빌리티, FGS, SNR 스칼라빌리티 또는 시간적 스칼라빌리티와 같은, 모션 보상된 참조 픽쳐 예측에 대해 기초층을 사용하는 소정 타입의 스칼라빌리티가 사용될 수 있다. 최저 비트 속도의 표현은 기초층에 대응한다. 기초층의 피크 비트 속도는, 모든 프로그램의 기초층의 비트 속도가 합산될 때, 채널 용량 C가 각 시간 윈도우 T에 대해 초과하지 않게 되어야 한다. 다른 더 높은 비트 속도의 표현은 인핸스먼트층의 일부분이 더해진 기초층에 대응할 것이다. 이러한 접근법에서는, 비디오 디코더가 사용된 스칼라빌리티의 타입을 지원해야만 한다. 도 2의 VoD 서버 구조(100)는 특정 표현에서 전체 인핸스먼트층이 포함되는 경우 이용된다. 도 3의 VoD 서버 구조(200)는 인핸스먼트층의 일부가 표현에서 사용되는 경우 이용된다.
콘텐츠 권리의 관리를 위해 암호화를 사용하는 시스템에 대해서, 도 2의 VoD 서버 구조(100)에서는 실시간으로 어떠한 해독 또는 암호화가 요구되지 않고, 암호화는 비실시간으로 수행되는 전송 패킷화 처리에 부가되고, 전체 암호화된 전송 패킷이 저장되어 송신된다. 도 3의 VoD 서버 구조(200)에서는, 암호화가 전송 패킷화에 따라 실시간으로 수행되어야 한다.
VoD 프로그램은 일반적으로 오디오 및 비디오 둘 다를 포함한다. 오디오 비트 속도가 일반적으로 비디오 비트 속도보다 상당히 낮고, 또한 일반적으로 고정된 비트 속도이기 때문에, 도 1 및 2의 통계적 다중화기(16 및 160), 및 도 3의 통계적 혼합기/다중화기(260)에 의해 서로 다른 사전-인코딩된 오디오 비트 스트림에서 선택하는 것으로부터 얻을 수 있는 장점이 적다. 사용자는 단일 프로그램의 교란을 보면서 오디오 품질이 전환되는 것을 알 수 있을 것이다. 전체 채널 용량 C는 비디오 채널에 의해 전체적으로 소비되는 것으로 고려될 수 있고, 단일 비트 속도의 오디오 스트림이 또한 각 프로그램에 대해 보내진다고 가정한다. 선택적으로, 상술한 방법들은 오디오에도 적용될 수 있고, 여기에서는 서로 다른 비트 속도 및 품질을 갖는 오디오 프로그램의 다중 표현이 생성될 수 있다.
본 발명의 원리에 따른 VoD 서버 구조를 갖는 비디오 재생기(도시 생략)는 비디오 디코더(도시 생략) 및 버퍼링을 위한 일부 저장 장치를 포함할 것이다. 수신될 특정 프로그램에 대해서, 데이터는 비-균일한 데이터 속도로 도달할 수 있지만, 시간 단위 T에 대응하는 데이터는 T 시간 윈도우내의 임의의 시간에서 도달해야 한다. 비디오 재생기는 T 동안 버퍼링 및 지연시킬 수 있는 능력을 가져야 한다. 시간 윈도우 T 동안 프로그램의 주어진 표현에 대해 송신될 수 있는 최대 비트 속도에 대한 상위 제한은 디코더의 복잡성 및 디코더 버퍼의 크기를 제한하도록 선정될 수 있다. 버퍼의 디코딩은 일반적으로 비디오 디코더의 요건, 예를 들어, MPEG-2 레벨이 버퍼 크기를 특정 요건으로 설정하는 것이고, 이를 만족하도록 T와 비트 속도의 결합이 선택된다.
각 프로그램에 대한 고속 포워드 및 고속 리버스 트랙은 또한 VoD 서버에 저장될 수 있다. 이들은 단일 비트 속도로, 또는 서로 다른 여러 비트 속도로 저장될 수 있으며, 일반 재생 프로그램에 대해 수행되도록 적용된다.
시간 윈도우 T 길이의 결정은 여러 요소들에 기초한다. T는 최고의 통계적 다중화 이득을 얻을 수 있을 만큼 가능한 커야 하지만, 시작, 및 일반 재생과 트릭 재생 스트림들 사이의 전환에 있어서 비디오 재생기에서의 지연을 억제하기에 충분할 만큼 작아야 한다.
상기 내용은, 고정된 채널의 대역폭 제한을 유지하면서 주문형 비디오를 효과적으로 공급하는 시스템 및 방법을 설명하는 것이다.

Claims (22)

  1. 고정된 대역폭의 채널을 통해서 서로 다른 비트 속도를 갖는 사전-코딩된 복수의 프로그램을 송신하는 방법에 있어서,
    각 프로그램의 적어도 2개의 서로 다른 비트 속도의 표현을 생성하는 단계;
    각 프로그램의 각 표현에 대해서 복수의 연속적인 시간 윈도우 T 각각에서 제어 정보를 제공하는 단계; 및
    각 시간 윈도우 T 동안, 상기 채널에 대해 사용가능한 전체 용량을 초과하지 않으면서, 상기 선택된 표현들의 품질을 극대화하도록 각 프로그램에 대한 표현을 선택하는 단계
    를 포함하고,
    상기 각각의 연속적 윈도우에 대한 제어 정보는 상응하는 프로그램의 표현에 대한 비트 속도 및 품질 측정을 나타내는 방법.
  2. 제1항에 있어서, 적어도 2개의 서로 다른 비트 속도의 표현을 생성하는 단계는, 각 프로그램에 대해 C/P보다 더 크지 않은 피크 비트 속도를 갖는 최저 비트 속도의 표현을 생성하는 단계를 더 포함하고, 여기에서 C는 시간 T에서의 전체 채널 용량이고, P는 프로그램의 전체 수인 방법.
  3. 제1항에 있어서, 상기 제어 정보를 제공하는 단계는, 상기 제어 정보에 포함된 상기 품질 측정으로서 피크 신호대 잡음비(PSNR)를 설정하는 단계를 더 포함하는 방법.
  4. 제1항에 있어서, 상기 선택 단계는, 모든 시간 윈도우에 대해서 의 제한을 만족하는 표현을 각 프로그램에 대해서 선택하는 단계를 더 포함하고,
    여기에서,
    C는 시간 프레임 T에서 사용가능한 전체 채널 용량;
    P는 전체 프로그램 수;
    p∈(0, P-1)는 특정 프로그램의 인덱스;
    N[p]는 프로그램 p의 표현의 전체 수;
    n[p]∈(0, N[p]-1)는 프로그램 p의 특정 표현의 인덱스; 및
    r[p, x]는 T 동안 프로그램 p의 표현 x의 비트 속도인 방법.
  5. 제4항에 있어서, 최소 품질을 갖는 프로그램 p의 품질을 극대화하기 위해서, 각 프로그램의 표현 n[p]∈(0, N[P]-1)을 선택하는 단계를 더 포함하는 방법.
  6. 제5항에 있어서,
    (a) 인덱스 값에 따라 단방향으로 증가하도록 비트 속도 및 품질 측정을 갖는 품질 정보를 분류하는 단계;
    (b) 각 비트 속도의 증가(델타) 및 각 인덱스 값에 대한 품질 값을 저장하는 단계;
    (c) 최저 인덱스 값으로 시작하여, 상기 인덱스 값에 대해 지금까지 선택된 프로그램 표현에 대한 전체 용량 S를 계산하는 단계;
    (d) 최저 품질 측정에서의 프로그램 표현을 선택하는 단계;
    (e) 상기 최저 품질에서 선택된 프로그램의 비트 속도 증가분이, 지금까지 선택된 표현들에 부가될 때, 전체 채널 용량을 초과하는 지 여부를 검사하는 단계;
    (f) 상기 인덱스 값을 증가시키는 단계; 및
    (g) 상기 단계 (c) 내지 (f)를 반복시키는 단계
    를 포함하는 방법.
  7. 제1항에 있어서, 상기 선택 단계는, 식을 풀어서 개별 프로그램 품질의 합을 최대화하도록, 각 프로그램에 대한 표현을 선택하는 단계를 더 포함하고,
    여기에서,
    C는 시간 프레임 T에서 사용가능한 전체 채널 용량;
    P는 전체 프로그램 수;
    p∈(0, P-1)는 특정 프로그램의 인덱스;
    N[p]는 프로그램 p의 표현의 전체 수;
    n[p]∈(0, N[p]-1)는 프로그램 p의 특정 표현의 인덱스;
    r[p, x]는 T 동안 프로그램 p의 표현 x의 비트 속도; 및
    q[p, x]는 T 동안 프로그램 p의 표현 x의 품질인 방법.
  8. 제1항에 있어서, 상기 선택 단계는, 식을 풀어서 개별 프로그램 품질의 곱을 최대화하도록, 각 프로그램에 대한 표현을 선택하는 단계를 더 포함하고,
    여기에서,
    C는 시간 프레임 T에서 사용가능한 전체 채널 용량;
    P는 전체 프로그램 수;
    p∈(0, P-1)는 특정 프로그램의 인덱스;
    N[p]는 프로그램 p의 표현의 전체 수;
    n[p]∈(0, N[p]-1)는 프로그램 p의 특정 표현의 인덱스;
    r[p, x]는 T 동안 프로그램 p의 표현 x의 비트 속도; 및
    q[p, x]는 T 동안 프로그램 p의 표현 x의 품질인 방법.
  9. 제8항에 있어서, 서로 다른 시청자에 대해서 서로 다른 계층의 서비스를 제공하도록 가중화된 평균을 부가하는 단계를 더 포함하는 방법.
  10. 고정된 대역폭의 채널을 통해서 서로 다른 비트 속도를 갖는 사전-코딩된 복수의 프로그램을 송신하는 시스템에 있어서,
    각 프로그램의 적어도 2개의 서로 다른 비트 속도의 표현들을 생성하는 수단;
    각 프로그램의 각 표현에 대해서 복수의 연속적인 시간 윈도우 T 각각에서 제어 정보를 제공하는 수단; 및
    각 시간 윈도우 T 동안, 상기 채널에 대해 사용가능한 전체 용량을 초과하지 않으면서, 상기 선택된 표현들의 품질을 극대화하도록 각 프로그램에 대한 표현을 선택하는 수단
    을 포함하고,
    상기 각각의 연속적 윈도우에 대한 제어 정보는 상응하는 프로그램의 표현에 대한 비트 속도 및 품질 측정을 나타내는 시스템.
  11. 제10항에 있어서, 상기 생성 수단 및 제어 정보 제공 수단은,
    사전-코딩된 복수의 프로그램들 중 하나의 프로그램에 각각 결합되는 복수의 다중 속도 스트림 발생기를 총체적으로 포함하는 시스템.
  12. 제10항에 있어서, 상기 생성 수단 및 제어 정보 제공 수단은,
    각각의 사전-코딩된 프로그램의 적어도 2개의 비트 속도 표현들을 인코딩하기 위한 다중 속도의 비디오 인코더를 총체적으로 포함하는 시스템.
  13. 제10항에 있어서,
    상기 생성 수단 및 제어 정보 제공 수단은,
    각각의 사전-코딩된 프로그램의 적어도 2개의 비트 속도 표현들을 인코딩하기 위한 다중 속도의 비디오 인코더; 및
    각각의 사전-코딩된 프로그램에 대해 상기 비트 속도 표현들을 패킷화하도록 각각 제공되는 복수의 전송 패킷화기
    를 총체적으로 포함하는 시스템.
  14. 제10항에 있어서, 상기 선택 수단은 통계적 다중화기를 포함하는 시스템.
  15. 제12항에 있어서, 상기 선택 수단은
    통계적 다중화기; 및
    상기 선택한 표현을 패킷화하기 위한 전송 패킷화기
    를 포함하는 시스템.
  16. 제10항에 있어서,
    상기 선택 수단은, 각 프로그램에 대해 C/P보다 더 크지 않은 피크 비트 속도를 갖는 최저 비트 속도의 표현을 생성하고, 여기에서 C는 시간 T에서의 전체 채널 용량이고, P는 프로그램의 전체 수인 시스템.
  17. 제10항에 있어서, 상기 제어 정보 제공 수단은 피크 신호대 잡음비(PSNR)에 따라서 품질 측정을 설정하는 시스템.
  18. 제10항에 있어서, 상기 선택 수단은, 모든 시간 윈도우에 대해서 의 제한을 만족하는 표현을 각 프로그램에 대해서 선택하고,
    여기에서,
    C는 시간 프레임 T에서 사용가능한 전체 채널 용량;
    P는 전체 프로그램 수;
    p∈(0, P-1)은 특정 프로그램의 인덱스;
    N[p]는 프로그램 p의 표현의 전체 수;
    n[p]∈(0, N[p]-1)은 프로그램 p의 특정 표현의 인덱스; 및
    r[p, x]는 T 동안 프로그램 p의 표현 x의 비트 속도인 시스템.
  19. 제18항에 있어서, 상기 선택 수단은, 상기 최소 품질을 갖는 프로그램 p의 품질을 극대화하기 위해서, 각 프로그램의 표현 n[p]∈(0, N[P]-1)을 선택하는 시스템.
  20. 제10항에 있어서, 상기 선택 수단은, 식을 풀어서 개별 프로그램 품질의 합을 최대화하도록, 각 프로그램에 대한 표현을 선택하고,
    여기에서,
    C는 시간 프레임 T에서 사용가능한 전체 채널 용량;
    P는 전체 프로그램 수;
    p∈(0, P-1)는 특정 프로그램의 인덱스;
    N[p]는 프로그램 p의 표현의 전체 수;
    n[p]∈(0, N[p]-1)는 프로그램 p의 특정 표현의 인덱스;
    r[p, x]는 T 동안 프로그램 p의 표현 x의 비트 속도; 및
    q[p, x]는 T 동안 프로그램 p의 표현 x의 품질인 시스템.
  21. 제10항에 있어서, 상기 선택 수단은, 식을 풀어서 개별 프로그램 품질의 곱을 최대화하도록, 각 프로그램에 대한 표현을 선택하고,
    여기에서,
    C는 시간 프레임 T에서 사용가능한 전체 채널 용량;
    P는 전체 프로그램 수;
    p∈(0, P-1)는 특정 프로그램의 인덱스;
    N[p]는 프로그램 p의 표현의 전체 수;
    n[p]∈(0, N[p]-1)는 프로그램 p의 특정 표현의 인덱스;
    r[p, x]는 T 동안 프로그램 p의 표현 x의 비트 속도; 및
    q[p, x]는 T 동안 프로그램 p의 표현 x의 품질인 시스템.
  22. 제10항에 있어서, 서로 다른 시청자에 대해서 서로 다른 계층의 서비스를 제공하도록 가중화된 평균이 부가되는 시스템.
KR1020057004054A 2002-09-10 2003-09-10 주문형 비디오 서버 시스템 및 방법 KR101014451B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US40964502P 2002-09-10 2002-09-10
US60/409,645 2002-09-10

Publications (2)

Publication Number Publication Date
KR20050036998A true KR20050036998A (ko) 2005-04-20
KR101014451B1 KR101014451B1 (ko) 2011-02-14

Family

ID=31993986

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057004054A KR101014451B1 (ko) 2002-09-10 2003-09-10 주문형 비디오 서버 시스템 및 방법

Country Status (7)

Country Link
EP (1) EP1550309A4 (ko)
JP (1) JP4643988B2 (ko)
KR (1) KR101014451B1 (ko)
CN (1) CN100344162C (ko)
AU (1) AU2003267076A1 (ko)
BR (2) BRPI0306317B1 (ko)
WO (1) WO2004025405A2 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100869513B1 (ko) * 2007-11-30 2008-11-19 인하대학교 산학협력단 트랜스코딩 서버의 기억 공간을 관리하는 방법
KR100950678B1 (ko) * 2007-10-23 2010-03-31 전자부품연구원 Svc 비디오 콘텐츠 제공 장치 및 방법

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7324592B2 (en) * 2003-08-13 2008-01-29 Mitsubishi Electric Research Laboratories, Inc. Resource-constrained encoding of multiple videos
US8868772B2 (en) 2004-04-30 2014-10-21 Echostar Technologies L.L.C. Apparatus, system, and method for adaptive-rate shifting of streaming content
US7818444B2 (en) 2004-04-30 2010-10-19 Move Networks, Inc. Apparatus, system, and method for multi-bitrate content streaming
KR101178811B1 (ko) * 2004-07-07 2012-08-31 톰슨 라이센싱 중복된 비디오 스트림을 사용하여 dsl을 통한 디지털 비디오 방송 시스템에서의 고속 채널 변경 방법 및 장치
IL165585A (en) * 2004-12-06 2010-06-16 Eci Telecom Ltd Broadband communication network provided with media storage
US8621543B2 (en) 2004-12-08 2013-12-31 Imagine Communications Ltd. Distributed statistical multiplexing of multi-media
US8683066B2 (en) 2007-08-06 2014-03-25 DISH Digital L.L.C. Apparatus, system, and method for multi-bitrate content streaming
US8370514B2 (en) 2005-04-28 2013-02-05 DISH Digital L.L.C. System and method of minimizing network bandwidth retrieved from an external network
US7979885B2 (en) 2005-08-11 2011-07-12 Harmonic Inc. Real time bit rate switching for internet protocol television
DE602005007620D1 (de) 2005-12-14 2008-07-31 Ntt Docomo Inc Vorrichtung und Verfahren zur Bestimmung der Übertragungspolitik für mehrere und verschiedenartige Anwendungen
IL176288A0 (en) 2006-06-13 2007-07-04 Imagine Comm Ltd Synchronous transmission over packet based network
CN101166263B (zh) * 2006-10-17 2010-06-02 盈汛科技股份有限公司 具有故障弱化暨容错的视频点播系统及方法
US8468572B2 (en) 2008-03-26 2013-06-18 Cisco Technology, Inc. Distributing digital video content to multiple end-user devices
EP2324627A1 (en) * 2008-08-20 2011-05-25 NDS Limited Receiving device
US9106544B2 (en) 2008-11-12 2015-08-11 Google Technology Holdings LLC Multi-rate statistical multiplexing
WO2010060463A1 (en) * 2008-11-25 2010-06-03 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for statistical multiplexing
US8396114B2 (en) * 2009-01-29 2013-03-12 Microsoft Corporation Multiple bit rate video encoding using variable bit rate and dynamic resolution for adaptive video streaming
CN101931788A (zh) * 2009-06-24 2010-12-29 Rgb网络有限公司 视频点播系统中经预先统计多路复用流的递送
US9510029B2 (en) 2010-02-11 2016-11-29 Echostar Advanced Technologies L.L.C. Systems and methods to provide trick play during streaming playback
US8705616B2 (en) 2010-06-11 2014-04-22 Microsoft Corporation Parallel multiple bitrate video encoding to reduce latency and dependences between groups of pictures
US9591318B2 (en) 2011-09-16 2017-03-07 Microsoft Technology Licensing, Llc Multi-layer encoding and decoding
US11089343B2 (en) * 2012-01-11 2021-08-10 Microsoft Technology Licensing, Llc Capability advertisement, configuration and control for video coding and decoding
CN107770145A (zh) * 2016-08-23 2018-03-06 中兴通讯股份有限公司 一种带宽管理的方法和装置
US11076179B2 (en) 2017-06-13 2021-07-27 DISH Technologies L.L.C. Viewership-balanced video multiplexing

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5940738A (en) * 1995-05-26 1999-08-17 Hyundai Electronics America, Inc. Video pedestal network
US5812786A (en) * 1995-06-21 1998-09-22 Bell Atlantic Network Services, Inc. Variable rate and variable mode transmission system
US5926649A (en) * 1996-10-23 1999-07-20 Industrial Technology Research Institute Media server for storage and retrieval of voluminous multimedia data
JP3262510B2 (ja) * 1997-03-07 2002-03-04 松下電器産業株式会社 ストリーム通信制御装置
US6385771B1 (en) * 1998-04-27 2002-05-07 Diva Systems Corporation Generating constant timecast information sub-streams using variable timecast information streams
JP2000244509A (ja) * 1999-02-18 2000-09-08 Toshiba Corp 連続メディアデータ転送システム及びレート制御方法
US6879634B1 (en) * 1999-05-26 2005-04-12 Bigband Networks Inc. Method and system for transmitting media streams over a variable bandwidth network
JP2001144802A (ja) * 1999-11-11 2001-05-25 Canon Inc データ通信装置及びその方法及び通信システム及び記憶媒体
JP3498031B2 (ja) * 2000-01-25 2004-02-16 エヌイーシーケーブルメディア株式会社 ディジタル多重化装置およびその方法
US6542546B1 (en) * 2000-02-02 2003-04-01 Mitsubishi Electric Research Laboratories, Inc. Adaptable compressed bitstream transcoder
PL356718A1 (en) * 2000-10-11 2004-06-28 Koninklijke Philips Electronics N.V. Scalable coding of multi-media objects

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100950678B1 (ko) * 2007-10-23 2010-03-31 전자부품연구원 Svc 비디오 콘텐츠 제공 장치 및 방법
KR100869513B1 (ko) * 2007-11-30 2008-11-19 인하대학교 산학협력단 트랜스코딩 서버의 기억 공간을 관리하는 방법

Also Published As

Publication number Publication date
JP4643988B2 (ja) 2011-03-02
CN1679336A (zh) 2005-10-05
BRPI0306317B1 (pt) 2018-11-21
CN100344162C (zh) 2007-10-17
WO2004025405A2 (en) 2004-03-25
EP1550309A2 (en) 2005-07-06
AU2003267076A8 (en) 2004-04-30
AU2003267076A1 (en) 2004-04-30
JP2005538651A (ja) 2005-12-15
BR0306317A (pt) 2007-05-08
KR101014451B1 (ko) 2011-02-14
WO2004025405A3 (en) 2004-07-08
EP1550309A4 (en) 2017-02-01

Similar Documents

Publication Publication Date Title
KR101014451B1 (ko) 주문형 비디오 서버 시스템 및 방법
US7844992B2 (en) Video on demand server system and method
EP2919453B1 (en) Video stream switching
US6327421B1 (en) Multiple speed fast forward/rewind compressed video delivery system
US9225980B2 (en) Video quality of sevice management and constrained fidelity constant bit rate video encoding systems and methods
EP0893027B1 (en) Compressed-video distribution system having a statistical multiplexer with transcoders
US10397628B2 (en) Edge optimized transrating system
CA2594118C (en) Distributed statistical multiplexing of multi-media
EP2759111B1 (en) Statistical multiplexing of streaming media
EP1638333A1 (en) Rate adaptive video coding
US20080025413A1 (en) Selecting bit rates for encoding multiple data streams
US20020131496A1 (en) System and method for adjusting bit rate and cost of delivery of digital data
US20090028242A1 (en) Image data transmitting apparatus and method and image data reproducing apparatus and method
US6879634B1 (en) Method and system for transmitting media streams over a variable bandwidth network
JP2003517743A (ja) 圧縮デジタルビデオ信号および圧縮されていないデジタルビデオ信号の統計的な多重化のための動的ビット配分
US20110090921A1 (en) Network abstraction layer (nal)-aware multiplexer
EP1531628A2 (en) Scalable video coding
Lei et al. Adaptive video transcoding and streaming over wireless channels
WO1997038532A1 (en) Buffer control in a coded data transmission system
Hoang et al. Multiplexing VBR video sequences onto a CBR channel with lexicographic optimization
Wagner et al. Playback delay and buffering optimization in scalable video broadcasting
Kamariotis Bridging the gap between CBR and VBR for H264 standard
KR20100125692A (ko) 비대칭 스케일러블 다운로딩 방법 및 시스템

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: 20140120

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150119

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160119

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170119

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee