[MPEG-4 릴레이 시리즈-2] 오디오/비디오 압축재생


 

인터넷 방송 솔루션에서의 오디오/비주얼 코덱은 MPEG-4 표준기술을 사용

한다.

기존의 MPEG-1이나 MPEG-2는 각각 개발된 목표 대역이 한정돼 있어, 인터

넷과 같은 다양한 대역에 걸친 멀티미디어 서비스를 위해 만들어진 MPEG-4

에 비해 인터넷 방송에 사용하기에는 불합리한 점이 많다.

hspace="10">

hspace="10">

또한 현재 널리 사용되고 있는 H.263 등과 비교할 경우, MPEG-4는 이미

기존 코덱의 많은 장점을 도입해 사용하고 있어 동등한 수준 이상의 성능

을 확보하고 있으며, 객체(Object) 기반 기능, 확장된 스케일러빌러티

(Scalability) 등 인터넷 방송에 매우 유용한 차별화된 기능성

(functionality)을 확보하고 있다.

따라서 MPEG-4는 차세대 인터넷 방송 솔루션의 코덱으로 최적으로 평가 받

고 있다. 본 기고에서는 차세대 방송 솔루션의 A/V 코덱으로 사용될

MPEG-4에 대하여 알아 보기로 한다.

1. MPEG-4 Visual Part (ISO/IEC 14496-2)

MPEG-4 Visual Part의 주요 Profile 구성도

MPEG-4 Visual Tool sets and Profiles

width="100%" border="0" cellspacing="1" cellpadding="2"

bgcolor="#999999">

align="center">

size="2">

bgcolor="#E7E7E7">

size="2">Visual Object

Types

bgcolor="#E7E7E7">

size="2">Visual Tools

bgcolor="#E7E7E7">

size="2">Simple

bgcolor="#E7E7E7">

size="2">Core

bgcolor="#E7E7E7">

size="2">Main

bgcolor="#E7E7E7">

size="2">Simple Scal.

bgcolor="#E7E7E7">

size="2">CoreScal

bgcolor="#E7E7E7">

size="2">Still Scal. Texture

width="11%" bgcolor="#E7E7E7">

face="굴림" size="2">Advanced Coding

Efficiency

bgcolor="#E7E7E7">

size="2">Advanced Scal. Texture

width="4%" bgcolor="#E7E7E7">

face="굴림" size="2">Advanced Core

Profile

bgcolor="#E7E7E7">Basic : I-, P-

VOP, AC/DC Prediction,4-MV, Unrestricted MV

width="11%" bgcolor="#FFFFFF">

face="굴림" size="2">X

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#E7E7E7">error

resilience

align="center">

size="2">X

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#E7E7E7">Short

Header

align="center">

size="2">X

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#E7E7E7">B-

VOP

align="center">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#E7E7E7">Method

1/Method 2 Quantisation

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#E7E7E7">P-VOP based

temporal scalability

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#E7E7E7">Binary

Shape

align="center">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#E7E7E7">Grey

Shape

align="center">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#E7E7E7">

size="2">Interlace

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#E7E7E7">

size="2">Sprite

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#E7E7E7">Temporal

Scalability (Rectangular)

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

height="57" bgcolor="#E7E7E7">

size="2">Spatial Scalability (Rectangular)

width="11%" height="57" bgcolor="#FFFFFF">

align="center">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#E7E7E7">Scalable Still

Texture

align="center">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">X

height="20" bgcolor="#E7E7E7">

size="2">NEWPRED, Dynamic Resolution

Conversion

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#E7E7E7">Global MC,

Quarter-pel MC, SA-DCT

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#E7E7E7">Error

Resilience, Scalable Shape Coding for Still Texture,

Wavelet Tiling

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">X

bgcolor="#E7E7E7">Object Based

Spatial Scalability

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">X

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

bgcolor="#FFFFFF">

size="2">

