KR100785788B1 - Multi Channel MPEG-2 Transport Stream Multiplexing Device and Method thereof - Google Patents

Multi Channel MPEG-2 Transport Stream Multiplexing Device and Method thereof Download PDF

Info

Publication number
KR100785788B1
KR100785788B1 KR1020060078798A KR20060078798A KR100785788B1 KR 100785788 B1 KR100785788 B1 KR 100785788B1 KR 1020060078798 A KR1020060078798 A KR 1020060078798A KR 20060078798 A KR20060078798 A KR 20060078798A KR 100785788 B1 KR100785788 B1 KR 100785788B1
Authority
KR
South Korea
Prior art keywords
transport stream
program
pcr
packet
waiting
Prior art date
Application number
KR1020060078798A
Other languages
Korean (ko)
Other versions
KR20070061270A (en
Inventor
김종원
박상훈
장인동
인민교
이승윤
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Publication of KR20070061270A publication Critical patent/KR20070061270A/en
Application granted granted Critical
Publication of KR100785788B1 publication Critical patent/KR100785788B1/en

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
    • H04N21/2368Multiplexing of audio and video 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/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/23605Creation or processing of packetized elementary streams [PES]
    • 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/242Synchronization processes, e.g. processing of PCR [Program Clock References]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명에 의한 다채널 MPEG-2 전송 스트림 다중화 장치는 하나 이상의 프로그램 소스에서 입력되는 전송 스트림 패킷의 PCR 유무를 확인하여, 확인된 PCR을 기초로 PCR이 포함되지 않은 전송 스트림 패킷의 PCR을 추정하여 상기 각 프로그램별 전송 스트림 패킷에 PCR을 삽입하는 PCR 삽입부, PCR이 삽입된 각 프로그램 별 전송 스트림 패킷이 소정의 시간 단위로 대기하는 패킷 대기부 및 대기하는 전송 스트림 패킷의 단위 시간당 개수를 기초로 상기 각 프로그램별로 스케줄링되어 보내질 패킷수를 구하여, 각 프로그램별 전송 스트림 패킷을 하나의 전송 스트림 패킷열로 출력하는 다중화부를 가진다. 본 발명은 IP 네트워크를 통하여 다채널 MPEG-2 스트리밍을 할 때 다채널의 전송 스트림들을 균등하게 나누어 입력하는 다중화 장치 및 방법을 제공한다.The multi-channel MPEG-2 transport stream multiplexing apparatus according to the present invention checks the presence or absence of PCR of a transport stream packet input from one or more program sources, and estimates the PCR of a transport stream packet not including PCR based on the identified PCR. On the basis of the PCR inserting unit for inserting the PCR in the transport stream packet for each program, the packet waiting unit for waiting for the predetermined time unit of the transport stream packet for each program in which the PCR is inserted and the number of unit of the transport stream packet waiting The multiplexing unit obtains the number of packets to be scheduled and sent for each program, and outputs a transport stream packet for each program as one transport stream packet sequence. The present invention provides a multiplexing apparatus and method for equally dividing and inputting multi-channel transport streams when multi-channel MPEG-2 streaming is performed through an IP network.

Description

다채널 MPEG-2 전송 스트림 다중화 장치 및 방법{Multi Channel MPEG-2 Transport Stream Multiplexing Device and Method thereof}Multi-channel MPEG-2 Transport Stream Multiplexing Device and Method

도 1은 종래의 다채널 MPEG-2 전송 스트림 전송 시스템이다. 1 is a conventional multichannel MPEG-2 transport stream transmission system.

도 2는 본 발명의 일 실시예에 의한 다채널 MPEG-2 전송 스트림 다중화 장치이다.2 is a multi-channel MPEG-2 transport stream multiplexing apparatus according to an embodiment of the present invention.

도 3은 본 발명의 다른 일 실시예에 의한 다채널 MPEG-2 전송 스트림 다중화 장치이다.3 is a multi-channel MPEG-2 transport stream multiplexing apparatus according to another embodiment of the present invention.

도 4는 본 발명의 일 실시예에 의한 PCR을 추정하는데 사용하는 PCR Slope이다.4 is a PCR slope used to estimate the PCR according to an embodiment of the present invention.

도 5는 본 발명의 일 실시예에 의한 각 프로그램 전송 스트림을 동기화한 출력 스트림이다.5 is an output stream in which each program transport stream is synchronized according to an embodiment of the present invention.

도 6은 각 프로그램 별로 입력되는 전송 스트림 패킷과 동기화되어 출력되는 전송스트림의 관계이다.6 shows a relationship between a transport stream outputted in synchronization with a transport stream packet input for each program.

도 7은 본 발명의 일 실시예에 의한 다채널 MPEG-2 전송 스트림 다중화 방법이다.7 is a multi-channel MPEG-2 transport stream multiplexing method according to an embodiment of the present invention.

도 8은 본 발명의 다른 일 실시예에 의한 다채널 MPEG-2 전송 스트림 다중화 방법이다. 8 is a multi-channel MPEG-2 transport stream multiplexing method according to another embodiment of the present invention.

본 발명은 다채널 MPEG-2 전송 스트림 다중화 장치 및 방법에 관한 것으로, 보다 상세하게는 시간 단위의 유연한 동기화를 적용한 다채널 MPEG-2 전송 스트림 다중화 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and method for multi-channel MPEG-2 transport stream multiplexing, and more particularly, to an apparatus and method for multi-channel MPEG-2 transport stream multiplexing applying flexible synchronization of time units.

본 발명에서는 복수의 MPEG-2를 IPv6나 IPv4 망을 통하여서 스트리밍하는 다채널 HDTV 스트리밍 시스템을 고려한다.In the present invention, a multi-channel HDTV streaming system for streaming a plurality of MPEG-2 through an IPv6 or IPv4 network is considered.

도 1은 종래의 다채널 MPEG-2 전송 스트림 전송 시스템이다. 도 1을 참조하면, 다채널 MPEG-2 전송 스트림을 전송하는 시스템은 각 프로그램 소스로부터 입력된 전송 스트림을 전송 스트림 서버(110)와 전송 스트림 릴레이 서버(120)를 이용하여 클라이언트(140)로 보낸다. 1 is a conventional multichannel MPEG-2 transport stream transmission system. Referring to FIG. 1, a system for transmitting a multi-channel MPEG-2 transport stream sends a transport stream input from each program source to the client 140 using the transport stream server 110 and the transport stream relay server 120. .

네트워크(130)에서 여러 환경적인 구성요소가 다를 것을 대비하여 이 다채널 시스템에서는 전송 스트림 서버(110)와 전송 스트림 릴레이 서버(120)를 이용하여 멀티캐스트나 유니캐스트 방식으로 각 클라이언트(140)에 전송 스트림을 보낸다.In the multi-channel system, the transport stream server 110 and the transport stream relay server 120 are used to multi-cast or unicast each client 140 in preparation for different environmental components in the network 130. Send the transport stream.

하지만, 클라이언트(140)가 프로그램 재생 시에 서로 다른 재생 시간대를 가진다거나 혹은 패킷의 전송의 비율이 각 클라이언트마다(141, 142) 달라져서 잦은 버퍼링이 일어난다. 특히 이러한 문제는 여러 채널이 늘어 날수록 가능성이 증가하기 때문에 적절한 다중화 기법이 요구된다. However, the client 140 has a different playing time at the time of playing the program, or the rate of packet transmission is different for each client (141, 142), causing frequent buffering. In particular, this problem is likely to increase as the number of channels increases, so an appropriate multiplexing technique is required.

본 발명이 이루고자 하는 기술적 과제는 여러 다채널의 스트림들이 균등하게 나누어져 다중화기로 입력되고 출력되는 다중화 장치 및 방법을 제공하는 것이다.An object of the present invention is to provide a multiplexing apparatus and method in which streams of multiple channels are equally divided and input and output to a multiplexer.

이처럼 본 발명은 계층적인 서비스 제공시 사용자의 네트워크의 여러 환경적인 구성요소가 달라서 생기는 문제를 해결한다. As such, the present invention solves a problem caused by different environmental components of a user's network when providing hierarchical services.

상기 기술적 과제를 이루기 위한 본 발명에 따른 다채널 MPEG-2 전송 스트림 다중화 장치의 일 실시예는 적어도 하나 이상의 프로그램 소스에서 입력되는 전송 스트림 패킷의 PCR 유무를 확인하여, 확인된 PCR을 기초로 PCR이 포함되지 않은 전송 스트림 패킷의 PCR을 추정하여 상기 각 프로그램별 전송 스트림 패킷에 PCR을 삽입하는 PCR 삽입부, 상기 PCR이 삽입된 각 프로그램 별 전송 스트림 패킷이 소정의 시간 단위로 대기하는 패킷 대기부 및 상기 패킷 대기부에 대기하는 전송 스트림 패킷의 단위 시간당 개수를 기초로 상기 각 프로그램별로 스케줄링되어 보내질 패킷수를 구하여, 상기 각 프로그램별 전송 스트림 패킷을 하나의 전송 스트림 패킷열로 출력하는 다중화부를 가진다.One embodiment of the multi-channel MPEG-2 transport stream multiplexing apparatus according to the present invention for achieving the above technical problem is to determine whether the PCR of the transport stream packet input from at least one program source, PCR based on the identified PCR A PCR insertion unit for estimating PCR of a transport stream packet not included and inserting PCR into the transport stream packet for each program, a packet waiting unit for waiting for a predetermined time unit for the transport stream packet for each program into which the PCR is inserted; A multiplexing unit obtains the number of packets to be scheduled and sent for each program based on the number of transport stream packets waiting in the packet waiting unit, and outputs the transport stream packets for each program as one transport stream packet sequence.

상기 기술적 과제를 이루기 위한 본 발명에 따른 다채널 MPEG-2 전송 스트림 다중화 방법의 일 실시예는 적어도 하나 이상의 프로그램 소스에서 입력되는 전송 스트림 패킷의 PCR 유무를 확인하여, 확인된 PCR을 기초로 PCR이 포함되지 않은 전송 스트림 패킷의 PCR을 추정하여 상기 각 프로그램별 전송 스트림 패킷에 PCR을 삽입하는 단계, 상기 PCR이 삽입된 각 프로그램 별 전송 스트림 패킷이 소정의 시간 단위로 대기하는 단계 및 상기 대기하고 있는 전송 스트림 패킷의 단위시간당 개수를 기초로 상기 각 프로그램별로 스케줄링되어 보내질 패킷수를 구하여, 상기 각 프로그램별 전송 스트림 패킷을 하나의 전송 스트림 패킷열로 출력하는 단계를 가진다.One embodiment of the multi-channel MPEG-2 transport stream multiplexing method according to the present invention for achieving the above technical problem is to determine whether the PCR of the transport stream packet input from at least one program source, PCR based on the identified PCR Estimating a PCR of a transport stream packet not included and inserting PCR into the transport stream packet for each program, waiting for the transport stream packet for each program into which the PCR is inserted, by a predetermined time unit, and waiting Obtaining the number of packets to be scheduled and sent for each program based on the number of transport stream packets per unit time, and outputting the transport stream packets for each program as one transport stream packet sequence.

이처럼 본 발명은 IP 네트워크를 통하여 다채널 MPEG-2 스트리밍을 할 때 사용자의 네트워크의 여러 환경적인 구성요소가 달라서 생기는 문제를 해결하기 위하여, 여러 다채널의 스트림들이 균등하게 나누어져 다중화기로 입력되고 출력되는 다채널 MPEG-2 전송 스트림 다중화 장치 및 방법을 제공한다.As described above, in order to solve the problem caused by different environmental components of the user's network when multichannel MPEG-2 streaming is performed through the IP network, the multichannel streams are equally divided and input and output to the multiplexer. An apparatus and method for multi-channel MPEG-2 transport stream multiplexing are provided.

이하 첨부한 도면을 사용하여 본 발명인 다채널 MPEG-2 전송 스트림 다중화 장치 및 방법을 상세히 설명한다.Hereinafter, an apparatus and method for multichannel MPEG-2 transport stream multiplexing according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 종래의 다채널 MPEG-2 전송 스트림 전송 시스템이다. 도 1을 참조하면, 다채널 MPEG-2 전송 스트림 전송 시스템은 전송 스트림 서버(110), 전송 스트림 릴레이 서버(120), 네트워크(130) 및 클라이언트(140)로 구성된다.1 is a conventional multichannel MPEG-2 transport stream transmission system. Referring to FIG. 1, a multi-channel MPEG-2 transport stream transmission system includes a transport stream server 110, a transport stream relay server 120, a network 130, and a client 140.

전송 스트림 서버(110)는 소스부(111), 다중화부(112), 발신자(sender)(113)로 구성된다.The transport stream server 110 includes a source 111, a multiplexer 112, and a sender 113.

소스부(111)로부터 전송 스트림이 다중화부(Multiplexer)(112)로 들어온다. 여기서 소스부(111)는 다채널의 계층적 소스이다.The transport stream from the source section 111 enters the multiplexer 112. The source unit 111 is a multi-channel hierarchical source.

소스부(111)로부터 입력되는 전송 스트림은 그 콘텐츠의 내용이 서로 다르다. 또한, 같은 내용의 콘텐츠의 경우라도, 서로 다른 화질의 수준을 가진 계층형 스트림의 형태로 들어온다. The content of the content of the transport stream input from the source section 111 is different. In addition, even in the case of contents having the same contents, they come in the form of hierarchical streams having different levels of image quality.

이러한 여러 종류의 전송 스트림은 MPEG 시스템의 규약에 따라 전체적으로 표준에 따라서 관리되도록, PID의 정보들을 하나 프로그램처럼 PMT와 PAT에 담는다. 서로 충돌되는 PID가 있을 시에는 조정이 된다. These various types of transport streams contain the information of PIDs in PMT and PAT as a program so that they are managed according to the standard as a whole according to the protocol of MPEG system. If there is PID colliding with each other, adjustment is made.

이렇게 조정이 이루어진 다중화된 스트림은 각 프로그램 소스별로 다중화부(112)로 들어간다. 다중화부(112)에서 여러 다채널의 스트림들이 균등하게 나누어져 입력되고 출력되도록 하는 알고리즘이 필요하다. 본 발명은 시간 단위의 유연한 동기화를 적용한 다채널 MPEG-2 전송 스트림 다중화 장치 및 방법을 제공한다.The multiplexed stream thus adjusted enters the multiplexer 112 for each program source. In the multiplexer 112, there is a need for an algorithm in which streams of multiple channels are equally divided and input and output. The present invention provides a multi-channel MPEG-2 transport stream multiplexing apparatus and method applying flexible synchronization of time units.

전송 스트림 릴레이 서버(120)는 스트림 소스(121) 및 발신자(sender)(122)를 포함한다. 스트림 소스는 (121)는 네트워크로부터 다중화된 스트림을 받는다.발신자(sender)(122)는 이를 클라이언트에 전달한다.The transport stream relay server 120 includes a stream source 121 and a sender 122. The stream source 121 receives the multiplexed stream from the network. The sender 122 delivers this to the client.

다채널 MPEG-2 전송 스트림을 전송하는 시스템은 각 프로그램 소스로부터 입력된 전송 스트림을 전송 스트림 서버(110)와 전송 스트림 릴레이 서버(120)를 이용하여 클라이언트(140)로 보낸다. A system for transmitting a multi-channel MPEG-2 transport stream sends a transport stream input from each program source to the client 140 using the transport stream server 110 and the transport stream relay server 120.

네트워크(130)에서 여러 환경적인 구성요소가 다를 것을 대비하여 이 다채널 시스템에서는 전송 스트림 서버(110)와 전송 스트림 릴레이 서버(120)를 이용하여 멀티캐스트나 유니캐스트 방식으로 각 클라이언트(140)에 전송 스트림을 보낸다.In the multi-channel system, the transport stream server 110 and the transport stream relay server 120 are used to multi-cast or unicast each client 140 in preparation for different environmental components in the network 130. Send the transport stream.

도 2는 본 발명의 일 실시예에 의한 다채널 MPEG-2 전송 스트림 다중화 장치이다. 도 2를 참조하면, 다채널 MPEG-2 전송 스트림 다중화 장치는 PCR 삽입부(210), 패킷 대기부(220)및 다중화부(230)를 포함한다. 2 is a multi-channel MPEG-2 transport stream multiplexing apparatus according to an embodiment of the present invention. Referring to FIG. 2, the multi-channel MPEG-2 transport stream multiplexing apparatus includes a PCR inserting unit 210, a packet waiting unit 220, and a multiplexing unit 230.

PCR 삽입부(210)는 하나 이상의 프로그램 소스에서 입력되는 전송 스트림 패킷의 PCR (Program Clock Reference) 유무를 확인하여, 확인된 PCR을 기초로 PCR이 포함되지 않은 전송 스트림 패킷의 PCR을 추정하여 상기 각 프로그램별 전송 스트림 패킷에 PCR을 삽입한다. The PCR inserting unit 210 checks the presence or absence of a PCR (Program Clock Reference) of the transport stream packet input from at least one program source, and estimates the PCR of the transport stream packet not including the PCR based on the identified PCR. PCR is inserted into a transport stream packet for each program.

패킷 대기부(220)는 상기 PCR이 삽입된 각 프로그램 별 전송 스트림 패킷이 소정의 시간 단위로 대기한다.The packet waiting unit 220 waits for each program transport stream packet into which the PCR is inserted in a predetermined time unit.

다중화부(230)는 패킷 대기부에 대기하는 전송 스트림 패킷의 단위 시간당 개수를 기초로 상기 각 프로그램별로 스케줄링되어 보내질 패킷수를 구하여, 상기 각 프로그램별 전송 스트림 패킷을 하나의 전송스트림 패킷열로 출력한다.The multiplexer 230 obtains the number of packets to be scheduled and sent for each program based on the number of transport stream packets waiting in the packet waiting unit, and outputs the transport stream packets for each program as one transport stream packet sequence. do.

스케줄링은 우선, 스케줄링 단위를 구하고 이를 기초로 각 프로그램 별 스케줄링 되어 보내질 패킷 수를 구한다.In scheduling, first, a scheduling unit is obtained and based on this, the number of packets to be scheduled and sent for each program is obtained.

스케줄링 단위는 패킷 대기부에 단위시간당 대기하는 각 프로그램의 전송 스트림 패킷수를 모든 프로그램 중 가장 작은 전송 스트림 패킷수로 나눈 값의 정수값이다.The scheduling unit is an integer value obtained by dividing the number of transport stream packets of each program waiting in the packet waiting unit by the smallest number of transport stream packets among all programs.

아래 식은 스케줄링 단위를 구하는 식이다. Rf(k)는 k번째 프로그램의 scheduling factor를 의미한다.The following formula calculates a scheduling unit. Rf (k) means scheduling factor of the k-th program.

nProgPck(k)는 특정시간에 측정되는 k번째 프로그램의 일정시간 동안의 전송 스트림 패킷의 개수를 의미한다. 각 프로그램별 스케줄링 되어 보내질 패킷 수는 스케줄링 단위를 기초로 구한다.nProgPck (k) means the number of transport stream packets for a certain time of the k-th program measured at a specific time. The number of packets to be sent for each program is calculated based on the scheduling unit.

각 프로그램 별 스케줄링 되어 보내질 패킷 수는 단위시간당 대기하는 각 프로그램의 전송 스트림 패킷수를 모든 프로그램에서 대기하고 있는 패킷수의 합으로 나눈 값과 스케줄링 단위를 곱한 값의 정수값이다.The number of packets to be scheduled and sent for each program is an integer value obtained by dividing the number of transport stream packets of each program waiting per unit time by the sum of the number of packets waiting in all programs and multiplying the scheduling unit.

제 3 식은 각 프로그램별 스케줄링되어 보내질 패킷 수를 구하는 식이다.

Figure 112006059317713-pat00001
Sf(k)는 k번째 프로그램의 스케줄링되는 패킷의 개수를 의미한다.The third equation is to calculate the number of packets to be scheduled and sent for each program.
Figure 112006059317713-pat00001
Sf (k) means the number of packets scheduled in the k-th program.

Figure 112006059317713-pat00002
Figure 112006059317713-pat00002

도 3은 본 발명의 다른 일 실시예에 의한 다채널 MPEG-2 전송 스트림 다중화 장치이다. 도 3은 패킷의 흐름과 각 큐들의 제어를 통하여 동기화가 이루어지는 것을 보여준다. 도 3를 참조하면, 다채널 MPEG-2 전송 스트림 다중화 장치는 PCR 계산부(310), 연결 큐(320) , 동기화 매니져(330) 및 다중화부(340)로 구성된다.3 is a multi-channel MPEG-2 transport stream multiplexing apparatus according to another embodiment of the present invention. 3 shows synchronization through packet flow and control of each queue. Referring to FIG. 3, the multi-channel MPEG-2 transport stream multiplexing device includes a PCR calculator 310, a connection queue 320, a synchronization manager 330, and a multiplexer 340.

PCR 계산부(210)는 들어온 전송 스트림 패킷에 PCR 정보가 있는지 검사한다. 패킷에 PCR정보가 들어 있다면, 들어온 패킷의 PCR 정보를 바탕으로 각각의 들어오는 모든 패킷의 PCR을 추정한다.The PCR calculator 210 checks whether the incoming transport stream packet has PCR information. If the packet contains PCR information, the PCR of each incoming packet is estimated based on the PCR information of the incoming packet.

이렇게 예측된 PCR계산 정보는 각 입력 프로그램별 큐(311, 312)별로 들어온 패킷의 객체에 그 계산된 시간 정보를 삽입한다. 각 들어온 패킷의 전송해야 할 시간을 예측할 수 있게 된다. 이렇게 PCR이 계산 되어진 패킷들은 중앙의 연결 큐(320)로 전송되어져서 모든 프로그램 별로 충분히 PCR정보가 계산되어 질 때까지 대기하게 된다.The predicted PCR calculation information inserts the calculated time information into the object of the packet which is input for the queues 311 and 312 for each input program. It is possible to estimate the time that each incoming packet should be sent. The PCR calculated packets are transmitted to the connection queue 320 in the center and wait until enough PCR information is calculated for every program.

중앙의 연결 큐(320)에 대기하고 있는 전송 스트림 패킷은 각 프로그램별로 나뉘어 출력 프로그램 큐(321, 322)에 입력된다. 출력 프로그램 큐(321, 322)는 프로그램 별로 있어야 하므로 적어도 하나 이상 존재한다.Transport stream packets waiting in the central connection queue 320 are divided into respective programs and input to the output program queues 321 and 322. At least one output program queue 321 or 322 is required for each program.

중앙 큐(320)는 PCR이 삽입된 하나 이상의 프로그램별 전송 스트림 패킷 전 부가 동일한 시간단위로 대기한다. 동기화 메니져(330)는 각 프로그램 별로 충분한 PCR 정보가 다 갖추어 졌다면, 각 프로그램 별로 특정 한정된 시간동안 보내져야 데이타의 양을 각 프로그램 별로 계산하여, 그 비율에 맞게 각각의 출력 프로그램 큐(321, 322)에서 출력되어 다중화부(340)에 입력된다.The central queue 320 waits all of the one or more program-specific transport stream packets inserted with the PCR in the same time unit. If enough PCR information is provided for each program, the synchronization manager 330 calculates the amount of data for each program to be sent for a specific limited time for each program, and outputs the respective program queues 321 and 322 according to the ratio. Is output from the input to the multiplexer 340.

이처럼 본 발명은 각 프로그별로 균형 있는 스트림이 하나로 출력되도록 한다. 또한 스케쥴링 factor들은 프로그램들의 특정 시간을 정해 준 만큼 계속 업데이트 된다.As such, the present invention allows a balanced stream for each program to be output as one. In addition, the scheduling factors are constantly updated as you specify specific times for the programs.

도 4는 본 발명의 일 실시예에 의한 PCR을 추정하는데 사용하는 PCR Slope이다. 도 4를 참조하면, 전송 스트림 패킷이 다채널 MPEG-2 전송 스트림 다중화 장치에 입력되면, 파싱 과정을 거쳐서 TS Packet의 PCR을 알아낸다.4 is a PCR slope used to estimate the PCR according to an embodiment of the present invention. Referring to FIG. 4, when a transport stream packet is input to a multi-channel MPEG-2 transport stream multiplexing device, a PCR of a TS packet is found through a parsing process.

첫 번째 PCR 패킷이 들어오면 그 PCR정보를 바탕으로 레퍼런스 클락(Reference Clock)을 정하여서, 다음의 패킷이 전송되어야 할 때의 시간을 예측하여 알아낼 수 있게 된다. When the first PCR packet comes in, the reference clock is determined based on the PCR information, and the time when the next packet should be transmitted can be estimated.

각 들어오는 바이트들이 처음에 레퍼런스 클락(Reference Clock)을 정한 이후에 일정한 증가율을 가지고 들어올 것이다. 증가율은 PCR과 패킷에서 읽어오는 Byte간의 기울기인 PCR Slope로 나타낼 수 있다.Each incoming byte will come in at a constant rate of growth after initially setting the reference clock. The increase rate can be expressed by PCR slope, which is the slope between the PCR and the byte read from the packet.

식 1은 이러한 PCR들 사이의 기울기인 PCR Slope를 구하여 그 바이트 하나가 가지는 PCR 증가분을 이 때까지 입력된 바이트들에 양의 곱하여서 구하는 것을 식으로 나타낸 것이다.Equation 1 shows a method of obtaining a PCR slope, which is a slope between the PCRs, and multiplying the input bytes up to this point by the positive PCR increment.

제 1 식은 다음과 같다. 제 1식은 PCR Slope를 이용하여 각 Packet의 PCR값 을 구하는 공식이다. 제 1식은 k번째 바이트의 PCR값을 구하는 식이다. The first equation is as follows. Equation 1 is a formula for calculating PCR value of each packet using PCR slope. The first equation is for obtaining the PCR value of the k th byte.

Figure 112006059317713-pat00003
Figure 112006059317713-pat00003

여기서 i, j는 비트스트림에서 i, j 번째 바이트를 의미한다. 이에 따라 PCR(i)와 PCR(j)는 i, j번째 바이트의 PCR값을 각각 의미한다.Here, i and j mean the i, j th byte in the bitstream. Accordingly, PCR (i) and PCR (j) mean PCR values of the i and j th bytes, respectively.

이렇게 각 패킷마다 PCR을 구하는 공식이 필요한 이유는 각 패킷들에 모두 PCR정보가 들어 있는 것은 아니기 때문이다. MPEG-TS에서는 0.7초안에 PCR정보가 제공되어지면 되는 것인데, 우리가 특정 시간 만큼의 정보를 가져오기 위해서는 주어진 PCR정보를 가지고, 중간에 들어오는 패킷들의 PCR값을 예측 할 수 밖에 없다.The reason why a formula for obtaining PCR for each packet is necessary is that not all packets contain PCR information. In MPEG-TS, PCR information needs to be provided in 0.7 seconds, but we have no choice but to predict the PCR value of incoming packets with the given PCR information.

그렇게 되면 정확히 우리가 필요로 하는 시간만큼의 패킷을 측정하기 힘들기 때문에 모든 패킷마다의 PCR값을 예측하여 구하여서 우리가 필요로 하는 되도록 정확히 원하는 양 만큼의 시간에 패킷을 가져 오도록 하는 것이다. In this case, since it is difficult to measure the packet exactly as we need time, we predict the PCR value for every packet and get the packet in exactly the amount of time we need.

각 바이트 별로 전송되어야 하는 시간이 PCR의 증가율에 비례함으로 각 바이트와 PCR의 기울기를 구하여서 각 패킷에 대한 PCR 시간을 위의 공식대로 계산하여 예측하였다.Since the time to be transmitted for each byte is proportional to the increase rate of the PCR, the slope of each byte and the PCR was obtained, and the PCR time for each packet was calculated and calculated according to the above formula.

도 5는 본 발명의 일 실시예에 의한 각 프로그램 전송 스트림을 동기화한 출력 스트림이다. 도 5를 참조하면, 다중화 장치(500)는 여러 소스에서 입력되는 계층화된 스트림을 동기화하여 하나의 스트림을 출력한다.5 is an output stream in which each program transport stream is synchronized according to an embodiment of the present invention. Referring to FIG. 5, the multiplexing apparatus 500 outputs one stream by synchronizing a layered stream input from various sources.

여러 소스에서 입력되는 계층화된 스트림은 균형 있게 스케줄링 되어 보내져야 한다. HD급의 영상은 당연히 같은 시간 동안에 SD급 보다는 많은 데이터가 보내 져야 할 것이며, 또한 같은 HD영상이라도 프로그램에 따라서는 각 프레임의 크기에 따라 그 같은 시간대에 전송되어야 할 데이터의 양이 다를 것이다.Layered streams coming from multiple sources should be sent in a balanced way. Naturally, HD video will have to send more data than SD video during the same time, and even the same HD video will have different amount of data to be transmitted in the same time zone depending on the size of each frame.

그래서 전송되어야 하는 데이터의 양을 각 스트림마다 특정시간 동안의 데이터 량을 가져온 다음 이 들어온 양을 측정하고, 그 정보를 바탕으로 아래의 식을 이용하여 계산하여 스케줄링 한다.Therefore, the amount of data to be transmitted is obtained for each stream for a specific time, and then the amount of incoming data is measured. Based on the information, it is calculated and scheduled using the following equation.

식 2는 들어온 패킷의 수를 각 프로그램 별로 계산하여, 각 프로그램 별로 조합되어지는 스트림 주기의 크기인 Scheduling factor (Rf(i))를 계산하는 공식이다. 여기서 nProgPck(i)는 각 스트림별로 모두 특정 같은 시간 동안 들어온 패킷의 수를 뜻한다.Equation 2 is a formula for calculating the scheduling factor (Rf (i)), which is the size of stream periods combined for each program, by calculating the number of incoming packets for each program. Here nProgPck (i) means the number of packets received for each same time for each stream.

이 계산 되어진 Scheduling factor 크기에 안에서 각 프로그램 별로 보내져야 할 패킷의 비율을 계산하여서 전체적인 프로그램들이 보내져야 할 균형 잡힌 스케줄링 팩터 값들을 구할 수 있다.By calculating the ratio of packets to be sent for each program within this calculated scheduling factor size, we can get the balanced scheduling factor values that the whole program should send.

식 3은 그 값을 구하는 식이다. 이 값들은 CprogSyncOut 모듈의 Schduler로 보내어 져서 각 프로그램 Queue별로 들어와 있는 패킷들을 출력을 제어하여서, 동기화 된 스트림이 출력이 되도록 한다.Equation 3 calculates the value. These values are sent to the Schduler of the CprogSyncOut module to control the output of the packets in each program queue so that the synchronized stream is output.

도 6은 각 프로그램 별로 입력되는 전송 스트림 패킷과 동기화되어 출력되는 전송스트림의 관계이다. 도 6을 참조하면, scheduling factor들에 따른 스케줄링은 PCR값이 들어 있는 패킷이 2개 이상 들어왔을 때 PCR Slope계산이 가능하다.6 shows a relationship between a transport stream outputted in synchronization with a transport stream packet input for each program. Referring to FIG. 6, in the scheduling according to scheduling factors, PCR slope may be calculated when two or more packets containing PCR values are received.

그렇기 때문에 PCR 패킷이 최소 2개 이상 들어올 때까지 스케줄링과 MUX로의 전송을 미루고 패킷들을 임시 큐에 저장한다. 그리고 이 스케줄링 알고리즘은 매 PCR이 들어온 이후 계속 업데이트되어 동적인 스케줄링을 한다.This delays scheduling and transmission to the MUX until at least two PCR packets come in and stores the packets in a temporary queue. The scheduling algorithm is then updated continuously after every PCR entry for dynamic scheduling.

도 7은 본 발명의 일 실시예에 의한 다채널 MPEG-2 전송 스트림 다중화 방법이다. 도 7을 참조하면,적어도 하나 이상의 프로그램 소스에서 입력되는 전송 스트림 패킷의 PCR 유무를 확인하여, 확인된 PCR을 기초로 PCR이 포함되지 않은 전송 스트림 패킷의 PCR을 추정하여 상기 각 프로그램별 전송 스트림 패킷에 PCR을 삽입한다(S701).7 is a multi-channel MPEG-2 transport stream multiplexing method according to an embodiment of the present invention. Referring to FIG. 7, the presence or absence of a PCR of a transport stream packet input from at least one program source is estimated, and the transport stream packet of each program is estimated by estimating the PCR of a transport stream packet not including PCR based on the identified PCR. Insert the PCR (S701).

상기 PCR이 삽입된 각 프로그램 별 전송 스트림 패킷이 소정의 시간 단위로 대기한다. 보다 상세하게는 먼저, 중앙큐에 상기 PCR이 삽입된 하나 이상의 프로그램별 전송 스트림 패킷 전부가 동일한 시간단위로 대기한다(S702).The transport stream packet for each program into which the PCR is inserted waits for a predetermined time unit. More specifically, first, all of the one or more program-specific transport stream packets in which the PCR is inserted into the central queue wait in the same time unit (S702).

상기 대기하고 있는 전송 스트림 패킷의 단위시간당 개수를 기초로 상기 각 프로그램별로 스케줄링되어 보내질 패킷수를 구한다(S703).The number of packets to be scheduled and sent for each program is calculated based on the number of waiting transport stream packets per unit time (S703).

상기 각 프로그램별 전송 스트림 패킷을 하나의 전송스트림 패킷열로 출력한다(S704). 즉, 각 프로그램 큐에 상기 중앙 큐에 대기하고 있는 전송 스트림 패킷을 각 프로그램별로 나누어 각 프로그램별 큐에 입력시킨다.The transport stream packet for each program is output as one transport stream packet sequence (S704). That is, each program queue divides the transport stream packets waiting in the central queue into respective programs and inputs them into the respective program queues.

스케줄링은 상기 패킷 대기부에 단위시간당 대기하는 각 프로그램의 전송 스트림 패킷수를 모든 프로그램 중 가장 작은 전송 스트림 패킷수로 나눈 값의 정수값인 스케줄링 단위와 스케줄링 단위를 단위시간당 대기하는 각 프로그램의 전송 스트림 패킷수를 모든 프로그램에서 대기하고 있는 패킷수의 합으로 나눈 값과 곱한 값의 정수값을 기초로 한다.Scheduling is a scheduling unit which is an integer value of the number of transport stream packets of each program waiting per unit time in the packet waiting unit by the smallest number of transport stream packets among all programs, and a transport stream of each program waiting scheduling units per unit time. It is based on the integer value of the number of packets divided by the sum of the number of packets waiting in all programs.

보다 상세하게는 다음 식을 이용한다. 제 2 식은 스케줄링 단위 크기를 구하 는 식이다.More specifically, the following equation is used. The second equation is an equation for obtaining the scheduling unit size.

Figure 112006059317713-pat00004
Figure 112006059317713-pat00004

Rf(k)는 k번째 프로그램의 scheduling factor를 의미한다. nProgPck(k)는 특정시간에 측정되는 k번째 프로그램의 일정시간 동안의 TS 패킷의 개수를 의미한다.Rf (k) means scheduling factor of the k-th program. nProgPck (k) means the number of TS packets for a certain time of the k-th program measured at a specific time.

제 3 식은 각 프로그램 별 스케줄링 되어 보내질 패킷 수를 구하는 식이다. Sf(k)는 k번째 프로그램의 스케줄링되는 패킷의 개수를 의미한다.The third equation is to calculate the number of packets to be sent for each program. Sf (k) means the number of packets scheduled in the k-th program.

Figure 112006059317713-pat00005
Figure 112006059317713-pat00005

Figure 112006059317713-pat00006
도 8은 본 발명의 다른 일 실시예에 의한 다채널 MPEG-2 전송 스트림 다중화 방법이다. 도 8을 참조하면, 모듈로 Packet이 들어오면, 먼저 PCR이 들어 있는 Packet인지 검사한다(S801).
Figure 112006059317713-pat00006
8 is a multi-channel MPEG-2 transport stream multiplexing method according to another embodiment of the present invention. Referring to FIG. 8, when a packet comes into the module, it is first checked whether the packet contains PCR (S801).

PCR이 들어 있지 않는 Packet이라면, 임시로 PCR정보가 입력되기 전까지 임시 큐에 보관되어진다(S802). If the packet does not contain the PCR, it is stored in the temporary queue until the PCR information is temporarily input (S802).

검사되어진 PCR정보는 PCR Slope를 계산하는데 쓰여진다(S803). PCR Slope가 계산되어야 다른 PCR Packet사이에 있는 다른 Packet들의 PCR정보를 구할 수 있기 때문이다. The examined PCR information is used to calculate the PCR slope (S803). This is because PCR information of other packets between different PCR packets can be obtained only when the PCR slope is calculated.

이렇게 임시로 저장되어져 있는 Packet들은 후에 PCR Slope정보를 구할 수 있게 되면, 모든 입력되는 프로그램의 Slope의 값이 구하여 졌는지 검사한다(S804). When the PCR slope information can be obtained later, the packets stored temporarily are checked whether the slope values of all the input programs are obtained (S804).

모든 입력되는 프로그램의 Slope의 값이 구하여 졌다면, 모든 Packet에 PCR값들을 입력(S805)하여 중앙 큐로 보낸다(S806).If the slope values of all input programs are obtained, PCR values are input to all packets (S805) and sent to the central queue (S806).

중앙 큐에서는 각 프로그램 별로 사용자가 지정한 시간 만큼의 packet이 모였는지 확인한다(S807).In the central queue, it is checked whether packets for each program have been collected for each program (S807).

모든 Packet들이 다 모이면, 각자의 프로그램의 큐로 보낸다(S808). 스케쥴링 팩터들을 구한다(S809). 이 때 이용되는 것이 바로 식2,3이다. When all the packets are collected, they are sent to the queue of the respective program (S808). Obtaining scheduling factors (S809). At this time, Equations 2 and 3 are used.

제 2 식은 스케줄링 단위 크기를 구하는 식이다.The second equation is an equation for obtaining the scheduling unit size.

Figure 112006059317713-pat00007
Figure 112006059317713-pat00007

Rf(k)는 k번째 프로그램의 scheduling factor를 의미한다. nProgPck(k)는 특정시간에 측정되는 k번째 프로그램의 일정시간 동안의 TS 패킷의 개수를 의미한다.Rf (k) means scheduling factor of the k-th program. nProgPck (k) means the number of TS packets for a certain time of the k-th program measured at a specific time.

제 3 식은 각 프로그램 별 스케줄링 되어 보내질 패킷 수를 구하는 식이다. Sf(k)는 k번째 프로그램의 스케줄링되는 패킷의 개수를 의미한다.The third equation is to calculate the number of packets to be sent for each program. Sf (k) means the number of packets scheduled in the k-th program.

Figure 112006059317713-pat00008
Figure 112006059317713-pat00008

이렇게 계산된 정보를 이용하여 아웃풋 쪽에서는 각 프로그램 큐를 조절하여 최종적으로 동기화된 전송 스트림을 내보내게 된다(S810).Using the calculated information, the output side adjusts each program queue to finally output the synchronized transport stream (S810).

본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The invention can also be embodied as computer readable code on a computer readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, and the like, and may also be implemented in the form of a carrier wave (for example, transmission over the Internet). Include. The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.

이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.So far I looked at the center of the preferred embodiment for the present invention. Those skilled in the art will appreciate that the present invention can be implemented in a modified form without departing from the essential features of the present invention. Therefore, the disclosed embodiments should be considered in descriptive sense only and not for purposes of limitation. The scope of the present invention is shown in the claims rather than the foregoing description, and all differences within the scope will be construed as being included in the present invention.

이상에서 설명한 바와 같이 본 발명에 의한 다채널 MPEG-2 전송 스트림 다중화 장치 및 방법은 여러 다채널의 스트림들이 균등하게 나누어져 다중화기로 입력되고 출력되는 다중화 장치 및 방법을 제공한다. 본 발명은 계층적인 서비스 제공시 사용자의 네트워크의 여러 환경적인 구성요소가 달라서 생기는 문제를 해결한다. As described above, the apparatus and method for multi-channel MPEG-2 transport stream multiplexing according to the present invention provide a multiplexing apparatus and method in which streams of multiple channels are equally divided and input and output to the multiplexer. The present invention solves a problem caused by different environmental components of a user's network when providing hierarchical services.

Claims (6)

다채널 MPEG-2 전송 스트림 다중화 장치에 있어서,In the multi-channel MPEG-2 transport stream multiplexing device, 적어도 하나 이상의 프로그램 소스에서 입력되는 전송 스트림 패킷의 PCR(Program Clock Reference) 유무를 확인하여, 확인된 PCR을 기초로 PCR이 포함되지 않은 전송 스트림 패킷의 PCR을 추정하여 상기 각 프로그램별 전송 스트림 패킷에 PCR을 삽입하는 PCR 삽입부;By checking the presence or absence of a PCR (Program Clock Reference) of the transport stream packet input from at least one program source, and estimating the PCR of the transport stream packet that does not include PCR based on the identified PCR to the transport stream packet for each program A PCR insertion unit for inserting a PCR; 상기 PCR이 삽입된 각 프로그램 별 전송 스트림 패킷이 소정의 시간 단위로 대기하는 패킷 대기부;A packet waiting unit waiting for a transport stream packet for each program into which the PCR is inserted in a predetermined time unit; 상기 패킷 대기부에 대기하는 전송 스트림 패킷의 단위 시간당 개수를 기초로 상기 각 프로그램별로 스케줄링되어 보내질 패킷수를 구하여, 상기 각 프로그램별 전송 스트림 패킷을 하나의 전송 스트림 패킷열로 출력하는 다중화부를 포함하는 것을 특징으로 하는 다채널 MPEG-2 전송 스트림 다중화 장치.A multiplexer configured to obtain the number of packets to be scheduled and sent for each program based on the number of transport stream packets waiting in the packet waiting unit, and output the transport stream packets for each program as one transport stream packet sequence; And a multi-channel MPEG-2 transport stream multiplexing device. 제 1항에 있어서 상기 스케줄링은The method of claim 1, wherein the scheduling 상기 패킷 대기부에 단위시간당 대기하는 각 프로그램의 전송 스트림 패킷수를 모든 프로그램 중 가장 작은 전송 스트림 패킷수로 나눈 값의 정수값인 스케줄링 단위; 및A scheduling unit which is an integer value obtained by dividing the number of transport stream packets of each program waiting in the packet waiting section by the smallest number of transport stream packets among all programs; And 상기 스케줄링 단위를 단위시간당 대기하는 각 프로그램의 전송 스트림 패킷수를 모든 프로그램에서 대기하고 있는 패킷수의 합으로 나눈 값과 곱한 값의 정수값을 기초로 하는 것을 특징으로 하는 다채널 MPEG-2 전송 스트림 다중화 장치.The multi-channel MPEG-2 transport stream is based on an integer value of a value obtained by dividing the number of transport stream packets of each program waiting for the scheduling unit by a unit by the sum of the number of packets waiting in all programs. Multiplexing device. 제 1 항에 있어서, 상기 패킷 대기부는The method of claim 1, wherein the packet waiting unit 상기 PCR이 삽입된 하나 이상의 프로그램별 전송 스트림 패킷 전부가 동일한 시간단위로 대기하는 중앙 큐; 및 A central queue in which all of the at least one program-specific transport stream packet into which the PCR is inserted waits in the same time unit; And 상기 중앙 큐에 대기하고 있는 전송 스트림 패킷이 각 프로그램별로 나누어 입력되는 하나 이상의 프로그램 큐;를 포함하는 것을 특징으로 하는 다채널 MPEG-2 전송 스트림 다중화 장치.And one or more program queues in which transport stream packets queued to the central queue are inputted for each program. 다채널 MPEG-2 전송 스트림 다중화 방법에 있어서,In the multi-channel MPEG-2 transport stream multiplexing method, (a)적어도 하나 이상의 프로그램 소스에서 입력되는 전송 스트림 패킷의 PCR(Program Clock Reference) 유무를 확인하여, 확인된 PCR을 기초로 PCR이 포함되지 않은 전송 스트림 패킷의 PCR을 추정하여 상기 각 프로그램별 전송 스트림 패킷에 PCR을 삽입하는 단계;(a) Checking the presence or absence of a PCR (Program Clock Reference) on the transport stream packet input from at least one program source, estimating the PCR of the transport stream packet not including PCR based on the identified PCR and transmitting the program for each program Inserting a PCR into the stream packet; (b)상기 PCR이 삽입된 각 프로그램 별 전송 스트림 패킷이 소정의 시간 단위로 대기하는 단계; 및 (b) waiting for a transport stream packet for each program into which the PCR is inserted in a predetermined time unit; And (c)상기 대기하고 있는 전송 스트림 패킷의 단위시간당 개수를 기초로 상기 각 프로그램별로 스케줄링되어 보내질 패킷수를 구하여, 상기 각 프로그램별 전송 스트림 패킷을 하나의 전송 스트림 패킷열로 출력하는 단계를 포함하는 것을 특징으로 하는 다채널 MPEG-2 전송 스트림 다중화 방법.(c) obtaining the number of packets to be scheduled and sent for each program based on the number of waiting transport stream packets per unit time, and outputting the transport stream packets for each program as one transport stream packet sequence; A multi-channel MPEG-2 transport stream multiplexing method, characterized in that. 제 4항에 있어서 상기 스케줄링은5. The method of claim 4, wherein the scheduling is 상기 패킷 대기부에 단위시간당 대기하는 각 프로그램의 전송 스트림 패킷수를 모든 프로그램 중 가장 작은 전송 스트림 패킷수로 나눈 값의 정수값인 스케줄링 단위; 및A scheduling unit which is an integer value obtained by dividing the number of transport stream packets of each program waiting in the packet waiting section by the smallest number of transport stream packets among all programs; And 상기 스케줄링 단위를 단위시간당 대기하는 각 프로그램의 전송 스트림 패킷수를 모든 프로그램에서 대기하고 있는 패킷수의 합으로 나눈 값과 곱한 값의 정수값을 기초로 하는 것을 특징으로 하는 다채널 MPEG-2 전송 스트림 다중화 방법.The multi-channel MPEG-2 transport stream is based on an integer value of a value obtained by dividing the number of transport stream packets of each program waiting for the scheduling unit by a unit by the sum of the number of packets waiting in all programs. Multiplexing method. 제 4항에 있어서, 상기(b)단계는The method of claim 4, wherein step (b) (b1)상기 PCR이 삽입된 하나 이상의 프로그램별 전송 스트림 패킷 전부가 동일한 시간단위로 대기하는 단계; 및 (b1) waiting for all of the at least one program-specific transport stream packet into which the PCR is inserted in the same time unit; And (b2)상기 대기하고 있는 전송 스트림 패킷을 각 프로그램별로 나누어 각 프로그램별 큐에 입력시키는 단계;를 포함하는 것을 특징으로 하는 다채널 MPEG-2 전송 스트림 다중화 방법.and (b2) dividing the queued transport stream packets for each program and inputting them in a queue for each program.
KR1020060078798A 2005-12-08 2006-08-21 Multi Channel MPEG-2 Transport Stream Multiplexing Device and Method thereof KR100785788B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020050120006 2005-12-08
KR20050120006 2005-12-08

Publications (2)

Publication Number Publication Date
KR20070061270A KR20070061270A (en) 2007-06-13
KR100785788B1 true KR100785788B1 (en) 2007-12-13

Family

ID=38357206

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060078798A KR100785788B1 (en) 2005-12-08 2006-08-21 Multi Channel MPEG-2 Transport Stream Multiplexing Device and Method thereof

Country Status (1)

Country Link
KR (1) KR100785788B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020066260A (en) * 2001-02-09 2002-08-14 한국전자통신연구원 The data streaming apparatus and method for digital databroadcasting service

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020066260A (en) * 2001-02-09 2002-08-14 한국전자통신연구원 The data streaming apparatus and method for digital databroadcasting service

Also Published As

Publication number Publication date
KR20070061270A (en) 2007-06-13

Similar Documents

Publication Publication Date Title
CA2422131C (en) Method and apparatus for determining a transmission bit rate in a statistical multiplexer
US6327275B1 (en) Remultiplexing variable rate bitstreams using a delay buffer and rate estimation
US9544638B2 (en) Method for reconstructing system time clock (STC) without carrying PCR
US20060007958A1 (en) Multiplexing method and apparatus to generate transport stream
KR100706619B1 (en) Apparatus for Communication and Broadcasting Using Multiplexing at MPEG-2 Transmission Convergence Layer
US8204081B2 (en) Apparatus and method for inserting or extracting network timestamp
JP2012513139A (en) Method for synchronizing transport streams in a multiplexer with an external coprocessor
JP5300278B2 (en) How to detect media rate to measure network jitter
KR101180540B1 (en) Apparatus and method for transmitting/receiving streaming service
JP4647669B2 (en) Method for transmitting MPEG stream via IP, and corresponding device, receiving method and receiver
JP2009188863A (en) Time-stamp addition apparatus, time-stamp addition method, and time-stamp additionprogram
US20170048560A1 (en) Multiplexing apparatus, receiving apparatus, multiplexing method, and delay adjustment method
KR20130121058A (en) Video reproduction apparatus for 3dtv and method for processing by video reproduction apparatus
EP3465456B1 (en) Dynamic delay equalization for media transport
Cizmeci et al. A visual-haptic multiplexing scheme for teleoperation over constant-bitrate communication links
JP3556381B2 (en) Information multiplexing device
US8339986B2 (en) Instrumentation of MPEG-2 transport streams for testing network performance
KR100785788B1 (en) Multi Channel MPEG-2 Transport Stream Multiplexing Device and Method thereof
EP1871111A2 (en) Method and apparatus for providing centralized advertisement insertion
JP2005530376A (en) Dynamic multiplexing method of digital stream
KR100243416B1 (en) Method and apparatus for re-multiplexing in mpeg-2 ts
US10142675B2 (en) Method and apparatus for minimizing timing artifacts in remultiplexing
KR19980027646A (en) Video and Audio Synchronization Method Using Timestamp Compensation and MPEG-2 Encoder Device Using It
JP6555201B2 (en) Scramble device and scramble processing program
Chen Examples of Video Transport Multiplexer

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

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee