KR20010073119A - 정보 분배 시스템에서 가변 비트율 정보를 처리하기 위한방법 및 장치 - Google Patents

정보 분배 시스템에서 가변 비트율 정보를 처리하기 위한방법 및 장치 Download PDF

Info

Publication number
KR20010073119A
KR20010073119A KR1020017002833A KR20017002833A KR20010073119A KR 20010073119 A KR20010073119 A KR 20010073119A KR 1020017002833 A KR1020017002833 A KR 1020017002833A KR 20017002833 A KR20017002833 A KR 20017002833A KR 20010073119 A KR20010073119 A KR 20010073119A
Authority
KR
South Korea
Prior art keywords
bit rate
stream
information
clbr
bandwidth
Prior art date
Application number
KR1020017002833A
Other languages
English (en)
Other versions
KR100682683B1 (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 KR20010073119A publication Critical patent/KR20010073119A/ko
Application granted granted Critical
Publication of KR100682683B1 publication Critical patent/KR100682683B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/10Adaptations for transmission by electrical cable
    • 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/21Server components or server architectures
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Television Systems (AREA)

Abstract

본 발명은 하나 이상의 가입자에게 가변 비트율 및 일정하게 낮은 비트율 정보 스트림을 선택적으로 제공함으로써 여러 가입자 또는 사용자 정보 분배 시스템내에서 링크 및 디스크 밴드폭 이용을 관리하기 위한 장치 및 방법에 관한 것이다.

Description

정보 분배 시스템에서 가변 비트율 정보를 처리하기 위한 방법 및 장치 {METHOD AND APPARATUS FOR PROCESSING VARIABLE BIT RATE INFORMATION IN AN INFORMATION DISTRIBUTION SYSTEM}
여러 통신 시스템에서, 전송될 데이터는 가변 밴드폭이 보다 효과적으로 이용될 수 있도록 압축된다. 예를 들어, 동영상 전문가 그룹(MPEG)은 디지털 데이터 전송 시스템에 관한 여러 표준을 공포하였다. 우선, MPEG-1으로 공지된 표준은 ISO/IEC 표준 11172을 참조하며 본 명세서에서 상호 참조된다. 둘째로, MPEG-2로서 공지된 표준은 ISP/IEC 표준 13818을 참조하며, 본 명세서에서 상호 참조된다. 압축된 디지털 비디오 스트림은 ATSC(Advanced Television Systems Committee) 디지털 텔레비젼 표준 문서 A/53에 개시되어 있으며, 본 명세서에서 상호 참조된다.
주문형 비디오(VOD)와 같은 정보 분배 애플리케이션 및 다수의 가입자가 각각의 정보 스트림(들)을 수신하는 기타 애플리케이션에서, 비디오 이미지의 품질 및 링크(네트워크) 이용이 최대가 되도록 가변 비트율(VBR)을 사용하는 것은 바람직하다. VBR 스트림의 경우, 비트율은 비디오의 복잡도와 함께 변동된다. 즉, 더 많은 비트가 복잡한 프레임에 주어지며 더 적은 비트가 코드 프레임에 쉽게 주어진다. 그러나 VBR 정보 스트림을 "서빙"하는 것은 비용면에서 효율적인 비디오 서버를 수행할 때 실질적인 도전에 직면한다. 주요 어려움은 밴드폭에 대한 요구가 채널 용량을 초과하였을 때 발생하는 문제점을 결정하는 것이다.
VBR MPEG는 현재 하나 이상의 위성 텔레비젼 시스템에서 사용된다. 상기의 시스템은 전형적으로 각각의 채널 인코더의 비율 제어기를 구동시키는 통계적 멀티플렉서를 사용하여 일 세트의 채널(즉, 오디오-시각 프로그램)을 인코딩한다. 이용가능 비트를 할당하는 방법에 대한 모든 결정은 비디오가 전송되기 바로 전에 인코딩될 때 결정된다.
불행하게도, 밴드폭 관리에 대한 상술한 인코딩 레벨의 접근방식은 전형적으로 미리 인코딩된 콘텐트를 전달하며 주어진 링크에 대해 어떤 스트림이 전송될 필요가 있는지에 대해 제어하지 않는 환경에서는 동작하지 않는다. 그러므로 상기 비디어 서버가 전형적으로 서빙된 스트림이 요구하게 되는 최대 비트율을 기초로 디스크 및 링크 밴드폭에 의해 VBR 스트림을 서빙한다. 이 기술은 효과적이지만, 추가의 비디오 품질은 이용된 링크 밴드폭을 희생하여 제공된다. 게다가, 여러 사용자가 단일 저장 유니트(또는 저장 유니트 장치의 어레이)에 저장된 정보를 필요로하는 시스템에서, 디스크 밴드폭(즉, 주어진 시간에 검색될 수 있는 최대 데이터량)은 VBR 스트림이 디스크로부터 검색되는 가입자의 집중된 밴드폭 요구로 인해 초과될 수 있다.
그러므로 여러 가입자 또는 사용자 정보 분배 시스템에서 링크 및 밴드폭 이용을 모두 관리하는 동안 높은 품질의 정보를 제공하는 방법 및 장치를 제공하는 것은 바람직하다.
본 발명은 정보 분배 시스템에 관한 것으로, 특히 디스크 밴드폭 가용성 및/또는 분배 채널 밴드폭 가용성에 대하여 저장된 정보 스트림의 분배를 수정하기 위한 방법 및 장치에 관한 것이다.
도 1은 본 발명을 따르는 장치를 포함하는 정보 분배 시스템(100)을 도시한다.
도 2는 도 1의 장치에서 사용하기에 적당한 디스크 스케쥴러 루틴(200)의 흐름도를 도시한다.
도 3은 도 1의 장치에서 사용하기에 적당한 출력 스위치 결정 루틴(300)의 흐름도를 도시한다.
도 4는 도 1의 장치에서 사용하기에 적당한 스위치 전이 최소화 루틴(400)의 흐름도를 도시한다.
도 5는 본 발명을 이해하는데 유용한 VBR 범위와 CLBR 범위의 도식적인 대표도를 도시한다.
본 발명은 하나 이상의 가입자에게 가변 비트율과 일정하면서 낮은 비트율을 가진 정보 스트림을 선택적으로 제공함으로써 여러 가입자 또는 사용자 정보 시스템에서 링크 및 디스크 밴드폭 이용을 관리하기 위한 장치 및 방법에 관한 것이다.
특히, 통신 링크를 통하여 다수의 가입자에게 정보를 제공하는 정보 서버를 포함하는 정보 분배 시스템에서, 밴드폭 이용을 관리하는 본 발명을 따르는 방법은: 정보 분배 시스템에서 밴드폭 이용 표시를 모니터링하는 단계; 통신 링크를 통하며 과도한 이용 상태가 존재하지 않음을 지시하는 밴드폭 이용 표시에 응답하여, 다수의 가입자중 적어도 하나에 제 1 가변 비트율 정보 스트림을 제공하는 단계를 포함하는데, 상기 제 1 가변 비트율 정보 스트림은 제 1 하위 공칭 비트율 및 제 1 상위 공칭 비트율 사이에서 가변될 수 있는 비트율과 연관성을 가지며; 그리고 통신 링크를 통하여, 과도한 사용 상태가 존재하는 것을 지시하는 밴드폭 이용 표시에 응답하여, 제 2 가변 비트율 정보 스트림을 다수의 가입자중 적어도 하나에 제공하는 단계를 포함하며, 제 2 가변 비트율 정보 비트 정보 스트림은 제 2 하위 공칭 비트율 및 제 2 상위 공칭 비트율 사이에서 가변될 수 있는 비트율과 연관성을 가지며, 상기 제 2 하위 공칭 비트율 및 제 2 상위 공칭 비트율은 상기 제 1 상위 공칭 비트율 이하이다.
상술한 밴드폭 이용 표시는 통신 링크 밴드폭 이용 표시중 하나를 포함하며, 저장 장치는 밴드폭 이용 표시에 액세스하고, 상기 저장 장치는 제 1 및 제 2 가변 비트율 정보 스트림을 저장하는데 사용된다.
본 발명은 도면을 참조로 이하에서 상세하게 설명된다.
당업자들은 본 발명이 최대 밴드폭 이용 및 최고의 정보 품질이 중요한 정보 분배 시스템에서 쉽게 이용될 수 있다는 것을 분명하게 이해할 것이다.
본 발명은 쌍방향 정보 분배 시스템의 환경에서 기술될 것이며, 상기 쌍방향은 본 발명을 실시하는데 필요하지 않다는 것을 명심해야 한다.
도 1은 본 발명을 따르는 장치를 포함하는 쌍방향 정보 분배 시스템(100)을 도시한다. 특히, 쌍방향 정보 분배 시스템(100)은 통신 링크(LINK)를 통하여 다수의 가입자 장비(40-1에서 40-n)에 정보를 제공하는 정보 제공자 장비(5)를 포함한다. 선택적으로, 다수의 가입자 장비(40-1에서 40-n)는 메세지 및 명령(예를 들면, 프로그램 요청)을 백채널(BC)을 통하여 정보 제공자 장치(5)에 전송한다.
제공자 장비(5)는 정보 서버(30) 및 정보 저장 유니트(20)를 포함한다. 정보 저장 유니트(20)는 디스크 어레이와 같은 대용량 저장 유니트로 도시되며 정보 서버(30)에 의해 생성된 제어 신호(C)에 응답한다. 제어 신호(C)는 정보 서버(30)를 통하여 각각이 하나 이상의 가입자(40)에게 이용될 하나 이상의 다수의 저장된 프로그램 또는 다른 정보를 나타낸다. 정보 저장 유니트(20)는 각각의 하나 이상의 다수의 데이터 출력 READ에 검색된 정보 스트림(들)을 결합시킨다. 정보 서버(30)는 정보 저장 유니트(20)의 데이터 출력 READ로부터 검색된 정보를 판독한다.
본 발명의 사용에 적당한 저장 유니트(20)는 Chin등에 의한 미국 특허 번호 5,579,527에 개시되어 있으며, 본 명세서에서 상호 참조된다. 스트림을 본 발명의 사용에 적당한 여러 사용자에게 적용하는 시스템은 Bleidt등에 의한 미국 특허 번호 5,671,377에 개시되어 있으며, 본 명세서에서 상호 참조된다. 본 발명은 초병렬 저장, 검색 및 분배 시스템을 유리하게 이용하지만, 상기의 시스템 사용이 요구되는 것은 아니다. 오히려 본 발명은 임의의 주어진 시간에 검색될 데이터량이 매우 커서 디스크(및 입력/출력) 밴드폭 관리가 주문형 비디오 및 비디오 제공 애플리케이션등에서 중요한 임의의 저장 장치에 더욱 적당하다.
본 발명의 사용에 적당한 디스크 드라이브 액세스 시간을 최소로 하는 방법 및 장치는 1997년 3월 14일 출원된 Armstrong과 공동으로 양도된 미국 특허 출원 번호 08/818,172(대리인 사건 번호 533/11635)에 개시되어 있으며, 본 명세서에서 상호 참조된다.
정보 서버(30)는 버퍼 메모리(30-1), 멀티플렉서(30-2) 및 모듈레이터(30-3)를 포함한다. 정보 서버(30)는 또한 마이크로프로세서 및 다른 유지 회로(도시되지 않음)를 포함한다. 버퍼 메모리(30-1)는 적어도 일 서비스 시간(즉, 일 범위)에 시스템의 각각의 액티브 가입자를 위한 VBR 및 CLBR 스트림의 값을 홀딩할 수 있다. 전형적인 실시예는 2초의 서비스 시간을 이용한다. 그러므로 2초의 CLBR 및 만일 충분한 디스크 밴드폭이 이용될 수 있다면, VBR 스트림이 각각의 사용자에 대하여 이용된다. 초당 30 프레임의 비디오에서, 각각의 메모리 부분은 30 프레임의 비디오 및 임의의 해당 오디오 정보를 홀딩한다. 멀티플렉서(30-2)는 버퍼 메모리(30-1)의 적당한 부분에 액세스하기 위해 다이렉트 메모리 액세스(DMA) 출력 링크 데이블을 이용하며, 멀티플렉싱된 출력 스트림을 형성하기 위해 액세스된 정보를 멀티플렉싱한다. 멀티플렉싱된 출력 스트림은 공지된 방식으로 변조기(30-3)에 의해 변조되며, 통신 링크(LINK)를 통하여 가입자(들)에게 전송된다.
정보 서버(20)는 디스크 스케쥴러 루틴(200), 스위칭 결정 루틴(300) 및 (선택적으로) 스위치 최소 루틴(400)을 실행하기 위한 수단을 포함한다. 상기의 루틴은 도 2-4를 참조로 이하에서 상세하게 설명될 것이다. 간단하게, 디스크 스케쥴러 루틴(200)은 디스크 밴드폭의 요구를 모델링하며, 상기 요구가 이용가능 밴드폭을 초과할 때를 예상한다; 스위치 결정 루틴(300)은 서버가 VBR 및 CLBR 스트림 사이에서 스위칭할 필요가 있는지를 결정하기 위해 공통 출력 링크를 공유하는 모든 스트림에 의해 생성된 요구를 분석한다; 그리고 스위칭 최소화 루틴(400)은 시스템의 각각의 사용자가 동일량의 서비스 저하를 대체로 "허용"하도록 임의의 초과된 스위칭 전이를 간략화시키기 위해 스위치 결정 루틴(300)에서 형성된 DMA 출력 테이블에서 "제 2 패스"를 제공한다.
가입자 장비(40)는 셋탑 터미널(42), 입력 장치(44) 및 디스플레이 장비(46)를 포함한다. 셋탑 터미널(42)은 정보 서버(30)에 의해 전송된 정보 스트림을 수신 및 복조한다. 셋탑 터미널은 또한 백채널(BC)을 통하여 정보 서버(30)에 가입자 요청과 같은 정보를 전송한다.
셋탑 터미널(42)은 마이크로프로세서 및 여러 유지 회로(도시되지 않음)를 포함한다. 셋탑 터미널(42)은 정보 서버(30)에 의해 제공된 정보의 쌍방향 제어를 제공하기 위해 입력 장치(44)에 응답한다. 제공된 정보는 적외선(IR) 또는 무선 주파수(RF) 원격 제어 유니트와 같은 입력 장치(44)를 통해 가입자에 의해 제어된다. 오디오, 비디오, 스틸 사진, 그래픽등과 같은 제공된 정보는 텔레비젼, 비디오 모니터등과 같은 디스프레이 장치(46)에서 디스플레이된다
만일 선택적인 백 채널(BC)가 사용된다면, 정보 서버(30)는 직교위상 쉬프트 키잉(QPSK) 채널 또는 공용 통신 채널로 예시된 백채널(BC)를 통하여 가입자의 다른 정보 또는 시청각 프로그래밍과 같은 것에 대한 요청을 수신한다. 가입자 요청에 응답하여(또는 예를 들면, 예정된 전송 시간에서), 정보 서버(30)는 정보 저장 유니트(20)의 다른 정보 또는 요청된 시청각 프로그래밍을 검색한다. 각각의 요청 가입자와 연관된 검색 정보 스트림(들) 및 적당한 가입자를 가지는 검색된 정보 스트림(들)과 연관된 터미널 식별번호(NID)가 변조되며 그렇지 않다면 통신 링크를 통하여 가입자에게 전송된 통신 링크 정보 스트림으로 통합된다.
통신 링크 정보 스트림은 직교 진폭 변조(QAM) 전송 채널로 예시된 통신 링크(LINK)를 통하여 가입자에게 전송된다. 통신 링크(LINK) 및 백채널(BC)은 상호 제외되는 스펙트럼 영역에서 공통 파이버 또는 케이블 네트워크에 의해 전송될 수 있다. 통신 링크(LINK) 및 백채널(BC)은 또한 다른 통신 네트워크에 의해 전송될 수 있다. 예를 들어, 통신 링크(LINK)는 광섬유, 케이블 텔레비젼, 위성 또는 지상 방송 네트워크등과 같을 수 있다.
통신 링크가 제한된 양의 밴드폭과 관계한다는 것은 중요하다. 예를 들어, 만일 통신 링크가 100Mbps의 최대 비트율을 지원할 수 있다면, 가입자에게 동시에 제공된 정보 스트림의 비트율의 합(외에 암호 정보, 라우팅 정보등과 같은 임의의 오버헤드 정보)은 최대 통신 링크 비트율을 초과해서는 안된다. 그러므로 5Mbps의 고정된 비트율 정보 스트림(오버헤드 비트율 이용은 무시)의 경우, 20에 이르는 가입자들이 임의의 시간동안 서빙될 수 있다.
본 발명의 일 실시예에서, 정보 서버(30)는 통신 링크의 밴드폭 이용을 모델링한다. 링크 밴드폭 모델은 소프트웨어 또는 하드웨어 또는 이 둘의 조합을 포함할 수 있다. 링크 밴드폭 모델의 목적은 최대의 "안전한" 비트율 이용 임계값이초과했는지를 결정하는 것이다. 안전한 비트율 이용 임계값은 통신 링크의 최대 비트율의 퍼센트(예를 들면 95%) 또는 실제 비트율(예를 들면 95Mbps)로서 정의될 수 있다.
VOD 시스템은 예를 들면 프로그래밍 또는 정보에 대한 가입자 요청에 응답하여 가입자에게 시청각적인 프로그래밍 및 다른 정보를 제공한다. 시청각적 프로그램 및 다른 정보는 두개의 다른 스트림으로서 저장 유니트내에 저장된다. 각각의 프로그램과 연관된 제 1 스트림은 개별 인코딩된 프레임(예를 들어 비디오 프레임)의 품질 또는 충실도 레벨이 비교적 일정하도록 인코딩된 MPEG-형 전송 스트림으로 예시된 가변 비트율(VBR) 스트림을 포함한다. 즉, VBR 스트림은 비교적 일정한 레벨에서 각각의 비디오 프레임의 품질 또는 충실도(예를 들면, 양자화기 스텝 사이즈 및 다른 파라미터)를 유지하도록 동작하는 비율 제어기를 포함하는 MPEG 인코더와 같은 인코더에 의해 생성된다. 어떤 프레임은 다른 것보다 더 많은 인코딩될 데이터가 필요하기 때문에, 상기 스트림의 비트율은 본질적으로 가변적일 것이다. 본 발명의 일 실시예에서, 상기 "품질 제한된" 스트림(즉, VBR 스트림)의 비트율은 평균 또는 "타겟" 데이터율 주위에서 집중되지만 0.5에서 9.0Mbps의 넓은 비트율 범위내에서 유지된다.
각각의 프로그램과 연관된 제 2 스트림은 인코딩된 스트림의 비트율이 비교적 일정하게 되도록 인코딩된 MPEG형 전송 스트림으로 예시된 일정하게 낮은 비트율(CLBR) 스트림을 포함한다. 즉, CLBR 스트림은 상대적으로 일정한 레벨에서 인코딩된 스트림의 비트율을 유지하도록 동작하는 비율 제어기를 포함하는 MPEG 인코더에 의해 생성된다. 본 발명의 일 실시예에서, 상기 "비트율 제한된" 스트림의 비트율(즉, CLBR 스트림)은 또한 0.75에서 1.5Mbps의 상대적으로 낮은 비트율 버무이에서 홀딩된다.
CLBR 스트림은 VBR 스트림을 트랜스코딩하여 생성될 수 있다. 즉, VBR 스트림을 생성하는 MPEG(또는 다른) 인코더의 출력은 비트율이 프레임 품질에서의 변동을 희생하여 감소되도록 수정될 수 있다.
각각의 프로그램과 연관된 VBR 및 CLBR 스트림을 모두 저장함으로써, 본 발명은 어떠한 스트림(바람직하게는 VBR 스트림)이 디스크 밴드폭을 유지하게 될 것인지 판독할 수 있다. 이상적으로, VBR 및 CLBR 스트림은 모두 각각의 가입자에 대해 판독된다. 만일 디스크 밴드폭이 임의의 주어진 시간에 너무 낮다면, 하나 이상의 가입자에 대해 단지 하나의 스트림(즉, CLBR 스트림)만을 판독할 필요가 있다.
도 5는 본 발명을 이해하는데 유용한 VBR 및 CLBR의 범위의 도식적인 대표도를 도시한다. 특히 도 5는 윗열에 0.5에서 9Mbps의 가변 비트율을 가지는 VBR 스트림 및 아랫열에 0.75에서 1.5Mbps의 비트율을 가지는 CLBR 스트림을 도시한다. 두 열은 시간의 함수로서 도시된다. CLBR 스트림은 "일정하게 낮은 비트율" 스트림으로 명명되며, 비트율은 다소 변경된다.
VBR 및 CLBR 스트림은 각각 2초의 시간으로 분리된다. 도 5는 세개의 상기의 범위(즉, EXT1, EXT2, EXT3)를 도시한다. 각각의 시간 범위는 시퀀스 헤더 또는 인트라-코딩된 정보 프레임(즉, I-프레임)과 같은 다수의 액세스 포인트를 포함한다. VBR 스트림의 범위내의 데이터량은 해당 CLBR 범위내의 데이터량보다 상당히 클 것이다. 그러므로 VBR 및 CLBR 스트림 사이의 스위칭을 유지하기 위해, 동기화(즉 인덱싱 정보) 및 미리 정의된 액세스 포인트가 사용된다. 도 5에 도시된 액세스 포인트(ACCESS POINTS)는 초당 두번 반복하는 영상 그룹(GOP) 구조를 가지는 초당 30 프레임의 비디오 스트림을 가정한다.
액세스 포인트는 스트림이 가입자측 디코더에서 중요한 "갑작스러운 고장"(예를 들면, 버퍼 오버플로어/언더플로어로 인한 예측 에러 또는 획득 에러)없이 입력될 수 있는 VBR 또는 CLBR 스트림내에서 포인트된다. 상기의 액세스 포인트는 해당 VBR 및 CLBR 스트림내에서 프레임 대 프레임 또는 헤더 대 헤더를 기초로 정렬된다.
동기화 또는 인덱싱 정보는 예를 들어 "서버 제어" 패킷(즉, 유일한 패킷 식별 또는 PID에 의해 식별된), 사용자 데이터 필드 또는 스트림의 다른 부분에 포함될 수 있다. 인덱싱 정보의 목적은 스트림 스위칭(즉, 멀티플렉싱)이 콘텐트 연속성의 손실 또는 중요한 인공물의 생성없이 수행될 수 있도록 일 스트림에서 다른 스트림으로 포인트하는 것이다.
전형적인 실시예에서, 해당 CLBR 및 VBR 스트림은 저장 유니트(20)내에서 디스크상에 인접하게 저장되며, 단일 탐색으로 함께 판독될 수 있다. 충분한 디스크 밴드폭이 이용될 수 없을 때, 단지 CLBR 부분의 범위만이 판독되며, 그렇지 않다면 양 성분이 모두 판독된다. 링크 밴드폭이 VBR 스트림에 이용될 수 없을 때, CLBR 데이터가 전송된다.
전형적인 비트율값은 예시를 위해서만 선택된다. 실제 비트율값은 원하는 인코딩 품질 레벨에 대하여 바람직하게 선택된다. 시간은 탐색 시간 및 디스크 성능(예를 들어, 데이터율)과 같은 디스크 파라미터를 기초로 한다.
도 2는 도 1의 장치에 사용하기 적당한 디스크 스케쥴러 루틴(200)의 흐름도를 도시한다. 특히, 디스크 스케쥴러 루틴(200)은 저장 유니트(20)를 포함하는 성분의 밴드폭에 의해 정의된 최대 비율에서 저장 유니트(20)로부터 정보를 판독하는데 사용된다.
디스크 스케쥴러 루틴(200)은 각각의 서비스 시간(N)에서 실행된다. 서비스 시간은 최대의 비디오 정보를 플레이하는데 필요한 시간이다. 전형적인 실시예에서, 이러한 시간은 대략 2초이다. 물론 일 범위내의 가변 바이트수가 존재하며, 이는 바이트수가 가변 비트율 스트림의 평균 비트율을 따르기 때문이다.
루틴(200)은 단계 202에서 시작되어 단계 204로 진행된다. 여기에서 현 서비스 시간(N)에 대한 이용가능 디스크 밴드폭이 계산된다. 루틴(200)은 단계 206으로 진행된다.
단계 206에서, 루틴(200)은 VBR 및 CLBR 스트림 사이에서 스위칭의 영향을 감소시키는 방식으로 서비스 시간(N)동안 디스크에 액세스할 필요가 있는 사용자를 정렬한다. 즉, 사용자는 어떤 사용자가 바람직하게 할당된 VBR 스트림(다른 스트림은 선택적으로 바람직하게 할당된 CLBR 스트림)에 존재하는 우선하는 리스트로 저장된다. 예를 들어, VBR 스트림을 수신하는 사용자는 계속적으로 VBR 스트림을 수신하며, 따라서 임의의 스위칭 인공물을 피할 수 있다. 유사하게, VBR 스트림으로부터 CLBR 스트림으로 최근에 스위칭된 사용자는 바람직하게 할당된 CLBR 스트림이며, 따라서 추가의 스위칭 인공물을 피할 수 있다. 스트림 스위칭 동작으로 인한 인공물은 낮은 비트율 비디오 스트림과 연관된 적당한 품질 저하보다 더 많은 평균 시청자(즉, 가입자)에 대해 반대될 수 있다. 다음으로 루틴(200)은 단계 208로 진행된다.
단계 208에서 현 서비스 시간(N)에서 사용자와 연관된 VBR 및 CLBR 범위에 모드 액세스하기 위해 다음의 우선 사용자(단계 206에서 생성된 리스트에 대한)에 요구되는 디스크 BW가 계산된다. 다음으로 루틴(200)은 단계 208로 진행된다.
단계 210에서, 사용자 디스크 BW는 서비스 시간에서 축적된 디스크 BW에 추기됨으로써 단계 208에서 계산된다. 즉, 축적된 서비스 시간 BW 변수는 각 서비스 시간에 대해 제로값에서 시작하며(예를 들어 단계 204), 단계 208에서 계산된 양만큼 증가된다. 루틴(200)은 이 후 단계 212로 진행된다.
단계 212에서, 축적된 BW(단계 210)가 이용가능 BW(단계 204)를 초과하는 지를 대한 질문이 이루어진다. 만일 단계 212에서의 해답이 긍정이라면, 루틴(200)은 단계 216으로 진행된다.
단계 214에서, 현 서비스 시간(N)에서 사용자와 연관된 VBR 및 CLBR 범위는 디스크(예를 들어 저장 유니트(20))로부터 검색된다. 루틴(200)은 단계 218로 진행된다.
단계 216에서, 현 서비스 시간(N)에서 사용자와 연관된 단지 CLBR 범위만이 디스크(예를 들어 저장 유니트(20))로부터 검색된다. 루틴(200)은 단계 218로 진행된다.
단계 218에서, 처리될 더 많은 사용자가 존재하는 지에 대한 질문이 이루어진다. 즉, 우선하는 사용자 리스트를 형성하기 위해 단계 206에서 정렬된 각 사용자가 처리되었는지에 대한 질문이 이루어진다. 만일 단계 218에서 질문이 긍정이라면, 루틴(200)은 종료되는 단계 222로 진행된다. 만일 단계 218에서의 질문이 부정이라면, 루틴(200)은 우선하는 리스트에서의 다음 사용자가 인식되는 단계 220으로 진행된다. 단계 208-218은 다음 사용자를 위해 반복된다.
전형적인 실시예에서, 디스크 스케쥴러 루틴(200)은 정보 서버(30)의 버퍼 메모리(30-1)에 저정된 적당한 스트림(들)을 판독한다. 즉, 각각의 가입자는 버퍼 메모리(30-1)의 일부에 할당된다. 각 사용자에 할당된 부분은 각각의 CLBR 스트림의 일 범위를 저장하는데 이용되며, 만일 판독된다면 VBR 스트림의 일 범위가 저장된다.
도 3은 도 1의 장치를 사용하기에 적당한 출력 스위치 결정 루틴(300)의 흐름도를 도시한다. 특히, 출력 스위치 결정 루틴(300)은 서비스 시간(N-1)에 실행된다(즉, 서비스 시간은 일시적으로 도 2의 디스크 스케쥴러 루틴(200)에 의해 처리된 서비스 시간을 처리한다). 상술한 바와 같이, 전형적인 실시예는 2초의 서비스 시간을 이용한다. 그러므로 각각의 사용자에 대하여 만일 충분하다면 디스크 밴드폭이 이용될 수 있으며, 2초의 CLBR 및 VBR 스트림에 가능하다. 초당 30 프레임 비디오의 경우, 각각의 메모리 부분은 30프레임 비디오 및 해당 오디오 정보를 홀딩한다. 출력 스위치 결정 루틴(300)은 링크 정보 스트림(변조되어 가입자에게전송된)으로 멀티플렉싱하기 위해 버퍼 메모리(30-1)에서 멀티플렉서(30-3)로 저장된 정보를 선택적으로 결합하는데 이용된다. 출력 스위치 결정 루틴(300)은 통신 링크(LINK)의 밴드폭 이용을 최대로하는 방식으로 버퍼 메모리(30-1)로부터 이용가능 VBR 및 CLBR 스트림을 선택한다.
출력 스위치 결정 루틴(300)은 예를 들면 멀티플렉서(30-3)에 의해 버퍼 메모리(30-1)의 다이렉트 메모리 액세스(DMA)에서 사용하기 위해 출력 테이블에서 사용하기에 적당한 값을 선택하는데 사용된다. DMA 출력 테이블은 시스템의 각각의 액티브 가입자와 연관된 DMA 제어 명령 리스트를 포함한다. 각각의 DMA 제어 명령(예를 들면, 사용자에게 전송될 스트림의 액세스 포인트)는 메모리의 각 부분에 대한 포인터를 포함하며, 시간 파라미터는 판독될 메모리양(예를 들면, 시간 또는 데이터량)을 인식하며, 비트율 파라미터는 인식된 데이터가 판독되는 비율을 식별한다.
출력 스위치 결정 루틴(300)은 단계 302에서 시작하며, 스케쥴링 간격이 예를 들면 평균 비디오 프레임(예를 들어 33밀리초)을 근사화하는 다수의 프레임 간격으로 분할되는 단계 304로 진행된다. 선택된 프레임 간격은 중요하지 않으며, 단지 상대적으로 짧은 간격이 상기의 범위와 비교된다. 루틴(300)은 단계 306으로 진행된다.
단계 306에서, 통신 링크(LINK)를 통하여 하나 이상의 가입자에 전송되는 출력 정보 스트림에 해당하는 출력 링크가 선택된다. 루틴(300)은 단계 308로 진행된다.
단계 308에서, 결정된 프레임 간격에서 선택된 출력 링크에서의 모든 사용자를 위한 현재의 총 패킷율이 계산된다. 이 계산은 예를 들면 각각의 CLBR 스트림 및 VBR 스트림내에 저장된 메타-데이터로 수행될 수 있다. 메타-데이터는 상술한 바와 같이 스트림내의 프레임 크기와 같은 정보를 포함하며, 적당한 엔트리는 해당 CLBR 및 VBR 스트림내의 관련 프레임의 상대적인 위치를 정의하는 스트림 및 프레임 동기화 정보를 포인트한다. 루틴(300)은 이 후 단계 310으로 진행된다.
단계 310에서, 패킷율이 링크율 이상인지에 대한 질문이 이루어진다. 즉, 특정 출력 링크에 대한 총 패킷율이 모든 사용자에 대한 현재의 프레임 간격에서 상기 출력 링크에 대해 최대 데이터율을 초과하는지에 대한 질문이 이루어진다. 만일 단계 310에서의 질문이 긍정이라면 루틴(300)은 단계 312로 진행된다. 만일 단계 310에서의 질문이 부정이라면, 루틴(300)은 단계 318로 진행된다.
단계 312에서, VBR 사용자중 하나만이 선택된다. CLBR은 모든 가입자가 CLBR 스트림을 사용하는 경우 링크 비트율이 최대 링크 비트율보다 훨씬 작도록 선택되기 때문에 언제나 적어도 하나의 VBR 사용자가 존재한다. 이 방식으로 적어도 하나의 가입자가 언제나 VBR 스트림을 이용할 수 있다. 루틴(300)은 단계 314로 진행된다.
단계 314에서, 선택된 VBR 사용자의 VBR 스트림에 할당된 버퍼 메모리(30-1)의 부분은 저장된 VBR 스트림내의 이전 액세스 포인트의 위치가 결정될 때까지 동시에 백워드 스캐닝된다. 이것은 중요한 인공물의 생성없이 스트림이 입력될 수 있는 VBR 스트림(즉, 시퀀스 헤더 또는 I-프레임)내의 포인트이다. 유사하게, VBR스트림과 관련된 CLBR 스트림은 상기 포인트에서 입력될 수 있으며, VBR 스트림(또는 CLBR 스트림)내의 메타-데이터는 CLBR 스트램내의 액세스 포인트를 식별하는데 사용될 수 있다. 루틴(300)은 단계 316으로 진행된다.
단계 316에서, VBR 스트림(위치 결정된 액세스 포인트에서)으로부터 CLBR 스트림(해당 액세스 포인트에서)으로 스위치 결정이 이루어진다. 즉, 위치 결정된 액세스 포인트에서 스트림을 할당한 후, VBR 및 CLBR 스트림 사이의 스위치가 결정된다. 이 방식으로, 도 1의 멀티플렉서(30-3)는 위치 결정된 액세스 포인트에서 멀티플렉싱된 출력 스트림의 VBR 스트림을 포함하는 것을 멈춘다(그리고 CLBR 스트림을 포함하는 것을 시작한다). 루틴(300)은 단계 308로 진행된다.
단계 312에서 단계316의 동작은 예를 들면 DMA 출력 테이블에서 식별된 데이터를 전송하는데 필요한 밴드폭을 감소시키도록 유도된다. 그러나 본 발명의 목적은 이용가능 링크 밴드폭을 최대한 이용하게 하는 것이므로, 임의의 이용가능 밴드폭(만일 가능하다면)을 사용하는 것이 바람직하다. 밴드폭의 상기의 재획득은 단계 318으로부터 326에서 발생한다.
단계 318에서, CLBR 스트림에 제공된 가입자 또는 사용자가 이용가능 링크 밴드폭을 "채울 수 있는" 해당 VBR 스트림을 가지는지를 결정하는 질문이 이루어진다. 즉, 이용가능한 밴드폭이 다시 획득될 수 있도록 VBR 스트림을 대신할 수 있다. 만일 단계 318에서의 질문이 부정이라면, 루틴(300)은 단계 328로 진행된다. 만일 단계 318에서의 질문이 긍정이라면, 루틴(300)은 단계 320으로 진행된다.
단계 320에서, 이용가능 링크 밴드폭을 "채울 수 있는" VBR 스트림을 가지는CLBR 사용자(하나 이상일 것임) 중 하나가 선택될 것이다. 다음으로 루틴(300)은 단계322로 진행된다.
단계322에서, 선택된 CLBR 사용자의 CLBR 스트림에 할당된 버퍼 메모리(30-1)의 일부는 저장된 CLBR 스트림내의 다음 액세스 포인트가 위치될 때까지 일시적으로 상향 스캐닝된다. 이는 스트림이 주요한 인공물의 생성없이 입력될 수 있는 CLBR 스트림(즉, 시퀀스 헤더 또는 I-프레임)내의 포인트이다. 유사하게, CLBR 스트림과 연관된 VBR 스트림은 상기 포인트에서 입력되기 때문에, CLBR 스트림(또는 VBR 스트림)내의 메타-데이터는 VBR 스트림내의 액세스 포인트를 식별하는데 사용될 수 있다. 루틴(300)은 이 후 단계324로 진행된다.
단계 324에서, CLBR 스트림(위치 결정된 액세스 포인트에서)로부터 VBR 스트림으로의 스위칭에 대한 스위치 결정이 이루어진다. 즉, 위치 결정된 액세스 포인트에서의 스트림 정렬후에 CLBR 및 VBR 스트림 사이의 스위치가 이루어진다. 이 방식으로, 도 1의 멀티플렉서는 위치 결정된 액세스 포인트에서 멀티플렉싱된 출력 스트림의 CLBR 스트림을 포함하는 것을 중단한다(그리고 VBR 스트림을 포함하는 것을 시작한다). 다음으로 루틴(300)은 단계 308로 진행된다.
CLBR 스트림의 다음 액세스 포인트가 단계 322에 위치되며, VBR 스트림에서의 이전 액세스 포인트는 단계 314에서 위치결정된다. 이는 단계 322와 연관된 단계가 비트율을 증가시키기 때문이며, 단계 314와 연관된 단계들은 비트율을 감소시키는 방향으로 유도된다. 그러므로 단계 322에서 다음 액세스 포인트를 위치시킴으로써, 정보를 반복시킴에 의한 비트들의 초과 가능성(즉, 출력 스트림에서의 정보 복제)이 불필요하다.
단계 328에서, 더 많은 출력 링크가 처리될 것인지에 관한 질문이 이루어진다. 만일 단계 328에서의 질문이 긍정이라면, 루틴(300)은 단계 330으로 진행되며, 다음 출력 링크가 선택되고, 단계308로 진행된다. 만일 단계 328에서의 질문이 부정이라면, 루틴(300)은 단계 332로 진행된다.
단계 332에서, 현재의 스케쥴링 간격에서 더 많은 프레임 간격이 처리되는지에 대한 질문이 이루어진다. 만일 단계 332에서의 질문이 긍정이라면, 루틴(300)은 단계 334로 진행되며, 여기에서 현재의 스케쥴링 간격내의 다음 프레임 간격이 선택되며, 단계 308로 진행된다(다음 프레임 간격의 제 1 출력 링크가 선택된다). 만일 단계 332에서의 질문이 부정이라면, 루틴(300)은 종료되는 단계 336으로 진행된다.
단계 314 및 322의 메모리 스캐닝 동작이 버퍼 메모리(30-1)에서 직접저그올 실행될 수 있다. 그러나 메타-데이터는 충분한 인덱싱 정보를 주기 때문에, 메타-데이터를 이용하여 인덱스를 버퍼 메모리(30-1)로 적당한 스트림을 위치시키는 것은 바람직하다(보다 고속이다).
출력 스위치 결정 루틴(300)의 완전한 수행시에, 초기의 DMA 출력 테이블(즉, 선행하는 스케쥴링 간격과 연관된 DMA 테이블)은 현재의 스케쥴링 간격이 이용가능 링크 밴드폭을 이용할 수 있도록 수정될 것이다. 그러나 루틴(300)이 VBR 및 CLBR 스트림(또는 다수의 스케쥴링 간격) 사이의 후행 및 선행 스위칭에 대한 거절을 초래함으로써, 어떠한 단일 사용자도 상기의 스위칭에 종속되지 않도록 거절되는 스위칭을 "간소화"하기 위해 선택된 스트림을 처리하는 것은 바람직하다. 따라서, 단계(336)를 빠져나오는 대신, 도 3의 루틴(300)은 도 4를 참조하여 기술되는 최소화 루틴(400)으로 진행할 수 있다.
533/128
도 4는 도 1의 장치에 사용하기에 적합한 최소화 루틴(400)을 도시한다. 특히, 도 4는 단일 사용자가 경험한 대로 CLBR과 VBR 스트림들간의 과도한 스위칭을 최소화하도록 하는 최소화 루틴(400)을 도시한다. 이전에 기술된 바와 같이, CLBR과 VBR간의 앞뒤로 하는 스위칭은 CLBR 스트림의 다소 떨어지는 품질(VBR 스트림의 품질에 비해서)보다 더 불량으로 발명자에 의해 고려된 인공 산물들을 생성한다.
루틴(400)은 단계(402)로 진입하고, 현재의 스케쥴링 간격의 제 1 프레임 간격이 선택되는 단계(406)로 진행한다. 루틴(400)은 그후에 단계(408)로 진행한다.
단계(408)에서 통신 링크(LINK)를 통해 하나 이상의 가입자들에게 전달되는 출력 정보 스트림에 대응하는 출력 링크가 선택된다. 루틴(400)은 그후에 단계 (410)로 진행한다. 단계(410)에서 다수의 사용자들 중 첫번째가 후속의 검사를 위해 선택된다. 루틴(400)은 그후에 선택된 사용자가 VBR 대 CLBR 스위칭 천이에 대해 CLBR을 경험할 것인지의 질문이 이루어지는 단계(412)로 진행한다. 즉, 단일 프레임 간격내에서 선택된 사용자가 CLBR 스트림과 VBR 스트림 사이에서 스위칭하고 CLBR 스트림으로 되돌아가며, 그로인해 두가지 불량한 스위칭 경우들의 경험을 제공하는지에 대해 질문이 이루어진다. 단계(412)의 질문에 대해 부정으로 응답하면, 루틴은 그후에 단계(416)로 진행한다. 질문에 대해 긍정으로 응답하면, 그후에 루틴(400)은 단계(414)로 진행한다.
단계(414)에서, 두개의 식별된 CLBR 부분들 사이에 있는 사용자 스트림의 VBR 부분은 VBR 스트림에 대응하는 CLBR 스트림에 의해 교체된다. 즉, 단계(412)에서 식별된 세개의 스트림 세그먼트(CLBR-VBR-CLBR)가 존재하는 데서, VBR 범위는 사용자가 두가지 스위칭 경우들을 경험하지 않도록 대응하는 CLBR 범위에 의해 교체된다.
단계(416)에서 더 많은 사용자들이 처리되는지에 대한 질문이 이루어진다. 단계(416)에서의 질문에 대해 긍정으로 응답하면, 루틴(400)은 단계(418)로 진행하고, 다음 사용자가 선택되면, 단계(412)로 진행한다. 단계(416)에서의 질문이 부정으로 응답되면, 그후에 루틴(400)은 단계(420)로 진행한다.
단계(420)에서 더 많은 출력 링크들이 처리되는지에 대한 질문이 이루어진다. 단계(420)에서의 질문에 대해 긍정으로 응답하면, 루틴(400)은 단계 422로 진행되며, 여기에서 다음 출력 링크가 선택되고, 단계 410으로 진행된다. 만일 단계 420에서의 질문이 부정이라면, 루틴(400)은 단계 424로 진행된다.
단계 424에서, 현재의 스케쥴링 간격내의 더 많은 프레임 간격이 처리되는 것에 대한 질문이 이루어진다. 만일 단계 424에서의 질문이 긍정이라면, 루틴(400)은 단계 425로 진행되며, 여기에서 다음 프레임 간격이 선택되고, 단계 408로 진행된다. 만일 단계 424에서의 질문이 부정이라면, 루틴(400)은 종료되는 단계 426으로 진행된다.
상술한 최대화 루틴(400)은 완전한 수행시에 도 2의 정보 분배(100)내의 사용자 및 가입자가 CLBR 및 VBR 스트림 사이의 초과 스위칭으로 인해 바람직하지 않은 인공물을 경험하지 않도록 초과 스위칭 전이의 "간소화"를 초래한다.
본 발명의 일 실시예에서, 서버는 각각의 파일에 대한 다음의 정보를 포함하는 패킷을 제어한다: 1) 패킷/초에서 상기의 파일에 대한 평균, 최소 및 최대 비디오 비트율. 이는 서버가 사용자에 대한 충분한 출력 링크 밴드폭이 존재하는지를 식별할 필요가 있기 때문에 파일을 플레이하기 시작할 때를 아는 것은 유용하다. 2) 패킷/초의 오디오 비트율.
상기의 파라미터는 오디오 데이터가 비디오 데이터로부터 분리되어 저장되며 출력시 멀티플렉싱된다. 비디오로부터 분리하여 오디오 데이터를 저장하는 것은 공간을 절약하며 VBR 및 CLBR 스트림 사이의 스위칭의 문제를 해결한다.
본 발명의 일 실시예에서, 서버는 각각의 범위에 대해 다음 정보를 포함하는 패킷을 제어한다: 1) 패킷/초의 범위에서 평균 비디오 패킷율. 2) 프레임율. 프레임율은 디코더에 의해 프레임의 소비를 모델링하며, 각각의 출력 프레임 시간에 대한 패킷율을 계산하는 데 사용된다. 3) 상기 범위에서의 액세스 포인트수.
본 발명의 바람직한 실시예에서, 서버는 각각의 액세스 포인트(시퀀스 헤더 또는 I-프레임)에 대한 다음의 정보를 포함하는 패킷을 제어한다: 1) 제 1 CLBR 패킷에 대한 포인터(예를 들면, 상기 액세스 포인트의 오프셋 또는 절대적으로 주소 결정된 패킷수). 2) 상기 액세스 포인트의 제 1 VBR 패킷에 대한 포인터. 3) 상기 시퀀스의 프레임수. 4) 패킷/초의 상기 시퀀스에 대한 평균 비디오 패킷율. 5) 패킷/초의 상기 시퀀스에 대한 평균 비디오 패킷율. 6) 프레임율. 이는 만일프레임율이 매 시퀀스 헤더마다 변경을 허용할 필요가 있을때만이다. 7) (a) 상기 액세스 포인트는 시퀀스 헤더와 시작하거나 (b) 상기 액세스 포인트는 포인트의 결합을 나타내거나 (c) 액세스 포인트가 결합이 풀어진 포인트를 나타내는 것을 지시하는 단일 비트 플레그.
본 발명의 실시예에서, 서버는 각각의 프레임에서 다음 정보를 포함하는 패킷을 제어한다: 1) 상기 프레임의 제 1 패킷에 대한 포인터(패킷수). 2) 상기 프레임이 소속된 액세스 포인트의 인덱스. 각각의 프레임은 여러 크기이며, 고속 순방향 또는 역방향으로부터 표준의 플레이로의 스위칭이 단순하게 분할되지 않을 때의 엔트리 포인트를 계산한다. 각각의 액세스 포인트는 프레임의 가변되는 수를 가질 수 있으며, 액세스 포인트로의 인덱스는 에러가 될 것이다. 시작 위치가 프레임에서 계산되는 대신에 상기 인덱스는 이를 포함하는 액세스 포인트에 특정 프레임을 맵핑하는데 사용된다.
상술한 본 발명은 다수의 가입자에게 VBR 범위를 우선적으로 제공함으로써 링크 이용 및 비디오 품질을 모두 유리하게 최대로 하는 것이다. 게다가 상기의 최대화는 전송 패킷 레벨(MPEG형 스트림) 이하의 VBR 또는 CLBR 스트림을 처리하지 않으면서 달성된다. 심지어 빈번한 사용자의 요구에 대해서도, 하나 이상의 스트림의 비디오 품질은 주요한 가시 인공물없이(즉, 결합없이) 감소될 수 있다. 이 방식으로, 값비싼 링크 밴드폭(전형적으로 디스크 밴드폭보다 고가)이 "패킷 드롭핑" 또는 다른 바람직하지 않은 기술없이 유지될 수 있다.
본 발명의 사상을 통합하는 여러 실시예가 상세하게 개시되었지만, 당업자는상기의 사상을 통합하면서 여러 변형예를 쉽게 실시할 수 있다.