1.1 MPEG-4의 구조

MPEG-4 Visual part는 그림 1과 같은 구조를 갖는 툴들의 집합 형태를

가지며, 응용분야에 따른 최적의 툴셋으로 구성된 profile을 제공한다.

MPEG-4 Visual은 기존의 일반적인 DCT 기반의 비주얼 코덱과 유사한 가

장 기본적인 툴셋으로 Simple profile을 제공한다. 여기에 공간적

(Spatial), 시간적(Temporal) 스케일러빌러티(Scalability)를 추가한

Simple scalable profile, 그리고 형상 부호화(Binary Arbitrary

Shape coding) 기능을 추가한 Core profile을 제공한다.

표 1과 같이 기본적인 Simple profile의 기능 위에 부가적인 툴들을 확

장하는 형태로 총 15개의 profile을 가지며, 표 1 및 그림 1은 이들

profile 중 특히 동영상 및 정지 영상에 관련된 9개의 profile의 구성

내용을 나타낸다.

1.2 인터넷 방송용 MPEG-4 Visual part의 필요기능

MPEG-4 Visual은 기존의 비디오 코덱과 차별화 되는 다양한 기능을 가지

고 있으며, 특히 인터넷 방송용 코덱으로 사용될 경우, 서비스 효율의 향

상 뿐 아니라, 대화형 서비스 등 다양한 기능을 제공할 수 있다. 인터넷

방송용 코덱에 적용될 주요 기능은 다음과 같다.

– 기본적인 코덱 기능으로서의 Simple profile.

– 유선 및 무선 멀티미디어 서비스에 필수적인 Error resilience.

– 다양한 서비스 환경에 최적으로 스트리밍 할 수 있는 Scalability.

– 객체 단위의 컨텐츠 처리.

즉, 기본적인 코덱 기능으로 Simple profile의 툴들을 사용하고, 열악

한 전송로상에서도 양질의 서비스를 제공하기 위해 Error resilience 기

능을 부가한다.

Error Resilience 부호화 방법으로써 Resynchronization, Data

Partitioning, Reversible VLC 등의 기술을 사용한다. 그리고 다양한

조건의 서비스 환경에 효율적으로 대응하기 위한 기능으로 Scalability

기능을 사용할 수 있다.

Scalability 기능은 크게 Quality Scalability와 Resolution

Scalability로 나누어 진다. Quality Scalability로서 Temporal

scalability, Spatial scalability, Object base Spatial

Scalability를 사용할 수 있으며, Resolution Scalability로서

Spatial scalability, Object based Spatial Scalability 기능을

사용할 수 있다.

또한 MPEG-4의 가장 큰 특징 중의 하나인 객체 기반 부호화 방법은 서비스

의 영상의 질적인 향상을 가져 올 뿐만 아니라, 사용자가 컨텐츠 구성이

나 부가서비스 선택 등을 직접 할 수 있는 대화형 서비스를 가능케 해 준

다.

2. MPEG-4 Audio Part (ISO/IEC 14496-3)

ISO/IEC 또는 다른 기관에서 작성한 기존의 표준과는 달리 MPEG-4오디오

표준은 실시간 전화통신 또는 고 음질 오디오 부호화와 같은 단일 응용분야

를 목적으로 삼지 않았다.

MPEG-4오디오는 고도의 압축(compression), 합성(synthesis), 조작

(manipulation) 그리고 재생(playback) 등을 필요로 하는 모든 응용분

야에 적용하기 위한 표준이다.

2.1 MPEG-4 오디오의 새로운 개념

- 저 비트율 부호화: 고효율 압축에 대해 새로이 개선된 방식을 제공하며

인터넷, 디지털 라디오 등에 적합한 저 비트율 부호화 방식도 제공한다.

- 음성 부호화: 매우 낮은 비트율(2kbps)을 비롯한 여러 가지 음성에 대

한 부호화방식을 제공한다.

