KR100579132B1 - 타이밍정보 지터 방지를 위한 멀티미디어데이터전송스트림의 계층적 전송 장치 및 그 방법과, 계층적으로전송된 멀티미디어데이터 전송스트림의 복원 장치 및 그방법 - Google Patents

타이밍정보 지터 방지를 위한 멀티미디어데이터전송스트림의 계층적 전송 장치 및 그 방법과, 계층적으로전송된 멀티미디어데이터 전송스트림의 복원 장치 및 그방법 Download PDF

Info

Publication number
KR100579132B1
KR100579132B1 KR1020040044016A KR20040044016A KR100579132B1 KR 100579132 B1 KR100579132 B1 KR 100579132B1 KR 1020040044016 A KR1020040044016 A KR 1020040044016A KR 20040044016 A KR20040044016 A KR 20040044016A KR 100579132 B1 KR100579132 B1 KR 100579132B1
Authority
KR
South Korea
Prior art keywords
packet
hierarchical
multimedia data
user
transmission
Prior art date
Application number
KR1020040044016A
Other languages
English (en)
Other versions
KR20050066950A (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 한국전자통신연구원
Priority to US10/983,081 priority Critical patent/US7415528B2/en
Publication of KR20050066950A publication Critical patent/KR20050066950A/ko
Application granted granted Critical
Publication of KR100579132B1 publication Critical patent/KR100579132B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • 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/234327Processing 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 decomposing into layers, e.g. base layer and one or more enhancement layers
    • 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/23614Multiplexing of additional data 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/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/2383Channel coding or modulation of digital bit-stream, e.g. QPSK modulation
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/631Multimode Transmission, e.g. transmitting basic layers and enhancement layers of the content over different transmission paths or transmitting with different error corrections, different keys or with different transmission protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

1. 청구범위에 기재된 발명이 속하는 기술분야
본 발명은, 타이밍정보 지터 방지를 위한 멀티미디어데이터 전송스트림의 계층적 전송 장치 및 그 방법과, 계층적으로 전송된 멀티미디어데이터 전송스트림의 복원 장치 및 그 방법에 관한 것임.
2. 발명이 해결하려고 하는 기술적 과제
본 발명은, 송신측에서는 하나의 멀티미디어데이터 전송스트림(예를 들면, MPEG TS) 내의 사용자 패킷들을 우선순위에 따라 계층적으로 분리하여 전송하고, 또한 타이밍정보(예를 들면, PCR)이 있는 사용자 패킷 등을 포함하는 상위(HP: High Priority)계층 패킷들에 대해서는 위치정보(예를 들면, 일련번호 등)를 함께 전송하고, 수신측에서는 이러한 위치정보를 이용하여 원래의 멀티미디어데이터 전송스트림 내에서의 상위계층 패킷들의 위치를 정확하게 복원함으로써, 타이밍정보 지터(jitter)의 발생을 방지하고, 일반적인 역다중화기를 통해서도 각 계층에 따른 선택적 수신을 가능하게 하며, 또한 열악한 전송채널 상황에서도 수신율을 높일 수 있게 하는, 타이밍정보 지터 방지를 위한 멀티미디어데이터 전송스트림의 계층적 전송 장치 및 그 방법과, 계층적으로 전송된 멀티미디어데이터 전송스트림의 복원 장치 및 그 방법을 제공하는데 그 목적이 있음.
3. 발명의 해결 방법의 요지
본 발명은, 멀티미디어데이터 전송스트림(TS)의 계층적 전송 장치에 있어서, 외부로부터 인코딩된 멀티미디어데이터 전송스트림을 입력받아 패킷 단위로 구분하기 위한 입력 정합 수단; 상기 입력 정합 수단으로부터 출력되는 각각의 멀티미디어데이터 전송스트림(TS) 패킷에 대하여 입력순서에 따라 일련번호를 삽입하기 위한 일련번호 삽입 수단; 상기 일련번호가 삽입된 멀티미디어데이터 전송스트림(TS) 패킷에 오류검출코드를 삽입하여 사용자 패킷을 생성하기 위한 오류검출코드 삽입 수단; 사용자가 지정한, 패킷에 대한 계층정보를 저장하는 계층정보 저장 수단; 상기 저장되어 있는 계층정보를 이용하여, 상기 오류검출코드 삽입 수단으로부터 출력되는 상기 사용자 패킷을 계층적으로 분리하기 위한 계층 분리 수단; 상기 계층적으로 분리된 사용자 패킷들을 계층별로 분리하여 저장하기 위한 계층 저장 수단; 및 계층별로 소정의 개수만큼의 상기 저장된 사용자 패킷들과 해당 계층정보를 묶어 계층적 전송프레임을 구성하고, 상기 구성된 계층적 전송프레임을 계층별로 전송방식을 달리하여 전송하기 위한 계층적 프레임화 및 전송 수단을 포함함.
4. 발명의 중요한 용도
본 발명은 PCR 지터 방지를 위한 멀티미디어 스트림 전송/복원 등에 이용됨.
계층적 전송, 타이밍 정보, PCR, 지터, 위치정보, 일련번호, HP, LP

Description

타이밍정보 지터 방지를 위한 멀티미디어데이터 전송스트림의 계층적 전송 장치 및 그 방법과, 계층적으로 전송된 멀티미디어데이터 전송스트림의 복원 장치 및 그 방법{Apparatus and Method of the hierarchical transmission of a multimedia data TS for preventing the jitter of timing information, and Apparatus and Method of recovering a multimedia data TS transmitted hierarchically}
도 1 은 본 발명에 따른 타이밍정보 지터 방지를 위한 멀티미디어데이터 전송스트림의 계층적 전송 장치 및 계층적으로 전송된 멀티미디어데이터 전송스트림의 복원 장치의 일실시예 구성도,
도 2 는 본 발명에 따른 도 1의 일련번호 삽입부 및 오류검출코드 삽입부에 대한 일실시예 설명도,
도 3 은 계층적 전송 방식으로 인한 PCR 지터(Jitter) 발생에 대한 설명도,
도 4 는 본 발명에 따른 수신측에서 상위(HP)/하위(LP) 계층 모두 수신한 경우에 있어서의 엠펙 전송스트림의 복원 방법에 대한 일실시예 설명도,
도 5 는 본 발명에 따른 수신측에서 상위(HP) 계층만 수신한 경우에 있어서의 엠펙 전송스트림의 복원에 대한 일실시예 설명도,
도 6 은 본 발명에 따른 도 1의 계층적 프레임화 및 전송부에서의 위치정보 전송 방법에 대한 일실시예 설명도,
도 7 은 본 발명에 따른 타이밍정보 지터 방지를 위한 멀티미디어데이터 전송스트림의 계층적 전송 방법에 대한 일실시예 흐름도,
도 8 은 본 발명에 따른 계층적으로 전송된 멀티미디어데이터 전송스트림의 복원 방법에 대한 일실시예 흐름도,
도 9 는 본 발명에 따른 수신측에서 상위(HP)/하위(LP) 계층 모두 수신한 경우 도 1의 스케줄러에서의 엠펙 전송스트림의 복원 방법에 대한 일실시예 상세흐름도,
도 10a 및 도 10b 는 본 발명에 따른 도 9에서의 계층버퍼들 중에서 가져올 사용자 패킷 결정 과정에 대한 일실시예 상세흐름도,
도 11 은 본 발명에 따른 도 9에서의 수신기 재초기화시에 출력해야 하는 첫번째 패킷(next_seq) 결정 과정에 대한 일실시예 상세흐름도,
도 12a 및 도 12b 는 본 발명에 따른 수신측에서 하위(LP) 계층만 수신한 경우 도 1의 스케줄러에서의 엠펙 전송스트림의 복원 방법에 대한 일실시예 상세흐름도이다.
* 도면의 주요 부분에 대한 부호 설명
100: 엠펙 전송스트림의 계층적 전송 장치 101: MPEG TS 입력 정합부
102: 일련번호 삽입부 103: 오류검출코드 삽입부
104: 계층정보 테이블 저장부 105: 계층 분리부
106, 107: 계층 버퍼 108: 계층적 프레임화 및 전송부
120: 엠펙 전송스트림 복원 장치
121: 계층적 프레임 수신 및 사용자 패킷 추출부
122: 오류패킷제거 및 계층분리부 123, 124: 계층 버퍼
125: 스케줄러
126: 오류검출코드/일련번호 제거부 127: MPEG TS 출력 정합부
본 발명은, 멀티미디어데이터 전송스트림의 계층적 전송 및 계층적으로 전송된 멀티미디어데이터 전송스트림의 복원 기술에 관한 것으로, 더욱 상세하게는 송신측에서는 하나의 멀티미디어데이터 전송스트림(예를 들면, MPEG TS) 내의 사용자 패킷들을 우선순위에 따라 계층적으로 분리하여 전송하고, 또한 타이밍정보(예를 들면, PCR)이 있는 사용자 패킷 등을 포함하는 상위(HP: High Priority)계층 패킷들에 대해서는 위치정보(예를 들면, 일련번호 등)를 함께 전송하고, 수신측에서는 이러한 위치정보를 이용하여 원래의 멀티미디어데이터 전송스트림 내에서의 상위계층 패킷들의 위치를 정확하게 복원하는, 타이밍정보 지터 방지를 위한 멀티미디어데이터 전송스트림의 계층적 전송 장치 및 그 방법과, 계층적으로 전송된 멀티 미디어데이터 전송스트림의 복원 장치 및 그 방법에 관한 것이다.
최근, 지상파 디지털 비디오 방송(DVB-T: Digital Video Broadcasting - Terrestrial)나 위성 디지털 비디오 방송(DVB-S2: Digital Video Broadcasting - Satellite2)에서는 전송하고자 하는 데이터를 그 내용에 따라 구분하여 전송하거나, 또는 채널 상황에 맞게 전송된 데이터의 일부 혹은 전체를 수신할 수 있는 방식에 대한 표준화 작업이 활발히 이루어지고 있다.
이러한, 최근의 상황에서, 다양한 채널 환경에서 그에 맞는 방송 서비스 또는 데이터 통신 서비스가 제공될 수 있는 계층적 전송 방식이 차세대 방송/통신 융합의 기본적인 구조로서 고려되고 있다.
종래에 발표되었던 계층적 전송 방식에서는 대부분 계층적 채널 부호화/복호화와 변복조 방식에 대하여 중점적으로 다루고 있는 반면에, 실제적으로 이러한 방식이 사용될 때 필요한 주변의 장치에 대해서는 구체적으로 언급하고 있지 않다.
또한, 종래에 제안되었던 계층적 전송 방식들도 대부분은 실제로 사용되고 있지 않은데, 그 이유 중의 하나는 채널의 상태가 나쁠 경우나 원하는 계층만을 수신하였을 경우에, 해당 계층의 패킷만 이용하여 MPEG-2 역다중화기가 수신할 수 있는 형태의 엠펙 전송스트림(MPEG TS)으로의 복원이 힘들다는데 있었다.
특히, 종래의 계층적 전송 방식에서 심각하게 야기되는 문제점 중의 하나는 계층적 전송 시스템에서 전송되었던 엠펙 전송스트림(MPEG TS)이 수신측에서 원래 상태대로 복원되지 않고, 또한 엠펙 전송스트림(MPEG TS)에서의 PCR 정보를 가지고 있는 패킷의 위치가 달라져 지터(jitter)가 발생한다 점이다.
상기와 같은 문제점을 해결하기 위한 종래의 방법으로는, 독립된 엠펙 전송스트림(MPEG TS)마다 별개의 계층적으로 분리하여 전송하는 방식(송신측에서의 해결방법)이 제안되어 있으나, 이 경우에는 계층적 전송 시스템 구현이 복잡하고 비용이 많이 들며, 또한 수신측에서도 각 계층에 따른 선택적 수신을 위해서, 일반적인 MPEG TS 역다중화기가 아닌 다수의 MPEG TS 역다중화기로 이루어진 특수한 역다중화기가 필요하다는 문제점이 있었다.
즉, 계층적 전송 방식을 이용하여 실제 MPEG-2 TS를 전송함에 있어서 발생되는 문제점 중 하나는 계층을 분리하고, 그 분리된 계층을 각기 다른 전송방식으로 전송한 후, 다시 MPEG-2 TS로 복원하는 과정에서 지터가 발생한다는 것이다. 이는 엠펙 전송스트림(MPEG TS)의 타이밍 정보(PCR)를 가진 패킷이 원래의 엠펙 전송스트림(MPEG TS)의 위치에서 벗어나기 때문이다. 따라서, 계층적 구조를 이용하여 엠펙 전송스트림(MPEG TS)을 계층으로 구분하여 전송할 경우, 수신기에서 선택적으로 수신 계층을 선택하기 위해서는, 수신기에서 해당 계층을 수신하여 엠펙 전송스트림(MPEG TS)을 출력할 때 타이밍 정보가 포함된 완전한 형태의 엠펙 전송스트림(MPEG TS)으로 복원하여야 한다. 그리고, 이러한 기능을 위해서는 각 계층마다 새로운 타이밍 정보가 포함된 엠펙 전송스트림(MPEG TS)을 생성할 수 있도록 송신측에 재다중화기와 같은 별도의 시스템을 사용하여야 한다. 또한, 이렇게 재다중화기를 사용한다 할지라도, 수신기에서 여러 계층을 동시에 수신하는 것이 곤란하다는 문제점이 있었다.
한편, 상기와 같은 지터를 없애기 위한 또 다른 종래의 방법으로는, 수신측 에서 새롭게 구성되는 엠펙 전송스트림(MPEG TS)에 맞게 엠펙 전송스트림(MPEG TS)내의 PCR값을 수정하는 방법(수신측에서의 해결 방법)이 있었다. 그러나, 이와 같이 PCR 지터를 없애기 위하여 PCR 값을 정확히 수정하기 위해서는, 수신기에 새로운 회로 추가와 복잡한 알고리듬의 적용이 필요하다는 문제점이 있었다.
본 발명은, 상기와 같은 문제점을 해결하기 위하여 제안된 것으로, 송신측에서는 하나의 멀티미디어데이터 전송스트림(예를 들면, MPEG TS) 내의 사용자 패킷들을 우선순위에 따라 계층적으로 분리하여 전송하고, 또한 타이밍정보(예를 들면, PCR)이 있는 사용자 패킷 등을 포함하는 상위(HP: High Priority)계층 패킷들에 대해서는 위치정보(예를 들면, 일련번호 등)를 함께 전송하고, 수신측에서는 이러한 위치정보를 이용하여 원래의 멀티미디어데이터 전송스트림 내에서의 상위계층 패킷들의 위치를 정확하게 복원함으로써, 타이밍정보 지터(jitter)의 발생을 방지하고, 일반적인 역다중화기를 통해서도 각 계층에 따른 선택적 수신을 가능하게 하며, 또한 열악한 전송채널 상황에서도 수신율을 높일 수 있게 하는, 타이밍정보 지터 방지를 위한 멀티미디어데이터 전송스트림의 계층적 전송 장치 및 그 방법과, 계층적으로 전송된 멀티미디어데이터 전송스트림의 복원 장치 및 그 방법을 제공하는데 그 목적이 있다.
본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
상기의 목적을 달성하기 위한 본 발명은, 멀티미디어데이터 전송스트림(TS: Transport Stream)의 계층적 전송 장치에 있어서, 외부로부터 인코딩된 멀티미디어데이터 전송스트림을 입력받아 패킷 단위로 구분하기 위한 입력 정합 수단; 상기 입력 정합 수단으로부터 출력되는 각각의 멀티미디어데이터 전송스트림(TS) 패킷에 대하여 입력순서에 따라 일련번호를 삽입하기 위한 일련번호 삽입 수단; 상기 일련번호가 삽입된 멀티미디어데이터 전송스트림(TS) 패킷에 오류검출코드(Error Check Code)를 삽입하여 사용자 패킷을 생성하기 위한 오류검출코드 삽입 수단; 사용자가 지정한, 패킷에 대한 계층정보를 저장하는 계층정보 저장 수단; 상기 저장되어 있는 계층정보를 이용하여, 상기 오류검출코드 삽입 수단으로부터 출력되는 상기 사용자 패킷(User Packet)을 계층적으로 분리하기 위한 계층 분리 수단; 상기 계층적으로 분리된 사용자 패킷들을 계층별로 분리하여 저장하기 위한 계층 저장 수단; 및 계층별로 소정의 개수만큼의 상기 저장된 사용자 패킷들과 해당 계층정보를 묶어 계층적 전송프레임을 구성하고, 상기 구성된 계층적 전송프레임을 계층별로 전송방식을 달리하여 전송하기 위한 계층적 프레임화 및 전송 수단을 포함한다.
한편, 본 발명은, 멀티미디어데이터 전송스트림 복원 장치에 있어서, 전송채널을 통하여 전송되는 계층적 전송프레임들을 수신하고, 상기 수신된 전송프레임에 서 사용자 패킷과 계층정보를 추출하기 위한 계층적 프레임 수신 및 사용자 패킷 추출 수단; 상기 추출된 사용자 패킷에 있는 오류검출코드를 이용하여 전송 중에 오류가 발생한 사용자 패킷을 제거하고, 오류가 없는 사용자 패킷들은 상기 추출된 계층정보를 이용하여 계층별로 분리하기 위한 오류패킷 제거 및 계층분리 수단; 상기 오류패킷 제거 수단으로부터 출력되는 사용자 패킷을 계층마다 별개로 저장하기 위한 계층 저장 수단; 상기 계층 저장 수단에 계층별로 저장된 사용자 패킷들을, 상기 사용자 패킷에 있는 위치정보를 이용하여 원래의 멀티미디어데이터 전송스트림의 순서대로 복원하기 위한 스케줄링 수단; 상기 스케줄링되어 원래의 순서대로 복원된 사용자 패킷에서 오류검출코드와 위치정보를 제거하여 멀티미디어데이터 전송스트림(TS) 패킷을 복원하기 위한 오류검출코드/위치정보 제거 수단; 및 상기 복원된 멀티미디어데이터 전송스트림(TS) 패킷을 입력받아 전송률을 변환하여 멀티미디어데이터 전송스트림(TS)으로 출력하기 위한 출력 정합 수단을 포함한다.
한편, 본 발명은, 멀티미디어데이터 전송스트림의 계층적 전송 방법에 있어서, 외부로부터 인코딩된 멀티미디어데이터 전송스트림(TS)을 입력받아 패킷 단위로 구분하는 입력 정합 단계; 상기 입력 정합 단계에서 구분된 각각의 멀티미디어데이터 전송스트림(TS) 패킷에 대하여 입력순서에 따라 일련번호를 삽입하고, 상기 일련번호가 삽입된 멀티미디어데이터 전송스트림(TS) 패킷에 오류검출코드(Error Check Code)를 삽입하여 사용자 패킷을 생성하는 일련번호/오류검출코드 삽입 단계; 사용자가 지정한, 패킷에 대한 계층정보를 이용하여, 상기 일련번호와 오류검출코드가 삽입된 사용자 패킷(User Packet)들을 계층적으로 분리하여 저장하는 계 층 분리 단계; 및 계층별로 소정의 개수만큼의 상기 저장된 사용자 패킷들과 해당 계층정보를 묶어 계층적 전송프레임을 구성하고, 상기 구성된 계층적 전송프레임을 계층별로 전송방식을 달리하여 전송하는 계층적 프레임화 및 전송 단계를 포함한다.
한편, 본 발명은, 엠펙 전송스트림 복원 방법에 있어서, 전송채널을 통하여 전송되는 계층적 전송프레임들을 수신하고, 상기 수신된 전송프레임에서 사용자 패킷과 계층정보를 추출하는 계층적 프레임 수신 및 사용자 패킷 추출 단계; 상기 추출된 사용자 패킷에 있는 오류검출코드를 이용하여 전송 중에 오류가 발생한 사용자 패킷(Error Packet)은 제거하고, 오류가 없는 사용자 패킷들은 상기 추출된 계층정보를 이용하여 계층별로 분리 저장하는 오류패킷 제거 및 계층별 저장 단계; 상기 사용자 패킷에 있는 위치정보를 이용한 스케줄링을 통하여, 상기 계층별로 저장된 사용자 패킷을 원래의 멀티미디어데이터 전송스트림(TS)의 순서대로 복원하는 스케줄링 단계; 상기 스케줄링 단계에 의하여 원래의 순서에 맞게 복원된 사용자 패킷에서 오류검출코드와 위치정보를 제거하여 멀티미디어데이터 전송스트림(TS) 패킷을 복원하는 오류검출코드/위치정보 제거 단계; 및 상기 복원된 멀티미디어데이터 전송스트림(TS) 패킷에 대하여 전송률을 변환하여 멀티미디어데이터 전송스트림(TS)으로 출력하는 출력 정합 단계를 포함한다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또 한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명하기로 한다.
도 1 은 본 발명에 따른 타이밍정보 지터 방지를 위한 멀티미디어데이터 전송스트림의 계층적 전송 장치 및 계층적으로 전송된 멀티미디어데이터 전송스트림의 복원 장치의 일실시예 구성도로서, 입력된 멀티미디어데이터 전송스트림을 다수의 계층으로 분리/전송/복원하는 과정을 나타낸다. 여기서, 멀티미디어데이터 전송스트림은 엠펙 전송스트림(MPEG TS) 등을 포함하는 개념으로서, 이하에서는 엠펙 전송스트림(MPEG TS)과 그에 대한 타이밍정보인 PCR을 일실시예로 들어 설명하기로 한다.
본 발명은 방송 혹은 통신을 위해 생성된 엠펙 전송스트림(MPEG TS)을 내용에 따라 구분하여 각기 다른 계층으로 전송하는 기술과 관련된 것으로서, 에러가 발생할 수 있는 전송채널 환경에서 MPEG-2 TS를 기반으로 계층적 전송 방식을 이용하여 방송 혹은 통신을 할 때 하나의 엠펙 전송스트림(MPEG TS)의 계층분류/전송/복원 과정에서 발생되는 PCR 지터 문제를 해결한다.
먼저, 디지털 방송 송신시스템에서의 엠펙 전송스트림의 계층적 전송 장치(100)를 설명하면, 다음과 같다.
엠펙 전송스트림(MPEG TS) 입력 정합부(101)는 인코딩 장치의 MPEG-2 다중화기(도 1에는 도시되지 않음)로부터 출력되어 입력되는 엠펙 전송스트림(TS)을 패킷 단위로 구분하고, 각 구분된 패킷에는 MPEG TS 출력 정합부(127)에서 전송률을 맞출 수 있도록 시간정보(time stamp)를 삽입할 수 있다. 여기서, 각 패킷은 페이로드(payload)와 동기화 바이트(SYNC) 등으로 구성된다. MPEG TS 출력 정합부(127)에서 시간정보(time stamp)를 이용하여 전송률을 맞출 수 있도록 MPEG TS 입력 정합부(101)에서 시간정보(time stamp)를 삽입하는 경우를 실시예로 설명하였으나, 시간정보(time stamp)를 이용하지 않고도 다양한 기존 기술을 이용하여 전송률을 맞출 수 있으므로, 도 2의 MPEG TS 패킷에는 시간정보(time stamp)를 나타내지 않았다.
일련번호 삽입부(102)가 188 바이트 단위 엠펙 전송스트림(MPEG TS) 패킷에 대하여 입력 순서에 따라 일련번호(Sequence Number)를 부과하여 삽입하면, 오류검출코드 삽입부(103)는 오류검출코드(Error Check Code)를 삽입하여 하나의 사용자 패킷을 생성한다.
상기와 같은 과정을 거친 후, 일반적인 계층적 전송 과정을 거친다. 즉, 계층 분리부(105)는 엠펙 전송스트림(MPEG TS)의 헤더에 포함된 정보를 이용하여 개별적인 사용자 패킷을, 계층정보 테이블 저장부(104)에 저장된 계층정보에 따라 상위(HP) 계층과 하위(LP)계층 등의 계층(Layer)으로 분리한다. 여기서, 계층 분리는 두 개의 계층(즉, 상위(HP)계층, 하위(LP)계층)으로 분리할 수도 있고, 또는 보다 세분화하여 3이상의 계층 수로 분리할 수도 있다.
계층 분리부(105)에서 엠펙 전송스트림(MPEG TS) 패킷을 계층으로 구분할 때, 전송스트림(TS)내 PCR을 포함하는 패킷은 반드시 가장 안정적인 전송 계층(즉, 최상위 계층)으로 분류하여 전송하여야 한다. 예를 들어, 2계층의 경우, 반드시 HP(High Prority)로 분류하여 전송해야 한다. 이는 PCR값이 송신기가 수신측으로 전달하는 클럭 정보로서, 수신기에서의 역다중화를 위하여 반드시 필요한 값이기 때문이다. PCR은 엠펙 전송스트림(MPEG TS)의 적응 필드(adaptation field) 내에 포함이 되는데, 이 영역의 존재 여부는 2비트의 적응필드 제어(adaptation field control) 정보로 알 수 있다.
한편, 계층정보 테이블(Layer Information Table) 저장부(104)는 사용자가 우선순위(Priority)에 따라 지정한 각 사용자 패킷에 대한 계층정보, 즉 각 사용자 패킷이 어느 계층에 속하게 되는가에 대한 정보를 저장한다.
각각의 계층 버퍼(Layer Buffer)(106, 107)는 각 계층에 속하는 사용자 패킷을 일정시간 동안 저장하며, 계층적 프레임화 및 전송부(108)는 일정시간 동안 저장된 사용자 패킷을 프레임 단위로 전송하기 위하여 프레임화한 후, 각 프레임을 각 계층에 할당된 전송방식에 따라서 전송 채널(110)을 통하여 전송한다.
여기서, 전송프레임 구성 과정은, 일정시간 동안 각 계층 버퍼(106)에 저장된 사용자 패킷의 수를 감지하고, 그 일정시간 동안 계층 버퍼(106, 107)에 도착한 사용자 패킷들, 그 사용자 패킷들에 대한 계층정보, 및 프레임 헤더 등을 묶어 하나의 전송프레임을 구성하는 과정이다.
전송 채널(Transmission Channel)(110)은 에러가 존재할 수 있으며, 위성통신 채널과 이동통신채널을 포함하는 무선 채널, 및 패킷 손실이 발생할 수 있는 유선 채널 등이 해당할 수 있다.
다음으로, 수신측의 엠펙 전송스트림 복원 장치(120)을 설멸하면, 다음과 같다.
계층적 프레임 수신 및 사용자패킷 추출부(121)는 각 계층마다 서로 다른 전송방식으로 전송된 계층적 전송프레임을 수신하고, 그 수신된 전송프레임에서 헤더 등을 제거하는 과정을 통하여 사용자 패킷(Usser Packet)들과 계층정보를 추출한다.
오류패킷제거 및 계층분리부(122)는 사용자 패킷에 있는 오류검출코드(ECC)를 이용하여 계층적 전송 중에 오류가 발생한 사용자 패킷(Error Packet)은 제거하고, 오류가 없는 사용자 패킷들은 계층적 프레임 수신 및 사용자패킷 추출부(121)에서 추출된 계층정보를 이용하여 계층별로 분리하여 해당 계층버퍼(123, 124)에 저장한다.
스케줄러(125)는 각 계층의 버퍼(123, 124)에 저장된 사용자 패킷을 일련번호 등의 위치정보를 이용하여 원래의 순서대로 복원하여, 오류검출코드/일련번호 제거부(126)로 출력한다.
그러면, 오류검출코드/일련번호 제거부(126)는 복원되어 들어오는 MPEG TS 패킷 각각에 대하여 그 패킷내에 삽입되어 있는 오류검출코드(ECC)와 일련번호를 제거한다.
MPEG TS 출력 정합부(127)는 오류검출코드/일련번호가 제거된 MPEG TS을 외부(즉, 디코딩 장치)로 출력하는데, 이 때 MPEG TS의 최종적인 출력 전송률을 송신측 엠펙 전송스트림의 계층적 전송 장치(보다 정확하게는 MPEG TS 입력 정합부 )(100)로 입력되는 입력 전송률과 동일하게 맞추어 출력한다. 여기서, 전송률은 MPEG TS내에 삽입된 시간정보(time stamp)를 이용하여 맞춘다.
도 2 는 본 발명에 따른 도 1의 일련번호 삽입부 및 오류검출코드 삽입부에 대한 일실시예 설명도로서, 계층적 전송을 위하여 각 엠펙 전송스트림(MPEG TS) 패킷에 일련 번호와 오류검출 코드를 삽입하는 방법을 나타낸다.
일련번호 삽입부(102)는 계층적 전송을 위하여 계층 구분 전에, 전송되는 엠펙 전송스트림(MPEG TS) 패킷을 수신단에서의 복원을 위하여 추가적으로 몇 바이트의 일련 번호(seq_no)(202)를 삽입하며, 오류검출코드 삽입부(103)는 일련 번호 및 해당 엠펙 전송스트림(MPEG TS)에 에러가 발생하였는지 여부를 검사하기 위하여 오류검출 코드(203)를 추가적으로 삽입한다.
일련번호 삽입부(102)는 카운터(211)와 일련번호 삽입기(212)로 구성되며, 카운터(211)(예를 들면, Modulo 216 Counter)가 엠펙 전송스트림(MPEG TS)을 하나 수신할 때마다 카운터 값을 증가시키면, 일련번호 삽입기(212)는 그 카운트값에 해당하는 일련번호(202)를 MPEG TS 페이로드(Payload)(201) 뒤에 추가한다.
한편, 오류검출코드 삽입부(103)는 오류검출코드 계산기(221)와 오류검출코드 삽입기(222)로 구성되는데, 오류검출코드 계산기(221)가 일련 번호와 해당 엠펙 전송스트림(MPEG TS) 패킷에 에러가 발생하였는지 여부를 검사하기 위한 오류검출 코드(error check code)를 계산하면, 오류검출코드 삽입기(222)는 그 계산된 오류검출코드(ECC)를 일련번호 뒤에 삽입한다.
위와 같은 과정을 거치면, 사용자 패킷은 동기바이트 원래의 엠펙 전송스트림(MPEG TS) 페이로드(Payload)(201), 일련번호(202) 및 오류검출 코드(203) 등으로 구성된다.
이하, 엠펙 전송스트림(MPEG TS) 패킷마다 일련번호(202) 및 오류검출코드 (ECC)(203)를 삽입하는 과정을 상세히 설명하면, 다음과 같다.
일련번호의 최대값은 일련 번호를 위하여 할당하는 바이트(byte)의 크기에 따라 달라질 수 있다. 예를 들어, 2바이트를 사용할 경우에는 0 ~ 65535의 값을 순차적으로 사용하며, 1바이트의 경우에는 0 ~ 255의 값을 가진다. 또한, 각 일련번호가 포함된 패킷에 오류 검출을 위한 코드를 삽입한다.
오류 검출을 위한 코드는 일반적인 CRC-8(Cyclic Redundancy Check-8) 또는 CRC-16(Cyclic Redundancy Check-16) 코드를 사용할 수 있다. CRC-8을 사용할 경우에는 CRC-8 코드가 다음 엠펙 전송스트림(MPEG TS) 패킷의 동기 바이트(SYNC byte)의 위치에 삽입되거나 혹은 별도의 바이트로 일련번호 뒤에 추가될 수도 있다.
상기와 같은 과정을 거치면, 188바이트의 엠펙 전송스트림(MPEG TS) 패킷은 일련번호 및 오류검출 코드 등이 삽입된 사용자 패킷(User Packet)이 된다.
도 3 은 계층적 전송 방식으로 인한 PCR 지터(Jitter) 발생에 대한 설명도로서, 상위(HP: High Priority)와 하위(LP: Low Priority)의 두 계층만이 존재하는 경우, 일반적인 다중화 기법으로 패킷들을 복원하였을 때, PCR 지터(jitter)가 발생하는 현상을 나타내고 있다.
엠펙 전송스트림(MPEG TS)마다 계층적으로 분리하여 전송하는 기존의 계층적 인 전송 방식과 달리, 본 발명에서는 하나의 엠펙 전송스트림(MPEG TS)을 계층적으로 분리하여 전송하는데, 이 경우에도 PCR 지터(jitter)가 발생할 수 있으며, 이를 해결하기 위하여 본 발명에서는 도 4내지 도6에 도시된 바와 같이, 일련번호 등을 삽입하여 전송하고, 수신측에서도 이를 이용하여 엠펙 전송스트림(MPEG TS)을 복원한다.
이하, 일련번호등을 삽입하지 않는 계층적 전송 방식에서의 PCR 지터(jitter) 문제를 설명하면, 다음과 같다.
본 발명에 따르는 계층적 전송 방식에서는 하나의 엠펙 전송스트림(MPEG TS)이 그 내용에 따라서 몇개의 계층으로 분리되어 각기 다른 방식으로 전송된다. 그러나, HP(High Priority), LP(Low Priority)등 두 계층만이 존재하는 경우, 일반적인 다중화 방식으로 패킷을 복원하였을 때에는 도 3에서와 같이 PCR 지터가 발생할 수 있다.
예를 들어, 하나의 방송프로그램을 구성하고 있는 오디오/비디오가 하나의 전송형태를 가지는 경우(301)에 있어서, 오디오의 경우에는 에러가 심한 환경에서도 오디오만의 재생이 가능하도록 QPSK(Quadrature Phase Shift Keying) 방식으로 전송되고(302), 비디오의 경우에는 많은 데이터 양을 효과적으로 처리할 수 있도록 전송 효율이 높은 8PSK(8Phase Shift Keying)방식으로 전송될 수 있다(303).
이 때, 오디오와 비디오를 각기 분리하여 전송하는 경우에 있어서, 수신기의 MPEG 역다중화기가 전송되는 엠펙 전송스트림(MPEG TS)을 올바르게 수신하기 위해서는 원래의 엠펙 전송스트림(MPEG TS)으로 복원되어야 한다.
그러나, 일반적인 계층적 구조에서 각 패킷에 대한 위치 정보가 없이 전송될 경우, 에러가 발생하지 않는 환경하에서도 두 계층의 패킷을 하나의 스트림으로 만드는 과정에서 지터(jitter)가 발생할 수 있다(304). 만약, HP 패킷만 수신 가능할 경우의 지터는 더욱 심각해진다(305).
도 4 는 본 발명에 따른 수신측에서 상위(HP)/하위(LP) 계층 모두 수신한 경우에 있어서의 엠펙 전송스트림의 복원 방법에 대한 일실시예 설명도로서, 그 구체적인 복원 방법은 도 9의 수신 스케줄링 방법을 이용한다. 여기서, 1, 2, 3, ... 등의 숫자는 엠펙 전송스트림(TS) 패킷에 삽입되는 일련번호를 나타낸다.
수신기에서 전송 채널의 상태에 따라서 두 계층(HP, LP) 모두 수신할 수 있는 경우, 송신단의 MPEG TS 다중화기로부터 출력되어 엠펙 전송스트림의 계층적 전송 장치(100)로 입력된 엠펙 전송스트림(401)과 순서가 동일 형태로 복원되어야 한다.
엠펙 전송스트림의 계층적 전송 장치(100)가 MPEG TS 패킷에 일련번호와 오류검출코드가 삽입된 사용자 패킷들(401)을 HP 계층(402)과 LP 계층(403)으로 계층 분리하여 전송하면, 수신기의 엠펙 전송프레임 복원 장치(120)에서는 사용자 패킷 내에 포함되어 있는 일련번호를 이용하여 HP와 LP의 버퍼에 저장되어 있는 사용자 패킷을 원래의 엠펙 전송스트림의 순서("401"의 순서)에 맞게 복원한다(404). 이 때, 오류 검출 결과, 에러가 발생하여 폐기된 패킷("V2")의 위치에는 MPEG 시스템에서 정의한 빈 패킷("null")(도면에서 일련번호 "10")을 대신 삽입한다.
도 5 는 본 발명에 따른 수신측에서 상위(HP) 계층만 수신한 경우에 있어서 의 엠펙 전송스트림의 복원에 대한 일실시예 설명도로서, 그 구체적인 복원 방법은 도 11의 수신 스케줄링 방법을 이용한다.
HP만 수신한 경우는, 채널의 상태가 LP는 수신이 불가능하지만(503) HP는 수신이 가능함을 의미하는 것으로(502), LP의 위치와 HP 패킷 중 에러가 발생한 패킷의 위치에는 빈 패킷(PID=0x1FFF)을 삽입하여 복원한다(504).
도 6 은 본 발명에 따른 도 1의 계층적 프레임화 및 전송부에서의 위치정보 전송 방법에 대한 일실시예 설명도이다.
엠펙 전송스트림(MPEG TS)에서 PCR 등가장 기본적인 정보를 가진 계층에 한하여 차별적으로 일련번호 등 엠펙 전송스트림(MPEG TS)내에서 위치 정보를 포함하는 구조에 대한 일실시예 설명도이다.
도 6은 엠펙 전송스트림(MPEG TS)에서 가장 기본적인 정보를 가진 계층에 한하여 차별적으로 일련번호 등 엠펙 전송스트림(MPEG TS)내에서 위치 정보를 포함하는 구조를 나타내었다.
MPEG TS을 기반으로 한 응용 중에는 비디오/오디오 전송 서비스 외에 IP(Internet Protocol)와 같은 데이터 서비스를 제공하는 경우도 있다. 데이터 서비스의 경우에는 오디오/비디오와 같은 실시간성 서비스와는 달리, 개별 프로그램당 전송 지연에 대하여 민감하지 않다.
따라서, 엠펙 전송스트림(MPEG TS)을 수신기의 역다중화기에서 정상적으로 해석이 가능하도록 전송하면, 이후 단에서의 패킷 처리는 정상적으로 이루어지며, 이로 인하여 서비스에는 아무런 영향이 없다. 따라서, 이와 같이 개별 프로그램이 전송 지연에 민감하지 않은 경우에는, 엠펙 전송스트림(MPEG TS) 중에서 타이밍 정보(PCR) 등 가장 기본적인 정보를 지닌 패킷으로 분류되는 계층(즉, 상위계층)에만 일련번호 또는 그에 상응하는 위치정보를 부과함으로써 엠펙 전송스트림(MPEG TS) 내에서의 상위계층 패킷에 대한 위치가 변하지 않도록 할 수 있다. 여기서, 일련번호에 상응하는 위치정보란 일련번호 대신에 부과되는 인접한 일련번호간의 차이값을 말한다.
한편, 엠펙 전송스트림(MPEG TS) 내에서의 위치 정보(즉, 일련번호 등)를 모든 계층에 삽입하지 않고, 상위(HP) 계층 패킷에 대해서만 해당 일련번호를 삽입하여 전송하면, 보다 높은 대역 효율을 얻을 수 있다.
도 6에서는 3계층을 에로 들어 설명하였으나, 본 방법을 적용하는데 있어서 계층 수의 제한은 없으므로, 그 이상으로 계층을 분리할 수도 있다.
이하, 도 6에 대하여 상세히 설명하기로 한다.
처음 한 프레임 기간 동안의 사용자 패킷들을 정하진 규칙(Rule)에 따라서 3계층으로 구분한다(601). 이 때, 계층적 전송에서는 모든 패킷에 일련번호 등을 삽입하여 전송하는 형태(602)가 아니라, 전송의 품질이 가장 우수한 계층 1(최상위 계층)에 해당하는 패킷에 대해서만 일련번호 등을 삽입하여 전송한다(603). "603"에서 "1", "2", "3"은 계층 순위를 나타내고, "1", "6", "12"는 일련번호를 나타낸다.
송신측에서는, 계층적으로 전송되어 수신측에서 복원되는 과정에서 PCR 지터가 발생하지 않도록, 일련 번호("1", "6", "12")(603) 또는 해당 계층 내에서 인접 하는 일련번호 간의 차이값("0", "5", "6")을 함께 보낸다(604).
따라서, 수신기에서는 엠펙 전송스트림(MPEG TS) 중에서 가장 기본적인 정보(PCR 등)를 포함하는 패킷에 대하여서는 위치 정보를 알고 있기 때문에, PCR 지터 문제를 해결할 수 있다.
도 7 은 본 발명에 따른 타이밍정보 지터 방지를 위한 멀티미디어데이터 전송스트림의 계층적 전송 방법에 대한 일실시예 흐름도를 나타내는데, 이하에서는 엠펙 전송스트림과 그에 대한 타이밍 정보인 PCR을 예로 들어 설명하기로 한다.
도 1에서 엠펙 전송스트림의 계층적 전송 장치(100)를 설명하면서, 이미 엠펙 전송스트림의 계층적 전송 방법에 대해서도 함께 설명한 바 있으나, 여기서는 엠펙 전송스트림의 계층적 전송 장치(100)에 적용되는 엠펙 전송스트림의 계층적 전송 방법만을 별도로 설명하기로 한다.
먼저, 계층적 전송 장치(100)가 외부(즉, 송신측 인코딩 장치의 MPEG-2 다중화기)로부터 인코딩된 엠펙 전송스트림(MPEG TS)을 입력받아 패킷 단위로 구분한다(701).
그리고, 계층적 전송 장치(100)는 그 구분된 각각의 MPEG TS 패킷에 대하여 입력순서에 따라 일련번호를 삽입하고(702), 그 일련번호가 삽입된 MPEG TS 패킷에 오류검출코드(Error Check Code)를 삽입하여 사용자 패킷을 생성한다(703).
다음으로, 계층적 전송 장치(100)는 사용자가 지정한, 패킷에 대한 계층정보를 이용하여, 일련번호와 오류검출코드가 삽입된 사용자 패킷(User Packet)들을 계층적으로 분리하여 해당 계층 버퍼에 저장한다(704). 여기서, 계층 분리 과정은, 사용자가 지정한 계층정보를 이용하여 사용자 패킷들을 계층적으로 분리하되, PCR(Program Clock Reference)을 포함하는 사용자 패킷을 상위계층(만약, 3이상의 계층으로 분리하는 경우에는 최상위 계층)으로 분리한다.
이어서, 계층적 전송 장치(100)는 계층별로 일정한 개수만큼의 사용자 패킷들(계층 버퍼에 저장된 사용자 패킷들)과 해당 계층정보를 묶어 계층적 전송프레임을 구성한 후(705), 계층적 전송프레임을 계층별로 전송방식을 달리하여 전송한다(706). 여기서, 계층적 전송프레임은 하위계층의 사용자 패킷들에 대해서는 삽입된 일련번호를 제거하고 상위계층의 사용자 패킷들에 대해서는 이미 삽입된 일련번호를 그대로 삽입한 채로 구성한다. 또한, 상위계층의 사용자 패킷 각각에 대해서도 삽입된 일련번호를 제거하고, 인접 사용자 패킷과의 일련번호 차이값을 삽입한 후에, 전송프레임을 구성할 수도 있다.
도 8 은 본 발명에 따른 계층적으로 전송된 멀티미디어데이터 전송스트림의 복원 방법에 대한 일실시예 흐름도를 나타내는데, 이하에서는 엠펙 전송스트림과 그에 대한 타이밍 정보인 PCR을 예로 들어 설명하기로 한다.
도 1에서 엠펙 전송스트림의 복원 장치(120)를 설명하면서, 이미 엠펙 전송스트림의 복원 방법에 대해서도 함께 설명한 바 있으나, 여기서는 엠펙 전송스트림의 복원 장치(120)에 적용되는 엠펙 전송스트림의 복원 방법만을 별도로 설명하기로 한다.
먼저, 엠펙 전송스트림의 복원 장치(120)는 전송채널을 통하여 전송되는 계층적 전송프레임들을 수신하면, 그 수신된 전송프레임에서 사용자 패킷과 계층정보 를 추출한다(801).
그리고 나서, 엠펙 전송스트림의 복원 장치(120)는 추출된 사용자 패킷들에 대해서, 사용자 패킷에 있는 오류검출코드를 이용하여 전송 중에 오류가 발생한 패킷은 제거하고, 오류가 없는 사용자 패킷들은 추출된 계층정보를 이용하여 계층별로 분리 저장한다(802).
다음으로, 엠펙 전송스트림의 복원 장치(120)는 사용자 패킷에 있는 위치정보를 이용한 스케줄링을 통하여, 계층별로 저장된 사용자 패킷을 원래의 엠펙 전송스트림의 순서대로 복원한 후(803), 원래의 순서대로 복원된 각각의 사용자 패킷에서 오류검출코드와 위치정보를 제거하여 엠펙 전송스트림(MPEG TS) 패킷을 복원한다(804).
여기서, "803"의 스케줄링 과정은, 사용자 패킷에 있는 위치정보를 이용하여 계층별로 저장된 사용자 패킷들을 원래의 엠펙 전송스트림의 순서에 맞게 복원하되, 오류가 발생하여 제거된 사용자 패킷이나 전송 중 손실된 사용자 패킷의 위치에는 빈 패킷("null")을 대신 출력하는 것을 특징으로 한다. 또한, 여기서의 위치정보는, 사용자 패킷의 일련번호 또는 인접한 사용자 패킷과의 일련번호 차이값을 말한다.
이어서, 엠펙 전송스트림의 복원 장치(120)는 엠펙 전송스트림(MPEG TS) 패킷에 대하여 전송률을 변환하여 엠펙 전송스트림으로 외부 출력한다(805).
도 9 는 본 발명에 따른 수신측에서 상위(HP)/하위(LP) 계층 모두 수신한 경우 도 1의 스케줄러에서의 엠펙 전송스트림의 복원 방법에 대한 일실시예 상세흐름 도이다.
엠펙 전송스트림의 복원 장치(120)에서의 주요한 과정은, 크게 오류검출코드(ECC)를 이용한 오류 검출 과정, 계층별 패킷 저장 과정, 및 일련번호 등의 위치정보를 이용하여 계층별로 저장된 사용자 패킷을 원래의 엠펙 전송스트림(MPEG TS)의 순서에 맞게 복원하는 과정 등으로 이루어진다. 여기서, 사용자 패킷의 구성은 도 2에 도시된 바와 같다.
오류패킷제거 및 계층분리부(122)는 수신한 각 사용자 패킷에 대하여 오류검출코드(ECC)를 이용하여 오류 발생 여부를 검사한다. 이 때, 오류가 발생한 사용자 패킷은 더 이상 다음단으로 전송을 하지 않는데, 이는 오류검출코드(ECC)만으로는 오류가 어디서 발생하였는지를 알 수 없어 엠펙 전송스트림(MPEG TS) 뒤에 추가된 일련 번호가 올바른지를 알 수 없고, 만약 위의 두 정보(즉, 오류검출코드, 일련번호)에서 에러가 발생한 경우에는 추후 수신기가 올바르게 동작할 수 없기 때문이다.
한편, 오류검출코드(ECC)를 이용한 오류 검출 과정의 수행 결과, 오류가 없는 경우에는, 입력받은 사용자 패킷을 계층에 따라서 해당 버퍼에 저장한다.
이하, 수신기가 HP/LP 두 계층 모두 수신이 가능할 경우, 스케줄러(125)가, 계층적으로 구분되어 저장된 사용자 패킷을 수신기가 해석할 수 있는 상태로 복원하는 방법을 상세하게 설명하면, 다음과 같다. 이하, 도 9의 흐름도의 설명과정에서의 패킷은 사용자 패킷을 의미한다.
수신측 스케줄링 처리를 위한 전역 변수 및 각 계층당 패킷을 임시로 저장할 수 있는 저장 장소의 할당 등 스케줄링 과정에 필요한 전체적인 시스템 초기화 과정을 수행한다(901).
스케줄러(125)는 새로운 전송 프레임이 도착할 때까지 대기하다가(902), 새로운 전송 프레임이 도착하면, 변수를 초기화한다(903). 여기서, 새로운 프레임 도착 여부는 계층적 프레임 수신 및 사용자 패킷 추출부(121)가 스케줄러(125)에게 알려준다.
여기서의 변수 초기화 과정을 상세하게 설명하면, 다음과 같다. 새로운 전송 프레임이 도착하는 시점에서 HP 버퍼/LP 버퍼 내에 있는 패킷 개수(이하, 현재 프레임에서 처리해야 될 HP패킷 총수(hp_pkts), 현재 프레임에 처리해야 될 LP패킷 총수(lp_pkts)라 한다)를 읽어 들여 그 값을 각각의 초기값으로 설정하고, 계층 버퍼로부터 가져와 처리된 각 계층의 패킷 수(hp_count, lp_count)를 "0"으로 설정하며, 다음 차례에 가져올 패킷의 타입(next_read_type)을 HP로 설정하며, 또한 한 패킷을 처리하는데 필요한 시간을 타이머로 설정하여 주기적으로 알람신호가 발생하도록 한다.
이후, 이미 설정된 패킷 가져오기 알람 신호가 발생할 때까지 대기하다가(904), 만약 알람신호가 발생하면, 계층 버퍼로부터 가져올 패킷의 타입을 결정하고, 그 결정된 타입의 패킷을 해당 계층 버퍼로부터 가져온다(905)(보다 상세한 과정은 도 10a 및 10b 참조).
다음으로, 수신기가 재초기화되었는지를 확인하여(906), 만약 재초기화되지 않았다면, 다음으로 출력하여야 하는 패킷의 일련 번호(next_seq)(이하, 간단히, 넥스트출력패킷번호(next_seq)라 한다)가 현재 가지고 온 HP 패킷의 일련번호 (hp_seq)와 같은지를 확인하고(908), 만약 재초기화 되었으면(즉, 현재 처리가 수신 스케줄링 과정의 첫 시작인 경우이면) 다음에 출력하여야 하는 첫번째 패킷의 일련 번호(즉, 첫 넥스트출력패킷번호)(first next_seq)를 설정한 후(907)(도 11 참조), "908"과정을 수행한다.
"908" 과정의 확인 결과, 만약 넥스트출력패킷번호(next_seq)가 현재 가지고 온 HP 패킷의 일련번호(hp_seq)와 같으면, HP 패킷을 다음 단으로 출력하고 넥스트출력패킷번호 (next_seq)를 "1" 증가시킨 후(909), "913"을 수행한다. 한편, 넥스트출력패킷번호(next_seq)가 현재 가지고 온 HP패킷의 일련번호(hp_seq)와 같지 않으면, 넥스트출력패킷번호(next_seq)가 현재 가지고 온 LP 패킷의 일련번호(lp_seq)와 같은지를 다시 확인한다(910).
"910" 과정의 확인 결과, 넥스트출력패킷번호(next_seq)가 현재 가지고 온 LP 패킷의 일련번호(lp_seq)와 같으면, 현재 가지고 온 LP 패킷을 다음단으로 출력하고 넥스트출력패킷번호(next_seq)를 "1" 증가시킨 후(911), "913"을 수행한다.
"910" 과정의 확인 결과, 넥스트출력패킷번호(next_seq)가 현재 가지고 온 LP 패킷의 일련번호(lp_seq)와도 같지 않으면, 즉 출력하여야 하는 일련 번호가 HP 패킷의 일련번호도 아니고 LP 패킷의 일련번호도 아니면, 다음 단으로 빈 패킷(null)을 출력시키고 넥스트출력패킷번호(next_seq)를 "1" 증가시킨다(912).
그리고 나서, 처음 프레임 시작할 때 설정된 HP, LP 프레임 내의 패킷 개수만큼의 패킷이 모두 처리되었는지를 확인하여(913), 만약 모두 처리되었으면 "902" 로 돌아가 다음 프레임이 도착했는지를 확인하고, 만약 모두 처리되지 않았으면, "904"로 돌아가 "904"이하의 과정을 수행한다.
스케줄러(125)는 상기와 같은 스케줄링 과정을 통해서, 버퍼에 저장되어 있는 패킷들을 원래의 순서에 맞게 다음단(126)으로 출력할 수 있게 된다.
도 10a 및 도 10b 는 본 발명에 따른 도 9에서의 계층버퍼들 중에서 가져올 사용자 패킷 결정 과정에 대한 일실시예 상세흐름도로서, 수신기가 HP/LP 두 계층 모두 수신이 가능할 경우 엠펙 전송스트림(MPEG TS) 복원 방법 중 '다음에 가져올 패킷의 타입을 결정하고 그 결정된 타입의 패킷을 가져오는 과정'(905)을 나타낸다. 이하, 도 10a 및 도 10b의 흐름도의 설명과정에서의 패킷은 사용자 패킷을 의미한다.
먼저, 다음에 버퍼에서 읽어서 가져와야 할 패킷의 타입(next_read_type)을 확인하여(1001), HP인 경우에는 HP 버퍼로부터 한 패킷을 가져 온 후 저장하고, 해당 패킷의 일련번호(seq_no)를 이용하여 현재 가지고 온 HP패킷의 일련번호(hp_seq)를 설정하며, 버퍼로부터 가져와(즉, 읽어와) 처리된 HP 패킷의 현재 개수(hp_count)(이하, 간단히, 현재 처리된 HP패킷개수(hp_count)라 한다)를 "1" 증가시키고, 다음 차례에 읽어 올 패킷의 타입(next_read_type)을 LP로 설정한다(1002).
한편, "1001"의 확인 결과, 다음에 읽어서 가져와야 할 패킷의 타입(next_read_type)이 LP인 경우에는, LP 버퍼로부터 한 패킷을 가져온 후 저장하고, 해당 패킷의 일련번호를 이용하여 HP 패킷의 일련번호를 설정하며, 버퍼로부터 가 져와(즉, 읽어와) 처리된 LP 패킷의 현재 개수(lp_count)(이하, 간단히, 현재 처리된 LP패킷개수(lp_count)라 한다)를 "1" 증가시키고, 다음 차례에 읽어올 패킷의 타입(next_read_type)을 HP로 설정한다(1003).
현재 처리된 HP패킷개수(hp_count)와 현재 처리된 LP패킷개수(lp_count)에 따르면, 다음과 같은 다섯가지의 경우가 있을 수 있다.
첫번째 경우, 즉 현재 처리된 HP패킷개수(hp_count)나 현재 처리된 LP패킷개수(lp_count)가 "0"인 경우(1004), 다음 차례에 읽어 올 패킷의 타입(next_read type)을 LP로 설정한다(1005). 이는 새로운 프레임이 도착하여 이전 차례에 HP 패킷만 우선 읽어 들인 상태로 HP, LP 모두 읽어들이기 위함이다.
두번째 경우, 즉 현재 처리된 HP패킷개수(hp_count) 및 현재 처리된 LP패킷개수(lp_count)가 "0"이 아니고(1004), 또한 현재 처리된 HP패킷개수(hp_count) 및 현재 처리된 LP패킷개수(lp_count)가 현재 프레임에서 처리되어야 할 HP/LP패킷 총수(lp_pkts, hp_pkts)보다 작은 경우에는(lp_count<lp_pkts 및 hp_count<hp_pkts) (1006), 넥스트출력패킷번호(next_seq)(즉, 다음에 출력하여야 할 패킷의 일련 번호)가 현재 가지고 온 HP패킷의 일련번호(hp_seq)나 현재 가지고 온 LP 패킷의 일련 번호(lp_seq)와 같은지의 확인 결과에 따라 다음과 같이 처리된다.
넥스트출력패킷번호(next_seq)가 현재 가지고 온 HP패킷의 일련번호(hp_seq)와 같으면(1007), 다음 차례에 읽어올 패킷의 타입(next_read type)을 LP로 설정한다(1008). 한편, 넥스트출력패킷번호(next_seq)가 현재 가지고 온 HP 패킷의 일련 번호(hp_seq)가 아닌(1007) LP 패킷의 일련 번호(lp_seq)와 같으면(1009), 다음 차 례에 읽어올 패킷의 타입(next_read type)을 HP로 설정하고(1011), 만약 LP 패킷의 일련 번호(lp_seq)와도 같지 않으면(1009), 사용자에게 에러임을 알린다(1010).
세번째 경우(LP의 경우), 즉 현재 처리된 HP패킷개수(hp_count) 및 현재 처리된 LP패킷개수(lp_count)가 "0"이 아니고(1004), 또한 현재 처리된 LP패킷개수 (lp_count)가 현재 프레임에서 처리해야 될 LP패킷의 총수(lp_pkts)와 동일하고(lp_count==lp_pkts), 현재 처리된 HP패킷 개수(hp_count)가 현재 프레임에서 처리해야 될 HP패킷 총수(hp_pkts)보다 작으면(hp_count<hp_pkts)(1012), 다음 차례에 읽어올 패킷의 타입(next_read type)을 HP로 설정한다(1013).
네번째 경우(HP의 경우), 즉 현재 처리된 HP패킷개수(hp_count) 및 lp_count가 "0"이 아니고(1004), 또한 현재 처리된 HP패킷개수(hp_count)가 현재 프레임 내에서 처리되어야 할 HP 패킷의 총수(hp_pkts)와 동일하고(hp_count==hp_pkts), 현재 처리된 LP패킷개수(lp_count)가 현재 프레임에서 처리해야 될 LP패킷 개수보다 작으면(lp_count<lp_pkts)(1014), 다음 차례에 읽어올 패킷의 타입을 LP로 설정한다(1015).
다섯번째 경우(HP, LP 모두의 경우), 즉 현재 처리된 HP패킷개수(hp_count) 및 현재 처리된 LP패킷개수(lp_count)가 "0"이 아니고(1004), 또한 현재 처리된 HP패킷개수(hp_count)와 현재 처리된 LP패킷개수(lp_count)가 현 프레임 내에서 처리되어야 할 HP/LP 패킷의 총수(hp_pkts, lp_pkts)와 동일하면(1016), 현 프레임 내의 모든 패킷에 대한 처리가 완료되었음을 알리는 신호를 발생시킨다(1017).
한편, 위 어느 경우도 아니면, 사용자에게 에러임을 알린다(1018).
도 11 은 본 발명에 따른 도 9에서의 수신기 재초기화시에 출력해야 하는 첫번째 패킷(next_seq) 결정 과정(907)에 대한 일실시예 상세흐름도로서, 수신기가 HP/LP 두 계층 모두를 수신할 수 있는 경우 엠펙 전송스트림(MPEG TS) 복원 방법 중에서 수신기의 재초기화시에 출력해야 하는 첫번째 패킷을 결정하는 방법을 나타낸다. 이하, 도 11의 흐름도의 설명과정에서의 패킷은 사용자 패킷을 의미한다.
현재 처리된 HP패킷개수(hp_count)(즉, 버퍼로부터 읽어 가져와 처리된 HP 패킷의 현재 개수) 또는 현재 처리된 LP패킷개수(lp_count)(즉, 버퍼로부터 가져와 처리된 LP 패킷의 현재 개수)가 "0"인지를 확인하여(1101), 어느 하나가 "0"이면 단순히 "908"과정으로 가고, 모두가 "0"이 아니면 도 9에 따라 버퍼로부터 가져오지 않은 계층의 패킷을 읽어들인 후 다음의 과정을 수행한다. 따라서, HP, LP 버퍼로부터 한 패킷씩 가져오게 된다.
현재 가지고 온 HP 패킷의 일련 번호(hp_seq)가 현재 가지고 온 LP 패킷의 일련 번호(lp_seq)보다 큰지 여부를 확인하여(1102), 만약 HP 패킷의 일련 번호(hp_seq)가 LP 패킷의 일련 번호(lp_seq)보다 큰 경우에는 처음 처리해야 할 패킷의 일련번호를 LP의 패킷으로 결정한다(1103).
한편, 만약 현재 가지고 온 HP 패킷의 일련 번호(hp_seq)가 현재 가지고 온 LP 패킷의 일련 번호(lp_seq)보다 크지 않은 경우에는(1102), 다시 LP 패킷의 일련 번호(lp_seq)가 HP 패킷의 일련 번호(hp_seq)보다 "1" 큰 경우인지를 확인한다(1104).
"1104"의 확인 결과, 현재 가지고 온 LP 패킷의 일련 번호(lp_seq)가 현재 가지고 온 HP 패킷의 일련 번호(hp_seq)보다 1 큰 경우에는, 처음 처리해야 할 패킷의 일련번호(즉, 첫 넥스트출력패킷번호(first next_seq))를 HP 패킷의 일련번호 (hp_seq)로 결정한다(1105).
"1104"의 확인 결과, 현재 가지고 온 LP 패킷의 일련 번호(lp_seq)가 현재 가지고 온 HP 패킷의 일련 번호(hp_seq)보다 1 큰 경우가 아니면, 처음 처리해야 할 패킷의 일련번호(즉, 첫 넥스트출력패킷번호(first next_seq))를 LP 패킷의 일련번호(lp_seq)으로 결정한다(1106).
도 12a 및 도 12b 는 본 발명에 따른 수신측에서 하위(LP) 계층만 수신한 경우 도 1의 스케줄러에서의 엠펙 전송스트림의 복원 방법에 대한 일실시예 상세흐름도로서, 도 5에서 도시된 바와 같은 복원 과정을 구체적인 흐름도로 나타낸 것이다. 이하, 도 12a 및 도 12b 흐름도의 설명과정에서의 패킷은 사용자 패킷을 의미한다.
전송 채널이 정상 상태인 경우에는 HP와 LP가 모두 수신가능하지만, 채널 상태가 나쁜 경우에는 HP만 수신할 수 있는데, 이하에서는 수신기가 HP만 수신이 가능할 경우, HP 버퍼에 저장된 엠펙 전송스트림(MPEG TS) 패킷을 수신기가 해석할 수 있는 상태로 복원하는 방법을 상세히 설명하기로 한다.
먼저, 스케줄러(125)는 수신측 스케줄링 처리를 위한 전역 변수 및 HP 한 패킷을 임시로 저장할 수 있는 저장 장소를 할당하는 등 스케줄링 과정에 필요한 전체적인 초기화 과정를 수행한다(1201). 그리고, 한 패킷을 처리하는데 필요한 시간을 타이머로 설정하여 주기적으로 알람이 발생하도록 한다.
스케줄러(125)는 새로운 전송 프레임이 도착할 때까지 기다리다가, 새로운 전송 프레임이 도착하면(1202), 새로운 전송 프레임이 도착하는 시점에서 버퍼 내에 있는 HP 패킷 수(즉, 현재 프레임에서 처리해야 될 HP패킷 총수(hp_pkts))를 읽어 설정하고, 현재 버퍼로부터 가져와 처리된 HP 패킷의 개수(hp_count)를 "0"으로 설정한다.
이후, 스케줄러(125)는 패킷을 가져올 시간을 알려주는 알람 신호가 발생할 때까지 기다리다가, 알람 신호가 발생하면(1204), 현재 처리된 HP패킷 개수(hp_count)가 현재 프레임에서 처리해야 될 HP패킷 총수(hp_pkts)보다 작은지 여부를 확인하여(1205), 만약 작으면 HP 버퍼에서 하나의 패킷을 가져온 후 현재 처리된 HP패킷 개수(hp_count)를 "1" 증가시키고, 해당 패킷의 일련번호(seq_no)를 현재 가져 온 HP 패킷의 일련번호(hp_seq)로 설정한다(1207). 만약, 현재 처리된 HP패킷 개수(hp_count)가 현재 프레임에서 처리해야 될 HP패킷 총수(hp_pkts)보다 작지 않으면(1205), 에러임을 알린다(1206).
다음으로, 수신기가 재초기화(재시작)되었는지를 확인하여(906), 만약 수신기가 재초기화(재시작)되었으면(즉, 수신기가 재시작되어 현재 처리 단계가 수신 스케줄링 과정의 첫 시작인 경우이면)(1208), 넥스트출력패킷번호(next_seq)(즉, 다음 차례에 출력하여야 할 패킷의 일련 번호)를 현재 가져온 HP 패킷의 일련 번호(hp_seq)로 설정한다(1209).
한편, 수신기 재시작 여부(1208)의 확인 결과, 수신기가 재시작이 아니면, 넥스트출력패킷번호(next_seq)가 현재 가져온 HP의 일련번호(hp_seq)와 동일한지 여부를 검사하여(1210), 만약 동일하면 HP 패킷을 출력하고 넥스트출력패킷번호 (next_seq)를 "1" 증가시키고(1211), 만약 동일하지 않으면 빈 패킷을 생성하여 출력하고 넥스트출력패킷번호(next_seq)를 "1" 증가시킨다(1212).
다음으로, 현재 처리된 HP패킷 개수(hp_count)의 값이 현재 프레임 내에서 도착한 패킷의 수(hp_pkts)와 동일한지 여부를 확인하여(1213), 만약 동일하면 "1202"로 되돌아가 "1202"이하의 과정을 다시 반복하고, 만약 다르면 "1205"로 되돌아가 "1205"이하의 과정을 다시 반복한다.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.
상기와 같은 본 발명은, 송신측에서는 일반적인 단일 출력 MPEG 다중화기의 출력(엠펙 전송스트림)을 계층적으로 분류하여 전송하고, 수신측에서는 특별한 MPEG TS 역다중화기를 사용하지 않고도 일반적인 MPEG TS 역다중화기를 통해서도 각 계층에 따른 선택적 수신을 가능하게 함으로써, 계층적 구조를 이용한 방송 시스템의 구성에 있어서 복잡도와 비용을 현저히 줄이는 효과가 있다.
또한, 본 발명은, 에러가 발생할 수 있는 환경에서 MPEG-2 TS를 기반으로 계층적 전송 방식을 이용하여 방송 혹은 통신을 할 때 엠펙 전송스트림(MPEG TS)에 포함된 타이밍 정보(PCR) 등 중요한 정보를 가진 패킷을 가장 전송 성능이 우수한 계층으로 분류하여 전송함으로써, 수신기로 하여금 가장 열악한 채널 상황에서도 수신할 수 있게 하는 효과가 있다.
또한, 본 발명은, 타이밍 정보(PCR)등의 중요한 정보를 가진 패킷에 위치 정보(예를 들면, 일련번호 등)를 함께 전송함으로써, 수신측에서 원래의 엠펙 전송스트림(MPEG TS)내의 위치를 정확하고도 용이하게 복원하여 PCR 지터(jitter)가 발생하지 않게 하는 효과가 있다.

Claims (15)

  1. 멀티미디어데이터 전송스트림(TS: Transport Stream)의 계층적 전송 장치에 있어서,
    외부로부터 인코딩된 멀티미디어데이터 전송스트림을 입력받아 패킷 단위로 구분하기 위한 입력 정합 수단;
    상기 입력 정합 수단으로부터 출력되는 각각의 멀티미디어데이터 전송스트림 (TS) 패킷에 대하여 입력순서에 따라 일련번호를 삽입하기 위한 일련번호 삽입 수단;
    상기 일련번호가 삽입된 멀티미디어데이터 전송스트림(TS) 패킷에 오류검출코드(Error Check Code)를 삽입하여 사용자 패킷을 생성하기 위한 오류검출코드 삽입 수단;
    사용자가 지정한, 패킷에 대한 계층정보를 저장하는 계층정보 저장 수단;
    상기 저장되어 있는 계층정보를 이용하여, 상기 오류검출코드 삽입 수단으로부터 출력되는 상기 사용자 패킷(User Packet)을 계층적으로 분리하기 위한 계층 분리 수단;
    상기 계층적으로 분리된 사용자 패킷들을 계층별로 분리하여 저장하기 위한 계층 저장 수단; 및
    계층별로 소정의 개수만큼의 상기 저장된 사용자 패킷들과 해당 계층정보를 묶어 계층적 전송프레임을 구성하고, 상기 구성된 계층적 전송프레임을 계층별로 전송방식을 달리하여 전송하기 위한 계층적 프레임화 및 전송 수단
    을 포함하는 타이밍정보 지터 방지를 위한 멀티미디어데이터 전송스트림의 계층적 전송 장치.
  2. 제 1 항에 있어서,
    상기 계층 분리 수단의 계층분리 과정은,
    상기 계층정보를 이용하여 상기 사용자 패킷들을 계층적으로 분리하되, 타이밍정보를 포함하는 사용자 패킷을 상위계층으로 분리하는 것을 특징으로 하는 타이밍정보 지터 방지를 위한 멀티미디어데이터 전송스트림의 계층적 전송 장치.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 계층적 프레임화 및 전송 수단의 전송프레임 구성 과정은,
    하위계층의 사용자 패킷들에 대해서는 상기 삽입된 일련번호를 제거하여 전송프레임을 구성하는 것을 특징으로 하는 타이밍정보 지터 방지를 위한 멀티미디어데이터 전송스트림의 계층적 전송 장치.
  4. 제 3 항에 있어서,
    상기 계층적 프레임화 및 전송 수단의 전송프레임 구성 과정은,
    상위계층의 사용자 패킷 각각에 대해서 상기 삽입된 일련번호를 제거하고, 인접 사용자 패킷과의 일련번호 차이값을 삽입한 후에, 전송프레임으로 구성하는 것을 특징으로 하는 타이밍정보 지터 방지를 위한 멀티미디어데이터 전송스트림의 계층적 전송 장치.
  5. 멀티미디어데이터 전송스트림 복원 장치에 있어서,
    전송채널을 통하여 전송되는 계층적 전송프레임들을 수신하고, 상기 수신된 전송프레임에서 사용자 패킷과 계층정보를 추출하기 위한 계층적 프레임 수신 및 사용자 패킷 추출 수단;
    상기 추출된 사용자 패킷에 있는 오류검출코드를 이용하여 전송 중에 오류가 발생한 사용자 패킷을 제거하고, 오류가 없는 사용자 패킷들은 상기 추출된 계층정보를 이용하여 계층별로 분리하기 위한 오류패킷 제거 및 계층분리 수단;
    상기 오류패킷 제거 수단으로부터 출력되는 사용자 패킷을 계층마다 별개로 저장하기 위한 계층 저장 수단;
    상기 계층 저장 수단에 계층별로 저장된 사용자 패킷들을, 상기 사용자 패킷에 있는 위치정보를 이용하여 원래의 멀티미디어데이터 전송스트림의 순서대로 복원하기 위한 스케줄링 수단;
    상기 스케줄링되어 원래의 순서대로 복원된 사용자 패킷에서 오류검출코드와 위치정보를 제거하여 멀티미디어데이터 전송스트림(TS) 패킷을 복원하기 위한 오류검출코드/위치정보 제거 수단; 및
    상기 복원된 멀티미디어데이터 전송스트림(TS) 패킷을 입력받아 전송률을 변환하여 멀티미디어데이터 전송스트림(TS)으로 출력하기 위한 출력 정합 수단
    을 포함하는 계층적으로 전송된 멀티미디어데이터 전송스트림의 복원 장치.
  6. 제 5 항에 있어서,
    상기 스케줄링 수단에서의 전송스트림 복원 과정은,
    상기 사용자 패킷에 있는 위치정보를 이용하여 상기 계층 저장 수단에 저장된 사용자 패킷들을 원래의 멀티미디어데이터 전송스트림의 순서와 일치되도록 상기 오류검출코드/일련번호 제거 수단으로 출력하되, 상기 오류패킷 제거 수단에서 에러가 발생하여 제거된 사용자 패킷이나 전송 중 손실된 사용자 패킷의 위치에는 빈 패킷("null")을 대신 출력하는 것을 특징으로 하는 계층적으로 전송된 멀티미디어데이터 전송스트림의 복원 장치.
  7. 제 6 항에 있어서,
    상기 위치정보는,
    사용자 패킷의 일련번호 또는 인접한 사용자 패킷과의 일련번호 차이값인 것 을 특징으로 하는 계층적으로 전송된 멀티미디어데이터 전송스트림의 복원 장치.
  8. 제 5 항 내지 제 7 항 중 어느 한 항에 있어서,
    상기 출력 정합 수단의 전송률 변환 과정은,
    상기 멀티미디어데이터 전송스트림(TS) 패킷 내에 시간정보(time stamp)가 있는 경우에는 상기 시간정보(time stamp)를 이용하여 멀티미디어데이터 전송스트림(TS)의 전송률을 변환하는 것을 특징으로 하는 계층적으로 전송된 멀티미디어데이터 전송스트림의 복원 장치.
  9. 멀티미디어데이터 전송스트림의 계층적 전송 방법에 있어서,
    외부로부터 인코딩된 멀티미디어데이터 전송스트림(TS)을 입력받아 패킷 단위로 구분하는 입력 정합 단계;
    상기 입력 정합 단계에서 구분된 각각의 멀티미디어데이터 전송스트림(TS) 패킷에 대하여 입력순서에 따라 일련번호를 삽입하고, 상기 일련번호가 삽입된 멀티미디어데이터 전송스트림(TS) 패킷에 오류검출코드(Error Check Code)를 삽입하여 사용자 패킷을 생성하는 일련번호/오류검출코드 삽입 단계;
    사용자가 지정한, 패킷에 대한 계층정보를 이용하여, 상기 일련번호와 오류검출코드가 삽입된 사용자 패킷(User Packet)들을 계층적으로 분리하여 저장하는 계층 분리 단계; 및
    계층별로 소정의 개수만큼의 상기 저장된 사용자 패킷들과 해당 계층정보를 묶어 계층적 전송프레임을 구성하고, 상기 구성된 계층적 전송프레임을 계층별로 전송방식을 달리하여 전송하는 계층적 프레임화 및 전송 단계
    를 포함하는 타이밍정보 지터 방지를 위한 멀티미디어데이터 전송스트림의 계층적 전송 방법.
  10. 제 9 항에 있어서,
    상기 계층 분리 단계에서의 계층분리 과정은,
    상기 사용자가 지정한 계층정보를 이용하여 상기 사용자 패킷들을 계층적으로 분리하되, 타이밍정보를 포함하는 사용자 패킷을 상위계층으로 분리하는 것을 특징으로 하는 타이밍정보 지터 방지를 위한 멀티미디어데이터 전송스트림의 계층적 전송 방법.
  11. 제 9 항 또는 제 10 항에 있어서,
    상기 계층적 프레임화 및 전송 단계에서의 전송프레임 구성 과정은,
    하위계층의 사용자 패킷들에 대해서는 상기 삽입된 일련번호를 제거하여 전송프레임을 구성하는 것을 특징으로 하는 타이밍정보 지터 방지를 위한 멀티미디어 데이터 전송스트림의 계층적 전송 방법.
  12. 제 11 항에 있어서,
    상기 계층적 프레임화 및 전송 단계에서의 전송프레임 구성 과정은,
    상위계층의 사용자 패킷 각각에 대해서 상기 삽입된 일련번호를 제거하고, 인접 사용자 패킷과의 일련번호 차이값을 삽입한 후에, 전송프레임으로 구성하는 것을 특징으로 하는 타이밍정보 지터 방지를 위한 멀티미디어데이터 전송스트림의 계층적 전송 방법.
  13. 멀티미디어데이터 전송스트림 복원 방법에 있어서,
    전송채널을 통하여 전송되는 계층적 전송프레임들을 수신하고, 상기 수신된 전송프레임에서 사용자 패킷과 계층정보를 추출하는 계층적 프레임 수신 및 사용자 패킷 추출 단계;
    상기 추출된 사용자 패킷에 있는 오류검출코드를 이용하여 전송 중에 오류가 발생한 사용자 패킷(Error Packet)은 제거하고, 오류가 없는 사용자 패킷들은 상기 추출된 계층정보를 이용하여 계층별로 분리 저장하는 오류패킷 제거 및 계층별 저장 단계;
    상기 사용자 패킷에 있는 위치정보를 이용한 스케줄링을 통하여, 상기 계층 별로 저장된 사용자 패킷을 원래의 멀티미디어데이터 전송스트림(TS)의 순서대로 복원하는 스케줄링 단계;
    상기 스케줄링 단계에 의하여 원래의 순서에 맞게 복원된 사용자 패킷에서 오류검출코드와 위치정보를 제거하여 멀티미디어데이터 전송스트림(TS) 패킷을 복원하는 오류검출코드/위치정보 제거 단계; 및
    상기 복원된 멀티미디어데이터 전송스트림(TS) 패킷에 대하여 전송률을 변환하여 멀티미디어데이터 전송스트림(TS)으로 출력하는 출력 정합 단계
    를 포함하는 계층적으로 전송된 멀티미디어데이터 전송스트림의 복원 방법.
  14. 제 13 항에 있어서,
    상기 스케줄링 단계에서의 전송스트림 복원 과정은,
    상기 사용자 패킷에 있는 위치정보를 이용하여 상기 계층별로 저장된 사용자 패킷들을 원래의 멀티미디어데이터 전송스트림의 순서에 맞게 복원하되, 오류가 발생하여 제거된 사용자 패킷이나 전송 중 손실된 사용자 패킷의 위치에는 빈 패킷("null")을 대신 출력하는 것을 특징으로 하는 계층적으로 전송된 멀티미디어데이터 전송스트림의 복원 방법.
  15. 제 14 항에 있어서,
    상기 위치정보는,
    사용자 패킷의 일련번호 또는 인접한 사용자 패킷과의 일련번호 차이값인 것을 특징으로 하는 계층적으로 전송된 멀티미디어데이터 전송스트림의 복원 방법.
KR1020040044016A 2003-12-27 2004-06-15 타이밍정보 지터 방지를 위한 멀티미디어데이터전송스트림의 계층적 전송 장치 및 그 방법과, 계층적으로전송된 멀티미디어데이터 전송스트림의 복원 장치 및 그방법 KR100579132B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/983,081 US7415528B2 (en) 2003-12-27 2004-11-04 Apparatus and method for transmitting hierarchically multimedia data TS to prevent jitter of timing information and for recovering the multimedia data TS

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020030098279 2003-12-27
KR20030098279 2003-12-27

Publications (2)

Publication Number Publication Date
KR20050066950A KR20050066950A (ko) 2005-06-30
KR100579132B1 true KR100579132B1 (ko) 2006-05-12

Family

ID=37257940

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040044016A KR100579132B1 (ko) 2003-12-27 2004-06-15 타이밍정보 지터 방지를 위한 멀티미디어데이터전송스트림의 계층적 전송 장치 및 그 방법과, 계층적으로전송된 멀티미디어데이터 전송스트림의 복원 장치 및 그방법

Country Status (1)

Country Link
KR (1) KR100579132B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101401879B1 (ko) * 2008-01-09 2014-05-29 엘지전자 주식회사 복수의 계층으로 부호화된 데이터의 전송을 위한mimo시스템을 구비하는 데이터전송장치와데이터수신장치, 그리고 이들을 이용한 데이터전송방법

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100768105B1 (ko) * 2005-12-09 2007-10-18 한국전자통신연구원 케이블카드 인터페이스를 통한 엠펙-2 전송스트림 패킷오류 신호 전달을 위한 다중화 및 역다중화 장치와 그를이용한 다중화 및 역다중화 방법
KR100799669B1 (ko) * 2006-06-20 2008-01-30 삼성전자주식회사 영상신호 송수신효율 향상을 위한 정보통신방법 및 장치
US20140369222A1 (en) * 2012-01-26 2014-12-18 Electronics And Telecommunications Research Institute Method for estimating network jitter in apparatus for transmitting coded media data
KR102035148B1 (ko) * 2018-11-05 2019-10-22 전자부품연구원 360 vr 영상 분할 전송 시스템 및 방법
US11057605B2 (en) 2018-11-05 2021-07-06 Korea Electronics Technology Institute 360-degree VR video segmentation transmission system and method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001008238A (ja) 1999-06-22 2001-01-12 Yokogawa Electric Corp トランスポートストリーム発生器
JP2002208904A (ja) 2001-01-10 2002-07-26 Sony Corp デジタル信号多重化装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001008238A (ja) 1999-06-22 2001-01-12 Yokogawa Electric Corp トランスポートストリーム発生器
JP2002208904A (ja) 2001-01-10 2002-07-26 Sony Corp デジタル信号多重化装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101401879B1 (ko) * 2008-01-09 2014-05-29 엘지전자 주식회사 복수의 계층으로 부호화된 데이터의 전송을 위한mimo시스템을 구비하는 데이터전송장치와데이터수신장치, 그리고 이들을 이용한 데이터전송방법

Also Published As

Publication number Publication date
KR20050066950A (ko) 2005-06-30

Similar Documents

Publication Publication Date Title
US7110412B2 (en) Method and system to transport high-quality video signals
US5930251A (en) Multimedia information processing system
US10574436B2 (en) Transmitting system, transmission slotting apparatus, receiving apparatus, and transmission slot generating method
EP2362653A1 (en) Transport stream packet header compression
CN102118242B (zh) 接收设备和方法、程序和接收系统
JP2007104085A (ja) 通信回線を用いるデジタル放送方法およびその装置
US10194196B2 (en) Decoding device, reception device, transmission device, transmission/reception system, decoding method, and storage medium having decoding program stored therein
US20110051745A1 (en) Method of encapsulating data in digital satellite communication system, and data transmission apparatus therefor
EP1705842B1 (en) Apparatus for receiving packet stream
JP7397916B2 (ja) 受信方法および端末
KR100989677B1 (ko) 가변길이의 패킷 데이터 전송 장치 및 방법, 데이터 수신 장치
US7415528B2 (en) Apparatus and method for transmitting hierarchically multimedia data TS to prevent jitter of timing information and for recovering the multimedia data TS
CN110048764B (zh) 传输卫星信号的方法和系统及其接收器
JP2008061150A (ja) 受信機及び情報処理方法
KR100579132B1 (ko) 타이밍정보 지터 방지를 위한 멀티미디어데이터전송스트림의 계층적 전송 장치 및 그 방법과, 계층적으로전송된 멀티미디어데이터 전송스트림의 복원 장치 및 그방법
CN102118342B (zh) 接收设备和方法、程序和接收系统
CN107710627B (zh) 通信设备、通信系统、通信方法和程序
JP2001308876A (ja) 情報伝送方式、送信装置及び受信装置
RU2660837C2 (ru) Устройство обработки данных и способ обработки данных
KR20190125543A (ko) 디코딩 장치, 수신기기, 송신기기, 송수신 시스템, 디코딩 방법, 및 디코딩 프로그램이 저장된 저장매체
US20100104026A1 (en) Method for processing a steam of multiplexed packets transporting multimedia data according to an MPEG-2 type format
KR101696191B1 (ko) Mpeg ts 전송프레임에서 가변 비트율 다중화 데이터 처리 방법 및 그 장치
RU2678515C2 (ru) Процессор обработки данных и способ обработки данных
CN116405103B (zh) 基于信道捆绑的数据传输方法和设备、存储介质
JP3172425B2 (ja) マルチメディア情報送信システム、マルチメディア情報受信システム、マルチメディア情報送信方法、並びにマルチメディア情報受信方法

Legal Events

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

Payment date: 20110429

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee