KR100872096B1 - Mpeg-2 스트림의 다중화 및 재다중화를 제공하는시스템 및 방법 - Google Patents

Mpeg-2 스트림의 다중화 및 재다중화를 제공하는시스템 및 방법 Download PDF

Info

Publication number
KR100872096B1
KR100872096B1 KR1020057016132A KR20057016132A KR100872096B1 KR 100872096 B1 KR100872096 B1 KR 100872096B1 KR 1020057016132 A KR1020057016132 A KR 1020057016132A KR 20057016132 A KR20057016132 A KR 20057016132A KR 100872096 B1 KR100872096 B1 KR 100872096B1
Authority
KR
South Korea
Prior art keywords
stream
program
output
packet
input
Prior art date
Application number
KR1020057016132A
Other languages
English (en)
Other versions
KR20050109517A (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 KR20050109517A publication Critical patent/KR20050109517A/ko
Application granted granted Critical
Publication of KR100872096B1 publication Critical patent/KR100872096B1/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/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
    • 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
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2181Source of audio or video content, e.g. local disk arrays comprising remotely distributed storage units, e.g. when movies are replicated over a plurality of video servers
    • 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/234381Processing 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 by altering the temporal resolution, e.g. decreasing the frame rate by frame skipping
    • 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/23608Remultiplexing multiplex streams, e.g. involving modifying time stamps or remapping the packet identifiers
    • 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
    • H04N21/23805Controlling the feeding rate to the network, e.g. by controlling the video pump
    • 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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26216Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the channel capacity, e.g. network bandwidth
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Television Systems (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Stereo-Broadcasting Methods (AREA)

Abstract

본 발명은 입력 스트림으로부터 다중화된 프로그램이 복사되거나 국부 변경되는 경우에만 역다중화되는 다중화 및 재다중화하는 시스템 및 방법에 관한 것이다. 입력 스트림의 일부이고 출력 스트림의 일부가 되는 임의의 다중화된 프로그램은 역다중화되지 않지만, 다른 다중화된 프로그램을 사용하여 전송 스트림에 추가되도록 단순 전달된다. 본 발명의 또다른 양태는 동적 비트 레이트 조정이 적용되어 변경된 스트림에 대한 타임베이스 정보를 다시 계산할 필요성을 제거하는 다중화기 장치 및 프로세스를 포함한다.
Figure R1020057016132
다중화기 장치, 재다중화기, 입력 스트림, 동적 비트 레이트 조정, 휴지 패킷

Description

MPEG-2 스트림의 다중화 및 재다중화를 제공하는 시스템 및 방법{SYSTEM AND METHOD FOR PROVIDING MULTIPLEXING AND REMULTIPLEXING OF MPEG-2 STREAMS}
본 발명은 미디어 스트림의 원격 위치로의 전달에 관한 것으로서, 보다 구체적으로는, 요청 위치로의 전달을 위해 MPEG-2 전송 스트림으로 다수의 프로그램을 재다중화(remultiplexing)하는 것에 관한 것이다.
요청 클라이언트 위치(예를 들면, 시청자의 텔레비전 세트)에 프로그램을 제공하는 경우, MPEG 전송 스트림이 생성된다. MPEG-2 전송 스트림은 188 바이트의 패킷으로 구성되어 공통 또는 독립 타임베이스를 갖는 하나 이상의 프로그램을 단일 스트림으로 결합한다. 전송 스트림에 결합될 수 있는 입력 프로그램 스트림은 상수 비트 레이트(CBR) 또는 가변 비트 레이트(VBR)를 가질 수 있되, CBR 스트림은 이 스트림에 관련된 기지의 비트 레이트이지만 VBR 스트림은 특정 비트 레이트를 갖지 않는다. MPEG-2 전송 스트림은 프로그램 제공자 위치로부터 시청자 위치로 케이블, 위성 또는 공중파를 통해 전달될 수 있다.
하나 이상의 프로그램을 반송하는 전송 스트림은 다중 프로그램 전송 스트림 (MPTS)로 불린다. 전송 스트림 다중화기는 다수의 프로그램을 결합하여 단일 전송 스트림을 형성하는 장치이다. 이를 행할 때, 정확한 타임베이스가 수신 위치에서 각각의 개별 프로그램의 디코딩에 필요하기 때문에, 다중화기는 프로그램의 개별 타임베이스의 무결성 및 정확성을 보장하여야 한다. 전송 스트림으로부터 개별 프로그램의 추출 프로세스는 역다중화기에 의해 행해진다.
도 1은 다중화와 역다중화가 발생하는 환경의 블록도를 제공한다. 요청 클라이언트, 시청자 위치(100)는 셋탑 박스 상에서 지정된 프로그램 디스플레이 채널에 단순 튜닝함으로써 또는 이의 통신 컴포넌트(102)를 통해 도면 부호 110에서 서버(1)에 전송될 수 있는 이른바 "페이 퍼 뷰(pay per view)" 요청을 입력함으로써 프로그램을 "요청"한다. 서버(1)는 케이블 제공자의 헤드엔드 또는 다른 상당한 프로그램 서비스 설비일 수 있다. 서버(1)가 그것의 스토리지 위치(118)에서 프로그램의 복사본을 갖는 경우, 이 프로그램은 액세스되고, 다중화기(116)에서 스트림으로 다중화되며, 통신 컴포넌트(112)를 통해 클라이언트에 제공될 수 있다. 하나 이상의 프로그램이 요청되고 둘 모두가 서버(1)에 이용 가능한 경우에는, 생성된 스트림은 역다중화기(104)에서 다중화하는 클라이언트 위치(100)에 제공된 후 디스플레이(103; 예를 들면, 컴퓨터 또는 텔레비전 세트)에서 관측을 위해 제공되는 MPTS일 수 있다. 서버(1)가 그것의 스토리지(118)에 요청된 프로그램의 복사본을 갖지 않는 경우에는, 이는 복사본을 획득하기 위해서 120에서 서버(2)로 도시한 다른 서버와 통신할 수 있다. 서버(2)의 통신 컴포넌트(122)에서 요청의 수신 시에, 요청된 프로그램의 복사본은 스토리지(128)에서 검색되고, 다중화기에서 MPEG-2 스트림으 로 다중화된 후, 서버(12)로의 전송을 위해 통신 컴포넌트(122)에 제공된다. 통신 컴포넌트(112)로부터 클라이언트(100)로의 전송을 위한 MPTS를 제공하기 위해서, 서버(1)는 역다중화기(114)에서 서버(2)로부터 수신된 스트림을 역다중화한 후, 예를 들면 로컬 스토리지(118)로부터 액세스된 프로그램을 사용하여 스트림을 재다중화하여야 한다.
재다중화기(remultiplexer)는 역다중화와 다중화 기능 모두를 수행하는 도 1에서 도면 부호 115로 나타낸 컴포넌트이다. 도 2는 역다중화와 다중화 능력을 모두 갖는 종래의 재다중화기(215)를 보다 상세히 나타낸다. 버퍼(202)에서 입력 전송 스트림의 수신 시에, 요청된 프로그램 또는 프로그램들은 입력 스트림에서 추출되고, 역다중화기(DEMUX; 204)에서 역다중화된 후, 개별 프로그램 버퍼(206, 216, 및 226)에 제공된다. 버퍼링된 프로그램이 출력 스트림에 추가되고, 스토리지에 복사되거나 드롭되는 경우에는 프로그램 버퍼에서 결정이 행해진다. 이 결정은 통상 시청자와 프로그램 제공자에 의해 이전에 입력되는 계약 조정에 기초한다. 출력 스트림에 전달되어야 하는 프로그램에 있어서, 로컬 스토리지로부터 삽입된 임의의 프로그램뿐만 아니라 역다중화된 프로그램이 출력 전송 스트림에 프로그램을 다중화하는, 공지된 기술에 따라 스트리밍을 위해 출력 버퍼(210)에 이들을 제공하는 다중화기(MUX; 208)에 제공된다. 바이패스 스위치(201)는 재다중화기의 스케줄링된 정비 또는 실패의 경우에 스트림이 제공자 위치를 통과할 수 있게 하도록 제공된다.
재다중화기에서 역다중화와 다중화의 수행은 시간과 프로그램 무결성이라는 점에서 비싸다. 타임베이스 정보가 올바르게 적용됨을 보장하는 주의가 기울여지지 않으면, 역다중화와 다중화는 모두 에러 소스를 스트림에 도입할 수 있다. 프로그램 스트림은 적어도 매 100㎳마다 포함되는 프로그램 클럭 기준(PCR) 타임스탬프를 갖는 패킷에 타임베이스 정보를 반송한다. 그러나, 이하 상세히 설명하는 바와 같이, 다중화 프로세스 전에 패킷을 추가 또는 제거함으로써, 예를 들면, 버퍼(202) 또는 프로그램 버퍼(206, 216 또는 226)에서 원래의 프로그램이 변경되는 경우, 원래의 프로그램에 대한 타임베이스 정보는 부정확하게 될 수 있고 디코딩/역다중화 프로세스를 손상시킬 수 있다. 전체 프로그램에 대한 타임베이스 정보는 다중화하기 전에 조정될 필요가 있어, 재다중화기에서 비용과 지연을 초래한다.
프로그램의 일부 요소를 암호화하고, 워터마크를 추가하며, 전송 전에 추적 정보를 삽입하거나, 클로우즈 캡셔닝(closed captioning), 전자 프로그램 가이드 또는 대화형 서비스 데이터와 같은 기능을 삽입하기를 원하는 경우, 패킷 추가가 필요할 수 있다. 패킷의 제거는 프로그램의 일부 정보를 제거하도록 행해질 수 있다(오디오 채널과 같이). 전송 스트림에 자주 추가될 수 있는 다른 패킷은 DVB와 ATSC 정보를 포함하는 패킷과 같은 PSI 표에서 참조되지 않은 패킷(비참조 패킷)을 포함한다.
전송 스트림에서 모든 패킷은 ID(이하, "PID"라고 부름)를 포함한다. 프로그램은 PID 집합에 의해 형성된다. 특정 PID(0xlfff)는 전송 스트림에서 패딩(padding)으로서 사용되는 휴지 패킷 PID를 식별한다. 그러나, MPTS 전송 스트림에서, 휴지 패킷이 프로그램에 속하거나 패딩 패킷(다중화 프로세스의 결과)인지를 결정하는 어떤 보장된 방법도 없다. 전송 스트림은 전송 프로그램에 의해 반송되는 프로그램의 개수를 식별하고 각 프로그램의 PID를 열거하는 표(PSI 표)를 포함한다. 전송 스트림은 표에서 참조되지 않은 DVB와 ATSC 특정 패킷과 같은 상술한 비참조 패킷을 추가적으로 포함할 수 있다. 역다중화 프로세스 동안, 비참조 패킷은 개별 버퍼(도 2의 226)에 통상 전송된 후, 다중화기 MUX(208)에 의해 출력 전송 스트림에 다시 삽입된다. 그러나, 비참조 패킷의 원래 비트 레이트는 결정될 수 없다. 이러한 모호성은 휴지 패킷 프로그램과 함께 원래의 스트림의 타이밍 정보가 타협될 수 있는, 십중팔구는 아니더라도, 잠재성을 생성한다. 따라서, 종래 시스템은 역다중화 후에 다중화 프로세스 전의 원래의 CBR 프로그램을 VBR 프로그램으로 변환할 수 있다. 추출된 프로그램이 더 다중화되어야 하는 경우(예를 들면, 클라이언트로의 전송을 위해 서버(1)에서 더 다중화될 수 있는 서버(2)로부터 제공된 프로그램), VBR에서 CBR 스트림으로의 전환을 요구할 수 있다. 그러나, 역다중화된 프로그램은 원래의 비트 레이트가 알려진 경우 그 원래의 CBR 형태로만 재구성될 수 있다. 그러나, MPTS는 포함하는 프로그램의 비트 레이트에 대한 정보를 반송하지 않는다. 원래의 비트 레이트 정보는 다른 수단(예를 들면, 소프트웨어 애플리케이션)에 의해 역다중화기에 제공되어야 한다.
VBR 스트림의 재다중화에서 겪는 어려움 중 하나는 요청된 스트림을 모두 전송하기에 충분한 순시 대역폭이 있지 않을 수 있다는 점이다. 각 스트림의 대역폭 프로파일은 이들이 출력 채널에서 모두 적합할 수 있음을 보장하도록 조정될 수 있다. 그러나, 이러한 조정은 매우 처리 집약적인 작업이고 상당한 지연을 추가할 수 있는, 다중화 이전의 스트림의 실시간 처리를 요구한다.
본 발명의 목적은 전처리 또는 역다중화 프로그램 없이 CBR과 VBR 스트림의 재다중화를 가능하게 하는 시스템 및 방법을 제공하는 것이다.
본 발명의 다른 목적은 타임베이스 정보를 조정할 필요없이 부분적으로 변경된 프로그램의 다중화를 가능하게 하는 시스템 및 방법을 제공하는 것이다.
본 발명의 또다른 목적은 최소 두절(disruption)로 재다중화기를 이미 액티브인 MPEG-2 전송 스트림 경로에 삽입하는 것이다.
상기 및 다른 목적은 로컬 저장 또는 변경되어야 하는 경우에 입력 스트림으로부터 다중화된 프로그램만이 역다중화되는 재다중화기와 재다중화기 프로세스를 포함하는 본 발명에 의해 구현된다. 입력 스트림의 일부이고 출력 스트림의 일부가 되려는 임의의 다중화된 프로그램은 역다중화되지 않지만 단지 다른 다중화된 프로그램과 함께 전송 스트림에 추가되도록 전달된다. 본 발명의 다른 양태는 동적 비트 레이트 조정이 변경된 스트림에 대한 타임베이스 정보를 다시 계산할 필요성을 제거하도록 적용되는 다중화기 장치 및 프로세스를 포함한다.
본 발명은 이하 첨부한 도면을 참조하여 보다 상세히 설명한다.
도 1은 본 발명을 구현하는 환경의 블록도.
도 2는 종래 재다중화기의 개략도.
도 3은 본 발명의 제1 양태에 따른 재다중화기의 개략도.
도 4는 본 발명의 제1 양태에 따른 재다중화기에 대한 대표적인 프로세스 흐름도.
도 5는 본 발명의 제2 양태에 따른 다중화기를 나타내는 도면.
도 6은 본 발명의 제2 양태에 따른 다중화기에 대한 대표적인 프로세스 흐름도.
본 발명의 도 3의 재다중화기는 빠른 프로그램 삽입 시간, 낮은 지연 시간, 및 타이밍 정보의 보존을 제공하는 상술한 목적을 구현한다. 도 3에 나타낸 바와 같이, 재다중화기(315)는 입력 버퍼(302)로의 입력 스트림을 수신한다. 입력 버퍼(302)에서, 입력 스트림의 프로그램 컴포넌트 각각이 출력 스트림에 전달되어 복사 또는 드롭되어야 하는 지에 대한 결정이 행해진다. 버퍼 로직은 각 프로그램 컴포넌트에 대한 PID를 관측하여, 계약 일정을 나타내는 표시가 시청자가 프로그램 제공자에 관련됨을, 특정 시청자에 대하여 저장된 표 또는 다른 표시의 문의 시에 결정한다. 예를 들면, 시청자는 스페인어 오디오를 제공하는 제2 오디오 프로그램 컴포넌트를 요구하지 않을 수 있다. 따라서, 이 프로그램 컴포넌트는 출력 전송 스트림에 포함되도록 전달되지 않을 수 있다.
프로그램 컴포넌트를 출력 스트림에 전달하는 결정이 행해진 경우에는, 이 프로그램은 변경되지 않은 채로 결합기(325)에 전달한다. 입력 전송 스트림 내의 임의의 프로그램 컴포넌트가 스트림으로부터 제거되어야 한다고 결정된 경우에는, 이들 프로그램 컴포넌트에 대한 패킷의 패킷 위치는 전송 스트림으로부터 드롭되지 않는다. 그 대신, 패킷 위치는 바람직하게는 이 패킷에 대한 PID를 변경함으로써, 휴지 패킷으로 변경되어, 관련 패킷의 컨텐츠의 물리적 교체보다 처리 시간이 덜 필요하다. 이러한 방식으로, 원래 입력 전송 스트림에 대한 타이밍 정보는 변경되지 않는다. 결과적인 스트림은 출력 전송 스트림으로 전달되어야 하는 프로그램 컴포넌트에 대한 패킷과 휴지 패킷으로서 표시되는 패킷을 포함하며, 결합기(325)에 제공되고, 여기서 입력 버퍼(302)로부터의 프로그램 스트림은 다중화기(MUX; 328)로부터 프로그램 스트림과 결합된다. MUX(328)는 예를 들면 프로그램 버퍼(326 및 336)를 통해 로컬 스토리지로부터 국부 삽입되는 프로그램을 다중화한다. 국부 삽입된 프로그램은 입력 프로그램 버퍼(302)에서 입력 스트림으로부터 제거되고, DEMUX(304)에서 역다중화되어 변경되고(예를 들면, 제2 오디오 컴포넌트의 제거를 위해), 그 후 다중화기(328)에서 다중화를 위해 제공된 프로그램 컴포넌트일 수 있다. MUX(328)로부터의 국부 삽입된 프로그램 스트림을 입력 버퍼(302)로부터의 프로그램 스트림과 결합하는 경우, MUX(328)로부터의 프로그램 스트림의 패킷은 입력 버퍼로부터의 프로그램 스트림의 휴지 패킷에 대신하여 용이하게 삽입될 수 있다. 이 점에서, 명확하게, 패킷 컨텐츠가 대체될 뿐만 아니라 PID가 변경되거나 재매핑된다. 재매핑의 세부사항은 1999년 11월 23일에 출원된 발명의 명칭이 "METHOD AND APPARATUS FOR MPEG-2 PROGRAM ID RE-MAPPING FOR MULTIPLEXING SEVERAL PROGRAMS INTO A SINGLE TRANSPORT STREAM"인 공동 계류 특허출원(출원인 정리 번호 YOR919990416)에서 알 수 있으며, 상기 출원의 교시는 본 명세서에 참조문헌으로 포함된다. 프로그램 스트림이 결합된 경우, 출력 전송 스트림은 전송을 위해 출력 버퍼(310)에 제공된다.
입력 버퍼 로직은 입력 전송 스트림으로부터의 프로그램 컴포넌트가 입력 전송 스트림으로부터 제거되어야 한다고 결정한 경우에는, 상술한 바와 같이, 이를 제거될 프로그램 컴포넌트로부터 패킷이 이전에 차지한 패킷 위치가 휴지로서 표시되지만 전송 스트림으로부터는 물리적으로 제거되지 않음으로써, 전송 스트림에 포함된 타이밍 정보가 정확하다고 보장한다. 드롭되어야 하는 프로그램 컴포넌트로부터의 패킷 컨텐츠는 더 처리되지는 않는다. 반면에, 출력 스트림용으로 저장되거나 변경되어야 하는 프로그램 컴포넌트의 컨텐츠는 프로그램 스트림을 복사하고 이 스트림을 역다중화기(DEMUX; 304)에 제공함으로써 유지된다. 출력 스트림용으로 변경되어야 하는 경우에, 프로그램 컴포넌트는 DEMUX(304)에서 역다중화되고 도면 부호 326 및 336과 같은 프로그램 버퍼에 저장되어야 할 때 로컬 스토리지에 복사되는 프로그램 버퍼(306 및 316)에 전송된다.
입력 전송 스트림에 대한 타임베이스 정보를 유지함으로써, 본 발명은 헤드엔드와 같은 프로그램 제공자 위치에서 응답 시간을 상당히 개선한다. 출력 스트림용으로 의도한 입력 스트림으로부터 이들 프로그램을 역다중화 및 재다중화하는데 어떤 추가 시간도 소모되지 않는다. 또한, 스트림에 대한 타임베이스 정보를 조정하는데 어떤 추가 시간도 소모되지 않는다. 실제 재다중화 지연 시간이 감소할 뿐만 아니라, 본 발명의 재다중화기 중 하나를 액티브 스트리밍 경로에 삽입할 때 겪을 수 있는 스트리밍 경로에 따른 스트리밍의 방해 또한 후술하는 바와 같이 상당히 감소한다.
도 4는 도 3의 재다중화기에 대한 대표적인 프로세스 흐름도를 나타낸다. 바이패스 스위치가 개방되어 입력 전송 스트림이 재다중화기에 제공된다고 가정하면, 입력 스트림은 단계 401에서 입력 버퍼에 수신된다. 입력 스트림에 의해 반송된 프로그램 컴포넌트는 프로그램 컴포넌트의 PID를 사용하여 단계 402에서 식별되고, 각 프로그램 컴포넌트는 후술하는 바와 같이 처리된다. 단계 403에서는, 식별된 프로그램 컴포넌트가 출력 스트림 내에 포함되어야 하는지를 결정한다. 상술한 바와 같이, 이러한 결정은 표에 저장될 수 있는 시청자 프로그램 제공자 계약 관계 정보에 기초한다. 식별된 프로그램 컴포넌트가 출력 스트림 내에 포함되어야 하는 경우(예를 들면, 시청자가 이 프로그램 컴포넌트로의 액세스에 비용 지불에 동의했음이 확인된 경우), 식별되고 확인된 프로그램 컴포넌트로부터 프로그램 컨텐츠를 포함하는 패킷이 단계 405에서 나타낸 바와 같이 유지되고; 프로그램 스트림 내의 보다 많은 프로그램 컴포넌트가 결정 단계 406에서 결정된 바와 같이 평가되어야 하는 경우에는, 결정/확인 프로세스가 다음 식별된 프로그램 컴포넌트에 대하여 반복된다.
단계 403에서 결정된 바와 같이, 프로그램 컴포넌트가 출력 스트림에 포함되지 않아야 하는 경우, 이 프로그램 컴포넌트에 대한 프로그램 컨텐츠를 포함한 입력 스트림 내의 패킷 위치는 단계 404에서 휴지 패킷으로 변경된다. 상술한 바와 같이, 이 접합에서 휴지 패킷 PID으로 각 패킷에 대한 PID를 단순 교체하는 것이 바람직하다. 또한, 보다 많은 식별된 프로그램 컴포넌트가 평가되어야 하는 지를 결정한다. 단계 406에서의 결정이 평가할 더 이상의 프로그램 컴포넌트가 없다는 것이면, 단계 405에서 보유한 패킷과 단계 404에서 휴지 패킷으로 표시된 패킷을 포함하는 결과적인 변형 입력 스트림이 그 후 단계 407에서 스트리밍되고 단계 408에서 MUX(328)로부터의 출력에 결합된다. 여기서, 컨텐츠 또는 PID 정보에 대해서만 변경되고 타이밍 정보에 대해서는 변형되지 않음이 인식된다. 어떤 패킷도 입력 스트림으로부터 물리적으로 제거되지 않는다. 변형된 입력 스트림은 출력 전송 스트림으로 변경되지 않은 채 전달되어야 하는 프로그램 컴포넌트의 컨텐츠를 갖는 패킷과 휴지 패킷이거나 휴지 패킷으로서 표시되는 패킷을 포함한다. 패킷 대체 컴포넌트는 바람직하게는 이러한 패킷의 PID를 휴지 PID(Oxlfff)로 변경하고 이의 컨텐츠를 대체하지 않음으로써 이 패킷들을 휴지 패킷으로 표시할 수 있다. 결합기에서, 휴지 패킷으로 표시된 패킷은 출력 전송 스트림에 삽입되어야 하는 다중화기로부터 프로그램 컴포넌트의 컨텐츠를 갖는 패킷, 또는 휴지 패킷이 출력 전송 스트림에 포함되어야 하는 경우에 실제 휴지 패킷으로 대체될 수 있다. 결합기는 휴지 패킷의 컨텐츠를 물리적으로 대체하는 휴지 패킷을 생성하는 휴지 패킷 생성기(도시 생략)를 포함하되, 패킷 대체 컴포넌트가 단순 변경된다.
출력 스트림에 포함되지 않은 프로그램 컴포넌트에 대해서, 결정 단계 410에서, 프로그램 컴포넌트가 더 처리되거나 드롭되어야 하는지를 결정하도록 프로그램 컨텐츠가 평가된다. 이러한 결정은 예를 들면 빌링 기간 동안 여러번 시청자에게 제공될 수 있는 페이 퍼 뷰 프로그램을 저장하는 제공자 스케줄 및 정책에 기초할 수 있다. 임의의 필요한 복사 동작이 프로그램 컴포넌트를 드롭할 지의 결정 이전에 행해지는 경우, 입력 버퍼에서의 결정("출력에서 포함?", "복사?" 및 "드롭?") 은 패킷별로 실행되고 임의의 순서로 행해질 수 있음이 당업자에게 명백할 수 있다.
프로그램 컴포넌트가 더 처리되는 경우, 단계 411에서 복사되고, 단계 412에서 역다중화되며, 워터마킹 또는 암호화와 같은 임의의 처리(필요시)를 위해 단계 413에서 프로그램 버퍼에 전송된 후, 단계 414에서 저장된다. 출력 스트림으로의 제공을 위해 더 처리되어야 하는 프로그램 컴포넌트는 단계 411에서 복사되고, 단계 412에서 역다중화되며, MUX(328)에서 다중화되기 전의 처리를 위해 도면 부호 326 또는 336과 같은 버퍼에 전송된다. 단계 410에서 결정된 바와 같이 복사되지 않은 프로그램 패킷이 단계 420에서 폐기된다.
본 발명의 재다중화기는 최소 지연으로 스트림 처리를 제공한다. 또한, 본 발명의 재다중화기는 최소 간섭 또는 지연으로 액티브 MPEG-2 전송 스트림 경로에 도입될 수 있다. 도 2를 참조하면, 통상의 재다중화기는 재다중화기의 입력 포트(380)를 그 출력 포트(390)에 직접 접속하는 수동 바이패스 장치(301)를 갖는다. 이는 내부 고장 또는 급전 시퀀스의 경우에 MPEG-2 전송 경로에서 재다중화기를 격리시키면서 동작 경로를 유지한다. 삽입 프로세스 동안, 바이패스 장치는 개방되어 재다중화기가 경로의 일부가 된다. 재다중화기의 MPEG-2 전송 경로로의 삽입 동안 야기되는 분열은 재다중화기 자체 내의 지연 시간에 직접 비례한다. 따라서, 도 3에서 설명한 본 발명의 재다중화기의 삽입은 재다중화기 내의 낮은 지연 시간으로 인해 높은 투명도로 최소한의 분열을 야기한다. 본 발명의 재다중화기(315)를 전송 스트림에 도입하는 유효 지연은, 프로그램 컴포넌트가 출력 스트림에 삽입되어 변 경되지 않는 경우에 버퍼(302)가 역다중화를 위해 프로그램 컴포넌트를 전송할 수 없기 때문에, 버퍼를 스트림에 삽입함으로써 도입될 수 있는 지연과 거의 동일하다.
본 발명의 재다중화기(315)에 대한 삽입 프로세스를 이하 도 3을 참조하여 상세히 설명한다. 입력 비트 스트림은, 삽입 스위치(385)가 개방되고 어떤 스트림도 재다중화기로부터 출력 스트림으로 전달할 수 없는 경우에는, 바이패스 스위치(301)가 닫힌 경우에도 분석을 위해 스트림을 복사할 수 있는 하드웨어 장치, 입력 버퍼(302)에 의해 검출된다. 바이패스 스위치는 재다중화기의 외부에 있거나 도시한 바와 같이 재다중화기 내부에 배치될 수 있음이 인식되어야 한다. 바이패스 스위치가 닫힌 동안, 입력 포트에서 출력 포트로 패킷을 이동하는 처리율 세션이 자동 개시된다. 입력 및 출력 포트는 출력 비트 레이트가 적어도 입력과 동일한 경우에는 상이한 비트 레이트를 가질 수 있다. 입력 스트림에 존재하는 모든 매핑은 단지 단일 프로그램을 포함하는 것처럼 출력 전송 스트림에 매핑되어 출력 스트림에 이동된다. 이 패킷은 입력 스트림에 차지할 때 동일한 시퀀스와 상대 위치를 유지한다. 이러한 특징은 삽입 프로세스 동안 임의의 다운스트림 장치에 완전한 투명성을 보장한다.
다중화된 입력 스트림이 입력 포트(380)에서 재다중화기(315)로 그리고 재다중화기에서 출력 포트(390)로 전달되는 경우와 같이, 바이패스 스위치가 개방되고 삽입 스위치(385)가 닫힌 경우에는, 재다중화기는 초기에는 재다중화기에서 출력 포트로 모든 프로그램 컴포넌트를 전달한다. 입력 버퍼(302)는 스트림으로부터 PID 정보를 수집한다. 상술한 바와 같이, 입력 버퍼(302)는 스위치(301)가 닫히고 삽입 스위치(395)가 개방일 때 PID 정보를 수집한다. 입력 버퍼 로직은 어느 프로그램 컴포넌트가 이 PID 정보에 기초하여 출력 스트림에 포함되어야 하는 지를 결정한다. 그 후, 입력 버퍼는 출력 스트림에서 변경되지 않게 포함되어야 하는 입력 스트림으로부터 역다중화없이 출력 버퍼(310)에 모든 프로그램 컴포넌트를 전달하면서, 상술한 바와 같이 출력 스트림에 포함되지 않아야 하는 프로그램 컴포넌트에 대한 임의의 패킷을 휴지로서 표시함으로써, 입력 스트림에 대한 타이밍 정보를 유지한다.
로컬 프로그램 컴포넌트를 출력 스트림에 추가하는 상술한 재다중화기의 역할에 더하여, 출력 스트림에 이용 가능한 적절한 대역폭이 있는 경우에는, MPEG-2 재다중화기의 다른 기능은 다음을 포함한다: 입력 스트림을 필터링하여, 변경, 저장 또는 드롭을 위해 입력 스트림에 존재한 프로그램 컴포넌트를 제거; 휴지 패킷을 사용하는 제거, 대체 등, 특정 프로그램을 다른 것으로 대체한 후, 휴지 패킷에 대신하여 새로운 프로그램 정보를 출력 스트림에 결합; 및 데이터를 추가, 제거 또는 대체함으로써 프로그램 컴포넌트를 변형. 프로그램 스트림에서 데이터의 추가, 제거 또는 대체의 후자의 기능은 통상 스트림의 다중화와 함께 실행된다. 상술한 바와 같이, 다중화 동안, 그리고 본 발명에 있어서 입력 전송 스트림을 결합 이전에 패킷의 추가 또는 제거는 스트림에 대한 타임베이스 정보를 변경하며, 스트림 변경은 무시될 수 없다.
도 5를 참조하면, 선 다중화(pre-multiplexing) 처리 또는 다중화 처리 동안 패킷의 추가 또는 제거에 의해 겪게 되는 타이밍 문제를 해결하는 다중화기 구현이 도시되어 있다. 본 발명의 다중화기는 상술한 본 발명의 재다중화기에 포함될 수 있거나, 임의의 MPEG-2 다중화 환경에서 구현될 수 있다. 원래는 프로그램의 일부인 타이밍 정보가 유효하지 않을 수 있기 때문에, 그리고 역다중화된 프로그램은 원래의 타이밍 정보를 획득하지 않고 재구성될 수 없기 때문에, 역다중화기로의 개별 전송에 의해 타임베이스 정보를 조정하고 프로그램에 대한 원래의 타임베이스 정보를 제공하는 것이 통상 필요하다. 본 발명의 다중화기는 역다중화된 프로그램의 선처리 없이 CBR과 VBR의 다중화를 제공할 수 있다. 또한, 이는 타임베이스 정보를 조정할 필요없이 부분적으로 변경된 프로그램 컴포넌트의 다중화 및/또는 재다중화를 가능하게 한다.
도 5에 도시한 바와 같이, 프로그램 컴포넌트가 스트림 변경 컴포넌트(521)에서 변경된 후에, 워터마킹, 개선된 id, 대화형 서비스, 오디오 추적 제거, 클로우즈 캡셔닝 등을 위한 패킷의 실시간 삽입 또는 제거에 의해, 프로그램 스트림은 실행 중인 검출기(522), 프로그램 버퍼(526, 536, 및 546), 다중화기(528), 스케줄러(550) 및 PCR 조정 컴포넌트(560)로 이루어진 블록(520)으로서 나타낸 본 발명의 시스템에 의한 처리를 위해 제공된다.
동작 시에, 실행 중인 검출기(522)는 변경된 프로그램 스트림을 샘플링하여 스트림의 각 부분에 대한 비트 레이트를 결정한다. 상술한 바와 같이, 스트림은 프로그램 버퍼(526 및 536)에서 나타낸 바와 같은 가변 비트 레이트(VBR)와 프로그램 버퍼(546)에서 나타낸 바와 같은 상수 비트 레이트(CBR)일 수 있다. 무변경 CBR 스 트림에 있어서, 비트 레이트는 변하지 않을 수 있다. 그러나, VBR 스트림에 있어서는, 비트 레이트는 예측가능하지 않다. 검출기(522)가 하는 것은 두 개의 연속 PCR 패킷 간의 바이트 수와 이들 두 개의 연속 PCR 값에 의해 반송되는 시간 정보를 사용하여 프로그램의 전송 비트 레이트를 결정한다. 순시 비트 레이트는 패킷들 간의 거리를 시간 정보의 변경으로 나눔으로써 결정될 수 있다. 명확하게, CBR 스트림에서는 결과적인 값이 임의의 두 개의 PCR 값에 대하여 항상 동일할 수 있지만, VBR 스트림에 대한 순시 비트 레이트는 두 개의 PCR 값에 따라 변할 수 있다.
각 프로그램 버퍼(526, 536, 546)에 대하여 도 5에서 제공된 "대역폭 x 시간" 그래프는 프로그램 A, B 및 Z를 전송하는 세그먼트별 대역폭 요건을 나타낸다. 그래프로부터 알 수 있는 바와 같이, 대역폭 요건은 A 및 B와 같은 VBR 프로그램에 대하여 연속적으로 변할 수 있지만, CBR 프로그램에 대한 대역폭 요건은 일정하다.
개별 프로그램의 모든 부분을 전송하는데 필요한 순시 비트 레이트를 포함하는 결과적인 값은 스케줄러(550)에 제공되지만, 프로그램 패킷은 다중화기(528)에 제공된다. 스케줄러에서, 비트 레이트는 전송 스트림에 예정된 모든 프로그램을 전송하기에 이용 가능한 순시 대역폭이 충분하지 않는 조건을 검출하여 이를 분리하는데 사용될 수 있다. 이 스케줄러는 프로그램이 전송되어야 하는 채널에 대한 채널 대역폭을 감시한다. 채널 대역폭이 출력 전송 스트림에서 모든 프로그램을 전송하기 위해 필요한 비트 레이트보다 적은 경우에는, 스케줄러는 동적 비트 레이트 조정을 수행하여 채널 상으로 유효하게 전송될 수 있는 프로그램 정보의 양을 제어할 수 있다. 동적 비트 레이트 조정은 그 후 후술하는 다중화와 PCR 재스탬핑과 함 께 사용되어 하나 이상의 프로그램을 조정하여 모든 프로그램을 출력 스트림에 적합하게 할 수 있다. 동적 비트 레이트 조정은, 스케줄러(550)로부터 제공된 출력에 기초하여 다중화기(528)에 의해 수행되는 바와 같이 특정 프로그램 컨텐츠 패킷이 전송될 수 있을 때 시프트하는 타임 시프팅일 수 있다. 타임 시프트 접근은 무손실이지만, 시프팅된 패킷이 PCR 정보를 포함하는 경우에는 PCR 재스탬핑을 요구할 수 있다. 동적 비트 레이트 조정에 대한 다른 접근법은 프레임 대체로서, 이는 손실있는 접근법이다. 동적 비트 레이트 조정이 전체 이용 가능한 대역폭에서 모든 요청된 프로그램을 적합하게 하기에는 충분하지 않은 경우, 스트림 변경 컴포넌트(521)에 제공된 스케줄러 출력에 기초하여 하나 이상의 프로그램에 대한 선택된 프레임이 드롭되거나 대체될 수 있다. 미리 선정된 어느 접근법이라도 사용하여, 스케줄러(550)는 프로그램 패킷을 처리하여 이용 가능한 대역폭을 가장 효과적으로 사용할 수 있는 방식을 나타내는 신호를 다중화기에 제공한다.
동시에, 스케줄러(550)는 PCR 조정 컴포넌트(560)에 신호를 제공한다. 스케줄러 신호는 적어도 1 패킷 지연을 요구할 수 있기 때문에, 그리고, 지연된 패킷(들)이 PCR 정보를 반송할 수 있기 때문에, 스케줄링 변화에 의해 영향을 받은 전송 스트림에서 각 프로그램에 대한 PCR 정보를 조정할 필요가 있다. 따라서, PCR 조정 컴포넌트(560)는 PCR 문제를 제거할 타이밍 정보를 사용하여 패킷을 재스탬핑할 수 있다.
도 6은 본 발명의 다중화에 대한 대표적인 프로세스 흐름도를 나타낸다. 단계 601에서 패킷의 삽입 또는 제거 후에, 이러한 처리가 필요한 경우에는, 비트 레 이트가 단계 602에서 실행 중인 비트 레이트 검출기에서 검출된다. 그 후, 프로그램 스트림은 다중화기에 제공되는 반면에, 비트 레이트는 단계 603에서 스케줄러에 제공된다. 스케줄러에서, 채널 대역폭은 단계 604에서 검출되고, 채널 대역폭과 비트 레이트에 기초하여, 결정 단계 605에 나타낸 바와 같이, 모든 프로그램 스트림이 조정 없이 이용 가능한 스트림 상에서 전송될 수 있는지 결정한다. 채널 대역폭이 충분한 경우에는, 프로세스는 단계 607에서 지속된다. 그러나, 대역폭이 충분하지 않은 경우에는, 스케줄러는 단계 606에서 동적 비트 레이트 조정에 대한 선택을 평가하여 그 출력을 단계 607에서 다중화기와 PCR 조정에 이의 출력을 제공한다. 스케줄러 출력은 어떤 동적 비트 레이트 조정도 필요하지 않은 경우에도 제공되는 것으로 나타낸다. 명확하게, 대역폭이 충분한 것으로 판정되는 경우에 스트림 조정 컴포넌트(521)에 출력되는 임의의 스케줄러를 생성하지 않으면서 동일한 기능을 여전히 달성하는 것과 같이, 프로세스에 대한 변형이 행해질 수 있다.
단계 608에서, 다중화기는 필요시 동적 비트 레이트 조정에 대한 임의의 스케줄러 출력에 기초하여 스트림을 출력 전송 스트림으로 다중화한다. 단계 609에서, 임의의 비트 레이트 조정으로 인해 PCR 조정이 요구되는 지를 결정한다. 대역폭이 충분하거나 어떤 PCR 정보도 타협되지 않는다는 이유로 인해, 어떤 PCR 조정도 필요하지 않는 경우에는, 프로세스는 단계 615에서 전송을 진행한다. 그러나, PCR 조정이 필요한 경우에는 단계 610이 수행되고, 그 후 스트림은 단계 615에서 전송된다.
변형된 입력 스트림과, 도 5에 나타낸 본 발명의 다중화기에 의해 다중화된 다중화 스트림이 출력 스트림으로 결합되어야 하는 구현예에서, 스케줄러는 출력 전송 스트림의 전송에 대한 채널 대역폭뿐만 아니라 변형된 입력 스트림에 이용 가능한 대역폭을 모두 평가할 수 있다. 더욱이, PCR 조정은 다중화된 스트림에만 대한 것이 아닌 결합된 출력 전송 스트림에 대하여 행해질 수 있다.
본 발명은 여러 구체적인 실시예를 참조하여 설명하였다. 당업자는 첨부한 청구범위에서 나타낸 바와 같이 본 발명의 취지 및 범위를 벗어나지 않으면서 변형이 행해질 수 있음을 인식할 것이다.

Claims (37)

  1. 멀티미디어 입력 스트림을 처리하는 재다중화기(remultiplexer) 장치로서,
    프로그램 스트림을 역다중화하는 역다중화기 컴포넌트와;
    하나보다 많은 프로그램을 포함하는 입력 스트림을 수신하는 적어도 하나의 입력 버퍼로서, 각각의 프로그램은 관련된 패킷 식별자(PID)를 각각 갖는 복수의 프로그램 컴포넌트를 갖는 것이며, 상기 적어도 하나의 입력 버퍼는 상기 프로그램 컴포넌트에 대한 PID에 기초하여 프로그램 컴포넌트를 식별하는 식별자와; 식별된 프로그램 컴포넌트가 재다중화기 출력 스트림에 변경없이 포함되어야 하는지, 드롭되어야 하는지, 또는 추가 처리를 위해 복사되어야 하는지를 결정하는 결정 수단과; 상기 재다중화기 출력 스트림 내에 포함되지 않아야 하는 프로그램 컴포넌트 컨텐츠를 포함하는 입력 스트림 내의 패킷을 휴지 패킷으로 표시하여 변형된 입력 스트림을 생성하는 패킷 대체 컴포넌트로서, 상기 재다중화기 출력 스트림에 포함되지 않아야 할 프로그램 컴포넌트 컨텐츠를 포함하는 입력 스트림 내의 각 패킷에 대하여 상기 PID만을 변경하여 상기 패킷이 대체될 수 있는 휴지 패킷임을 나타내는 것인, 상기 패킷 대체 컴포넌트와; 출력을 위해 상기 변형된 입력 스트림을 제공하고, 드롭되어야 하는 프로그램 컴포넌트를 폐기하며, 추가 처리되어야 하는 프로그램 컴포넌트를 복사하는 버퍼를 포함하는 것인, 상기 적어도 하나의 입력 버퍼와;
    상기 재다중화기 출력 스트림에 포함시키기 위해 로컬 프로그램 컴포넌트를 다중화된 스트림으로 다중화하는 다중화기와;
    상기 다중화된 스트림을 상기 변형된 입력 스트림과 결합하여 상기 재다중화기 출력 스트림을 생성하는 결합기를 포함하는 재다중화기 장치.
  2. 제1항에 있어서, 상기 결합기는 상기 변형된 입력 스트림의 휴지 패킷의 컨텐츠를 상기 다중화된 스트림의 컨텐츠로 대체하기에 적합한 것인 재다중화기 장치.
  3. 제2항에 있어서, 상기 입력 스트림은 프로그램 컴포넌트 컨텐츠 이외의 컨텐츠를 포함하는 비참조 패킷을 포함하고,
    상기 패킷 대체 컴포넌트는 상기 변형된 입력 스트림에 있어서 상기 입력 스트림에서의 상기 비참조 패킷의 타이밍 위치를 유지하는 것인 재다중화기 장치.
  4. 삭제
  5. 삭제
  6. 제1항에 있어서, 상기 결정 수단은 사용자 프로그램 액세스에 대한 저장된 정보에 기초하여 상기 결정을 수행하는 것인 재다중화기 장치.
  7. 제1항에 있어서, 상기 프로그램 컴포넌트의 추가 처리는 저장을 포함하고,
    상기 재다중화기 장치는 상기 재다중화기에서 입력 프로그램 컴포넌트를 저장하는 프로그램 스토리지를 더 포함하는 것인 재다중화기 장치.
  8. 재다중화기용 입력 버퍼로서,
    하나보다 많은 프로그램으로 이루어진 입력 스트림을 수신하는 수신 수단으로서, 각각의 프로그램은 복수의 프로그램 컴포넌트를 포함하고, 각 컴포넌트는 관련 패킷 식별자(PID)를 갖는 것인 수신 수단과;
    상기 프로그램 컴포넌트에 대한 PID에 기초하여 프로그램 컴포넌트를 식별하는 식별자 수단과;
    식별된 프로그램 컴포넌트가 상기 재다중화기 출력 스트림에서 변경없이 포함되어야 하는지, 드롭되어야 하는지 또는 추가 처리를 위해 복사되어야 하는 지를 결정하는 결정 수단;
    상기 재다중화기 출력 스트림 내에 포함되지 않아야 하는 프로그램 컴포넌트 컨텐츠를 포함하는 입력 스트림 내의 패킷을 휴지 패킷으로 표시하여 변형된 입력 스트림을 생성하는 패킷 대체 수단으로서, 상기 패킷 대체 컴포넌트는 상기 재다중화기 출력 스트림에 포함되지 않아야 할 프로그램 컴포넌트 컨텐츠를 포함하는 입력 스트림 내의 각 패킷에 대하여 상기 PID만을 변경하여 상기 패킷이 대체될 수 있는 휴지 패킷임을 나타내는 것인, 상기 패킷 대체 수단; 및
    출력용으로 상기 변형된 입력 스트림을 제공하고, 드롭되어야 하는 프로그램 컴포넌트를 폐기하며, 추가 처리되어야 하는 프로그램 컴포넌트를 복사하는 버퍼 수단을 포함하는 재다중화기용 입력 버퍼.
  9. 제8항에 있어서, 상기 입력 스트림은 프로그램 컴포넌트 컨텐츠 이외의 컨텐츠를 포함하는 비참조 패킷을 더 포함하고,
    상기 패킷 대체 컴포넌트는 상기 변형된 입력 스트림에 있어서 상기 입력 스트림에서의 상기 비참조 패킷의 타이밍 위치를 유지하는 것인 재다중화기용 입력 버퍼.
  10. 삭제
  11. 삭제
  12. 제8항에 있어서, 상기 결정 수단은 사용자 프로그램 액세스에 대한 저장된 정보에 기초하여 상기 결정을 수행하는 것인 재다중화기용 입력 버퍼.
  13. 다중화된 멀티미디어 입력 스트림을 처리하는 방법으로서,
    하나보다 많은 프로그램으로 이루어진 입력 스트림을 수신하는 단계로서, 각 프로그램은 복수의 프로그램 컴포넌트를 갖고, 각 컴포넌트는 관련 패킷 식별자(PID)를 갖는 것인 입력 스트림 수신 단계와;
    상기 프로그램 컴포넌트에 대한 PID에 기초하여 프로그램 컴포넌트를 식별하는 단계와;
    식별된 프로그램 컴포넌트가 출력 전송 스트림에서 변경없이 포함되어야 하는지, 드롭되어야 하는지, 또는 추가 처리를 위해 복사되어야 하는지를 결정하는 단계와;
    상기 출력 스트림에 포함되지 않아야 할 프로그램 컴포넌트 컨텐츠를 포함하는 입력 스트림 내의 각 패킷에 대하여 상기 PID만을 변경하여 상기 패킷이 대체될 수 있는 휴지 패킷임을 나타냄으로써, 상기 출력 스트림에 포함되지 않아야 하는 프로그램 컴포넌트 컨텐츠를 포함하는 입력 스트림 내의 패킷을 휴지 패킷으로 표시하여 변형된 입력 스트림을 생성하는 단계와;
    추가 처리되어야 하는 프로그램 컴포넌트를 복사하는 단계를 포함하는 다중화된 멀티미디어 입력 스트림 처리 방법.
  14. 제13항에 있어서, 상기 추가 처리되어야 하는 프로그램 컴포넌트를 역다중화하는 단계를 더 포함하는 다중화된 멀티미디어 입력 스트림 처리 방법.
  15. 제14항에 있어서, 상기 추가 처리는 상기 역다중화된 프로그램 컴포넌트를 저장하는 단계를 포함하는 것인 다중화된 멀티미디어 입력 스트림 처리 방법.
  16. 제14항에 있어서, 상기 추가 처리는 상기 출력 전송 스트림 내에 포함되도록 상기 프로그램 컴포넌트를 변경하는 단계를 포함하는 것인 다중화된 멀티미디어 입력 스트림 처리 방법.
  17. 제16항에 있어서, 상기 변경된 프로그램 컴포넌트를 다중화된 스트림으로 다중화하는 단계를 더 포함하는 다중화된 멀티미디어 입력 스트림 처리 방법.
  18. 제17항에 있어서, 상기 변형된 입력 스트림과 상기 다중화된 스트림을 결합하여 상기 출력 전송 스트림을 생성하는 단계를 더 포함하는 다중화된 멀티미디어 입력 스트림 처리 방법.
  19. 제17항에 있어서, 상기 다중화 단계는,
    프로그램 스트림의 순시 비트 레이트를 동적으로 결정하는 단계와;
    프로그램 스트림을 다중화하여 출력 전송 스트림을 생성하는 단계와;
    상기 출력 전송 스트림에 대한 채널 대역폭을 결정하는 단계와;
    상기 채널 대역폭과 상기 순시 비트 레이트에 기초하여 동적 비트 레이트 조정을 수행하는 단계와;
    상기 동적 비트 레이트 조정에 기초하여 상기 출력 전송 스트림을 타임 스탬 핑하는 단계를 포함하는 것인 다중화된 멀티미디어 입력 스트림 처리 방법.
  20. 하나보다 많은 프로그램을 포함하는 멀티미디어 출력 전송 스트림을 제공하는 다중화기 시스템으로서,
    프로그램 스트림의 순시(instantaneous) 비트 레이트를 결정하는 동적 비트 레이트 검출기와;
    프로그램 스트림을 다중화하여 출력 전송 스트림을 생성하는 다중화기와;
    채널 대역폭을 결정하고, 상기 채널 대역폭과 상기 순시 비트 레이트에 기초하여 동적 비트 레이트 조정을 평가하며, 상기 출력 전송 스트림을 생성하는 경우에 상기 다중화기에 대한 스케줄러 출력을 제공하여 상기 동적 비트 레이트 조정을 수행하는 스케줄러와;
    상기 스케줄러 출력에 기초하여 상기 출력 전송 스트림을 타임 스탬핑하는 PCR 조정 컴포넌트를 포함하는 다중화기 시스템.
  21. 제20항에 있어서, 상기 프로그램 스트림을 상기 다중화기에 스트리밍하는 프로그램 버퍼를 더 포함하는 다중화기 시스템.
  22. 제20항에 있어서, 상기 다중화기로의 제공 이전에 상기 프로그램 스트림을 선택적으로 조정하는 적어도 하나의 스트림 변경 컴포넌트를 더 포함하는 다중화기 시스템.
  23. 제22항에 있어서, 상기 적어도 하나의 스트림 변경 컴포넌트는 상기 스케줄러 출력을 수신하기에 적합하고,
    상기 프로그램 스트림의 선택적 조정은 상기 스케줄러 출력에 기초하여 수행되는 것인 다중화기 시스템.
  24. 하나보다 많은 프로그램을 포함하는 멀티미디어 출력 전송 스트림을 다중화기 시스템이 제공하는 다중화 방법으로서,
    프로그램 스트림의 순시 비트 레이트를 동적으로 결정하는 단계와;
    프로그램 스트림을 다중화하여 출력 전송 스트림을 생성하는 단계와;
    상기 출력 전송 스트림에 대한 채널 대역폭을 결정하는 단계와;
    상기 채널 대역폭과 상기 순시 비트 레이트에 기초하여 동적 비트 레이트 조정을 수행하는 단계와;
    상기 동적 비트 레이트 조정에 기초하여 상기 출력 전송 스트림을 타임 스탬핑하는 단계를 포함하는 다중화 방법.
  25. 제24항에 있어서, 상기 다중화기 시스템은 스케줄러를 포함하고,
    상기 스케줄러는,
    상기 순시 비트 레이트와 상기 채널 대역폭에 기초하여 동적 비트 레이트 조정을 결정하는 단계와;
    스케줄러 출력을 생성하는 단계와;
    상기 스케줄러 출력을 상기 다중화기에 제공하여 상기 다중화기가 동적 비트 레이트 조정을 수행하여 상기 출력 전송 스트림을 생성하는 단계를 수행하는 것인다중화 방법.
  26. 제25항에 있어서, 상기 다중화기로의 제공 이전에 상기 프로그램 스트림을 선택적으로 조정하는 단계를 더 포함하는 다중화 방법.
  27. 제26항에 있어서, 상기 프로그램 스트림을 선택적으로 조정하는 단계는 상기 스케줄러 출력에 기초하여 수행되는 것인 다중화 방법.
  28. 하나보다 많은 프로그램으로부터의 패킷을 갖는 다중화된 입력 스트림을 포함하는 액티브 전송 스트림의 처리 경로에 재다중화기를 삽입하는 방법으로서, 각각의 프로그램은 관련 패킷 식별자(PID)를 갖는 복수의 프로그램 컴포넌트를 갖고, 바이패스 스위치가 상기 스트림에 대한 입력 포트와 출력 포트 사이에 제공되는 것인 재다중화기 삽입 방법으로서,
    상기 입력 포트와 상기 출력 포트 사이에 상기 재다중화기를 접속하는 단계와;
    상기 바이패스 스위치를 개방하여 상기 다중화된 입력 스트림이 상기 입력포트로부터 상기 재다중화기로 그리고 상기 재다중화기로부터 상기 출력 포트로 전달되는 단계와;
    상기 재다중화기로부터 상기 출력 포트로 모든 프로그램 컴포넌트를 초기 전달하는 단계와;
    상기 스트림으로부터 PID 정보를 수집하는 단계와;
    상기 PID 정보에 기초하여 출력 스트림 내에 어떤 프로그램 컴포넌트가 포함되어야 하는지를 결정하는 단계와;
    상기 출력 스트림에 변경없이 포함되어야 하는 상기 입력 스트림으로부터의 모든 프로그램 컴포넌트를 역다중화없이 전달(passing)하는 단계와;
    상기 입력 스트림에 대한 타이밍 정보를 유지하며, 상기 출력 스트림에 포함되지 않아야 할 프로그램 컴포넌트를 포함하는 입력 스트림 내의 각 패킷에 대하여 상기 PID만을 변경하여 상기 패킷이 대체될 수 있는 휴지 패킷임을 나타내는 단계를 포함하는 재다중화기 삽입 방법.
  29. 삭제
  30. 삭제
  31. 제28항에 있어서, 추가 처리되어야 하는 프로그램 컴포넌트를 역다중화하는 단계를 더 포함하는 재다중화기 삽입 방법.
  32. 제31항에 있어서, 상기 추가 처리는 상기 역다중화된 프로그램 컴포넌트를 저장하는 단계를 포함하는 것인 재다중화기 삽입 방법.
  33. 제31항에 있어서, 상기 추가 처리는 상기 출력 전송 스트림 내에 포함되도록 상기 프로그램 컴포넌트를 변경하는 단계를 포함하는 것인 재다중화기 삽입 방법.
  34. 제33항에 있어서, 상기 변경된 프로그램 컴포넌트를 다중화된 스트림으로 다중화하는 단계를 더 포함하는 재다중화기 삽입 방법.
  35. 제34항에 있어서, 상기 변형된 입력 스트림과 상기 다중화된 스트림을 결합하여 상기 출력 전송 스트림을 생성하는 단계를 더 포함하는 재다중화기 삽입 방법.
  36. 제34항에 있어서, 상기 다중화 단계는,
    프로그램 스트림의 순시 비트 레이트를 동적으로 결정하는 단계와;
    프로그램 스트림을 다중화하여 출력 전송 스트림을 생성하는 단계와;
    상기 출력 전송 스트림에 대한 채널 대역폭을 결정하는 단계와;
    상기 채널 대역폭과 상기 순시 비트 레이트에 기초하여 동적 비트 레이트 조정을 수행하는 단계와;
    상기 동적 비트 레이트 조정에 기초하여 상기 출력 전송 스트림을 타임 스탬핑하는 단계를 포함하는 것인 재다중화기 삽입 방법.
  37. 멀티미디어 입력 스트림을 처리하는 재다중화기 장치로서,
    프로그램 스트림을 역다중화하는 역다중화기 컴포넌트와;
    하나보다 많은 프로그램을 포함하는 입력 스트림을 수신하는 적어도 하나의 입력 버퍼로서, 각각의 프로그램은 관련된 패킷 식별자(PID)를 각각 갖는 복수의 프로그램 컴포넌트를 갖는 것이고, 상기 적어도 하나의 입력 버퍼는 상기 프로그램 컴포넌트에 대한 PID에 기초하여 프로그램 컴포넌트를 식별하는 식별자와; 식별된 프로그램 컴포넌트가 출력 스트림에서 변경없이 포함되어야 하는지, 드롭되어야 하는지, 또는 추가 처리를 위해 복사되어야 하는지를 결정하는 결정 수단과; 상기 출력 스트림 내에 포함되지 않아야 하는 프로그램 컴포넌트 컨텐츠를 포함하는 입력 스트림 내의 패킷을 휴지 패킷으로 표시하여 변형된 입력 스트림을 생성하는 패킷 대체 컴포넌트로서, 상기 재다중화기 출력 스트림에 포함되지 않아야 할 프로그램 컴포넌트 컨텐츠를 포함하는 입력 스트림 내의 각 패킷에 대하여 상기 PID만을 변경하여 상기 패킷이 대체될 수 있는 휴지 패킷임을 나타내는 것인, 상기 패킷 대체 컴포넌트와; 출력을 위해 상기 변형된 입력 스트림을 제공하고, 드롭되어야 하는 프로그램을 폐기하며, 추가 처리되어야 하는 프로그램 컴포넌트를 복사하는 버퍼를 포함하는 것인, 상기 적어도 하나의 입력 버퍼와;
    프로그램 스트림의 순시 비트 레이트를 결정하는 동적 비트 레이트 검출기와;
    프로그램 스트림을 다중화하여 다중화된 스트림을 생성하는 다중화기와;
    상기 다중화된 스트림을 상기 변형된 입력 스트림과 결합하여 상기 출력 스트림을 생성하는 결합기와;
    이용 가능한 대역폭을 결정하고, 상기 이용 가능한 대역폭과 상기 순시 비트 레이트에 기초하여 동적 비트 레이트 조정을 평가하며, 상기 다중화된 스트림과 상기 출력 스트림 중 적어도 하나를 생성하는 경우에 동적 비트 레이트 조정에 대한 스케줄러 출력을 제공하는 스케줄러와;
    상기 스케줄러 출력에 기초하여 상기 다중화된 스트림과 상기 출력 스트림 중 적어도 하나를 타임 스탬핑하는 PCR 조정 컴포넌트를 포함하는 재다중화기 장치.
KR1020057016132A 2003-03-24 2004-03-24 Mpeg-2 스트림의 다중화 및 재다중화를 제공하는시스템 및 방법 KR100872096B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/395,936 2003-03-24
US10/395,936 US7269836B2 (en) 2003-03-24 2003-03-24 System and method for providing multiplexing and remultiplexing of MPEG-2 streams

Publications (2)

Publication Number Publication Date
KR20050109517A KR20050109517A (ko) 2005-11-21
KR100872096B1 true KR100872096B1 (ko) 2008-12-05

Family

ID=32988684

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057016132A KR100872096B1 (ko) 2003-03-24 2004-03-24 Mpeg-2 스트림의 다중화 및 재다중화를 제공하는시스템 및 방법

Country Status (7)

Country Link
US (1) US7269836B2 (ko)
EP (1) EP1616442B1 (ko)
KR (1) KR100872096B1 (ko)
CN (1) CN100481940C (ko)
AT (1) ATE350859T1 (ko)
DE (1) DE602004004096T2 (ko)
WO (1) WO2004086768A2 (ko)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004008775A1 (ja) * 2002-07-15 2004-01-22 Hitachi, Ltd. 動画像符号化方法及び復号化方法
BRPI0410018A (pt) * 2003-05-05 2006-04-25 Thomson Licensing método e aparelho para permitir gravação e reprodução de subcanal
US7882510B2 (en) * 2003-08-06 2011-02-01 Microsoft Corporation Demultiplexer application programming interface
US9325998B2 (en) * 2003-09-30 2016-04-26 Sharp Laboratories Of America, Inc. Wireless video transmission system
US8018850B2 (en) * 2004-02-23 2011-09-13 Sharp Laboratories Of America, Inc. Wireless video transmission system
US7797723B2 (en) 2004-10-30 2010-09-14 Sharp Laboratories Of America, Inc. Packet scheduling for video transmission with sender queue control
US7784076B2 (en) * 2004-10-30 2010-08-24 Sharp Laboratories Of America, Inc. Sender-side bandwidth estimation for video transmission with receiver packet buffer
US8356327B2 (en) * 2004-10-30 2013-01-15 Sharp Laboratories Of America, Inc. Wireless video transmission system
US7802279B1 (en) * 2004-12-29 2010-09-21 Digital Keystone, Inc. Methods and apparatuses for processing broadcast flagged media content
US20060242683A1 (en) * 2005-04-22 2006-10-26 Medford Brad A Methods and apparatus to manage advanced television system committee video in broadcast switched digital video systems
US8352979B2 (en) 2005-04-22 2013-01-08 At&T Intellectual Property I, L.P. Methods and apparatus to broadcast advanced television system committee video in switched digital video systems
US20070022459A1 (en) 2005-07-20 2007-01-25 Gaebel Thomas M Jr Method and apparatus for boundary-based network operation
US20070067480A1 (en) * 2005-09-19 2007-03-22 Sharp Laboratories Of America, Inc. Adaptive media playout by server media processing for robust streaming
FR2892253B1 (fr) * 2005-10-14 2007-12-28 Thales Sa Procede de generation et de demultiplexage d'un signal de contribution optimise, et systeme de diffusion regionalisee de donnees.
US8275003B2 (en) * 2005-10-24 2012-09-25 General Instrument Corporation Method and apparatus for generating multiplexed signals
US9544602B2 (en) * 2005-12-30 2017-01-10 Sharp Laboratories Of America, Inc. Wireless video transmission system
US7652994B2 (en) * 2006-03-31 2010-01-26 Sharp Laboratories Of America, Inc. Accelerated media coding for robust low-delay video streaming over time-varying and bandwidth limited channels
US8861597B2 (en) * 2006-09-18 2014-10-14 Sharp Laboratories Of America, Inc. Distributed channel time allocation for video streaming over wireless networks
US7652993B2 (en) * 2006-11-03 2010-01-26 Sharp Laboratories Of America, Inc. Multi-stream pro-active rate adaptation for robust video transmission
US7855963B2 (en) * 2006-12-21 2010-12-21 Aruba Networks, Inc. Capacity estimation and proportional sharing of varying capacity channels
US7705880B2 (en) * 2007-01-17 2010-04-27 Nice Systems Ltd. Device, system and method for encoding employing redundancy and switching capabilities
MX2009009493A (es) * 2007-03-08 2009-09-15 Thomson Licensing Metodo, aparato y sistema para el flujo de trabajo para distribucion coordinada de contenido.
CN101321293B (zh) * 2007-06-06 2010-08-18 中兴通讯股份有限公司 一种实现多路节目复用的装置和方法
FR2917919B1 (fr) 2007-06-21 2010-06-11 Canon Kk Procede et dispositif de transmission d'images.
KR101454027B1 (ko) * 2007-08-10 2014-10-24 한국전자통신연구원 병렬 구조를 가지는 시분할 다중화 통신 시스템 및 방법
WO2009022817A1 (en) * 2007-08-10 2009-02-19 Electronics And Telecommunications Research Institute Time division multiplexing communication system with parallel structure and method for the same
US20110067073A1 (en) * 2008-01-22 2011-03-17 Koelhi Johan Communication unit and a method for providing access to an iptv network
KR100952292B1 (ko) 2008-05-08 2010-04-13 한양대학교 산학협력단 전송스트림 다중화를 이용한 vod 송수신 시스템 및 방법
KR100973138B1 (ko) * 2008-05-08 2010-07-29 한양대학교 산학협력단 디지털 방송의 mms 전송스트림 재다중화 방법 및 시스템
US9237381B2 (en) * 2009-08-06 2016-01-12 Time Warner Cable Enterprises Llc Methods and apparatus for local channel insertion in an all-digital content distribution network
US8910202B2 (en) * 2009-12-08 2014-12-09 Harmonic, Inc. Modification and distribution of video content
KR101895990B1 (ko) * 2012-01-27 2018-10-18 삼성전자주식회사 방송 수신 장치 및 방법
US8806529B2 (en) * 2012-04-06 2014-08-12 Time Warner Cable Enterprises Llc Variability in available levels of quality of encoded content
CN104254000B (zh) * 2013-06-27 2018-05-11 华为技术有限公司 一种视频数据处理方法及装置
FI20145493A (fi) * 2014-05-28 2015-11-29 Exaget Oy Sisällön lisääminen mediavirtaan
EP3035691A3 (en) * 2014-12-17 2016-08-24 Thomson Licensing Methods and apparatus for minimizing timing artifacts in remultiplexing
CN104639955B (zh) * 2015-03-09 2017-10-27 德科仕通信(上海)有限公司 检测mpeg2‑ts vbr码流质量问题的方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999055092A2 (en) * 1998-04-17 1999-10-28 Tiernan Communications, Inc. Apparatus and method for dynamic multiplexing

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5007070A (en) * 1989-10-31 1991-04-09 Bell Communications Research, Inc. Service clock recovery circuit
US5600573A (en) * 1992-12-09 1997-02-04 Discovery Communications, Inc. Operations center with video storage for a television program packaging and delivery system
US5600364A (en) * 1992-12-09 1997-02-04 Discovery Communications, Inc. Network controller for cable television delivery systems
US5566174A (en) * 1994-04-08 1996-10-15 Philips Electronics North America Corporation MPEG information signal conversion system
US5650825A (en) * 1995-03-31 1997-07-22 Matsushita Electric Corporation Of America Method and apparatus for sending private data instead of stuffing bits in an MPEG bit stream
US5652615A (en) * 1995-06-30 1997-07-29 Digital Equipment Corporation Precision broadcast of composite programs including secondary program content such as advertisements
US5835493A (en) * 1996-01-02 1998-11-10 Divicom, Inc. MPEG transport stream remultiplexer
JP3216531B2 (ja) * 1996-07-24 2001-10-09 三菱電機株式会社 再多重化装置および再多重化方法
EP0931418A2 (en) * 1996-10-08 1999-07-28 Tiernan Communications Incorporated Apparatus and method for multi-service transport multiplexing
US6351471B1 (en) * 1998-01-14 2002-02-26 Skystream Networks Inc. Brandwidth optimization of video program bearing transport streams
JP4232209B2 (ja) * 1998-01-19 2009-03-04 ソニー株式会社 圧縮画像データの編集装置及び圧縮画像データの編集方法
US6643298B1 (en) * 1999-11-23 2003-11-04 International Business Machines Corporation Method and apparatus for MPEG-2 program ID re-mapping for multiplexing several programs into a single transport stream
US6996101B2 (en) * 2000-11-29 2006-02-07 International Business Machines Corporation Re-mapping and interleaving transport packets of multiple transport streams for processing by a single transport demultiplexor
US20020144260A1 (en) * 2001-03-29 2002-10-03 Koninklijke Philips Electronics N.V. Method for adaptive data/content insertion in MPEG2 transport stream
US7765567B2 (en) * 2002-01-02 2010-07-27 Sony Corporation Content replacement by PID mapping

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999055092A2 (en) * 1998-04-17 1999-10-28 Tiernan Communications, Inc. Apparatus and method for dynamic multiplexing

Also Published As

Publication number Publication date
EP1616442B1 (en) 2007-01-03
KR20050109517A (ko) 2005-11-21
CN100481940C (zh) 2009-04-22
WO2004086768A2 (en) 2004-10-07
EP1616442A2 (en) 2006-01-18
US7269836B2 (en) 2007-09-11
WO2004086768A3 (en) 2005-03-24
US20040190515A1 (en) 2004-09-30
DE602004004096T2 (de) 2007-06-28
DE602004004096D1 (de) 2007-02-15
ATE350859T1 (de) 2007-01-15
CN1778115A (zh) 2006-05-24

Similar Documents

Publication Publication Date Title
KR100872096B1 (ko) Mpeg-2 스트림의 다중화 및 재다중화를 제공하는시스템 및 방법
CA2237766C (en) Method and apparatus for multiplexing and distributing data with preformatted real-time video
AU2007200636B2 (en) Method and system providing scrambled content
US6219358B1 (en) Adaptive rate control for insertion of data into arbitrary bit rate data streams
KR100665653B1 (ko) 프로그램 입력 스트림 재처리 장치
KR100226528B1 (ko) 다중화 압축화상/음성데이타의 복호장치
US6292490B1 (en) Receipts and dispatch timing of transport packets in a video program bearing stream remultiplexer
US7590237B2 (en) Time-multiplexed multi-program encryption system
US6744785B2 (en) Network distributed remultiplexer for video program bearing transport streams
US6148082A (en) Scrambling and descrambling control word control in a remultiplexer for video bearing transport streams
US7035278B2 (en) Method and apparatus for forming and utilizing a slotted MPEG transport stream
EP0981249A2 (en) Buffer system for controlled and synchronised presentation of MPEG-2 data services
KR20010034133A (ko) 트랜스포트 스트림 리멀티플렉서를 갖는 비디오 프로그램
US7580522B2 (en) Digital video broadcasting receiver
CA2579981C (en) Ts transmission system, transmitting apparatus, receiving apparatus, and ts transmission method
US7933411B2 (en) Method of constructing MPEG program streams from encrypted MPEG transport streams
US9210383B2 (en) Conditional access to encrypted media content
US9854019B2 (en) Method and apparatus for modifying a stream of digital content
US8737424B2 (en) Methods and systems for substituting programs in multiple program MPEG transport streams
US7385996B2 (en) Data distribution apparatus and method
KR100732323B1 (ko) 지상파 디엠비 방송 시스템에서의 부가데이터 송출을 위한대역제어방법 및 장치

Legal Events

Date Code Title Description
A201 Request for examination
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
FPAY Annual fee payment

Payment date: 20121107

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20131031

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20141021

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20151020

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160822

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170814

Year of fee payment: 10