- 합성음 처리: 기존의 자연음뿐만 아니라 음성 또는 음악을 수신단에서

합성하는 방식을 제공한다.

기존의 MPEG 표준과 같이 고음질의 음악재생을 위한 부호화 방식만이 아니

라 오디오분야에서 요구되는 다양한 정보(음성, 음악등)의 부호화 방식에

대한 표준을 만들었다.

2.2 MPEG-4 오디오의 기능

MPEG-4 오디오에서는 다음과 같은 분야의 툴(tool)에 대한 표준을 담고

있다.

a) 스피치 툴(speech tool).

이동체 통신, 인터넷 전화등을 위한 자연음성처리에 대한 방식뿐 아니라

음성합성을 위한TTS의 인터페이스를 정의하고 있다.

b) 오디오 툴(audio tool).

고음질 부호화를 위해 MPEG-2 AAC의 확장형을 기본 부호화기로 사용하고

6kbps부터 수백kbps까지의 영역을 다룬다.

c) 합성 툴(synthesis tool).

MPEG-4 오디오에서는 스트럭춰드 오디오(Structured Audio)라는 음악

합성도구를 제공한다. 이것은 음악을 수신단에서 합성하는 방식으로 0kbps

부터 고음질을 나타내는 2~3kbps사이의 비트율로 전송한다.

d) scalablility tool.

scalablility란 재 부호화 없이 여러 개의 다른 비트율의 데이터를 전송

할 수 있는 방식이다. MPEG-4오디오에서는 bitrate, bandwidth,

encoder 그리고 decoder scalability를 지원한다.

또한, version 2의 모든 오디오 tool은 오류에 약한 무선통신환경등을

위해 error resilience tool을 포함하고 있다

2.3 오디오 profiles

MPEG-4 오디오의 version 1에서는 다음과 같이 적절한 응용분야를 위한

프로파일이 정의되어 있다.

a) Speech Audio profile: 인터넷 전화, 음성메일등 음성부호화방식을

필요로 하는 응용분야.

b) Synthesis Audio profile: 인터넷 게임등 매우 낮은 전송을 필요로

하는 응용분야.

c) Scalable Audio profile: 인터넷방송, DAB등 음성과 음악의

scalable coding을 필요로 하는 응용분야.

d) Main Audio profile: version 1툴을 모두 포함하는 프로파일로 멀

티미디어 터미널응용분야.

MPEG-4 오디오의 version 2에서는 다음과 같은 프로파일이 정의되어 있

다.

a) High Quality Audio Profile: 패킷 네트웍 상에서의 고음질 음악

과 음성신호의 전송을 위한 응용분야

b) Low Delay Audio Profile: 실시간 양방향 통신의 응용분야

c) Mobile Audio Internetworking Profile: IMT-2000등 무선단말 상

에서 음악 전송과 관련된 응용분야

d) Natural Audio Profile: version2 툴을 모두 포함하는 프로파일로

소프트웨어로 구동되는 멀티미디어 터미널응용분야

이상과 같이 간략하게 MPEG-4의 Audio/Visual부분을 살펴 보았다.

MPEG-4의 codec은 그 성능뿐 아니라 다양한 기능성을 제공하므로 사용자

의 어떤 요구사항도 쉽게 MPEG-4의 범주 내에서 이루어질 수 있다.

MPEG-1/MPEG-2와는 달리 MPEG-4는 표준 제정의 시작부터 우리나라의 기

업, 연구소 그리고 학교에서 적극적인 참여 뿐 아니라 많은 기술을 표준으

로 제정하였기 때문에 외국 기관과의 경쟁에서 전혀 뒤떨어 지지 않는다.

이러한 기술력을 바탕으로 한 이번 mp4cast의 구성은 성공적인 결실을 맺

을 것이라 확신한다.

/김연배 엠펙솔루션스 연구소장, 유성걸 책임연구원






포토뉴스