KR20100081920A - 적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호 적용 방법과, 그를 이용한 비디오 전송/수신 장치 - Google Patents

적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호 적용 방법과, 그를 이용한 비디오 전송/수신 장치 Download PDF

Info

Publication number
KR20100081920A
KR20100081920A KR1020090127232A KR20090127232A KR20100081920A KR 20100081920 A KR20100081920 A KR 20100081920A KR 1020090127232 A KR1020090127232 A KR 1020090127232A KR 20090127232 A KR20090127232 A KR 20090127232A KR 20100081920 A KR20100081920 A KR 20100081920A
Authority
KR
South Korea
Prior art keywords
video
coding rate
channel
error protection
differential error
Prior art date
Application number
KR1020090127232A
Other languages
English (en)
Other versions
KR101286917B1 (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 US12/652,123 priority Critical patent/US8654834B2/en
Publication of KR20100081920A publication Critical patent/KR20100081920A/ko
Application granted granted Critical
Publication of KR101286917B1 publication Critical patent/KR101286917B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/35Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
    • H03M13/356Unequal error protection [UEP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • H04L1/0013Rate matching, e.g. puncturing or repetition of code symbols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Quality & Reliability (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호 적용 방법과, 그를 이용한 비디오 전송/수신 장치를 제안한다. 본 발명의 실시 예에 따른 비디오 전송 장치는, 비디오 수신 장치로부터 피드백된 채널용량 추정값을 다음 채널구간의 채널용량으로 예측하고, 상기 예측된 채널용량 내에서 비디오코딩 레이트 및 채널코딩 레이트를 조정하는 코딩레이트 조정부와, 비디오 프레임들을 상기 조정된 비디오 코딩 레이트로 비디오 인코딩해서 비디오 패킷으로 생성하는 비디오 인코더 및 상기 비디오 패킷의 길이와 상기 비디오 패킷에 포함된 상기 비디오 프레임의 종류를 고려해서 차등 오류 보호하고, 상기 차등 오류 보호된 비디오 패킷을 상기 조정된 채널 코딩 레이트로 채널 인코딩해서 비트 스트림을 생성하는 순방향 에러 정정(FEC) 인코더를 포함할 수 있다.
적응적 비디오 전송, 코딩 레이트, 차등 오류 보호, UEP

Description

적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호 적용 방법과, 그를 이용한 비디오 전송/수신 장치{METHOD FOR TUNING CODING RATE AND UNEQUAL ERROR PROTECTION FOR ADAPTIVE VIDEO TRANSMISSION, AND VIDEO TRANSMISSION/RECEPTION APPARATUS USING THEM}
본 발명의 실시 예들은 적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호 적용 방법과, 그를 이용한 비디오 전송/수신 장치에 관한 것으로, 특히 비디오 수신 장치(클라이언트)가 수신 패킷의 비트에러율(BER)을 이용해 채널용량을 추정하여 피드백 시키면, 비디오 전송 장치(서버)가 그 채널용량 추정값에 기초하여 비디오/채널 코딩 레이트를 최적으로 조정하고, 프레임의 특성에 따라 차등 오류 보호를 적용하는 방법 및 장치에 관한 것이다.
무선 환경에서는 약한 신호세기로 인하여 많은 비트 에러가 발생하고, 이는 패킷 손실을 초래한다. 따라서 무선 단말에서 이러한 패킷 손실을 줄이기 위해서는 링크 품질 내지 채널 상태를 추정하는 것이 필요하다. 특히, 실시간 비디오 적응을 위해서는, 실시간으로 무선 채널용량을 정확하게 추정하는 것이 필수적이다. 왜냐 하면, 링크 품질(Link Quality)은 간섭(Interference), 페이딩(Fading), 다중 경로 효과(Multi-Path Effects), 및 이동성(Mobility) 등으로 인해 심하게 영향을 받는데, 이들의 변화는 결국 채널용량에 심한 변화를 주기 때문이다.
한편, 무선 단말에서의 패킷 손실을 줄이기 위하여, 교차 계층 디자인(CLD: Cross-Layer Design) 프로토콜에 대한 연구가 활발히 진행되어 왔다. 여기서, CLD 프로토콜은 비트에러가 존재하는 패킷을 상위 레이어(Layer)로 전달하고 그 상위 레이어에서 이 패킷을 활용하는 기술이다.
지금까지의 많은 연구들은 CLD를 통해 비디오 처리량(throughput)을 증가할 수 있다는 사실을 확인하였다. 게다가, 현재의 무선랜에서는 부가정보의 활용이 가능한데, 이러한 부가정보(Side information)가 채널상황을 추정할 수 있는 중요한 정보라는 점도 증명하였다. 여기서, 부가정보(Side information)는 신호 세기(SSR: Signal to Silence Ratio)(SSR은 패킷 레벨의 SNR 파라미터에 해당함)와 체크섬(Checksum)을 포함한다.
그리고 상기와 같은 부가 정보의 중요성 인식과 더불어, 부가정보를 활용하는 CLD 프로토콜, 즉 CLDS(Cross-Layer Design with Side Information) 프로토콜도 등장하였는데, 이러한 CLDS는 실시간 비디오 적응(Real-time Video Rate-Adaptation) 애플리케이션에 매우 유용하게 적용될 수 있다. 특히, CLDS를 기반으로 하여 링크 품질(Link Quality)을 추정한다면, 잔류 에러 과정의 엔트로피(the entropy of the residue error process)를 이용하여 더욱 정확하게 추정할 수 있을 것이다.
본 발명의 실시 예는 적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호 적용 방법과, 그를 이용한 비디오 전송/수신 장치를 제공한다.
본 발명의 실시 예는 비디오 전송 장치(서버)에서 비디오 수신 장치(클라이언트)로부터 추정된 채널용량을 수신하면 채널용량 추정값을 기초해서 비디오/채널 코딩 레이트를 최적으로 조정하고, 프레임의 특성에 따라 차등 오류 보호를 적용하는 방법 및 장치를 제공한다.
본 발명의 실시 예에 따른 적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호를 적용한 방법은, 비디오 수신 장치로부터 피드백된 채널용량 추정값을 다음 채널구간의 채널용량으로 예측하는 단계와, 상기 예측된 채널용량 내에서 비디오코딩 레이트 및 채널코딩 레이트를 조정하는 단계와, 비디오 프레임들을 상기 조정된 비디오 코딩 레이트로 비디오 인코딩해서 비디오 패킷으로 생성하는 단계와, 상기 비디오 패킷의 길이와 상기 비디오 패킷에 포함된 상기 비디오 프레임의 종류를 고려해서 차등 오류 보호하는 단계 및 상기 차등 오류 보호된 비디오 패킷을 상기 조정된 채널 코딩 레이트로 채널 인코딩해서 비트 스트림을 생성하는 단계를 포함한다.
본 발명의 실시 예에 따른 적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호를 적용한 비디오 전송 장치는, 비디오 수신 장치로부터 피드백된 채널용량 추정값을 다음 채널구간의 채널용량으로 예측하고, 상기 예측된 채널용량 내에서 비디오코딩 레이트 및 채널코딩 레이트를 조정하는 코딩레이트 조정부와, 비디오 프레임들을 상기 조정된 비디오 코딩 레이트로 비디오 인코딩해서 비디오 패킷으로 생성하는 비디오 인코더 및 상기 비디오 패킷의 길이와 상기 비디오 패킷에 포함된 상기 비디오 프레임의 종류를 고려해서 차등 오류 보호하고, 상기 차등 오류 보호된 비디오 패킷을 상기 조정된 채널 코딩 레이트로 채널 인코딩해서 비트 스트림을 생성하는 순방향 에러 정정(FEC) 인코더를 포함한다.
본 발명의 실시 예는 비디오 전송 장치(서버)에서 비디오 수신 장치(클라이언트)로부터 추정된 채널용량을 수신하면 채널용량 추정값을 기초해서 비디오/채널 코딩 레이트를 최적으로 조정하고, 프레임의 특성에 따라 차등 오류 보호를 적용하는 방법 및 장치에 관한 것으로, 채널 추정값을 바탕으로 비디오/채널 코딩 레이트를 조정함으로써, 강건한 레이트 적응을 가능하게 하였고, 비디오 프레임의 특성을 고려해서 차등 오류 보호함에 따라 보다 중요한 비디오 프레임의 복호화 성공률을 높일 수 있다.
이하에서, 본 발명에 따른 실시 예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 실시 예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다. 그리고 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
본 발명의 실시 예는 비디오 전송 장치(서버)에서 비디오 수신 장치(클라이언트)로부터 추정된 채널용량을 수신하면 채널용량 추정값을 기초해서 비디오/채널 코딩 레이트를 최적으로 조정하고, 프레임의 특성에 따라 차등 오류 보호를 적용하는 방법 및 장치에 관한 것이다.
도 1은 본 발명의 실시 예에 따른 적응적 비디오 전송을 위한 비디오 서비스 시스템의 구성을 도시한 도면이다. 도 1을 참조하면, 비디오 서비스 시스템은, 비디오 전송 장치(서버)(110), 비디오 수신 단말(클라이언트)(120) 및 데이터를 전달하는 유/무선 네트워크(110)를 포함하여 구성 될 수 있다.
비디오 서비스 시스템에 포함된 장치 간의 관계를 보면, 비디오 수신 단말(클라이언트)(120)이 채널용량을 추정하여 피드백으로 전송하면, 비디오 전송 장치(서버)(110)는 그 채널용량 추정값을 이용하여 비디오코딩 레이트(Video Coding Rate) 및 채널코딩 레이트(Channel Coding Rate)를 최적으로 조정한다. 그리고, 추가로 비디오 전송 장치(서버)(110)는 송신하는 비디오 프레임의 특성에 따라 차등 오류 보호를 적용한다.
먼저, 본 발명의 실시 예에 따른 비디오 수신 단말(120)은 채널용량 추정부(122), 순방향 에러 정정(FEC: Forward Error Correction) 디코더(124), 및 비디 오 디코더(126)를 포함할 수 있다.
채널용량 추정부(122)는 유선 또는 무선 네트워크(100)를 통하여 수신된 비디오 스트림으로부터 채널상태 부가정보(Side Information)(예를 들면, 체크섬(checksum), 신호 세기(SSR: Signal to Silence Ratio))를 획득한 후 이를 이용하여 각각의 수신 비디오 패킷에 대하여 비트에러율(BER)을 추정한 다음, 그 추정된 비트에러율(BER)을 이용해 채널용량을 추정하여 비디오 전송 장치(110)에 피드백으로 전송한다. 채널용량 추정부(122)의 채널용량 추정과정은 이후 도 2를 참조하여 보다 상세히 후술하고자 한다.
그리고 FEC 디코더(124)는 채널오류를 정정하기 위한 채널 디코더의 일종으로서, 채널용량 추정부(122)로부터 전달받은 채널상태 부가정보를 이용하여 수신 비디오 스트림을 채널 디코딩한다. 본 발명의 비디오 스트림에 포함된 패킷들은 포함된 비디오 프레임의 종류에 따라 차등 오류 보호되어 있다. 따라서, FEC 디코더(124)는 비디오 스트림을 차등 오류 보호를 고려해서 채널 디코딩한다.
그러면, 비디오 디코더(126)는 채널 디코딩된 비디오 스트림을 비디오 디코딩하여 복원한다.
한편, 본 발명의 실시 예에 따른 비디오 전송 장치(서버)(110)는 비디오 인코더(112), 순방향 에러 정정(FEC: Forward Error Correction) 인코더(114), 코딩 레이트 조정부(116)를 포함할 수 있다.
비디오 인코더(112)는 비디오 데이터를 코딩 레이트 조정부(116)에 의해 조정된 비디오코딩 레이트에 따라 인코딩한다.
FEC 인코더(114)는 채널 오류를 정정하기 위한 채널 인코더로서 비디오 인코딩 결과에 비디오 프레임의 종류를 고려한 차등 오류 보호를 적용하고 코딩 레이트 조정부(116)에 의해 조정된 채널코딩 레이트에 따라 채널 인코딩을 수행한다. 이러한 두 인코더(112, 114)를 통해서 비디오 스트림이 생성된다.
코딩 레이트 조정부(116)는 비디오 수신 단말(120)로부터 피드백 전송된 채널용량 추정값이 허용하는 범위 내에서 비디오 인코더(112)의 비디오코딩 레이트와 FEC 인코더(114)의 채널코딩 레이트를 최적으로 조정한다.
비디오코딩 레이트와 채널코딩 레이트를 조정하는 방법을 이후 도 2를 참조하여 보다 상세히 후술하고자 한다.
이하, 상기와 같이 구성된 본 발명에 따른 채널용량을 추정하고, 적응적 비디오 전송을 위한 코딩 레이트 조정하고, 차등 오류 보호를 적용하는 방법을 아래에서 도면을 참조하여 설명한다.
도 2는 본 발명의 실시 예에 따른 비디오 수신 장치(클라이언트)에서 채널 용량을 추정해서 피드백하는 과정을 도시한 흐름도이다.
도 2를 참조하면 비디오 수신 단말(클라이언트)(120)의 채널용량 추정부(122)는 210단계에서 네트워크(100)를 통해서 비디오 스트림을 수신하면 212단계에서 비디오 스트림에 포함된 각각의 비디오 패킷에 대한 비트 에러율(BER)을 추정한다.
그리고, 채널용량 추정부(122)는 214단계에서 추정된 각각의 비트 에러율 에 대한 엔트로피를 계산한다. 그리고, 채널용량 추정부(122)는 216단계에서 하나 의 비디오 적응 주기 동안의 엔트로피 평균값을 계산한다.
그리고, 채널용량 추정부(122)는 218단계에서 엔트로피 평균값을 이용해서 채널용량을 추정하고, 220단계에서 채널용량 추정값을 서버로 피드백한다.
채널용량의 추정을 수학식으로 표현하면, 아래 <수학식 1>과 같이 표현할 수 있다.
Figure 112009078626136-PAT00001
여기서,
Figure 112009078626136-PAT00002
는 채널용량의 추정값이고,
Figure 112009078626136-PAT00003
는 패킷 i에 대한 비트에러율 추정치이고,
Figure 112009078626136-PAT00004
는 각 패킷에 대한 순시 엔트로피(instantaneous perpacket entropy)를 나타내고, m은 하나의 비디오 적응 주기에 포함된 패킷의 수를 나타낸다.
도 3은 본 발명의 실시 예에 따른 비디오 전송 장치(서버)에서 비디오 코딩 레이트와 채널 코딩 레이트를 조정하고, 차등 에러 보호 적용한 비디오 스트림을 송신하는 과정을 도시한 흐름도이다.
도 3을 참조하면 비디오 전송 장치(서버)(110)의 코딩 레이트 조정부(116)는 310단계에서 비디오 수신 단말(클라이언트)(120)로부터 피드백되는 채널용량 추정값을 수신하면, 312단계에서 채널용량 추정값을 이용해서 다음 채널구간의 채널용량을 예측한다. 이때, 다음 채널구간의 채널용량 예측은 비디오 수신 단말(클라 이언트)(120)로부터 피드백되는 이전 채널용량 추정값을 다음 채널 구간의 채널용량 예측값으로 사용한다.
그리고, 비디오 전송 장치(서버)(110)의 코딩 레이트 조정부(116)는 314단계에서 예측된 채널용량 내에서 비디오의 레이트 왜곡함수와 비디오의 화질 왜곡함수를 이용해서 비디오 코딩 레이트와 채널 코딩 레이트를 최적으로 조정한다.
즉, 다음 채널구간에 대한 최적의 비디오코딩 레이트는 전송 중인 비디오의 PSNR(Peak Signal to Noise Ratio)값이 해당 채널 구간 동안 최적이 될 수 있는 값이 된다. 여기서, 비디오코딩 레이트 채널코딩 레이트의 합은 1이다. 예를 들어, 500kbp로 비디오 전송시, 현 채널용량 레이트가 0.8인 경우에는, 비디오는 400kbps로 인코딩하고 나머지 부분은 채널코딩을 하여 전송해야 하며, 이렇게 하여야 최적의 채널 활용이 가능하다.
다시 말해, 채널코딩 레이트가 작아지면, 채널용량 예측값이 실제 채널 용량값보다 클 확률은 적어지지만 RD 함수의 값이 작아져서 전체 PSNR값은 낮아지게 된다. 반대로, 채널코딩 레이트가 크면, 비디오의 레이트 왜곡 함수의 값은 커지지만 채널용량 예측값이 실제 채널용량을 초과할 확률이 커져서 전체 PSNR값은 최하 값이 될 가능성이 크다. 따라서 아래 <수학식 3>는 채널용량 예측값보다는 작으나 최상의 PSNR값을 갖는 채널용량 레이트를 찾을 수 있도록 한다.
비디오 코딩 레이트와 채널 코딩 레이트의 조정에 대한 설명에 앞서, 현존하는 모든 채널코드는 채널용량(channel capacity)보다 성능이 떨어진다. 따라서, 채널코드의 성능에 따라 성능감소가 발생하며, 이를 아래의 <수학식 2>에서와 같이 알파(α)값을 적용한다. Ideal 채널코드인 경우 알파(α)는 1이다. 도 6의 실험에서와 같이 보통 알파(α)값은 대략 2.0 이상이다.
Figure 112009078626136-PAT00005
Figure 112009078626136-PAT00006
는 운영시 성능감소된 비디오/채널코딩 레이트이고,
Figure 112009078626136-PAT00007
는 패리티 비트의 크기를 결정하는 파라메터이고,
Figure 112009078626136-PAT00008
는 패킷에 대한 순시 엔트로피(instantaneous perpacket entropy)를 나타낸다.
비디오 코딩 레이트와 채널 코딩 레이트의 조정은 아래 <수학식 3>를 통해서 조정된다.
Figure 112009078626136-PAT00009
여기서,
Figure 112009078626136-PAT00010
는 예측된 비디오 코딩 레이트이고, Q(.)는 비디오의 레이트 왜곡함수이고, Q´(.)는 비디오의 화질 왜곡함수이고,
Figure 112009078626136-PAT00011
는 운영시 성능감소된 비디오/채널코딩 레이트이고,
Figure 112009078626136-PAT00012
는 운영시 성능감소된 현재 채널 구간의 채널용량 예측값이고,
Figure 112009078626136-PAT00013
는 현재 채널 구간의 채널용량 예측값과 이전 채널 구간의 채널용량 예측값 간의 차이로 구해지는 채널예측 에러이고, T는 패킷 전송율(Packet Transmit Rate)을 나타낸다.
Figure 112009078626136-PAT00014
는 채널용량 예측 에러를 가우시안 분포로 표현할 때의 시그마 값이고,
Figure 112009078626136-PAT00015
는 운영시 성능감소된 현재 채널 구간의 채널용량이다.
비디오의 레이트 왜곡(RD: Rate Distortion) 함수는 비디오 부호화시 얻어지는 함수로서 아래 도 4와 같다. 도 4는 본 발명의 실시 예에 따른 비디오의 레이트 왜곡 함수를 그래프로 나타낸 도면이다. 도 4의 비디오의 레이트 왜곡 함수는 비트율(Bit Rate)과 화질 척도인 PSNR(Peak Signal to Noise Ratio)의 관계를 나타내었다.
그리고, 비디오의 화질 왜곡함수(Q´(.))는 채널용량 초과에 따른 비디오의 화질 왜곡을 나타내는 함수로 아래 <수학식 4>과 같이 표현될 수 있다.
Figure 112009078626136-PAT00016
<수학식 4>으로 표현되는 비디오의 화질 왜곡함수는 아래 도 5와 같이 실험에 의해 결정되며, 또한 실험에 의해
Figure 112009078626136-PAT00017
,
Figure 112009078626136-PAT00018
Figure 112009078626136-PAT00019
로 결정된다. 도 5는 본 발명의 실시 예에 따라 채널용량을 초과한 레이트에 대한 비디오의 화질 왜곡 함수를 그래프로 나타낸 도면이다.
이때, 비디오의 화질 왜곡함수(Q´(x))의 인자인 x는 예측할 코딩 레이트와 채널용량의 차(
Figure 112009078626136-PAT00020
)이다. 따라서, 그 차이가 클수록 비디오화질의 왜곡은 커진다.
한편, 비디오 전송 장치(서버)(110)의 인코더(112)는 316단계에서 조정된 비디오 코딩 레이트에 따라 비디오 프레임들로 구성되는 비디오 데이트를 비디오 인코딩한다.
그리고, 비디오 전송 장치(서버)(110)의 FEC 인코더(114)는 318단계에서 비디오 인코딩으로 생성된 비디오 패킷의 길이와 비디오 패킷에 포함된 프레임의 특징에 따라 비디오 패킷에 기설정된 패리티 비트를 추가한다. 그리고, 비디오 전송 장치(서버)(110) 의 FEC 인코더(114)는 320단계에서 기설정된 패리티 비트가 추가된 비디오 패킷을 조정된 채널 코딩 레이트로 채널 인코딩한다.
비디오 스트림에 포함되는 부화화된 비디오 패킷의 복호화 성공률은 패킷의 길이에 따라 아래 도 6과 같이 영향을 받는다. 도 6은 본 발명의 실시 예에 따른 차등 오류 보호 적용을 위한 패킷 길이와 알파 값에 따른 복호화 성공률을 도시한 도면이다.
FEC 인코더(114)는 비디오 패킷의 길이와 비디오 패킷에 포함된 비디오 프레임의 특징에 따라 알파(α)를 설정하고, 알파(α)를 이용해서 패리티 비트의 길이를 설정한다. 비디오 프레임의 특징은 인트라-부호화(Intra-coded) 프레임(I-프레임), 예측-부호화(Predictive-coded) 프레임(P-프레임) 및 양방향 예측-부호화(Bidirectionally predictive-coded) 프레임(B-프레임)의 3가지로 구분될 수 있다. I-프레임은 현재 입력 영상(current input frame)내의 정보만을 이용하여 부호화된다. 그리고, P-프레임은 시간적으로 이전의(preceding) I-프레임 또는 P-프레임에 대한 움직임 예측을 이용하여 부호화된다. 그리고, B-프레임은 이전의 I-프레 임 또는 P-프레임 및 이후의(following) I-프레임 또는 P-프레임에 대한 움직임 예측을 이용하여 부호화된다.
부호화된 비디오 프레임은 종류에 따라 중요도가 서로 다르다. 즉, I-프레임이 없으면 P-프레임 또는 B-프레임은 복호화 할 수 없다.
따라서, I-프레임을 포함한 패킷은 복호화가 확실한 알파(α)값을 적용하여 채널코딩을 한다. 다시 말해 I-프레임을 포함한 패킷에는 상대적으로 더 많은 패리티 비트를 할당함으로서 에러에 보다 강하게 한다. 예를 들어 길이가 800bit인 I-프레임을 포함하는 패킷인 경우, 알파(α)값에 2.7을 적용하여 패리티 비트를 할당한다.
I-프레임 패킷의 채널코딩 후, P-프레임 패킷은 아래의 <수학식 5>로 알파(α)값을 적용하여 채널코딩한다.
Figure 112009078626136-PAT00021
여기서,
Figure 112009078626136-PAT00022
는 패리티 비트의 크기를 결정하는 파라메터이고,
Figure 112009078626136-PAT00023
는 P-프레임을 포함하는 패킷의 패리티 비트의 크기를 결정하는 파라메터이고,
Figure 112009078626136-PAT00024
는 I-프레임을 포함하는 i번째 패킷의 패리티 비트의 크기를 결정하는 파라메터이고,
Figure 112009078626136-PAT00025
는 i 번째 패킷의 길이이고,
Figure 112009078626136-PAT00026
는 I-프레임을 포함하는 i번째 패킷의 길이이고,
Figure 112009078626136-PAT00027
P-프레임을 포함하는 i번째 패킷의 길이 이고, N은 총 패킷의 수이고, K는 I-프레임을 포함하는 패킷 패킷의 수 이다.
<수학식 3>를 통해 총 패리티 비트는 계산되며, 이는 아래 <수학식 6>과 같이 재정리 될 수 있다.
Figure 112009078626136-PAT00028
여기서,
Figure 112009078626136-PAT00029
는 패리티 비트의 크기를 결정하는 파라메터이고,
Figure 112009078626136-PAT00030
는 P-프레임을 포함하는 패킷의 패리티 비트의 크기를 결정하는 파라메터이고,
Figure 112009078626136-PAT00031
는 I-프레임을 포함하는 i번째 패킷의 패리티 비트의 크기를 결정하는 파라메터이고,
Figure 112009078626136-PAT00032
는 i번째 패킷의 길이이고,
Figure 112009078626136-PAT00033
는 I-프레임을 포함하는 i번째 패킷의 길이이고,
Figure 112009078626136-PAT00034
P-프레임을 포함하는 i번째 패킷의 길이 이고, N은 총 패킷의 수이고, K는 I-프레임을 포함하는 패킷 패킷의 수 이다.
마지막으로, 비디오 전송 장치(서버)(110)는 322단계에서 채널 인코딩에 따라 생성된 비트 스트림을 비디오 수신 단말(클라이언트)(120)로 송신한다.
또한, 본 발명의 실시 예들은 다양한 컴퓨터로 구현되는 동작을 수행하기 위한 프로그램 명령을 포함하는 컴퓨터 판독 가능 매체를 포함한다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시 예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시 예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 설명된 실시 예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
도 1은 본 발명의 실시 예에 따른 적응적 비디오 전송을 위한 비디오 서비스 시스템의 구성을 도시한 도면,
도 2는 본 발명의 실시 예에 따른 비디오 수신 장치(클라이언트)에서 채널 용량을 추정해서 피드백하는 과정을 도시한 흐름도,
도 3은 본 발명의 실시 예에 따른 비디오 전송 장치(서버)에서 비디오 코딩 레이트와 채널 코딩 레이트를 조정하고, 차등 에러 보호 적용한 비디오 스트림을 송신하는 과정을 도시한 흐름도,
도 4는 본 발명의 실시 예에 따른 비디오의 레이트 왜곡 함수를 그래프로 나타낸 도면,
도 5는 본 발명의 실시 예에 따라 채널용량을 초과한 레이트에 대한 비디오의 화질 왜곡 함수를 그래프로 나타낸 도면 및,
도 6은 본 발명의 실시 예에 따른 차등 오류 보호 적용을 위한 패킷 길이와 알파 값에 따른 복호화 성공률을 도시한 도면이다.

Claims (18)

  1. 비디오 수신 장치로부터 피드백된 채널용량 추정값을 다음 채널구간의 채널용량으로 예측하는 단계;
    상기 예측된 채널용량 내에서 비디오코딩 레이트 및 채널코딩 레이트를 조정하는 단계;
    비디오 프레임들을 상기 조정된 비디오 코딩 레이트로 비디오 인코딩해서 비디오 패킷으로 생성하는 단계;
    상기 비디오 패킷의 길이와 상기 비디오 패킷에 포함된 상기 비디오 프레임의 종류를 고려해서 차등 오류 보호하는 단계; 및
    상기 차등 오류 보호된 비디오 패킷을 상기 조정된 채널 코딩 레이트로 채널 인코딩해서 비트 스트림을 생성하는 단계를 포함하는
    적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호를 적용한 방법.
  2. 제1항에 있어서,
    상기 조정된 비디오코딩 레이트는,
    전송 중인 비디오의 PSNR(Peak Signal to Noise Ratio)값이 해당 채널 구간 동안 최적이 될 수 있는 값임을 특징으로 하는
    적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호를 적용한 방법.
  3. 제1항에 있어서,
    상기 비디오코딩 레이트 및 상기 채널코딩 레이트를 조정하는 단계는,
    상기 예측된 채널용량 내에서 비디오의 레이트 왜곡함수와 비디오의 화질 왜곡함수를 이용해서 상기 비디오코딩 레이트를 계산하고, 상기 비디오코딩 레이트를 이용해서 상기 채널코딩 레이트를 계산하는
    적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호를 적용한 방법.
  4. 제3항에 있어서,
    상기 비디오의 레이트 왜곡함수는,
    비디오를 부호화할 때 얻어지는 함수임을 특징으로 하는
    적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호를 적용한 방법.
  5. 제3항에 있어서,
    상기 비디오의 화질 왜곡함수는,
    채널용량 초과에 따른 비디오의 화질 왜곡을 나타내는 함수로 아래 <수학식 7>과 같이 표현되는
    적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호를 적용한 방법.
    Figure 112009078626136-PAT00035
    여기서, Q´(.)는 비디오의 화질 왜곡함수이고, 상기 차등 오류 보호하는 단계는, a와 b와 c는 실험에 의해 결정되는 값이다.
  6. 제1항에 있어서,
    상기 차등 오류 보호하는 단계는,
    상기 비디오 패킷에 인트라-부호화 프레임(I-프레임)이 포함된 경우 상기 I-프레임을 포함하지 않은 비디오 패킷에 비해 상대적으로 오류에 강하도록 차등 오류 보호함을 특징으로 하는
    적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호를 적용한 방법.
  7. 차등 오류 보호된 비디오 스트림을 수신하는 단계;
    상기 비디오 스트림의 채널상태 부가정보를 이용하여 비트에러율(BER)을 추정하는 단계:
    상기 추정된 비트에러율(BER)을 이용하여 채널용량을 추정하는 단계; 및
    상기 추정된 채널용량을 비디오 전송 장치로 피드백하는 단계를 포함하는
    코딩 레이트 조정 및 차등 오류 보호를 적용된 적응적 비디오의 수신 방법.
  8. 제7항에 있어서,
    상기 비디오 스트림을 상기 차등 오류 보호를 고려해서 채널 디코딩 하는 단계를 더 포함하는,
    코딩 레이트 조정 및 차등 오류 보호를 적용된 적응적 비디오의 수신 방법.
  9. 제7항에 있어서,
    상기 차등 오류 보호는,
    비디오 패킷에 인트라-부호화 프레임(I-프레임)이 포함된 경우 상기 I-프레임을 포함하지 않은 비디오 패킷에 비해 상대적으로 오류에 강하도록 차등적으로 오류 보호함을 나타내는
    코딩 레이트 조정 및 차등 오류 보호를 적용된 적응적 비디오의 수신 방법.
  10. 비디오 수신 장치로부터 피드백된 채널용량 추정값을 다음 채널구간의 채널용량으로 예측하고, 상기 예측된 채널용량 내에서 비디오코딩 레이트 및 채널코딩 레이트를 조정하는 코딩레이트 조정부;
    비디오 프레임들을 상기 조정된 비디오 코딩 레이트로 비디오 인코딩해서 비디오 패킷으로 생성하는 비디오 인코더; 및
    상기 비디오 패킷의 길이와 상기 비디오 패킷에 포함된 상기 비디오 프레임의 종류를 고려해서 차등 오류 보호하고, 상기 차등 오류 보호된 비디오 패킷을 상기 조정된 채널 코딩 레이트로 채널 인코딩해서 비트 스트림을 생성하는 순방향 에러 정정(FEC) 인코더를 포함하는
    적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호를 적용한 비디오 전송 장치.
  11. 제10항에 있어서,
    상기 조정된 비디오코딩 레이트는,
    전송 중인 비디오의 PSNR(Peak Signal to Noise Ratio)값이 해당 채널 구간 동안 최적이 될 수 있는 값임을 특징으로 하는
    적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호를 적용한 비디오 전송 장치.
  12. 제10항에 있어서,
    상기 코딩레이트 조정부는,
    상기 예측된 채널용량 내에서 비디오의 레이트 왜곡함수와 비디오의 화질 왜곡함수를 이용해서 상기 비디오코딩 레이트를 계산하고, 상기 비디오코딩 레이트를 이용해서 상기 채널코딩 레이트를 계산하는
    적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호를 적용한 비디오 전송 장치.
  13. 제12항에 있어서,
    상기 비디오의 레이트 왜곡함수는,
    비디오를 부호화할 때 얻어지는 함수임을 특징으로 하는
    적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호를 적용한 비디오 전송 장치.
  14. 제12항에 있어서,
    상기 비디오의 화질 왜곡함수는,
    채널용량 초과에 따른 비디오의 화질 왜곡을 나타내는 함수로 아래 <수학식 8>과 같이 표현되는
    적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호를 적용한 비디오 전송 장치.
    Figure 112009078626136-PAT00036
    여기서, Q´(.)는 비디오의 화질 왜곡함수이고, 상기 차등 오류 보호하는 단계는, a와 b와 c는 실험에 의해 결정되는 값이다.
  15. 제10항에 있어서,
    상기 순방향 에러 정정 인코더는,
    상기 비디오 패킷에 인트라-부호화 프레임(I-프레임)이 포함된 경우 상기 I-프레임을 포함하지 않은 비디오 패킷에 비해 상대적으로 오류에 강하도록 차등 오류 보호함을 특징으로 하는
    적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호를 적용한 비디오 전송 장치.
  16. 차등 오류 보호된 비디오 스트림을 수신하면, 상기 비디오 스트림의 채널상태 부가정보를 이용하여 비트에러율(BER)을 추정하고, 상기 추정된 비트에러율(BER)을 이용하여 채널용량을 추정하고, 상기 추정된 채널용량을 비디오 전송 장치로 피드백하는 채널용량 추정부를 포함하는
    코딩 레이트 조정 및 차등 오류 보호를 적용된 적응적 비디오를 수신하는 비디오 수신 장치.
  17. 제16항에 있어서,
    상기 비디오 스트림을 상기 차등 오류 보호를 고려해서 채널 디코딩 하는 순방향 에러 정정(FEC) 디코더를 더 포함하는,
    코딩 레이트 조정 및 차등 오류 보호를 적용된 적응적 비디오를 수신하는 비디오 수신 장치.
  18. 제16항에 있어서,
    상기 차등 오류 보호는,
    비디오 패킷에 인트라-부호화 프레임(I-프레임)이 포함된 경우 상기 I-프레임을 포함하지 않은 비디오 패킷에 비해 상대적으로 오류에 강하도록 차등적으로 오류 보호함을 나타내는
    코딩 레이트 조정 및 차등 오류 보호를 적용된 적응적 비디오를 수신하는 비디오 수신 장치.
KR1020090127232A 2009-01-06 2009-12-18 적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호 적용 방법과, 그를 이용한 비디오 전송/수신 장치 KR101286917B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/652,123 US8654834B2 (en) 2009-01-06 2010-01-05 Method for tuning coding rate and applying unequal error protection for adaptive video transmission, and video transmission/reception apparatus using the method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20090000945 2009-01-06
KR1020090000945 2009-01-06

Publications (2)

Publication Number Publication Date
KR20100081920A true KR20100081920A (ko) 2010-07-15
KR101286917B1 KR101286917B1 (ko) 2013-07-16

Family

ID=42642240

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090127232A KR101286917B1 (ko) 2009-01-06 2009-12-18 적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호 적용 방법과, 그를 이용한 비디오 전송/수신 장치

Country Status (1)

Country Link
KR (1) KR101286917B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2423796A2 (en) 2010-08-24 2012-02-29 Lg Electronics Inc. Mobile terminal and displaying method thereof
WO2012125008A2 (ko) * 2011-03-16 2012-09-20 한국전자통신연구원 부가 정보를 이용한 무선 채널 상태 추정 방법 및 장치, 이를 이용한 무선망에서의 코딩 레이트 조절 방법
WO2014061925A1 (ko) * 2012-09-28 2014-04-24 (주)휴맥스 교차 계층 최적화를 사용한 fec 패리티 데이터의 적응적 전송 방법
KR20210044746A (ko) 2020-08-04 2021-04-23 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 비디오 코딩 방법, 장치, 전자 기기 및 컴퓨터 판독 가능한 저장 매체

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160146324A (ko) 2015-06-12 2016-12-21 연세대학교 산학협력단 패킷드랍을 이용한 적응적 비디오 무선 전송 장치 및 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6785323B1 (en) 1999-11-22 2004-08-31 Ipr Licensing, Inc. Variable rate coding for forward link
US7784076B2 (en) * 2004-10-30 2010-08-24 Sharp Laboratories Of America, Inc. Sender-side bandwidth estimation for video transmission with receiver packet buffer
BRPI0520491A2 (pt) * 2005-08-30 2009-05-12 Thomson Licensing otimização de camadas cruzadas para multidifusão de vìdeo escalável por redes de área local sem fio do ieee 802.11
KR101211432B1 (ko) * 2007-12-27 2012-12-12 보드 오브 트러스티즈 오브 미시건 스테이트 유니버시티 적응적 비디오 전송을 위한 채널용량 추정 및 코딩 레이트 조정 방법과, 그를 이용한 비디오 전송/수신 장치

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2423796A2 (en) 2010-08-24 2012-02-29 Lg Electronics Inc. Mobile terminal and displaying method thereof
WO2012125008A2 (ko) * 2011-03-16 2012-09-20 한국전자통신연구원 부가 정보를 이용한 무선 채널 상태 추정 방법 및 장치, 이를 이용한 무선망에서의 코딩 레이트 조절 방법
WO2012125008A3 (ko) * 2011-03-16 2012-12-27 한국전자통신연구원 부가 정보를 이용한 무선 채널 상태 추정 방법 및 장치, 이를 이용한 무선망에서의 코딩 레이트 조절 방법
WO2014061925A1 (ko) * 2012-09-28 2014-04-24 (주)휴맥스 교차 계층 최적화를 사용한 fec 패리티 데이터의 적응적 전송 방법
KR20210044746A (ko) 2020-08-04 2021-04-23 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 비디오 코딩 방법, 장치, 전자 기기 및 컴퓨터 판독 가능한 저장 매체

Also Published As

Publication number Publication date
KR101286917B1 (ko) 2013-07-16

Similar Documents

Publication Publication Date Title
US8654834B2 (en) Method for tuning coding rate and applying unequal error protection for adaptive video transmission, and video transmission/reception apparatus using the method
KR101211432B1 (ko) 적응적 비디오 전송을 위한 채널용량 추정 및 코딩 레이트 조정 방법과, 그를 이용한 비디오 전송/수신 장치
JP4173755B2 (ja) データ伝送サーバ
US7974233B2 (en) Systems and methods for transmitting and receiving data streams with feedback information over a lossy network
KR101125846B1 (ko) 패킷 기반의 영상 프레임 전송 방법 및 장치
US10084715B2 (en) Packet loss mitigation
US8923151B2 (en) Quality control apparatus, moving image transmission system, quality control method, and recording medium
KR101286917B1 (ko) 적응적 비디오 전송을 위한 코딩 레이트 조정 및 차등 오류 보호 적용 방법과, 그를 이용한 비디오 전송/수신 장치
US20060130104A1 (en) Network video method
KR20120106610A (ko) 부가 정보를 이용한 무선 채널 상태 추정 방법 및 장치, 이를 이용한 무선망에서의 코딩 레이트 조절 방법
KR101482484B1 (ko) 멀티미디어 스트리밍을 위한 비디오 패킷 스케줄링 방법
JP2005515697A (ja) リード・ソロモン符号に基づいた前方誤り訂正を用いた不均一誤り保護
KR101443061B1 (ko) 패킷 손실에 강인한 애드혹 멀티미디어 그룹통신 단말 및 그 동작방법
JP2009212842A (ja) 動画伝送装置
KR100937099B1 (ko) 영상 전송시 소스-채널 결합 부호화의 부호율 결정 방법및 이를 이용한 영상 전송 시스템
JP2006339775A (ja) スケーラブル動画像伝送システム
JP2010041326A (ja) データ送信装置、データ受信装置及びデータ送受信システム
Liu et al. Adaptive unequal loss protection for scalable video streaming over IP networks
KR101703133B1 (ko) 실시간 소스-채널 복합부호화 방법 및 그 장치
KR101103974B1 (ko) 분산 비디오 부호화/복호화 방법 및 분산 비디오 부호화/복호화 장치
EP1182876B1 (en) Method for video transmission over a network
Vaz et al. Video quality optimization algorithm for video-telephony over IP networks
KR100830965B1 (ko) 채널 적응적 인트라 업데이트를 이용한 영상부호화 장치 및방법
Zhao et al. RD-Based Adaptive UEP for H. 264 Video Transmission in Wireless Networks
Chen et al. Unequal error protection based on channel error propagation for wireless video

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170627

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180627

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190625

Year of fee payment: 7