首页 / 专利库 / 视听技术与设备 / 视频编码层 / RTP 패킷화 모드별 비트율 생성 방법

RTP 패킷화 모드별 비트율 생성 방법

阅读:573发布:2021-08-01

专利汇可以提供RTP 패킷화 모드별 비트율 생성 방법专利检索,专利查询,专利分析的服务。并且A method for generating a bit rate of each RTP(Real time Transport Protocol) packetization mode is provided to effectively stream SVC(Scalable Video Coding) video without overhead. If a packet type is an SNU(Single NAL Unit) type, a bit rate is calculated according to a bit rate generation method of an SNU mode(401). If a packet type is an STAP-A(Simple-Time Aggregation Packet-A), the size of NAL(Network Abstraction Layer) units with respect to layers to be transmitted within the same frame is checked(402). The sizes of the NAL units are added one by one as transmission priority levels with respect to the layers to be transmitted within the same frame such that they do not exceed a threshold value to thus generate a plurality of STAP-A(Simple-Time Aggregation Packet-A) type packets, and the number of STAP-A type packets is calculated(403). The number of the generated STAP-A type packets and the number of FU-A(Fragmentation Unit-A) type packets are added, to which the size of a corresponding header size to obtain a certain value, and the certain value is added to the bit amount of the generated STAP-A type packets and the FU-A type packets to generate a bit rate(404).,下面是RTP 패킷화 모드별 비트율 생성 방법专利的具体信息内容。

  • 넌인터리브드 모드인 경우의 RTP(Real time Transport Protocol) 패킷화 모드별 비트율 생성 방법에 있어서,
    SNU(Single NAL Unit) 타입의 패킷에 대해 계층별 NAL 유닛들의 크기 및 해당 헤더 크기를 이용하여 비트율을 생성하는 제 1 비트율 생성 단계; 및
    STAP-A(Simple-Time Aggregation Packet-A) 타입의 패킷에 대해 동일 프레임 내에서 전송할 계층(Layer)들에 대한 NAL(Network Abstraction Layer) 유닛들을 이용하여 STAP-A 타입의 패킷을 생성한 후에 상기 생성한 STAP-A 타입의 패킷에 대한 헤더 크기를 고려하여 비트율을 생성하는 제 2 비트율 생성 단계
    를 포함하는 RTP 패킷화 모드별 비트율 생성 방법.
  • 제 1 항에 있어서,
    상기 제 2 비트율 생성 단계는,
    STAP-A(Simple-Time Aggregation Packet-A) 타입의 패킷에 대해 동일 프레임 내에서 전송할 계층(Layer)들에 대한 NAL(Network Abstraction Layer) 유닛들의 크기를 검사하는 단계;
    상기 검사한 NAL 유닛들을 더하여 하나 이상의 STAP-A 타입을 생성한 후에 상기 생성한 STAP-A 타입 패킷의 수를 산출하는 패킷 수 산출단계; 및
    상기 산출한 STAP-A 타입 패킷의 수에 헤더 크기를 곱한 후 STAP-A 타입 패킷의 비트량에 더하여 비트율을 생성하는 제 3 비트율 생성 단계
    를 포함하는 RTP 패킷화 모드별 비트율 생성 방법.
  • 제 2 항에 있어서,
    상기 패킷 수 산출단계는,
    동일 프레임 내에서 전송할 계층들에 대해 전송 우선순위로 NAL 유닛들의 크기를 하나하나 더하되, 임계치를 초과하지 않도록 더하여 상기 임계치를 초과하지 않는 다수의 STAP-A 타입의 패킷을 생성한 후 상기 생성한 STAP-A 타입 패킷의 수를 산출하는 것을 특징으로 하는 RTP 패킷화 모드별 비트율 생성 방법.
  • 제 3 항에 있어서,
    상기 패킷 수 산출단계는,
    동일 프레임 내에서 전송할 계층들에 대해 전송 우선순위로 NAL 유닛들의 크기를 순차적으로 더하는 크기 합산단계;
    상기 더한 크기 값이 상기 임계치를 초과하는지 확인하는 단계;
    상기 확인 결과, 상기 임계치를 초과하지 않으면 상기 크기 합산단계를 계속 수행하는 단계;
    상기 확인 결과, 상기 임계치를 초과하면 마지막에 더한 NAL 유닛의 크기를 뺀 후 STAP-A 타입의 패킷을 생성하는 단계; 및
    상기 생성한 STAP-A 타입 패킷의 수를 산출하는 단계
    를 포함하는 RTP 패킷화 모드별 비트율 생성 방법.
  • 넌인터리브드 모드인 경우의 RTP(Real time Transport Protocol) 패킷화 모드별 비트율 생성 방법에 있어서,
    SNU(Single NAL Unit) 타입의 패킷에 대해 계층별 NAL 유닛들의 크기 및 해당 헤더 크기를 이용하여 비트율을 생성하는 제 1 비트율 생성 단계; 및
    STAP-A(Simple-Time Aggregation Packet-A) 타입의 패킷에 대해 동일 프레임 내에서 전송할 계층(Layer)들에 대한 NAL(Network Abstraction Layer) 유닛들을 이용하여 STAP-A 타입의 패킷 및 FU-A 타입의 패킷을 생성한 후 상기 생성한 STAP-A 타입의 패킷 및 FU-A 타입의 패킷에 대한 헤더 크기를 고려하여 비트율을 생성하는 제 2 비트율 생성 단계
    를 포함하는 RTP 패킷화 모드별 비트율 생성 방법.
  • 제 5 항에 있어서,
    상기 제 2 비트율 생성 단계는,
    패킷 타입이 STAP-A(Simple-Time Aggregation Packet-A)임에 따라 동일 프레임 내에서 전송할 계층(Layer)들에 대한 NAL(Network Abstraction Layer) 유닛들의 크기를 검사하는 단계;
    상기 검사한 NAL 유닛들을 더하여 하나 이상의 STAP-A 타입의 패킷 및 FU-A 타입의 패킷을 생성한 후에 상기 생성한 STAP-A 타입 패킷 및 FU-A 타입 패킷의 수를 산출하는 패킷 수 산출단계; 및
    상기 산출한 STAP-A 타입 패킷의 수와 상기 산출한 FU-A 타입 패킷의 수의 합에 해당 헤더 크기를 곱한 후 상기 생성한 STAP-A 타입 패킷 및 FU-A 타입 패킷의 비트량(전송 비트량)에 더하여 비트율을 생성하는 제 3 비트율 생성 단계
    를 포함하는 RTP 패킷화 모드별 비트율 생성 방법.
  • 제 6 항에 있어서,
    상기 패킷 수 산출단계는,
    동일 프레임 내에서 전송할 계층들에 대해 전송 우선순위로 NAL 유닛들의 크기를 하나하나 더하되, 임계치를 초과하지 않도록 더하여 상기 임계치를 초과하지 않는 다수의 STAP-A 타입의 패킷을 생성한 후 상기 생성한 STAP-A 타입 패킷의 수를 산출하는 STAP-A 타입의 패킷 수 산출단계; 및
    하나의 NAL 유닛 크기가 상기 임계치보다 큰 경우, FU-A 타입의 패킷으로 생성하되, NAL 유닛 크기를 상기 임계치로 나눈 값보다 큰 최소의 정수(FU-A 패킷의 수)를 산출하는 단계
    를 포함하는 RTP 패킷화 모드별 비트율 생성 방법.
  • 제 7 항에 있어서,
    상기 STAP-A 타입의 패킷 수 산출단계는,
    동일 프레임 내에서 전송할 계층들에 대해 전송 우선순위로 NAL 유닛들의 크기를 순차적으로 더하는 크기 합산단계;
    상기 더한 크기 값이 상기 임계치를 초과하는지 확인하는 단계;
    상기 확인 결과, 상기 임계치를 초과하지 않으면 상기 크기 합산단계를 계속 수행하는 단계;
    상기 확인 결과, 상기 임계치를 초과하면 마지막에 더한 NAL 유닛의 크기를 뺀 후 STAP-A 타입의 패킷을 생성하는 단계; 및
    상기 생성한 STAP-A 타입 패킷의 수를 산출하는 단계
    를 포함하는 RTP 패킷화 모드별 비트율 생성 방법.
  • 제 3 항 또는 제 7 항에 있어서,
    상기 전송 우선순위는,
    데이터 재생과 관련하여 먼저 보내야 할 데이터의 순서인 것을 특징으로 하 는 RTP 패킷화 모드별 비트율 생성 방법.
  • 제 3 항 또는 제 7 항에 있어서,
    상기 임계치는,
    MTU(Maximum Transmission Unit)에서 헤더 크기를 뺀 값인 것을 특징으로 하는 RTP 패킷화 모드별 비트율 생성 방법.
  • 제 1 항 내지 제 8 항 중 어느 한 항에 있어서,
    상기 제 1 비트율 생성 단계는,
    NAL(Network Abstraction Layer) 유닛들을 계층(Layer)별로 분류한 후 상기 분류된 NAL 유닛의 크기를 각각 더하는 단계;
    상기 해당 계층별로 각각 더해진 NAL 유닛들의 수에 헤더 크기를 곱하는 단계;
    상기 동일한 계층별로 각각 더한 NAL 유닛들의 크기 값들에, 상기 해당 NAL 유닛들의 수에 헤더 크기를 곱한 값을 더하여 해당 계층별로 비트량을 계산하는 단계; 및
    상기 계산한 비트량을 이용하여 비트율을 산출하는 단계
    를 포함하는 SVC 기반 스트리밍 시스템의 RTP 패킷화 모드별 비트율 생성 방 법.
  • 제 11 항에 있어서,
    상기 헤더 크기는,
    RTP 헤더의 크기 12bytes, UDP 헤더의 크기 8bytes, IP 헤더의 크기 20bytes를 더한 40bytes인 것을 특징으로 하는 SVC 기반 스트리밍 시스템의 RTP 패킷화 모드별 비트율 생성 방법.
  • SNU(Single NAL Unit) 모드인 경우의 RTP(Real time Transport Protocol) 패킷화 모드별 비트율 생성 방법에 있어서,
    NAL(Network Abstraction Layer) 유닛들을 계층(Layer)별로 분류하는 단계;
    상기 분류한 계층별 NAL 유닛들의 총 크기를 산출하는 단계;
    상기 분류한 계층별 NAL 유닛들의 총 헤더 크기를 산출하는 단계; 및
    상기 계층별 NAL 유닛들의 총 크기 및 총 헤더 크기를 이용하여 비트율을 생성하는 단계
    를 포함하는 RTP 패킷화 모드별 비트율 생성 방법.
  • 제 13 항에 있어서,
    상기 헤더 크기는,
    RTP 헤더의 크기 12bytes, UDP 헤더의 크기 8bytes, IP 헤더의 크기 20bytes를 더한 40bytes인 것을 특징으로 하는 RTP 패킷화 모드별 비트율 생성 방법.
  • 说明书全文

    RTP 패킷화 모드별 비트율 생성 방법{Method for producing bit-rate based on RTP packet mode}

    도 1 은 본 발명이 적용되는 SVC 기반 스트리밍 시스템의 일실시예 구성도,

    도 2 는 본 발명에 이용되는 스트리밍 프로토콜 스택의 일예시도,

    도 3 은 본 발명에 따른 SVC 기반 스트리밍 시스템에서의 RTP 패킷화 모드별 비트율 생성 방법에 대한 일실시예 흐름도,

    도 4 는 본 발명에 따른 SVC 기반 스트리밍 시스템에서의 RTP 패킷화 모드별 비트율 생성 방법에 대한 다른 실시예 흐름도이다.

    * 도면의 주요 부분에 대한 부호의 설명

    11 : SVC 인코더 12 : 추출기(Extractor)

    13 : 스트리밍 서버

    본 발명은 SVC 기반 스트리밍 시스템 등에 적용되는 RTP 패킷화 모드별 비트율 생성 방법에 관한 것으로, 더욱 상세하게는 SVC 비디오 스트리밍 시에 RTP/UDP/IP 헤더(header), MTU 크기, 및 RTP 패킷화 모드를 고려하여 비트율을 생성함으로써, 오버헤드(overhead) 없이 효율적으로 SVC 비디오를 스트리밍하기 위한 RTP 패킷화 모드별 비트율 생성 방법에 관한 것이다.

    H.264의 확장형 부호화 기술인 SVC(Scalable Video Coding)는, MPEG-2, MPEG-4 등에서 시도한 계층 부호화 기반의 확장성(scalability)이 갖는 단점인 낮은 압축효율, 복합 확장성 지원 불가, 높은 구현 복잡도의 문제를 한꺼번에 해결하기 위하여 개발된 새로운 확장형 부호화 기법이다.

    SVC는 여러 개의 비디오 계층을 하나의 비트열로 부호화한다. SVC의 계층은 하나의 기본계층(base layer)과 기본계층 위에 연속적으로 쌓을 수 있는 확장계층(scalable layer)으로 이루어진다. 이때, 각 확장계층은 하위계층 정보를 기반으로 각각에게 주어진 최대의 비트율(bit-rate) 및 화면율(frame rate), 그리고 해상도(resolution)를 표현할 수 있다.

    SVC에서는 확장계층을 연속적으로 많이 쌓을수록 다양한 비트율, 화면율, 및 해상도의 지원이 가능하므로, 이종(heterogeneous) 망 환경에서 발생하는 대역폭의 다양성 문제, 수신 단말기의 성능과 해상도의 다양성 문제, 콘텐츠 소비자의 다양한 선호도 문제 등을 복합적으로 해결할 수 있는 UMA(Universal Multimedia Access) 환경의 멀티미디어 콘텐츠 서비스에 적합한 부호화 기술이다.

    VCL(Video Coding Layer) 계층에서 SVC 부호기는 기본계층(base layer) 부호 화 정보와 확장계층(scalable layer)의 확장성 부호화 정보를 슬라이스 단위로 생성한다. 이렇게 생성된 각 슬라이스는 다시 NAL(Network Abstraction Layer) 계층에서 NAL 단위(NAL unit)로 생성되어 SVC 비트스트림에 저장된다.

    종래의 SVC 비디오 스트리밍 시, 비트율(bit rate) 제어를 위해 하기의 [표 1]과 같은 SEI(Supplemental Enhancement Information)를 이용하는데, 하기의 SEI는 단지 비디오 데이터(video data)에 대한 비트율을 분류한 것이기 때문에, 실제 전송되는 비트율과는 상당한 차이를 발생시키는 문제점이 있다.

    즉, 종래의 SEI는 SVC 비트스트림의 비트율만을 고려하기 때문에, 실제 망을 통해서 전송될 경우 추가되는 RTP/UDP/IP 헤더(header)의 크기 때문에 한 개의 IP 패킷 당 적어도 40bytes의 오버헤드(overhead)를 발생시키는 문제점이 있다.

    특히, SVC는 3가지의 RTP(Real time Transport Protocol) 패킷화 모드(packetization mode)를 지원하므로, MTU(Maximum Transmission Unit)의 크기에 따라 실제 전송되는 비트율의 차이는 더욱 커진다.

    이하, SVC를 위한 RTP 패킷 타입에 대해 좀 더 상세히 살펴보기로 한다.

    SVC의 NAL 단위에 대한 RTP 패킷 타입은 SNU(Single NAL Unit), STAP-A(Simple-Time Aggregation Packet-A), STAP-B(Simple-Time Aggregation Packet-B), MTAP 16(Multi-Time Aggregation Packet 16), MTAP 24(Multi-Time Aggregation Packet 24), FU-A(Fragmentation Unit-A), FU-B(Fragmentation Unit-B) 등 총 7가지가 존재한다.

    먼저, SNU 타입은 하나의 RTP에 하나의 NAL 단위만을 실을 수 있고, STAP은 하나의 RTP 패킷에 동일한 화면 표현 시점(presentation time instant)에 속하는 다수의 NAL 단위를 동시에 실을 수 있는데, 복호화 순서와 동일한 순서로 NAL 단위들을 RTP 패킷에 싣게 되는 STAP-A 타입과 인터리빙을 위해 복호화 순서를 고려하지 않고 NAL 단위들을 RTP 패킷에 싣는 STAP-B 타입으로 구분한다.

    MTAP는 하나의 RTP 패킷에 서로 다른 화면 표현 시점에 속하는 다수의 NAL 단위를 한꺼번에 실을 수 있는 동시에 기본적으로 인터리빙을 지원하며, 각 NAL 단위들 간의 화면 표현 시간의 차이를 표시하기 위한 타임오프셋(time offset) 필드 구간의 크기에 따라 16비트 타임오프셋을 지원하는 MTAP 16 타입과 24비트 타임오프셋을 지원하는 MTAP 24 타입으로 구분한다.

    이러한 7가지 RTP 패킷 타입 중 응용 분야에 따라 필요한 패킷 타입만을 묶어서 크게 3가지 형태의 RTP 패킷화 모드로 구분되는데, 하기의 [표 2]는 SNU(Single NAL Unit) 모드, 넌인터리브(Non-Interleaved) 모드, 인터리브(Interleaved) 모드 등 3가지 형태의 RTP 패킷화 모드별로 지원 가능한 RTP 패킷 타입을 나타낸다.

    여기서, SNU 모드는 1 ~ 23까지의 NAL 유닛 형식(Unit Type)을 갖는 하나의 NAL 단위의 부호화 정보만을 RTP 패킷에 실을 수 있는 SNU 타입만 지원 가능하여 그 응용분야가 매우 제한적이다. 이에 반해, 넌인터리브 모드는 SNU 타입뿐만 아니라 STAP-A와 FU-A까지 지원 가능하므로 현실적으로 적용 가능한 응용 범위가 상당히 넓다.

    또한, 인터리브 모드는 넌인터리브 모드에 인터리빙 기능을 추가한 방식인데, SNU 타입을 지원하지 못하는 단점이 있다. 인터리브 모드의 인터리빙 기능에 의해 RTP 패킷에 실리게 되는 NAL 단위의 순서를 복호화 순서와 다르게 배치하여 채널에서의 집단 오류(burst error)에 대해서는 효과적으로 대처할 수 있지만, RTP 패킷화 및 역패킷화(de-packetization) 그리고 SVC 복호화 과정이 매우 복잡해 지는 단점이 있다.

    따라서 SVC 비디오 스트리밍 시에 RTP/UDP/IP 헤더(header), MTU 크기, 및 RTP 패킷화 모드를 고려한 비트율 정보를 생성하는 방안이 요구되고 있다.

    본 발명은 상기 문제점을 해결하고 상기 요구에 부응하기 위하여 제안된 것으로, SVC 비디오 스트리밍 시에 RTP/UDP/IP 헤더(header), MTU 크기, 및 RTP 패킷화 모드를 고려하여 비트율을 생성함으로써, 오버헤드(overhead) 없이 효율적으로 SVC 비디오를 스트리밍하기 위한 RTP 패킷화 모드별 비트율 생성 방법을 제공하는데 그 목적이 있다.

    본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.

    상기 목적을 달성하기 위한 본 발명의 방법은, 넌인터리브드 모드인 경우의 RTP(Real time Transport Protocol) 패킷화 모드별 비트율 생성 방법에 있어서, SNU(Single NAL Unit) 타입의 패킷에 대해 계층별 NAL 유닛들의 크기 및 해당 헤더 크기를 이용하여 비트율을 생성하는 제 1 비트율 생성 단계; 및 STAP-A(Simple-Time Aggregation Packet-A) 타입의 패킷에 대해 동일 프레임 내에서 전송할 계층(Layer)들에 대한 NAL(Network Abstraction Layer) 유닛들을 이용하여 STAP-A 타 입의 패킷을 생성한 후에 상기 생성한 STAP-A 타입의 패킷에 대한 헤더 크기를 고려하여 비트율을 생성하는 제 2 비트율 생성 단계를 포함한다.

    또한, 상기 목적을 달성하기 위한 본 발명의 다른 방법은, 넌인터리브드 모드인 경우의 RTP(Real time Transport Protocol) 패킷화 모드별 비트율 생성 방법에 있어서, SNU(Single NAL Unit) 타입의 패킷에 대해 계층별 NAL 유닛들의 크기 및 해당 헤더 크기를 이용하여 비트율을 생성하는 제 1 비트율 생성 단계; 및 STAP-A(Simple-Time Aggregation Packet-A) 타입의 패킷에 대해 동일 프레임 내에서 전송할 계층(Layer)들에 대한 NAL(Network Abstraction Layer) 유닛들을 이용하여 STAP-A 타입의 패킷 및 FU-A 타입의 패킷을 생성한 후 상기 생성한 STAP-A 타입의 패킷 및 FU-A 타입의 패킷에 대한 헤더 크기를 고려하여 비트율을 생성하는 제 2 비트율 생성 단계를 포함한다.

    또한, 상기 목적을 달성하기 위한 본 발명의 또 다른 방법은, SNU(Single NAL Unit) 모드인 경우의 RTP(Real time Transport Protocol) 패킷화 모드별 비트율 생성 방법에 있어서, NAL(Network Abstraction Layer) 유닛들을 계층(Layer)별로 분류하는 단계; 상기 분류한 계층별 NAL 유닛들의 총 크기를 산출하는 단계; 상기 분류한 계층별 NAL 유닛들의 총 헤더 크기를 산출하는 단계; 및 상기 계층별 NAL 유닛들의 총 크기 및 총 헤더 크기를 이용하여 비트율을 생성하는 단계를 포함한다.

    상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명하기로 한다.

    도 1 은 본 발명이 적용되는 SVC 기반 스트리밍 시스템의 일실시예 구성도이다.

    도 1에 도시된 바와 같이, 본 발명이 적용되는 SVC 기반의 스트리밍 시스템은, 다양한 비트율, 화면율 및 해상도를 지원하기 위해, SVC 인코더(Encoder)(11)에서 고화질로 비디오(video)를 부호화하고, 추출기(Extractor)(12)에서 SEI를 이용해 스트리밍 서버(13)와 클라이언트 사이의 망 상황에 맞게 SVC 비트스트림(bitstream)을 추출하여 스트리밍 서버(Streaming server)(13)로 전달함으로써, 비트율 제어가 이루어진다.

    도 2 는 본 발명에 이용되는 스트리밍 프로토콜 스택의 일예시도이다.

    도 2에 도시된 바와 같이, 추출된 비트스트림(extracted bitstream)은 RTP 패킷으로 패킷화된 후 다시 UDP 패킷으로 패킷화되고, 또다시 IP 패킷으로 패킷화되어 전송된다.

    실제 전송되는 IP 패킷의 크기를 결정하는 요소는 각 NAL 단위의 크기, RTP 헤더의 크기, UDP 헤더의 크기, IP 헤더의 크기, RTP 패킷화 모드, 그리고 MTU의 크기이다.

    여기서, RTP 헤더의 크기는 12bytes, UDP 헤더의 크기는 8bytes, IP 헤더의 크기는 20bytes로 헤더의 확장부분을 사용하지 않는다면 그 크기는 40bytes로 고정된다.

    한편, MTU의 크기는 일반적으로 사용하는 이더넷 환경에서는 1500bytes를 사용하지만, CDMA 등의 이동통신망에서는 그 크기가 수백bytes 정도로 작아지며, 망의 상황이 좋은 환경에서는 수천 bytes로 더 커지게 된다.

    한편, NAL 유닛의 크기가 MUT보다 큰 경우와 RTP 패킷화 모드가 SNU가 아닌 경우에도 비트율에 영향을 미치게 된다.

    도 3 은 본 발명에 따른 SVC 기반 스트리밍 시스템에서의 RTP 패킷화 모드별 비트율 생성 방법에 대한 일실시예 흐름도로서, SNU(Single NAL Unit) 모드인 경우를 나타낸다.

    먼저, NAL(Network Abstraction Layer) 유닛들을 계층(Layer)별로 분류하고, 상기 분류한 계층별 NAL 유닛들의 총 크기 및 총 헤더 크기를 산출한 후 계층별 비트량을 계산하여 비트율을 생성한다.

    즉, 동일한 D,T,Q 값(계층 값)을 가지는 NAL 유닛들을 분류한 후 상기 분류된 NAL 유닛의 크기를 각각 더한다(301). 여기서, 동일한 D,T,Q 값을 갖는다는 의미는 동일한 계층(Layer)에 포함됨을 의미한다.

    이후, 해당 D,T,Q 별로 각각 더해진 NAL 유닛들의 수에 헤더의 크기(일예로, 40bytes)를 곱한다(302).

    이후, 동일한 D,T,Q 별로 각각 더한 NAL 유닛들의 크기 값들에, 해당 NAL 유 닛들의 수에 헤더 크기를 곱한 값을 더하여 해당 D,T,Q 별로 비트량을 계산한다(303).

    이후, 상기 계산한 비트량을 이용하여 비트율을 산출한다(304).

    이를 예를 들어 설명하면, 1,1,0에 포함되는 NAL 유닛들의 크기가 100, 200이고, 계층 값 1,1,1에 포함되는 NAL 유닛들의 크기가 100, 150, 200이며, 계층 값 1,1,2에 포함되는 NAL 유닛들의 크기가 150, 200이라고 하자.

    먼저, 1,1,0에 포함되는 NAL 유닛들의 총 크기는 300(100+200)이고, 1,1,1에 포함되는 NAL 유닛들의 총 크기는 450(100+150+200)이며, 1,1,2에 포함되는 NAL 유닛들의 총 크기는 350(150+200)이다.

    다음, 1,1,0에 포함되는 NAL 유닛들의 총 헤더 크기는 80(40×2)이고, 1,1,1에 포함되는 NAL 유닛들의 총 헤더 크기는 120(40×3)이며, 1,1,2에 포함되는 NAL 유닛들의 총 헤더 크기는 80(40×2)이다.

    다음, 1,1,0의 비트량은 380(300+80)이고, 1,1,1의 비트량은 570(450+120)이며, 1,1,2의 비트량은 430(350+80)이다.

    이를 시간(보통, 초)당 비트량으로 나타내면 비트율이 된다.

    도 4 는 본 발명에 따른 SVC 기반 스트리밍 시스템에서의 RTP 패킷화 모드별 비트율 생성 방법에 대한 다른 실시예 흐름도로서, Non-interleaved 모드인 경우를 나타낸다.

    먼저, 패킷 타입이 SNU(Single NAL Unit) 타입인 경우, 도 3에 도시된 바와 같은 SNU(Single NAL Unit) 모드인 경우와 동일한 방식으로 비트율을 산출한 다(401). 여기서, SNU(Single NAL Unit) 타입과 SNU(Single NAL Unit) 모드는 [표 2]를 통해 알 수 있듯이, 서로 다른 구분 요소이다.

    이후, 패킷 타입이 STAP-A(Simple-Time Aggregation Packet-A)인 경우 동일 프레임 내에서 전송할 계층(Layer)들에 대한 NAL 유닛들의 크기를 검사한다(402).

    이후, 동일 프레임 내에서 전송할 계층들에 대해 전송 우선순위로 NAL 유닛들의 크기를 하나하나 더하되, 임계치를 초과하지 않도록 더하여 임계치를 초과하지 않는 다수의 STAP-A 타입의 패킷을 생성한 후 그 수를 산출한다(403).

    즉, 동일 프레임 내에서 전송할 계층들에 대해 전송 우선순위로 NAL 유닛들의 크기를 순차적으로 더한다.

    그리고 상기 더한 크기 값이 임계치를 초과하는지 확인한다.

    상기 확인 결과, 임계치를 초과하지 않으면 상기 크기 합산 과정을 계속 수행하고, 임계치를 초과하면 마지막에 더한 NAL 유닛의 크기를 뺀 후 STAP-A 타입의 패킷을 생성한다.

    이후, 상기 생성한 STAP-A 타입의 패킷 수를 산출한다.

    여기서, 전송 우선순위는 데이터 재생과 관련하여 먼저 보내야 할 데이터의 순서를 의미하며, 임계치는 MTU(Maximum Transmission Unit)에서 헤더 크기(40byte)를 뺀 값을 의미한다.

    이때, 상기 하나의 NAL 유닛 크기가 MTU에서 헤더 크기(40byte)를 뺀 값보다 큰 경우, FU-A 타입의 패킷으로 생성하되, NAL 유닛 크기를 MTU에서 헤더 크기를 뺀 값으로 나눈 값보다 큰 최소의 정수가 FU-A 패킷의 수를 나타낸다.

    이후, 전송할 계층들에서 생성한 STAP-A 타입 패킷의 수와 FU-A 타입 패킷의 수의 합에 해당 헤더 크기를 곱한 후 상기 생성한 STAP-A 타입 패킷 및 FU-A 타입 패킷의 비트량(전송 비트량)에 더하여 비트율을 생성한다(404).

    상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.

    이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.

    상기와 같은 본 발명은, SVC 비디오 스트리밍 시에 RTP/UDP/IP 헤더(header), MTU 크기, 및 RTP 패킷화 모드를 고려하여 비트율을 생성함으로써, 오버헤드(overhead) 없이 효율적으로 SVC 비디오를 스트리밍할 수 있는 효과가 있다.

    高效检索全球专利

    专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

    我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

    申请试用

    分析报告

    专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

    申请试用

    QQ群二维码
    意见反馈