Claims (16)

  1. 다수의 프로그램을 저장하는 저장 유니트(20)를 포함하는데, 상기 각각의 프로그램은 가변 비트율(VBR)로 인코딩된 스트림 및 실질적으로 일정한 해당 하위 비트율(CLBR)로 인코딩된 스트림으로 표현되며;
    멀티플렉싱된 정보 스트림을 형성하기 위해 상기 저장 유니트로부터 적어도 하나의 상기 프로그램을 검색하는 서버(20); 및
    상기 멀티플렉싱된 정보 스트림을 전송하며 한정된 밴드폭을 가지는 통신 링크(LINK)를 포함하며,
    상기 서버는 각각의 검색된 프로그램에 대해 상기 검색된 프로그램을나타내는 상기 VBR 인코딩된 스트림을 우선적으로 멀티플렉싱하며; 불충분한 통신 링크 밴드폭의 상태에 응답하여, 적어도 하나의 검색된 프로그램에 대해 상기 적어도 하나의 검색된 프로그램을 나타내는 상기 적어도 CLBR 인코딩된 스트림의 일부를 멀티플렉싱하는 것을 특징으로 하는 정보 분배 시스템에 사용되는 장치.
  2. 제 1 항에 있어서,
    상기 서버는 각각의 검색된 프로그램에 대해 상기 저장 유니트로부터 각각 상기 검색된 프로그램을 나타내는 상기 CLBR 인코딩된 스트림 및 상기 VBR 인코딩된 스트림을 우선적으로 검색하며; 불충분한 저장 유니트 밴드폭의 상태에 응답하여, 적어도 하나의 검색된 프로그램에 대해 상기 적어도 하나의 검색된 프로그램을나타내는 상기 CLBR 인코딩된 스트림만을 검색하는 것을 특징으로 하는 정보 분배 시스템에 사용되는 장치.
  3. 제 1 항에 있어서,
    불충분한 통신 링크 밴드폭의 상태는 상기 정보 스트림 시간 범위를 멀티플렉싱하기 전에 다수의 정보 스트림 시간 범위의 밴드폭 요구조건을 계산함으로써 결정되는 것을 특징으로 하는 정보 분배 시스템에 사용되는 장치.
  4. 제 3 항에 있어서,
    상기 서버는 멀티플렉싱된 CLBR 인코딩된 스트림이 불충분한 통신 링크 밴드폭의 상태를 생성하지 않으면서 해당 VBR 인코딩된 스트림에 의해 교환될 수 있는 결정에 응답하여, 멀티플렉싱된 CLBR 인코딩된 스트림을 상기 해당 VBR 인코딩된 스트림으로 교환하는 것을 특징으로 하는 정보 분배 시스템에 사용되는 장치.
  5. 제 2 항에 있어서,
    불충분한 저장 유니트 밴드폭의 상기 상태는 상기 프로그램을 검색하기 전에 다수의 정보 스트림 시간 범위의 밴드폭 요구조건을 계산함으로써 결정되는 것을 특징으로 하는 정보 분배 시스템에 사용되는 장치.
  6. 제 5 항에 있어서,
    불충분한 저장 유니트 밴드폭의 상기 상태는 상기 프로그램을 검색하기 전에 다수의 정보 스트림 시간 범위의 밴드폭 요구조건을 계산함으로써 결정되는 것을 특징으로 하는 정보 분배 시스템에 사용되는 장치.
  7. 제 1 항에 있어서,
    상기 VBR 인코딩된 스트림 및 CLBR 인코딩된 스트림은 각각 상기 프로그램을 나타내는 품질 제한 인코딩된 스트림 및 상기 프로그램을 나타내는 비트율 제한 인코딩된 스트림을 포함하는 것을 특징으로 하는 정보 분배 시스템에 사용되는 장치.
  8. 제 7 항에 있어서,
    상기 각각의 프로그램에 대해, 대표적인 VBR 인코딩된 스트림 및 CLBR 인코딩된 스트림은 다수의 시간 범위로 분할되며, 상기 시간 범위는 각각의 VBR 인코딩된 스트림 및 CLBR 인코딩된 스트림 사이의 변화에 적당한 각각의 스트림 액세스 포인트를 한정하는 것을 특징으로 하는 정보 분배 시스템에 사용되는 장치.
  9. 제 8 항에 있어서,
    상기 프로그램은 적어도 비디오 정보를 포함하며, 상기의 다수 시간 범위는 영상 그룹(GOP) 경계 및 프레임 경계로서 한정되는 것을 특징으로 하는 정보 분배 시스템에 사용되는 장치.
  10. 제 2 항에 있어서,
    디스크 밴드폭에 대한 요구를 모델링하며, 상기 요구가 이용가능 디스크 밴드폭을 초과하게 될 때를 추정하며, 그리고 불충분한 저장 유니트 밴드폭의 상기 상태에 대한 상기 서버 표시를 제공하는 디스크 스케쥴러를 더 포함하는 것을 특징으로 하는 정보 분배 시스템에 사용되는 장치.
  11. 정보를 통신 링크에 제공하는 정보 서버를 포함하는 정보 분배 시스템에서, 링크 밴드폭을 관리하기 위한 방법에 있어서:
    링크 밴드폭의 징후를 모니터링하는 단계;
    상기 통신 링크를 통하여 그리고 과도한 이용상태가 존재하지 않는것을 나타내는 밴드폭 이용 표시에 응답하여, 상기 다수의 가입자중 적어도 하나에 제 1 가변 비트율 정보 스트림(UBR)을 제공하는 단계를 포함하는데, 상기 제 1 가변 비트율 정보 스트림은 제 1 낮은 공칭 비트율 및 제 1 높은 공칭 비트율 사이에서 변경될 수 있는 비트율과 연관성을 가지며; 및
    상기 통신 링크를 통하여 그리고 과도한 이용 상태가 존재하는 것을 나타내는 밴드폭 이용 표시에 응답하여 상기 다수의 가입자중 적어도 하나에 제 2 가변 비트율 정보 스트림(CLBR)을 제공하는 단계를 포함하며, 상기 제 2 가변 비트율 정보 스트림은 제 2 하위 공칭 비트율 및 제 2 상위 공칭 비트율 사이에서 변경될 수 있는 비트율과 연관성을 가지며, 상기 제 2 하위 공칭 비트율은 상기 제 1 하위 비트율보다 작으며, 상기 제 2 상위 공칭 비트율은 상기 제 1 상위 비트율보다 작은것을 특징으로 하는 방법.
  12. 제 11 항에 있어서,
    상기 밴드폭 이용 표시는 통신 링크 밴드폭 이용 표시 및 저장 장치 액세스 밴드폭 이용 표시중 하나를 포함하며, 상기 저장 장치는 상기 제 1 및 제 2 가변 비트율 정보 스트림을 저장하는데 사용되는 것을 특징으로 하는 방법.
  13. 제 12 항에 있어서,
    상기 제 1 및 제 2 가변 비트율 정보 스트림은 각각 프로그램을 대표하는 품질 제한 인코딩된 스트림 및 상기 프로그램을 대표하는 비트율 제한 인코딩된 스트림을 포함하며, 상기 제 1 상위 공칭 비트율 및 상기 제 1 하위 공칭 비트율 사이의 차이는 상기 제 2 상위 공칭 비트율 및 상기 제 2 하위 공칭 비트율 사이의 차이보다 큰 것을 특징으로 하는 방법.
  14. 제 13 항에 있어서,
    상기 각각의 제 1 및 제 2 가변 비트율 정보 스트림은 다수의 해당 시간 범위로 분할되고, 상기 시간 범위는 제공된 제 1 가변 비트율 정보 스트림 및 제공된 제 2 가변 비트율 정보 스트림 사이의 변화에 적당한 스트림 액세스 포인트를 각각 한정하는 것을 특징으로 하는 방법.
  15. 제 11 항에 있어서,
    상기 제 1 가변 비트율 정보 스트림은 프로그램을 대표하는 가변 비트율(VBR)로 인코딩된 스트림을 포함하며, 상기 제 2 가변 비트율 정보 스트림은 상기 프로그램을 대표하며 이에 해당하는 실질적으로 일정한 하위 비트율(CLBR)로 인코딩된 스트림을 포함하는 것을 특징으로 하는 방법.
  16. 제 15 항에 있어서,
    상기 제 2 가변 비트율 정보 스트림은 상기 제 1 가변 비트율 정보 스트림에 의해 생성되는 것을 특징으로 하는 방법.
KR1020017002833A 1998-09-03 1999-09-01 정보 분배 시스템에서 가변 비트율 정보를 처리하기 위한방법 및 장치 KR100682683B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/148,020 1998-09-03
US09/148,020 US6298071B1 (en) 1998-09-03 1998-09-03 Method and apparatus for processing variable bit rate information in an information distribution system

Publications (2)

Publication Number Publication Date
KR20010073119A true KR20010073119A (ko) 2001-07-31
KR100682683B1 KR100682683B1 (ko) 2007-02-15

Family

ID=22523893

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020017002833A KR100682683B1 (ko) 1998-09-03 1999-09-01 정보 분배 시스템에서 가변 비트율 정보를 처리하기 위한방법 및 장치

Country Status (8)

Country Link
US (2) US6298071B1 (ko)
EP (1) EP1099336A1 (ko)
JP (1) JP4508422B2 (ko)
KR (1) KR100682683B1 (ko)
AU (1) AU5695999A (ko)
BR (1) BR9914486A (ko)
CA (1) CA2342906C (ko)
WO (1) WO2000014953A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100444143B1 (ko) * 2001-12-29 2004-08-09 주식회사 윈컴소프트 브이비알을 이용한 브이오디 스트림 서비스 제공 시스템및 방법

Families Citing this family (88)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7086077B2 (en) * 1999-04-01 2006-08-01 Sedna Patent Services, Llc Service rate change method and apparatus
US6574279B1 (en) * 2000-02-02 2003-06-03 Mitsubishi Electric Research Laboratories, Inc. Video transcoding using syntactic and semantic clues
US20020071052A1 (en) * 2000-12-07 2002-06-13 Tomoaki Itoh Transmission rate control method
JP2002290974A (ja) * 2000-12-07 2002-10-04 Matsushita Electric Ind Co Ltd 伝送レート制御方法
US7035468B2 (en) * 2001-04-20 2006-04-25 Front Porch Digital Inc. Methods and apparatus for archiving, indexing and accessing audio and video data
US7913287B1 (en) * 2001-06-15 2011-03-22 Decisionmark Corp. System and method for delivering data over an HDTV digital television spectrum
US7330900B2 (en) * 2001-07-06 2008-02-12 Dialogic Corporation Low-latency packet processor
GB2377840A (en) * 2001-07-18 2003-01-22 Sony Uk Ltd Audio/video recording and multiplexing apparatus
US6914936B1 (en) * 2001-07-19 2005-07-05 Bigband Networks, Inc. Method for allocating media unit sequences among a plurality of output channels
US20030046704A1 (en) * 2001-09-05 2003-03-06 Indra Laksono Method and apparatus for pay-per-quality of service for bandwidth consumption in a video system
FI115418B (fi) * 2001-09-20 2005-04-29 Oplayo Oy Adaptiivinen mediavirta
KR100460529B1 (ko) * 2001-11-15 2004-12-08 박홍성 무선 데이터통신망에서 데이터 스트리밍을 위한 데이터 송수신 시스템 및 그 방법
US8302144B2 (en) * 2002-03-13 2012-10-30 Cox Communications, Inc. Distribution of content in an information distribution system
KR100453505B1 (ko) * 2002-04-03 2004-10-20 주식회사 케이티프리텔 무선 네트워크 클라이언트에서 스트리밍 데이터의 멀티비트 레이트 기능 제어 방법 및 그 장치
US7523482B2 (en) * 2002-08-13 2009-04-21 Microsoft Corporation Seamless digital channel changing
US8397269B2 (en) * 2002-08-13 2013-03-12 Microsoft Corporation Fast digital channel changing
US6952821B2 (en) * 2002-08-19 2005-10-04 Hewlett-Packard Development Company, L.P. Method and system for memory management optimization
US7363459B2 (en) * 2002-10-31 2008-04-22 Hewlett-Packard Development Company, L.P. System and method of optimizing memory usage with data lifetimes
US7107199B2 (en) * 2002-10-31 2006-09-12 Hewlett-Packard Development Company, L.P. Method and system for the design of pipelines of processors
US7484079B2 (en) * 2002-10-31 2009-01-27 Hewlett-Packard Development Company, L.P. Pipeline stage initialization via task frame accessed by a memory pointer propagated among the pipeline stages
US7603689B2 (en) * 2003-06-13 2009-10-13 Microsoft Corporation Fast start-up for digital video streams
US7562375B2 (en) * 2003-10-10 2009-07-14 Microsoft Corporation Fast channel change
US7444419B2 (en) * 2003-10-10 2008-10-28 Microsoft Corporation Media stream scheduling for hiccup-free fast-channel-change in the presence of network chokepoints
US6954450B2 (en) * 2003-11-26 2005-10-11 Cisco Technology, Inc. Method and apparatus to provide data streaming over a network connection in a wireless MAC processor
EP1687998B1 (en) * 2003-11-26 2017-09-20 Cisco Technology, Inc. Method and apparatus to inline encryption and decryption for a wireless station
US7430222B2 (en) * 2004-02-27 2008-09-30 Microsoft Corporation Media stream splicer
US7624021B2 (en) * 2004-07-02 2009-11-24 Apple Inc. Universal container for audio data
WO2006126859A2 (en) * 2005-05-26 2006-11-30 Lg Electronics Inc. Method of encoding and decoding an audio signal
EP1946294A2 (en) * 2005-06-30 2008-07-23 LG Electronics Inc. Apparatus for encoding and decoding audio signal and method thereof
JP2009500657A (ja) * 2005-06-30 2009-01-08 エルジー エレクトロニクス インコーポレイティド オーディオ信号をエンコーディング及びデコーディングするための装置とその方法
AU2006266579B2 (en) * 2005-06-30 2009-10-22 Lg Electronics Inc. Method and apparatus for encoding and decoding an audio signal
AU2006285538B2 (en) * 2005-08-30 2011-03-24 Lg Electronics Inc. Apparatus for encoding and decoding audio signal and method thereof
US7987097B2 (en) * 2005-08-30 2011-07-26 Lg Electronics Method for decoding an audio signal
US8577483B2 (en) * 2005-08-30 2013-11-05 Lg Electronics, Inc. Method for decoding an audio signal
US7788107B2 (en) 2005-08-30 2010-08-31 Lg Electronics Inc. Method for decoding an audio signal
KR100857115B1 (ko) * 2005-10-05 2008-09-05 엘지전자 주식회사 신호 처리 방법 및 이의 장치, 그리고 인코딩 및 디코딩방법 및 이의 장치
US7751485B2 (en) * 2005-10-05 2010-07-06 Lg Electronics Inc. Signal processing using pilot based coding
EP1946302A4 (en) * 2005-10-05 2009-08-19 Lg Electronics Inc SIGNAL PROCESSING METHOD AND APPARATUS, ENCODING AND DECODING METHOD, AND ASSOCIATED APPARATUS
US7672379B2 (en) * 2005-10-05 2010-03-02 Lg Electronics Inc. Audio signal processing, encoding, and decoding
US7696907B2 (en) 2005-10-05 2010-04-13 Lg Electronics Inc. Method and apparatus for signal processing and encoding and decoding method, and apparatus therefor
US7646319B2 (en) * 2005-10-05 2010-01-12 Lg Electronics Inc. Method and apparatus for signal processing and encoding and decoding method, and apparatus therefor
US8068569B2 (en) * 2005-10-05 2011-11-29 Lg Electronics, Inc. Method and apparatus for signal processing and encoding and decoding
US7716043B2 (en) * 2005-10-24 2010-05-11 Lg Electronics Inc. Removing time delays in signal paths
US8135040B2 (en) * 2005-11-30 2012-03-13 Microsoft Corporation Accelerated channel change
US7716389B1 (en) * 2006-03-17 2010-05-11 Bitmicro Networks, Inc. Direct memory access controller with encryption and decryption for non-blocking high bandwidth I/O transactions
US8165301B1 (en) 2006-04-04 2012-04-24 Bitmicro Networks, Inc. Input-output device and storage controller handshake protocol using key exchange for data security
US20090328109A1 (en) * 2007-01-12 2009-12-31 Activevideo Networks, Inc. Providing Television Broadcasts over a Managed Network and Interactive Content over an Unmanaged Network to a Client Device
US9826197B2 (en) 2007-01-12 2017-11-21 Activevideo Networks, Inc. Providing television broadcasts over a managed network and interactive content over an unmanaged network to a client device
US20080201736A1 (en) * 2007-01-12 2008-08-21 Ictv, Inc. Using Triggers with Video for Interactive Content Identification
US8959307B1 (en) 2007-11-16 2015-02-17 Bitmicro Networks, Inc. Reduced latency memory read transactions in storage devices
US8301793B2 (en) * 2007-11-16 2012-10-30 Divx, Llc Chunk header incorporating binary flags and correlated variable-length fields
KR100948840B1 (ko) * 2007-12-17 2010-03-22 한국전자통신연구원 무선랜 VoIP 시스템에서 음성 품질 보장을 위한 코덱비트율 제어 방법
AU2010276462B1 (en) 2010-12-27 2012-01-12 Limelight Networks, Inc. Partial object caching
WO2010033938A2 (en) * 2008-09-19 2010-03-25 Limelight Networks, Inc. Content delivery network stream server vignette distribution
AU2010202034B1 (en) * 2010-04-07 2010-12-23 Limelight Networks, Inc. Partial object distribution in content delivery network
US8631145B2 (en) * 2008-10-31 2014-01-14 Sonic Ip, Inc. System and method for playing content on certified devices
US9135190B1 (en) 2009-09-04 2015-09-15 Bitmicro Networks, Inc. Multi-profile memory controller for computing devices
US8665601B1 (en) 2009-09-04 2014-03-04 Bitmicro Networks, Inc. Solid state drive with improved enclosure assembly
US8447908B2 (en) 2009-09-07 2013-05-21 Bitmicro Networks, Inc. Multilevel memory bus system for solid-state mass storage
US8560804B2 (en) * 2009-09-14 2013-10-15 Bitmicro Networks, Inc. Reducing erase cycles in an electronic storage device that uses at least one erase-limited memory device
US8776109B2 (en) 2010-10-21 2014-07-08 Sling Media Pvt Ltd Handling disruption in content streams received at a player from a content retransmitter
US9372755B1 (en) 2011-10-05 2016-06-21 Bitmicro Networks, Inc. Adaptive power cycle sequences for data recovery
US9392304B2 (en) 2012-02-29 2016-07-12 Hulu, LLC Encoding optimization using quality level of encoded segments
US9043669B1 (en) 2012-05-18 2015-05-26 Bitmicro Networks, Inc. Distributed ECC engine for storage media
WO2014108738A1 (en) * 2013-01-08 2014-07-17 Nokia Corporation Audio signal multi-channel parameter encoder
US9423457B2 (en) 2013-03-14 2016-08-23 Bitmicro Networks, Inc. Self-test solution for delay locked loops
US9734067B1 (en) 2013-03-15 2017-08-15 Bitmicro Networks, Inc. Write buffering
US9672178B1 (en) 2013-03-15 2017-06-06 Bitmicro Networks, Inc. Bit-mapped DMA transfer with dependency table configured to monitor status so that a processor is not rendered as a bottleneck in a system
US9400617B2 (en) 2013-03-15 2016-07-26 Bitmicro Networks, Inc. Hardware-assisted DMA transfer with dependency table configured to permit-in parallel-data drain from cache without processor intervention when filled or drained
US9858084B2 (en) 2013-03-15 2018-01-02 Bitmicro Networks, Inc. Copying of power-on reset sequencer descriptor from nonvolatile memory to random access memory
US9916213B1 (en) 2013-03-15 2018-03-13 Bitmicro Networks, Inc. Bus arbitration with routing and failover mechanism
US9971524B1 (en) 2013-03-15 2018-05-15 Bitmicro Networks, Inc. Scatter-gather approach for parallel data transfer in a mass storage system
US9798688B1 (en) 2013-03-15 2017-10-24 Bitmicro Networks, Inc. Bus arbitration with routing and failover mechanism
US9720603B1 (en) 2013-03-15 2017-08-01 Bitmicro Networks, Inc. IOC to IOC distributed caching architecture
US9430386B2 (en) 2013-03-15 2016-08-30 Bitmicro Networks, Inc. Multi-leveled cache management in a hybrid storage system
US9875205B1 (en) 2013-03-15 2018-01-23 Bitmicro Networks, Inc. Network of memory systems
US10489318B1 (en) 2013-03-15 2019-11-26 Bitmicro Networks, Inc. Scatter-gather approach for parallel data transfer in a mass storage system
US9501436B1 (en) 2013-03-15 2016-11-22 Bitmicro Networks, Inc. Multi-level message passing descriptor
US9934045B1 (en) 2013-03-15 2018-04-03 Bitmicro Networks, Inc. Embedded system boot from a storage device
US9842024B1 (en) 2013-03-15 2017-12-12 Bitmicro Networks, Inc. Flash electronic disk with RAID controller
WO2015104447A1 (en) 2014-01-13 2015-07-16 Nokia Technologies Oy Multi-channel audio signal classifier
US9811461B1 (en) 2014-04-17 2017-11-07 Bitmicro Networks, Inc. Data storage system
US10078604B1 (en) 2014-04-17 2018-09-18 Bitmicro Networks, Inc. Interrupt coalescing
US10055150B1 (en) 2014-04-17 2018-08-21 Bitmicro Networks, Inc. Writing volatile scattered memory metadata to flash device
US10025736B1 (en) 2014-04-17 2018-07-17 Bitmicro Networks, Inc. Exchange message protocol message transmission between two devices
US10042792B1 (en) 2014-04-17 2018-08-07 Bitmicro Networks, Inc. Method for transferring and receiving frames across PCI express bus for SSD device
US9952991B1 (en) 2014-04-17 2018-04-24 Bitmicro Networks, Inc. Systematic method on queuing of descriptors for multiple flash intelligent DMA engine operation
US10552050B1 (en) 2017-04-07 2020-02-04 Bitmicro Llc Multi-dimensional computer storage system

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5579527A (en) * 1992-08-05 1996-11-26 David Sarnoff Research Center Apparatus for alternately activating a multiplier and a match unit
JP3123290B2 (ja) 1993-03-09 2001-01-09 ソニー株式会社 圧縮データ記録装置及び方法、圧縮データ再生方法、記録媒体
US5541852A (en) 1994-04-14 1996-07-30 Motorola, Inc. Device, method and system for variable bit-rate packet video communications
US5671377A (en) * 1994-07-19 1997-09-23 David Sarnoff Research Center, Inc. System for supplying streams of data to multiple users by distributing a data stream to multiple processors and enabling each user to manipulate supplied data stream
EP0714192A1 (en) 1994-11-24 1996-05-29 International Business Machines Corporation Method for preempting connections in high speed packet switching networks
US5533009A (en) * 1995-02-03 1996-07-02 Bell Communications Research, Inc. Bandwidth management and access control for an ATM network
US5621660A (en) 1995-04-18 1997-04-15 Sun Microsystems, Inc. Software-based encoder for a software-implemented end-to-end scalable video delivery system
US5991811A (en) * 1995-09-04 1999-11-23 Kabushiki Kaisha Toshiba Information transmission system utilizing both real-time data transmitted in a normal-in-time direction and in a retrospective-in-time direction
US5819036A (en) * 1995-12-14 1998-10-06 Time Warner Cable Method for message addressing in a full service network
JPH09271002A (ja) * 1996-03-29 1997-10-14 Mitsubishi Electric Corp ビデオデータ配信方式
JP2000508855A (ja) 1996-04-12 2000-07-11 イメディア コーポレイション ビデオ・トランスコーダ
JP2000500261A (ja) 1996-07-30 2000-01-11 フィリップス エレクトロニクス ネムローゼ フェンノートシャップ マルチチャネルメモリアレイ用帯域幅調整システム
US6014694A (en) * 1997-06-26 2000-01-11 Citrix Systems, Inc. System for adaptive video/audio transport over a network

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100444143B1 (ko) * 2001-12-29 2004-08-09 주식회사 윈컴소프트 브이비알을 이용한 브이오디 스트림 서비스 제공 시스템및 방법

Also Published As

Publication number Publication date
KR100682683B1 (ko) 2007-02-15
JP4508422B2 (ja) 2010-07-21
CA2342906C (en) 2004-10-26
US20010055302A1 (en) 2001-12-27
JP2002524982A (ja) 2002-08-06
US7167488B2 (en) 2007-01-23
WO2000014953A1 (en) 2000-03-16
AU5695999A (en) 2000-03-27
EP1099336A1 (en) 2001-05-16
US6298071B1 (en) 2001-10-02
CA2342906A1 (en) 2000-03-16
BR9914486A (pt) 2002-06-18

Similar Documents

Publication Publication Date Title
KR100682683B1 (ko) 정보 분배 시스템에서 가변 비트율 정보를 처리하기 위한방법 및 장치
CA2956802C (en) Systems and methods for multicast delivery of a managed bundle in service provider networks
US8302144B2 (en) Distribution of content in an information distribution system
US7903648B2 (en) Method and apparatus for injecting information assets into a content stream
US8661482B2 (en) Method for reducing latency in an interactive information distribution system
JP3288199B2 (ja) ビデオデータ配信装置
US7610606B2 (en) Technique for effectively providing various entertainment services through a communications network
CA2393621C (en) Method and apparatus for performing user migration within a video on demand environment
US20020165943A1 (en) Universal STB architectures and control methods
US8789119B2 (en) Statistical remultiplexer performance for video on demand applications by use of metadata
EP1285533A1 (en) Universal digital broadcast system and methods
CN101350911A (zh) 控制提供给sdv系统中的边缘设备的sdv节目安排的带宽的方法和装置
US20020026646A1 (en) Universal STB architectures and control methods
US7031259B1 (en) Method and system for scheduling a transmission of compressible and non-compressible packets
US20020073172A1 (en) Method and apparatus for storing content within a video on demand environment
CA2406714A1 (en) Universal digital broadcast system and methods
JP2005506725A (ja) 遅延アクセスによるクライアントジェネリックなデータ・オン・デマンドサービスの伝送方法およびシステム
JP2002305738A (ja) ビデオデータ配信装置
KR20040063795A (ko) 지연된 억세스 클라이언트 데이터 및 요청의 전송

Legal Events

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