KR101008976B1 - 멀티미디어 스트리밍 시스템에서의 에러 검출 방법 - Google Patents

멀티미디어 스트리밍 시스템에서의 에러 검출 방법 Download PDF

Info

Publication number
KR101008976B1
KR101008976B1 KR1020030073124A KR20030073124A KR101008976B1 KR 101008976 B1 KR101008976 B1 KR 101008976B1 KR 1020030073124 A KR1020030073124 A KR 1020030073124A KR 20030073124 A KR20030073124 A KR 20030073124A KR 101008976 B1 KR101008976 B1 KR 101008976B1
Authority
KR
South Korea
Prior art keywords
packet
error
transport stream
lost
stream
Prior art date
Application number
KR1020030073124A
Other languages
English (en)
Other versions
KR20050037847A (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 KR1020030073124A priority Critical patent/KR101008976B1/ko
Publication of KR20050037847A publication Critical patent/KR20050037847A/ko
Application granted granted Critical
Publication of KR101008976B1 publication Critical patent/KR101008976B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss
    • 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
    • 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/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/164Adaptation or special uses of UDP protocol

Abstract

본 발명은 MPEGG-2 및 MPEG-4 시스템에 있어서, 신호의 전송 단위인 전송 스트림(TS; Transport Stream) 패킷(Packet)의 인터넷이나 무선 랜(Wireless LAN)을 통한 전송시 최대 에러 검출 카운터 개수를 초과하여 유실되었을 경우에 에러 발생 여부 및 유실된 TS 패킷의 개수를 알아내도록 하는 멀티미디어 스트리밍 시스템에서의 에러 검출 방법에 관한 것이다.
본 발명의 일 실시예에 따른 멀티미디어 스트리밍 시스템에서의 에러 검출 방법은 제 1 전송 스트림 패킷 및 제 2 전송 스트림 패킷의 헤더에 포함되어 있는 소정의 불연속 에러 관련 필드 값을 각각 독출하는 단계, 및 상기 독출한 제 1 전송 스트림 패킷 및 제 2 전송 스트림 패킷의 에러 관련 필드 값 및 하나의 UDP에 수용되는 전송 스트림 패킷의 개수를 이용한 수학적 알고리즘을 통해 유실된 전송 스트림 패킷의 정보를 검출하는 단계를 포함한다.
본 발명에 의하면, 에러 발생 여부 및 유실된 TS 패킷 크기를 검출하여 디코딩 과정에서 적절한 제어를 하는데 필요한 정보를 생성하는데 효과가 있다.
전송 스트림(TS; Transport Stream), 패킷(Packet), UDP(User Datagram Protocol), 무선 랜(Wireless LAN), MPEG-2(Moving Picture Experts Group-2), 시분할다중방식(TDM:Time Division Multiple), PES(Packetized Elementary Stream), 코덱(Codec; Coder and Decoder)

Description

멀티미디어 스트리밍 시스템에서의 에러 검출 방법{METHOD OF DETECTING ERROR IN MULTIMEDIA STREAMING SYSTEM}
도 1은 전형적인 전송 스트림 디멀티플렉서 및 디코딩 시스템 구조를 개략적으로 나타낸 것이다.
도 2는 일반적인 전송 스트림 패킷의 구성을 상세히 나타낸 것이다.
도 3은 멀티미디어 스트리밍 시스템에서의 멀티미디어 재생 과정을 개략적으로 나타낸 것이다.
도 4는 TS 패킷의 패킷 해제화 및 디멀티플렉싱 과정을 상세히 나타낸 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 수신단에서의 MPEG-2 스트리밍 신호를 UDP 패킷으로부터 PES로 분리하는 흐름도를 나타낸 것이다.
도 6은 비연속인 연속 카운터 값으로부터 초과 에러량을 검출하는 순서도를 나타낸 것이다.
도 7은 비연속인 연속 카운터 값으로부터 초과 에러량을 검출하는 수학적 알고리즘을 개략적으로 나타낸 것이다.
본 발명은 멀티미디어 스트리밍 시스템에서의 에러 검출 방법에 관한 것이다. 보다 상세하게는, MPEGG-2 및 MPEG-4 시스템에 있어서 신호의 전송 단위인 전송 스트림(TS; Transport Stream) 패킷(패킷)의 인터넷 또는 무선 랜(Wireless LAN)을 통한 데이터 전송시 에러 검출 최대 카운터 개수를 초과하여 유실되었을 경우에 에러 발생 여부 및 유실된 TS 패킷의 양을 알아내도록 하는 초과 에러 검출 방법에 관한 것이다.
MPEG-2(Moving Picture Experts Group) (ISO/IEC 13818)는 MPEG-1을 확장한 것으로 컴퓨터 네트워크를 통해서 전송 가능한 고화질의 비디오 인코딩 기법을 제공하기 위해 만들어 졌다. 방송 품질의 실현을 목표로 표준화작업이 추진되어 최근 표준화가 끝난 MPEG-2는 뛰어난 성능과 유연성에 따라 디지털 위성방송, 고선명TV, 디지털비디오디스크(DVD), 주문형 비디오(VOD) 등 많은 분야에서 채용이 결정되어 멀티미디어 혁명을 주도하는 원동력이 되고 있다.
MPEG-2 비디오는 MPEG-1 비디오를 포함하고 있어 순방향 호환성이 유지된다. MPEG-1 비디오가 CD 등 디지털 축적 매체에 1.15Mbps의 저비트율로 동화상을 저장하는데 반해, MPEG-2 비디오는 현행 TV나 HDTV를 효율적으로 압축하는 것을 주된 목적으로 하며, 현행 TV의 화질은 3~9Mbps, HDTV의 화질은 17~30Mbps정도를 제공한다. MPEG-2 비디오는 일종의 범용 압축 알고리즘으로, 압축효율의 향상을 위해 필드단위의 처리, 움직임 추정, 보상 방식, 양자화, DCT 계수의 주사방식, 가변장 부호화 등 많은 부분들이 개선되었다.
MPEG 2 시스템은 시분할다중방식(TDM:Time Division Multiple)에서 쓰이고 있는 패킷 다중화 방식을 채택하고 있다. 이때 비디오와 오디오 비트열 각각을 우선 패킷이라 불리는 적당한 길이의 비트열(PES:Packetized Elementary Stream)로 분할한다. PES 패킷은 다양한 응용에 대응하도록 길이의 상한을 64KB까지로 하고 있고, 각 패킷마다 고정길이나 가변길이 어느 것이라도 취할 수 있도록 하고 있다. 또한 가변 전송속도도 허용되고 있고 불연속적인 전송도 가능하다. 이 각각의 PES를 하나의 비트열로 다중화하여 PS나 TS를 만든다. 패킷 길이는 전송채널이나 매체에 크게 의존한다.
MPEG-2 시스템 계층에는 동기화 정보가 추가되는데 이는 시간 스탬프를 이용해서 처리한다. 시간 스탬프에는 복호 시간 스탬프(Decoding Time Stamp)와 표현 시간 스탬프(Presentation Time Stamp)가 있으며 PES 패킷 헤더에 포함된다. 부호기와 복호기 사이의 동기화는 PCR(Program Clock Reference)을 이용한다.
스트리밍 수신측은 송신측과 UDP/IP 프로토콜을 사용하는 인터넷으로 연결되어 있다. 이때 전송 매체는 유무선을 구분하지 않으며, 무선일 경우 802.1* 인터페이스를 이용하여 구성된 애드-혹 네트워크(Ad-hoc network)도 포함한다. 스트리밍 서비스 플랫폼(Streaming service platform)으로는 오디오/비디오 코덱 풀(Audio/Video codec. pool), MPEG-2 시스템 모듈, 스트리밍 기능(streaming function)과 버퍼 제어 기능(buffer control function)을 포함하고 유저 인터페이스(user interface)가 구현된 프로그램 세트를 사용하여 송신/수신 측에서 스트리밍 서비스 운용 및 스트리밍 컨텐츠를 확인하는 기능을 수행한다.
최근의 멀티 미디어 스트리밍 서비스가 제공되는 전송로는 인터넷 또는 무선 LAN으로서 비교적 안정적이던 케이블 TV, 지상파 방송의 경우와 다른 특성을 갖게 되었으며, 달라진 특성 중의 하나로 다량의 TS 패킷 연속 손실 현상의 발생이라 할 수 있다. 이로 인해 에러의 존재만 검출하던 종래의 검출 방법으로는 변화된 전송 손실에 대한 적절한 디코딩 프로세스 상의 제어를 구현하기 어려워지게 되며, 종래의 에러 보상 방법을 적용하더라도 패킷 손실에 대한 적절한 에러 보상 방법이 될 수 없으므로, 최종 사용자는 스트리밍 서비스 품질에 대해 심각한 불만족을 불러 일으키게 된다.
채널(전송경로)에서 발생한 에러가 TS 패킷의 페이로드에 비트-에러(bit-error)를 일으킨다면 이로 인해 디코딩된 화면이나 음질의 저하(de-grading) 현상이 발생하게 될 것이다. 아울러 TS 패킷이 채널에서 유실된다면 해당 TS 패킷의 페이로드에 해당되는 비트 스트림(bit stream)이 유실되며, 특히 PES 패킷 헤더가 유실된다면 그로 인한 출력 품질(output quality)의 저하가 커지게 된다. TS 패킷이 UDP 패킷에 1-7개 단위로 구성되며 일반적으로 7개의 TS를 하나의 UDP 패킷으로 구성하므로 만일 채널에서 하나의 UDP 패킷이 유실된다면 수신측에서는 연속적인 7개의 TS 패킷이 유실되며, 최근의 멀티미디어 스트리밍 서비스를 제공하는 무선 LAN 등의 환경에서는 패킷 유실 현상이 빈번하게 발생한다.
종래의 TS 패킷 헤더 해석 알고리즘에서는 TS 패킷의 헤더 정보 중, 전송 에러 지시자(transport_error_indicator; 채널 디코더에서 에러가 있다고 판단하여 설정한다)가 1이거나, 불연속 지시자(discontinuity indicator)가 1이면서 연속 카 운터(continuity counter) 값이 바로 전에 수신한 TS 패킷의 값과 연속적이지 않을 경우 에러가 발생했다고 판단하도록 되어있다. 또한, 원본 데이터의 프리젠테이션 시간(presentation time)에 불연속성이 있음을 나타내거나, TS 패킷이 중복되어 전송되었음을 나타내어 기본 스트림을 구성하는데 정보로 사용되도록 하고 있다. 그러나 종래의 방법으로도 TS 패킷의 손실과 같은 에러에 대해서는 기본 스트림에 에러 발생여부를 알려 주거나 적절한 에러 보상방법을 쓰도록 할수 없게 되어 있다.
따라서, 적절한 에러 보상 방법을 적용할 수 있도록 에러 발생 위치 및 유실된 TS 패킷 크기를 검출하여 디코딩 과정에서 적절한 제어를 하는데 필요한 정보를 효율적으로 생성할 수 있는 방법을 강구할 필요가 있다.
본 발명의 상기와 같은 문제점을 해결하기 위하여 안출된 것으로, MPEGG-2 및 MPEG-4 시스템에 있어서 신호의 전송 단위인 전송 스트림 패킷의 인터넷 또는 무선 LAN을 통한 데이터 전송시 에러 검출 최대 카운터 개수를 초과하여 유실되었을 경우에 에러 발생 여부 및 유실된 TS 패킷의 양을 알아내도록 하는 초과 에러 검출 방법을 제공하는 것을 목적으로 한다.
본 발명의 일 실시예에 따른 멀티미디어 스트리밍 시스템에서의 에러 검출 방법은 제 1 전송 스트림 패킷 및 제 2 전송 스트림 패킷의 헤더에 포함되어 있는 소정의 불연속 에러 관련 필드 값을 각각 독출하는 단계, 및 상기 독출한 제 1 전송 스트림 패킷 및 제 2 전송 스트림 패킷의 에러 관련 필드 값 및 하나의 UDP에 수용되는 전송 스트림 패킷의 개수를 이용한 수학적 알고리즘을 통해 유실된 전송 스트림 패킷의 정보를 검출하는 단계를 포함한다.
이하, 도면에 따라 본 발명의 동작을 상세히 설명하기로 한다.
도 1은 전형적인 전송 스트림(TS: Transport Stream) 디멀티플렉싱 및 디코딩 시스템 구성을 나타낸 것이다. UDP 프로토콜을 전송 프로토콜로 사용하는 경우 UDP 패킷의 최대 크기인 1500 바이트를 넘기지 않으면서 최대의 효율을 낼 수 있도록 관행상 1500 바이트에 근접하는 패킷 크기로 구성이 된다. 또 MPEG-2 신호를 스트리밍으로 보낼 때에는 MPEG-2 신호를 PES(Packetized elementary stream), TS(transport stream) 이라는 패킷의 계층이 있는 구조로 변환하여 전송 제어와 에러 제어를 실행할수 있게 한다. PES/TS 패킷은 각각 권고안에 기술된 형태의 구조(syntax)를 갖게 되며, 또한 스트림 수신측에서 권고안에 기술된 방법으로 패킷-해제되어 원래의 MPEG-2 인코딩 기본 스트림(Encoded Elementary Stream)으로 변환 되고 이 신호를 복호화하는 복호기를 거쳐 최종 사용자에게 스트리밍 콘텐츠 형태로 전달된다. A 신호는 전송 스트리밍 서비스 시스템의 수신측에서 채널 지정 디코더(110)를 통해 채널 디코딩이 끝난 패킷 스트림 신호이다. 디멀티플렉서 및 디코더(120)는 상기 수신 신호(A)에 결함이 있는지 확인하고 전송 헤더(Header)를 제거하여 신호의 종류별로 분류해 준다. 즉, 디멀티플렉서 및 디코더(120)는 패킷 해제화(De-Packetization) 과정을 거쳐 TS 패킷을 순수 디코딩 대상이 되는 신호로 변환한다. 상기 디멀티플렉싱 및 디코딩 과정을 거친 후, 비디오 신호와 오디오 신호로 분리되어 에러가 검출된 결과와 함께 전달되는 B 신호는 각각 비디오 디코더(130) 및 오디오 디코더(140)으로 전달된다.
도 2는 일반적인 전송 패킷 스트림의 구성을 상세히 나타낸 것이다. 이 중 TS 패킷은 188 바이트 크기를 갖는 고정된 크기의 정보 단위로 몇 개의 TS를 하나의 UDP 패킷에 실어 전송하는 절차를 따르게 된다. 앞서 기술한 UDP 패킷 크기의 한계치와 효율성을 고려하여 일반적으로 최대 7개의 TS가 하나의 UDP 패킷으로 구성되어 전송된다. 상기 UDP 패킷에 실려서 TS 패킷이 전송되면 수신측에서는 TS 패킷의 헤더를 해석하여(parsing) TS 패킷의 기본 스트림 프로그램 ID(elementary stream program ID, 즉 영상 클립별 오디오/비디오 스트림 프로그램 식별자), 물리적 전송단에서 확인된 에러 유무, TS 패킷 페이로드(데이터)의 크기, 및선택적 데이터 유무 등의 정보를 추출해낸다. 이러한 정보를 통해 정상 데이터로 판명된 TS 패킷의 페이로드 부분을 연결해 기본 스트림(ES; Elementary Stream)으로 복원하여 디코더의 입력으로 사용된다.
전송 패킷 스트림은 헤더(Header)(210) 및 페이로드(Payload)(220)의 스트림으로 구성된다. 헤더(210) 프레임의 연속 카운터(continuity counter) 필드(230)는 MPEG-2 전송 시스템에서 TS 멀티플렉서를 구현할 시 4 비트가 할당된다. 즉, 동일한 PID(Program Identifier)를 갖는 TS 패킷의 연속 카운터는 순차적으로 0 부터 15 까지 증가한다. 추가 프레임의 불연속 지시자(discontinuity indicator) 필드(240)는 연속 수신된 TS 패킷의 연속 카운터가 동일하거나 연속적이지 않은 값을 가질 경우에 1로 세팅된다.
도 3에서 보는 바와 같이, 인터넷 또는 무선 LAN을 통해서 신호 규격(MPEG- 2, MPEG-4,...)에 해당하는 동영상 신호를 수신하여 실시간 재생하는 서비스를 제공하는 멀티미디어 스트리밍 시스템에 있어서 멀티미디어 재생 동작은 다음과 같은 단계를 수행한다. 먼저, 인터넷 또는 무선 LAN을 통하여 신호 규격(MPEG-2, MPEG-4,...)에 해당하는 신호를 수신한다(S310). TS 패킷 스트림을 버퍼에 저장한다(S320). 디멀티플렉서 및 디코더(120)는 순서대로 수신한 TS 패킷의 패킷 해제화(De-Packetization) 및 디코딩 과정을 수행한다(S330). 이후, TS 패킷 페이로드를 모두 추출하여 디코더로 전송한다(S340). 비디오 디코더(130) 및 오디오 디코더(140)는 코덱(Codec; Coder and Decoder)을 거쳐 최종 유저에게 멀티미디어 신호로 제공한다(S350).
도 4는 TS 패킷의 패킷 해제화 및 디멀티플렉싱 과정을 상세히 나타낸 흐름도이다. 먼저, 도 2에서 보는 바와 같은 프레임 구조를 가지는 TS 패킷의 페이로드를 비트(bit) 연산을 통해서 각 정보 단위별로 데이터 값을 추출한다(S410). PID가 같은 패킷에 순차적으로 1씩 증가된 연속 카운터 필드(230)의 값을 확인한다(S420). PID가 같은 현재 패킷의 연속 카운터 값이 이전 패킷의 연속 카운터 값보다 1 증가했는지 판단한다(S430). 다음으로, 불연속 지시자 필드(240)의 값이 1 인 경우를 선별적으로 선택한다(S440). 패킷 에러가 발생했다고 판단한다(S450). 최종적으로, 이후의 TS 패킷 페이로드를 모두 추출하여 디코더에 입력할 프로그램 스트림을 완성하여 디코더로 전송한다(S460). 상기 단계(430)에서, 현재 패킷의 연속 카운터 값이 이전 패킷의 연속 카운터 값보다 1 증가했으면 TS 패킷 페이로드를 추출하여 디코더로 전송한다(S460).
MPEG-2 전송 시스템에서는 TS 멀티플레서를 구현할 시 연속 카운터(230)에 4 비트를 할당한다. 즉, 동일한 PID를 갖는 T 패킷의 연속 카운터는 순차적으로 0부터 15까지 증가하고 15 이후에는 다시 0의 번호를 갖게 되므로, 최대 16개의 연속된 TS를 구분할 수 있도록 구성된다. 도 4에 제시된 바와 같이, 종래의 에러 검출 방법은 불연속 지시자가 1인 상태에서 연속 수신된 TS 패킷의 연속 카운터의 값과 동일하거나 연속적이지 않은 값을 가질 경우에 대해 검출하도록 되어 있다.
도 5는 본 발명의 일 실시예에 따른 수신단에서의 MPEG-2 스트리밍 신호를 UDP(User Datagram Protocol) 패킷으로부터 PES로 분리하는 흐름도를 나타낸 것이다. 즉, 수신단에서 UDP 패킷으로 수신된 MPEG-2 스트림 신호의 패킷 해제화 과정을 상세히 나타낸 것이다. 도에서 보는 바와 같이, 스트리밍 서버(500)로부터 스트리밍 패킷을 수신하는데 있어서, 채널 특성에 기인한 에러가 발생하게 되며 이 중에 UDP 패킷을 유실한 경우를 가정한다. 하나의 UDP 패킷에는 M개의 TS 패킷이 포함되어 있다. 스트리밍 서버(500)로부터 UDP/IP의 경로를 통해 M개의 전송 스트림을 가진 UDP 패킷을 수신한다(S510). 여기서, M은 1과 7사이의 정수 값이다. 이후, UDP 패킷을 패킷 해제화하여(De-Packetization) TS 패킷을 추출한다(S520). 상기 단계에서 특수한 경우를 제외하고는 연속 카운터 값이 본 도에서와 같이 설정된다.
즉, 4 비트로 할당된 연속 카운터의 값은 0부터 15까지의 값을 가지며 16 이상이 되면 다시 0부터 카운트되어 설정된다. 만일 처음 UDP 패킷에 실려왔던 마지막 TS 패킷이 n의 값을 갖는다고 하자. 여기서, n은 0부터 15 사이의 정수 값이며, mod 연산자는 제 1 오퍼랜드를 제 2 오퍼랜드로 나눈 나머지 값을 돌려주는 함수이 다. TS 해석(parsing) 및 디멀티플렉싱 과정을 통해서 TS 패킷으로부터 기본 스트림(ES: Elementary Stream)을 추출하여 전송시 발생된 에러를 검출하며 제어 정보를 추출한다(S530). 이때, 2번째 UDP 패킷에 실려 와야 할 TS 패킷들은 유실 된다.
즉, {(n+1)mod16} 내지 {(n+M)mod16}의 연속 카운터 값을 가진 M개의 전송 스트림이 유실되면 다음으로 (n+M+1)mod16부터 시작되는 연속카운터 값을 갖는 전송스트림을 받게되고 이들의 연속 카운터는 (n+M+1)mod16 부터 (n+2M)mod16까지의 값을 갖는다. 된다. 만일 2번째 UDP 패킷으로부터 2개의 연속적인 UDP 패킷이 유실되었을 경우에는, 다음으로 ((n+2M+1)mod16)의 연속 카운터 값을 갖는 (2M+1)번째 TS 패킷을 받게 된다.
최종적으로, 패킷 손실을 포함하여 수신된 TS 패킷 풀(packet pool)로부터 PES 및 ES를 추출하며, 검출된 에러에 대한 정보와 함께 기본 스트림을 디코딩하여 최종 사용자에게 전달한다(S540).
도 6은 본 발명의 일 실시예에 따른 에러 검출 방법을 개략적으로 나타낸 것이다. 먼저, 이전에 수신된 TS 패킷의 연속 카운터의 값을 기록한다(S610). 이후, 현재 수신된 TS 패킷의 불연속 지시자 및 연속 카운터의 값을 확인한다(S620). 불연속 지시자의 값이 1이며 연속 카운터 값이 불연속이면 UDP의 TS 패킷의 유실로 인한 에러가 발생했다고 판단한다(S630). 상기 판단 결과에 따라, 이전 수신된 TS 패킷과 현재의 TS 패킷 사이에 유실된 TS 패킷의 개수를 계산한다(S640). 상기 계산 결과를 기본 스트림의 정보 요소에 기록한다(S650).
도 7은 비연속인 연속 카운터 값으로부터 초과 에러량을 검출하는 수학적 알 고리즘을 개략적으로 나타낸 것이다. TS 멀티플렉서에서 연속 카운터 값이 각각 x, y로 비연속적인 TS 패킷을 차례대로 수신하였다고 할 때, 하나의 UDP는 M개의 TS를 포함하며 x 및 y 연속 카운터 값 사이에는 i개의 UDP가 유실되었다고 가정하면 유실된 전체 TS 패킷의 수(n)는 i * M 이 된다. 본 도는 상기와 같은 과정을 수학적 알고리즘으로 구현한 것이다. 먼저, 이전 TS 패킷의 연속 카운터 값(x) 및 다음 TS 패킷의 연속 카운터 값(y)을 입력받는다(S710). 다음으로, 수식{y = (x + 1 + M * i) mod 16}을 만족하는 i의 값을 구한다(S720). 상기 i값으로부터 유실된 TS 패킷의 전체 개수(n = i * M)를 구한다(S730). 상기 에러 검출 정보를 TS 패킷의 기본 스트림(ES)에 기록한다(S740).
본 실시예에서는 연속 카운터의 값이 범위가 0내지 15이므로, {y = (x + 1 + M * i) mod 16}의 수학적 알고리즘이 사용되었으나, 연속 카운터의 값의 범위가 k일 경우, 상기 식은 {y = (x + 1 + M * i) mod k}로 일반화될 수 있다.
UDP 패킷 크기의 한계치와 효율성을 고려하여 일반적으로 최대 7개의 TS가 하나의 UDP 패킷으로 구성되어 전송된다. 예컨대, M이 최대값 7을 갖는 경우를 들어 설명하자면, (7 * i) mod 16 의 값이 i의 값에 따라 유일하게(unique) 정해지므로 최대 112개까지의 TS 패킷 유실을 검출할 수 있게 된다. i가 1 내지 16 까지(UDP 패킷 유실이 1 내지 16 까지)일 때, 연속 카운터의 값(y)은 다음 수식의 결과와 같이 유일하게 결정된다.
i = 1, then y = (x + 1 + 7)mod16 = (x + 8)mod16
i = 2, then y = (x + 1 + 7*2)mod16 = (x + 15)mod16
i = 3, then y = (x + 1 + 7*3)mod16 = (x + 22)mod16 = (x + 6)mod16
i = 4, then y = (x + 1 + 7*4)mod16 = (x + 29)mod16 = (x + 13)mod16
i = 5, then y = (x + 1 + 7*5)mod16 = (x + 36)mod16 = (x + 4)mod16
i = 6, then y = (x + 1 + 7*6)mod16 = (x + 43)mod16 = (x + 11)mod16
i = 7, then y = (x + 1 + 7*7)mod16 = (x + 50)mod16 = (x + 2)mod16
i = 8, then y = (x + 1 + 7*8)mod16 = (x + 57)mod16 = (x + 9)mod16
i = 9, then y = (x + 1 + 7*9)mod16 = (x + 64)mod16 = (x + 0)mod16
i = 10, then y = (x + 1 + 7*10)mod16 = (x + 71)mod16 = (x + 7)mod16
i = 11, then y = (x + 1 + 7*11)mod16 = (x + 78)mod16 = (x + 14)mod16
i = 12, then y = (x + 1 + 7*12)mod16 = (x + 85)mod16 = (x + 5)mod16
i = 13, then y = (x + 1 + 7*13)mod16 = (x + 92)mod16 = (x + 12)mod16
i = 14, then y = (x + 1 + 7*14)mod16 = (x + 99)mod16 = (x + 3)mod16
i = 15, then y = (x + 1 + 7*15)mod16 = (x + 106)mod16 = (x + 10)mod16
i = 16, then y = (x + 1 + 7*16)mod16 = (x + 113)mod16 = (x + 1)mod16
상기와 같은 방법으로 M의 값에 따라 최대로 검출할 수 있는 TS 패킷의 유실 개수는 다음과 같다.
M이 1이면, 유실 패킷의 최대 검출 개수는 16이며, M이 2이면, 유실 패킷의 최대 검출 개수는 16이며, M이 3이면, 유실 패킷의 최대 검출 개수는 21이며, M이 4이면, 유실 패킷의 최대 검출 개수는 16이며, M이 5이면, 유실 패킷의 최대 검출 개수는 80이며, M이 6이면, 유실 패킷의 최대 검출 개수는 48이며, M이 7이면, 유 실 패킷의 최대 검출 개수는 112이다.
최종적으로, 상기 수학적 알고리즘에 따른 에러 검출 정보를 기본 스트림에 기록한다.
이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 당업자(통상의 지식을 가진 자)는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다.
그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허 청구의 범위에 의하여 나타내어지며, 특허 청구의 범위 및 그 균등 개념(Equivalents)으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
본 발명에 의하면, TS 멀티플렉서단에서 패킷 유실 발생 유무를 검출하여 디코더단에서 에러가 발생한 위치를 정확하게 알 수 있도록 유용한 정보를 제공 받으며, 아울러 검출된 패킷 유실량 정보를 이용하여 추가로 이어지는 에러 보상 알고리즘이나 버퍼 제어를 위한 지시(indicating) 및 트리거링(triggering)을 할 수 있는 효과가 있다.
본 발명에 의하면, MPEG-2와 같은 SD-급 영상을 처리하는 시스템에서 정밀한 에러 보정을 통해 고화질의 디지털 TV 화면을 제공할 수 있으며, 아울러 MPEG-4 등의 CIF-급 멀티미디어 컨텐츠를 주고 받는 무선-공중망, 무선-LAN, DMB(Digital Media Broadcasting)의 스트리밍 시스템에 적용 가능한 방법으로 보다 높은 품질을 제공하는 스트리밍 서비스 시스템의 기본 기술로 사용될 수 있는 효과가 있다.

Claims (7)

  1. 제 1 스트림 패킷 및 제 2 스트림 패킷의 헤더에 포함되어 있는 소정의 불연속 에러 관련 필드 값을 각각 독출하는 단계; 및
    상기 독출된 제 1 스트림 패킷 및 제 2 스트림 패킷의 에러 관련 필드 값, 및 하나의 UDP(User Datagram Protocol) 패킷에 수용되는 스트림 패킷의 개수를 이용하여 유실된 스트림 패킷의 정보를 검출하는 단계를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 시스템에서의 에러 검출 방법.
  2. 제 1 항에 있어서, 상기 제 1 스트림 패킷 및 제 2 스트림 패킷은 MPEG-2 또는 MPEG-4 시스템 규격에 해당하는 전송 스트림 패킷인 것을 특징으로 하는 멀티미디어 스트리밍 시스템에서의 에러 검출 방법.
  3. 제 1 항 또는 제 2 항에 있어서, 상기 제 1 스트림 패킷 및 제 2 스트림 패킷은 순차적으로 수신되는 것을 특징으로 하는 멀티미디어 스트리밍 시스템에서의 에러 검출 방법.
  4. 삭제
  5. 제 1 항에 있어서, 상기 소정의 불연속 에러 관련 필드는 연속 카운터 필드 및 불연속 지시자 필드인 것을 특징으로 하는 멀티미디어 스트리밍 시스템에서의 에러 검출 방법.
  6. 제 1항에 있어서, 상기 유실된 스트림 패킷 정보를 검출하는 단계는
    수식{y = (x + 1 + M * i) mod k}을 만족하는 상기 i의 값을 검출하여 이루어지는데,
    x는 제 1 스트림 패킷의 연속 카운터 필드 값이며, y는 제 2 스트림 패킷의 연속 카운터 필드 값이며, M은 하나의 UDP에 수용되는 스트림 패킷의 개수이며, i는 유실된 UDP의 개수이고, k는 연속 카운터 값의 범위인 것을 특징으로 하는 멀티미디어 스트리밍 시스템에서의 에러 검출 방법.
  7. 제 1 항에 있어서, 상기 유실된 스트림 패킷 정보를 상기 제1 및 제2 스트림 패킷의 기본 스트림에 기록하는 단계를 더 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 시스템에서의 에러 검출 방법.
KR1020030073124A 2003-10-20 2003-10-20 멀티미디어 스트리밍 시스템에서의 에러 검출 방법 KR101008976B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030073124A KR101008976B1 (ko) 2003-10-20 2003-10-20 멀티미디어 스트리밍 시스템에서의 에러 검출 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030073124A KR101008976B1 (ko) 2003-10-20 2003-10-20 멀티미디어 스트리밍 시스템에서의 에러 검출 방법

Publications (2)

Publication Number Publication Date
KR20050037847A KR20050037847A (ko) 2005-04-25
KR101008976B1 true KR101008976B1 (ko) 2011-01-17

Family

ID=37240447

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030073124A KR101008976B1 (ko) 2003-10-20 2003-10-20 멀티미디어 스트리밍 시스템에서의 에러 검출 방법

Country Status (1)

Country Link
KR (1) KR101008976B1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100696813B1 (ko) * 2006-01-18 2007-03-19 엘지전자 주식회사 Dmb 수신기에서 에러 검출 방법
CN102546263A (zh) * 2012-02-21 2012-07-04 德科仕通信(上海)有限公司 在iptv网络中视频服务器和ip网络的故障隔离方法及系统
MX2021008715A (es) 2015-01-09 2022-12-07 Samsung Electronics Co Ltd Aparato de transmision y metodo de procesamiento por se?al del mismo.
KR101800426B1 (ko) * 2015-01-09 2017-11-23 삼성전자주식회사 송신 장치, 수신 장치 및 그 신호 처리 방법
KR102461190B1 (ko) * 2015-01-09 2022-11-01 삼성전자주식회사 송신 장치, 수신 장치 및 그 신호 처리 방법
KR102035912B1 (ko) * 2017-12-29 2019-10-24 주식회사 픽스트리 Ip 네트워크를 이용하여 스트림 패킷 전송 시 패킷 손실 검출 및 복구 방법 및 장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0141309B1 (ko) * 1994-11-17 1998-06-15 배순훈 엠팩2 트랜스포트 계층 패킷의 동기 바이트 오류 검출방지장치
KR100240077B1 (ko) * 1997-10-15 2000-01-15 윤종용 디지털 위성 방송 수신 시스템의 에러 보정 방법
JP2001230678A (ja) * 2000-02-18 2001-08-24 Nippon Telegr & Teleph Corp <Ntt> データ伝送誤り監視システム、データ送信装置、データ受信装置およびデータ伝送誤り監視方法
KR20020033089A (ko) * 2000-04-27 2002-05-04 추후제출 손실이 많은 패킷에 근거한 네트워크를 통해 비디오를전송하기 위한 동적 하이브리드 패킷 손실 복구 방법 및시스템

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0141309B1 (ko) * 1994-11-17 1998-06-15 배순훈 엠팩2 트랜스포트 계층 패킷의 동기 바이트 오류 검출방지장치
KR100240077B1 (ko) * 1997-10-15 2000-01-15 윤종용 디지털 위성 방송 수신 시스템의 에러 보정 방법
JP2001230678A (ja) * 2000-02-18 2001-08-24 Nippon Telegr & Teleph Corp <Ntt> データ伝送誤り監視システム、データ送信装置、データ受信装置およびデータ伝送誤り監視方法
KR20020033089A (ko) * 2000-04-27 2002-05-04 추후제출 손실이 많은 패킷에 근거한 네트워크를 통해 비디오를전송하기 위한 동적 하이브리드 패킷 손실 복구 방법 및시스템

Also Published As

Publication number Publication date
KR20050037847A (ko) 2005-04-25

Similar Documents

Publication Publication Date Title
US7010032B1 (en) Moving image coding apparatus and decoding apparatus
JP4195030B2 (ja) 連続的なビデオディスプレイのためのビデオデータの送信方法及び受信方法
US20200029130A1 (en) Method and apparatus for configuring content in a broadcast system
US20160105259A1 (en) Apparatus and method of transmitting/receiving broadcast data
US8301982B2 (en) RTP-based loss recovery and quality monitoring for non-IP and raw-IP MPEG transport flows
KR101739821B1 (ko) 스케일러블 비디오 코딩(svc)디코딩에서 향상 계층의 패킷 분실에 기인한 오류 은폐를 위한 방법
Greengrass et al. Not all packets are equal, part i: Streaming video coding and sla requirements
US20100238792A1 (en) Information acquisition system, transmit apparatus, data obtaining apparatus, transmission method, and data obtaining method
JP2001189713A (ja) データ伝送装置およびデータ伝送方法
JP2009164880A (ja) トランスコーダ及び受信機
US9942364B2 (en) Method for encoding and decoding scheme using time stamp
US7333515B1 (en) Methods and apparatus to improve statistical remultiplexer performance by use of predictive techniques
US8731000B2 (en) Decoding earlier frames with DTS/PTS backward extrapolation
US7839925B2 (en) Apparatus for receiving packet stream
JP2007258796A (ja) Ip送信装置およびip送信方法
EP2165498A2 (en) System and method for transport of a constant bit rate stream
KR101008976B1 (ko) 멀티미디어 스트리밍 시스템에서의 에러 검출 방법
JP2001148853A (ja) 動画像符号化装置および復号化装置
JP4391412B2 (ja) ディジタルストリームの動的多重化方法
JP4192766B2 (ja) 受信装置および方法、記録媒体、並びにプログラム
KR102350570B1 (ko) 영상프레임의 손실을 측정하기 위한 iptv 셋탑박스 및 그 동작방법
KR100760260B1 (ko) 타이밍정보의 효율적 전송을 위한 전송스트림 생성 장치및 그 방법과, 그를 이용한 디엠비 전송 시스템
US7949052B1 (en) Method and apparatus to deliver a DVB-ASI compressed video transport stream
KR101964649B1 (ko) 미디어 전송 방법 및 그 장치
FI124520B (fi) Menetelmä ja järjestely digitaalisten multimediasignaalien synkronoimiseksi

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20141223

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee