동영상 포맷에 대하여

1. ASF(Advanced Streaming Format)
-전문적인 설명 : 출처 인터넷
ASF(Advanced Streaming Format)는 멀티미디어 컨텐트의 송수신 데이터 포맷이다. 동영상 데이터 등을 분할하고, 그것을 포함한 패킷의 사양을 규정하고 있다고 생각하면 된다. 하지만 ASF는 동영상 압축 등의 포맷을 정한 것이 아니라 AVI나 MOV (QuickTime), MPG(MPEG)라는 데이터를 주고받기 위한 구조이다. 리얼비디오도 ASF에 포함된 형태로 송수신되는 것이다.

하나의 ASF 파일 내에는 여러 가지 컨텐트를 포함할 수 있고, 그것의 재생타이밍 조정과 동기도 자유롭다. 하위층의 프로토콜을 선택하지 않는 것도 ASF의 특징. 멀티캐스트IP, UDP, RTP, TCP, HTTP와 효율이 최상이면서 이용 가능한 프로토콜을 자동으로 선택해준다. 클라이언트에서 데이터 송신 요구가 있으면(설정에도 있지만) 우선 서버는 멀티캐스트로 송신을 테스트한다. 멀티캐스트를 지원하는 네트워크는 지금은 없기 때문에 이것은 타임아웃이 된다. 그러면 다음으로 UDP를 이용한 송신을 서버가 테스트한다.

멀티미디어 데이터에서는 TCP보다도 UDP 쪽이 효율이 좋지만 보안문제로 대부분의 기업에서는 UDP는 파이어월 때문에 수신할 수 없다. UDP에서도 타임아웃이 발생하면 계속 TCP, HTTP로 내려가, 마지막에는 HTTP 프록시를 이용한 송수신을 시도한다. 최악의 경우, 웹을 볼 수 있는 환경만 되면 특별한 설정변경 없이도 멀티미디어 컨텐트의 스트림 재생을 볼 수 있게 해준다.

이런 강력한 스트림 송수신환경을 살려, 마이크로소프트는 시장 전체를 장악하면서 (대부분의 저작도구와 컨텐트 제공업자는 ASF를 제공한다) 이 시장에서 확고한 위치를 확보하려고 하고 있다.

2. AVI(Audio Video Interleaved)
윈도 3.1 시대에 비디오 포 윈도(Video for Windows) 1.0을 통해 첫선을 보이고 윈도용 멀티미디어 파일의 표준으로 자리잡아온 AVI(Audio Video Interleaved) 포맷.
(매킨토시 포맷인 MOV파일에 대항해 만든 포맷이라는 주장도 있습니다.)
오디오와 비디오 데이터가 내부적으로 번갈아 (interleaved) 기록되어 있기에 AVI라는 용어로 표현한다고 하네요.

3. MPG(MPEG : Moving Picture Experts Group)
-“드림라인 ANIDREAM 게시판” , “http://www.tomshardware.co.kr/” 글 인용,편집
MPEG의 명칭은 “Moving Picture Experts Group”를 의미합니다.
MPEG그룹이 정한 포맷에는 91년 디지털 저장 매체용 압축 규격 MPEG1과 94년 디지털 방송용 압축 규격 MPEG2 등이 있습니다. ( MPEG-1,2,4,7등이 있음 )

MPEG-1(DAT)은 비디오 CD규격에 맞춰 포맷한 것이라고 생각하시면 됩니다. 그런데, 이 비디오CD 포멧은 원래 1배속 CD-ROM에서 실시간으로 재생할 수 있는 것을 기준으로 만들어진 것입니다. 실시간으로 압축을 재생할 수 있어야 하므로 파일의 크기를 줄여야 했는데, 그 방법으로 나온 것이 DCT 압축(Discrete Cosine Transform)이란 방법입니다. 이 방법은, 파일을 압축하게 되면 원래 파일과 비슷한 형태로 복원할 수는 있지만 100% 원래 파일과 같은 것은 만들 수 없습니다. 대신 압축할 수 있는 비율은 훨씬 커지게 되지요… 즉, 화질은 원본보다 약간 떨어지는 수준으로 압축된다는 것입니다.
+ 자세히
이것의 목적은 만족할 만한 프레임 율을 가지며, 동영상을 위한 가능한 최고의 이미지 퀄리티를 가지게 하며, 낮은 대역폭(1 MBit/s에서 최고 1.5 MBit/s)을 사용하는 미디어를 사운드 시그널로 사용하게 하는 것이다. MPEG-1의 디자인한 목적은 이미지의 질을 떨어뜨리지 않으면서 0.5 초 이내에 임의적으로 엑세스하는 스퀜스가 가능하게 하는 것이다.

MPEG-1을 자세히 보면 해상도는 SIF(352×240)형식이며 초당 30Frame의 구조를 갖고, 동영상을 약 200:1까지 압축할 수 있다. MPEG 파일 형식은 MPG 라고 하는 확장자를 가지며 별도로 MPEG 보드가 설치된 컴퓨터에서만 운용되는 파일 형식으로서 비디오 CD 등에 담긴 파일 내용을 볼 때에 많이 활용하고 있는 형식. 486 PC에서는 완벽하지는 않지만, 펜티엄 100MHz 이상의 컴퓨터/램 16MB 이상이면 소프트웨어적으로 재생이 가능라다. 그러나 MPEG 전용 보드를 사용하여야 완벽한 재생이 이루어진다. MPEG 파일은 윈도95에서는 직접 지원되지 않고 있으나, 윈도우 98에서는 기본으로 지원하고 있다.

MPEG-2 는 고화질의 비디오를 위해서 만들어진 표준인데. 이것은 현재 DVD의 고화질 재생을 위해 사용되고 있지요.
+ 자세히
이 표준의 기본적인 구조는 MPEG-1과 거의 같다. 이것은 데이터 비율을 100 MBit/s 까지 올릴 수 있으며, 그리고 디지털 TV, DVD-ROM 상에서의 비디오필름, 그리고 전문적인 비디오 스튜디오에 사용된다. MPEG-2는 해상도의 조정이 가능하며, 데이터 비율은 아주 넓다. 이 높은 데이터 전송 비율 때문에 MPEG-1 과 비교되는 것이다. 그리고 메모리 공간의 요구가 증가하게 되었다. MPEG-2 는 현재 개인 사용자 영역에서만 재생하기에 적합하도록 되어있다. 여기서 가능한 비디오 퀄리티는 눈에 띌 정도로 데이터 전송 비율이 4MBit/s 인 MPEG-1과 비교될 정도로 좋다.

MPEG-4(ASF)
이와는 별개로, 통신(PC 통신이나 인터넷 등….)에서 실시간으로 다운로드 받으면서 재생할 수 있는 규격도 제정하게 되었는데, 이것이 라고 불리우는 표준입니다.
이 MPEG4는 통신상에서 실시간으로 주고받을 수 있을 정도로 압축율을 높인 것으로, 파일의 크기는 작지만 재생을 위해서는 더 높은 프로세스를 요구하게 됩니다. 즉, 컴퓨터 성능이 낮으면 화면이 끊겨 보이거나 재생이 자연스럽지 않게 됩니다.
+ 자세히
이 포맷의 목적은 극도로 낮은 데이터 전송 비율인 10 KBit/s 와 1 MBit/s 사이의 범위에서 가능한 가장 높은 비디오 퀄리티를 얻는 것이다. 더욱이, 데이터 무결성의 필요와, 로스 프리 데이터 전송은 이동 통신에 있어서 아주 중요한 역할을 하기 때문에 아주 중요하다. MPEG-4에서 몇 가지 완전히 새로운 것은 이미지의 내용을 각기 독립적인 객체로 만들어 주소를 지정해 주거나, 아니면 개별적으로 처리가 가능한 구조체로 만든다는 것이다.

MPEG-7 은 가장 최근의 MPEG 패밀리 프로젝트이다. 이것은 멀티미디어 데이터를 표현하는 표준이며, 독립적으로 다른 MPEG 표준과 사용될 수 있다. MPEG-7 은 아마도 2001년이 되어야 국제적인 표준으로 지위가 올라설 것 같다.

4. MOV
QuickTime사에서 만든 포맷 원래는 맥킨토시용(그래픽 워크스테이션으로 통함)으로 개발된 포맷입니다. 압축률이 뛰어나고 동영상의 표준적인 포맷입니다.
물론 실시간도 된다는 군요.
(아직까지는 메킨토시가 그래픽이 더 뛰어납니다. – 옛날에 맥킨토시의 최소사양이 RAM 128M 였다고 합니다..흠..64M이었던가…) 애플의 포맷(MOV)으로 코딩된 비디오 클립은 Quicktime의 맥킨토시와 x86컴퓨터(486,586..) 양쪽에서 모두 실행 가능하기 때문에 몇 가지 CD 타이틀은 MOV파일 형식을 주로 사용하죠

5. FLC 파일
-출처 http://www.redsun.co.kr/
애니메이션 파일에서 공용으로 쓰이는 파일 형식에는 매크로미디어(Macromedia)의 MMM과 오토데스크(Autodesk)의 FLI, FLC가 있다. FLC는 오토데스크의 애니메이터 프로(Animator Pro) 프로그램의 2차원 애니메이션 파일 포맷. 마이크로소프트가 FLC 포맷을 윈도우 기반 멀티미디어 프리젠테이션을 위한 표준으로 채택하였기 때문에 앞으로 FLC파일로 작성하는 다른 프로그램을 많이 볼 수 있을 것으로 예상된다.

6. XDM 파일
씽 테크놀로지(Xing Technology)에서 발표한 스트림 웍스(StreamWorks) 방식에서 사용하는 비디오 파일 방식

7. RM(Real Movie)
-출처 http://www.redsun.co.kr/
리얼 미디어라는 비디오 스트림 방식에서 사용되는 파일 포맷 방식.  RA파일은 본래 인터넷 라디오 방송을 하기 위한 포맷으로 계발되었지만, 현재는 비디오 까지 포함하는 스트림 방식으로 계발되었다. 오디오 RA파일은 압축률은 뛰어나지만 음질이 MP3나 SWA에 비해 떨어지는 단점이 있다. 비디오 RA 파일 역시 압축률은 높지만, 화질이 떨어진다. 둘다 인터넷 방송용으로 많이 사용된다. 하지만 아직은 좀더 멀었다고 본다

8. VIV(VivoActive)
-소프트의 성격(http://www.x2web.com/)
또 하나의 A/V Streaming Solution으로서, 이 제품의 경우는 Streaming을 위해서 따로 Server를 제공하지 않아도 된다는 장점을 내세운 Solution이다. 실제로 판매 제품중에는 Server제품은 없고, Encoder만을 판매하므로, 다른 Solution보다는 경제적이고, 부하를 줄일 수 있는 제품이다. Server가 필요없는 이유는 보통 실행화일을 다운 방법과 똑같은 방법으로 A/V 데이타를 받기 때문이다. 단지 제공자가 해야하는 일은 해당 File을 대역폭에 맞게 전송할 수 있도록 전용 Encoder로 압축해 주기만 하면 된다. 전송된 데이타는 사용자 측에 설치된(Active X로 자동으로 설치된) Player가 알아서 Decode 해서 바로 보여준다. 부가 장비를 사용하기 원하지 않는 경우의 Solution으로 Netshow와 같이 무료는 아니지만 Encoder만 구입하면 되므로 경제적이라고 할 수 있다. 개인이나 소규모의 그룹에서 사용하기에 적합하다.Vivo란 무엇인가? : 이한우(유니텔 고객지원팀)
MOV와 AVI 대체할 뛰어난 화질의 동영상 구현하는 ‘.VIV’ 요즘 PC통신이나 인터넷의 CNN 방송 사이트(http:// http://www.cnn.com) 또는 CNET 사이트(http://www.cnet.com) 등을 돌아다니다 보면 mov와 avi 포맷 일색이던 동영상 파일들이 서서히 viv 파일로 뒤바뀌어 가고 있는 것을 볼 수 있다. viv 파일은 지난 93년 국제적인 비디오와 오디오 신호 처리 기술의 전문가들이 설립한 벤처 기업인 비보액티브(VivoActive)사가 개발한 동영상 파일 포맷으로 압축률이 뛰어나고 우수한 동영상 화질을 구현해 새롭게 각광받고 있다.

인터넷과 동영상
인터넷의 동영상 역사는 PC의 동영상 역사와 그 궤를 같이 한다. 우선, PC의 동영상 역사는 매킨토시에서 사용하는 ‘퀵타임 포 윈도우’와 IBM 호환 PC에서 사용하는 ‘비디오 포 윈도우’를 시작으로 해서, mpeg 1과 mpeg2 등이 개발됐다. 그런데, 이들 동영상 표준들은 통신망을 이용한 실시간 데이터 전송을 염두에 두고 만들어진 것이 아니기 때문에 인터넷을 이용하여 동영상을 감상하는 경우 실시간 재생이 이루어지지 않는다. 즉, mov, avi, mpeg 등의 포맷을 기준으로 만들어진 동영상의 경우 데이터의 크기에 상관없이 모든 데이터가 사용자의 하드디스크로 전송된 후 내비게이터나 익스플로러에 내장된 플러그인 프로그램을 이용해서 구동하게 되는 것이다.
때문에 인터넷에서 동영상을 보기 위해서는 많은 시간을 할애해야 됐고, 동영상의 압축률이 높지 않아 몇초되지 않는 동영상 파일을 재생하기 위해 많은 시간을 투자해야 되는 단점이 있었다.
그러나 이처럼 불가능해 보이는 인터넷 실시간 동영상 재생(streaming-video)의 재생을 위해 넷스케이프, 마이크로소프트, 프로그래시브 네트웍사 등이 ‘넷쇼 플레이어(Netshow Player)’ ‘라이브미디어(LiveMedia)’ ‘리얼비디오(RealVideo)’ 등 실시간 동영상 재생에 대한 솔루션을 발표했지만 이들 역시 기존 avi, mov 그리고 mpeg를 효과적으로 사용했다는 것 외에 특별한 것은 없었다.

비보액티브(VivoAcitive)란?
이러한 기존 동영상의 단점을 해결한 것이 바로 비보액티브이다. 비보액티브에서 사용하는 비디오와 오디오 압축 기술(CODEC)은 네트워크(모뎀 포함)를 통한 오디오·비디오 신호의 전달에 관련된 내용인, ITU-T(International Telecommunications Union’s Technology Sector)에서 사용하는 H.263이라는 비디오 압축 알고리즘과 G.723이라는 오디오 압축 알고리즘을 이용한다.
즉, H.263이라는 압축 알고리즘은 DCT(Dicsrete Cosine Transform) 알고리즘 이라는 신기술을 기준으로 개발된 것으로 30MB의 avi 파일을 100KB 정도의 크기로 줄일 수 있는 획기적인 기술일 뿐 아니라 초당 2,000바이트 정도의 전송 속도를 보여 모뎀을 이용한 인터넷 접속에서도 어느 정도 실시간으로 비디오를 재생할 수 있다.

‘비보액티브 플레이어’로 감상
그런데, 이처럼 뛰어난 압축률을 자랑하는 비보액티브용 파일을 만드는 방법은 의외로 간단하다. 즉, 기존 캡처보드를 이용하여 캡처한 avi나 mov 파일을 비보액티브용 파일인 Vivo 형식으로 컨버트하면 된다.
비보액티브 파일을 감상하기 위해서는 당연한 이야기이지만, 비보액티브 플레이어가 있어야 된다. 현재 비보액티브 플레이어는 2.0 베타 3(4월 현재)까지 나와 있는데, 비보액티브사에서는 5월 중으로 정식 버전을 발표한다고 한다.
사실 비보액티브사에서 비보액티브 플레이어 1.0을 발표했을 때는 별로 주목받지 못했지만 2.0 베타 버전을 발표하면서 부터는 많은 관심을 끌었다.
즉, 2.0 버전에서는 1.x 버전보다 네배 정도 많은 양의 멀티미디어 파일을 전송할 수 있게 됐다. 이번 2.0 버전에서는, 동영상의 경우는 49×49 픽셀에서부터 352×288 크기까지의 다양한 비보 파일을 지원하게 됐으며, 사운드의 경우는 16Kbps 정도 FM 수준의 오디오 파일을 동시에 전송할 수 있게 됐다. 특히, 이전 버전에서 문제가 됐던 영상과 오디오의 불일치를 해결할 수 있는 자동 오디오 수정(Automatic Audio-Gain Adjustment) 기술은 매우 뛰어난 기술로 평가되고 있다.

홈페이지에서 비보액티브 사용하기
이처럼 현재까지 발표된 실시간 동영상 기술 가운데 최고를 자랑하는 비보액티브 파일을 홈페이지에서 사용하는 방법은 의의로 간단하다. <리스트>에 나타난 소스에서 pcline.viv에 사용자가 넣고자 하는 비보액티브 파일을 넣으면 된다. 참고로, 내비게이터 전용 홈페이지에서는 EMBED 태그를, 익스플로러 전용 사이트에서는 OBJECT 태그를 사용한다.
현재 우리들이 사용하고 있는 비보액티브의 경우 물론 최고는 아니다. 그러나, 현재의 기술 발전 속도 대로라면 이번 세기 안에 전화선의 속도에서도 TV와 VCR의 화려하고 정교한 영상을 구현할 수 있는 기술을 만날 수 있게 될 것으로 보인다.
현재 비보액티브 플레이어는 국내 4대 통신망이나 비보액티브사 홈페이지(http://www.vivo.com)를 통해 구할 수 있다.

9. ASF와 MPG4-AVI의 차이점 : 나우ANC 배형찬님글 인용-편집(정지오님 수정)
VBR이라는건 500K로 잡았을때 500K 이내에서만 가변적으로 레이트가 변하는것입니다. -_-;;(전에 앙끄 자료실 게시판이니 조금 시끄러웠던것으로 기억합니다만… -_-;;)

우선 두 포맷간의 특징을 알아야 겠죠..
ASF : 스트리밍 포맷 (실시간으로 계속 다운이 가능해야하므로.. bitrate의 변화폭이 적어야합니다)
AVI : 동영상보관목적(반면.. avi는 꽤 큰폭으로 bit-rate변화가 가능합니다. 이걸 바로 VBR이라 합니다. : Variable Bit Rate )
예를 들면 같은 500kbps라도 ASF는 간단한부분이든, 복잡한부분이든 500kbps를 유지합니다. 그러나 AVI의 경우는 인코딩해보면 약 100kbps~500kbps로 가변적으로 변합니다.
(평균 500 이아니라 500 밑으로 맞춰줍니다. 즉 최대 레이트가 500 입니다. 적게 필요한부분은 100도 될수있고 200도 됩니다.)
다시말하면, AVI와 ASF의 화질차는 없습니다.

또 간단한 예를 들자면 어떤동영상이 처음시작부분에 10초정도의 그냥 껌정화면이 있다고 합시다. avi쪽에서 VBR로 인코딩하면 실제로… 50~100kbps사이의 값으로 인코딩됩니다. (더높은 비트레이트를 줘도 그이하로 됩니다. 역시 VBR적 특징입니다)
asf를 3Mbps로 인코딩하면… 3Mbps로 인코딩됩니다.
(즉 낭비가 심합니다.) (알고리즘 자체가 틀리기 때문입니다만..)
하지만 asf에서도 100kbps정도밖에 쓰지않습니다. 나머지 2.9Mbps정도는 빈공간으로 가득차있죠
[도식화 500kbps)
원본프래임 <—복잡—><—단순—><—복잡—>
AVI변환   <–500kbps–><–100kbps–><–500kbps–>
ASF변환   <–500kbps–><–500kbps–><–500kbps–>
비교ASF   |    손실없음    |   400kbps낭비    |    손실 없음    |
복잡: 움직임이 많음 (1Mbps)
단순: 움직임이 거의 없음 (100kbps)

10.  AVI 압축코덱 (Windows) Codec

: 출처 http://www.redsun.co.kr/
일반적으로 코덱은 비디오 파일을 압축하는 방식을 말하는데, 음악파일을 압축하는 방식이 거의 MPEG로 통일되어간다면 동영상 쪽은 춘추전국시대라고 할 수 있다. 이는 제조회사별로 다른 압축 방식을 쓰기 때문인데, 음악파일(MP3나 RA파일 등)이 소프트웨어적으로 제작되고 재생되는 반면에 동영상은 하드웨어적으로 제작되고 재생되는 경우가 많기 때문. 그렇다고 통일된 규격이 없는 것은 아니다. 가장 많이 쓰는 압축방식에는 인텔사의 인디오(5.0)과 에플사의 MOV. 인디오가 IBM의 규격화한 압축방식이라면, MOV는 매킨토시에 규격화한 압축방식이다. 그러나 현재는 이러한 제한없이 양쪽 컴퓨터에서 아무런 문제 없이 사용한다. 또한 이 두가지의 압축방식에 도전장을 내고 있는 것이 MPEG와 M-JPEG입니다. MPEG는 비디오 CD를 제작할 때 주로 사용되는 반면 M-JPEG는 비디오 테잎을 제작할때 많이 쓰인다. 거의 웬만한 캡쳐보드는 M-JPEG을 지원한다
Video for Windows가 제공하는 압축 코덱은 RLE와 Microsoft Video, Intel Indeo, 그리고 Cinepak 모두 4가지가 있다.
1) RLE (Run Lengh Encoded)
2차원 애니메이션 제작에 효과적이며 일반 비디오에는 사용할 수 없다. 다른 코덱에 비해서 압축 효율성은 떨어지나 영상의 수평층(Horizontal Band)에서 유사한 색상의 길이와 깊이를 기억하는 방식의 압축 알고니즘을 사용. 그래서, 많은 영역에 걸쳐 같거나 유사한 색상을 사용하는 애니메이션을 압축하는데 많은 효과를 볼수 있다. 그러나 8비트 이상의 영상은 압축할수 없다는 것이 단점.   

2) MIcrosoft Video
RLE와는 다르게 8비트는 물론이고 16비트, 24비트의 영상까지 압축할수 있다. 뛰어난 Quality와 압축률이 장점이나 압축률을 너무 높이면 이미지가 끊어지고 파일의 용량도 많아지는 단점이 있다.

3) Intel Indeo
인텔에서 개발한 코덱으로 여러 버전이 있다. 시네팩과 함께 널리 사용되고 압축 시간이 시네팩보다 빠르다. 16 비트 칼라에 효과적이다.
24비트로 이미지를 압축했을 경우, 시스템이 24비트로 설정 되있지 않더라도 마치 24비트 처럼 좋은 Quality의 영상을 재생할 수 있다. 특히 16비트나 24비트의 파일을 압축하고 재생할 경우 더욱 진가가 나타난다. 그러나, 다른 코덱에 비해 버전업이 느리다는 있다. 요즘에 시디롬 타이틀은 이것으로 많이 제작된다.  

4) Cinepak
래디우스(Radius)에서 개발된 코덱으로 압축에 많은 시간이 소용되나 가장 높은 압축을 할 수 있다. 256 칼라를 사용할 경우에 특히 효과적이다. 일반 압축 알고니즘과는 달리 다른 Asymetrical이라는 알고니즘을 이용하며 압축 시간이 비교적 다른 코덱에 비해 오래 걸린다는 단점이 있지만 압축된 영상을 재생시 다른 코덱에 비해 빠르게 압축을 풀어준다는 점과 뛰어난 압축률과 좋은 Quality를 얻을수 있다는 장점 있다. 또, 위의 네가지중 파일 용량을 가장 적게 만들어 준다. 그래서 주로 CD-ROM 타이틀 제작시 많이 사용 된다. 역사가 아주 오래되었다.

+참고 : 현제 윈도우에 깔려있는 코덱 알기
시작 -> 설정 -> 제어판 -> 멀티미디어 -> 장치 -> 비디오 압축 코덱

(3)-11 MJPEG (Motion JPEG-MJPEG)
-출처 : http://www.tomshardware.co.kr/ (글: Bernd Fischer , Udo Schroeder)
MJPEG라는 말은 “Motion JPEG” 라는 단어의 단축형이다. 이 포맷은 실질적으로 스틸 이미지와 비디오 포맷의 중간적인 단계이다. MJPEG 클립은 JPEG 이미지의 연속이다. 이것은 왜 포맷이 비디오 에디팅 카드와 시스템에 사용되는 이유를 설명해 주는 것이다. MJPEG 는 모든 이미지에 사용될 수 있는 압축 방법이다. Fast의 AV Master 나 Miro의 DC 50 이나 엄청나게 비싼 매트록스의 Marvel 제품 시리즈 같은 비디오 에디팅 카드는 표준 TV 신호로부터 30 MB/s에서 6 MB/s (MJPEG 파일)을 만들어 낼 수가 있다. 여기서의 압축 비율은 5:1 이다. 어쨌든, 레코딩하는 동안의 비디오와 비디오 데이터의 동조를 위한 표준은 MJPEG 포맷에서는 사용되지 않았다. 따라서 비디오 에디팅 카드를 만드는 제조회사들은 자기 자신들의 도구를 만들어야만 한다 .

(3)-12 DIVX 분석 : 나우MANSA 게시판 yute(김정수)님의 글 인용. 편집
요세 DIVX라는 코덱이 떠들석 한데..(DVD코덱이라고..)
이 코덱은 MS사의 MPEG4-3코덱과 완전 동일한 것입니다.
다시말해, 자료실에 많이 올라와 있는 저용량 MPG4-AVI와 똑같은 것이지요.
원래 DivX 의 의도(? 좋든 나쁘든간에)는, MS 에서 코덱 버전업을 하면서
‘고의로’ AVI 에서 사용하지 못하게 한 것에 대해서…
별도의 이름과, 별도의 인식코드(FOURCC 라고 합니다만)를 바꿔서,
버전업이 되더라도, DivX 라는 것으로 해놓으면 그 코덱은 그대로 쓰게
되니까, 계속 볼수 있다…라는 의미로 만들어진 것입니다.
(물론, 결국은 이것도 MS-MPEG4 코덱의 AVI 방지 부분을 빼낸 것이니…
그냥 크랙하는 것보다 번거롭기만 하고… 왜이러는지 이해해주기 힘들지만…)

-코덱의 파일 용도
*.dll – 구 API(Windows 3.1 때부터 쓰이던) 용 코덱
*.ax – 신 API(Active Movie, Windows Media) 용 코덱

구 코덱은 W98 까지에 들어있는, Media Player 나, 기타 AVI 플레이 프로그램들에서 사용되는 것이고… (Windows 디렉토리의 system.ini 에 설정문구를 넣어주어야 합니다만…)
신 코덱은, Active Movie, Windows Media Player 2 등에서 쓰이는 것입니다. 요즘은 보통, 액티브무비나, 미디어플레이어2 가 깔리기 때문에, 디코딩(플레이)은 ax 로 하게 되는데…
dll 이 함께 있는 경우는… 대부분의 AVI 제작, 편집기가, 구 API 를 사용하기 때문입니다.

– MPG4-3와 DIVX의 비교
a) http://www.microsoft.com/windows/windowsmedia/en/download/default.asp 에서, Windows Media Tools 4.1 이라는 것을 받으십시오. (나중에 버전업 될지는 모르지만, 아직까지는 같습니다.) 설치하시거나, 재주껏 파일을 풀어보시면, MPG4C32.dll 의 최신버전 (4.1.00.3920)이 들어 있습니다.

b) 크랙된 MPEG4 코덱을 구합니다. (DivX 홈페이지의 설명에도 이것을 베이스로 했다고 나옵니다만… 어쨌건, 중간단계(?) 설명을 위해서…)
(아, 여기에는 ax 도 당연히 크랙되어 있습니다.^^)

c) DivX 코덱을 구합니다.
자 이제 비교를 해봅시다.
도스에 기본적으로 있는 fc 라는 것을 쓰거나, 기타 툴을 사용하셔도 됩니다.
(fc 의 경우라면, fc/b 파일1 파일2 > dif12.txt 식으로 하시면, 차이가 나는 부분이 dif12.txt 라는 파일로 나옵니다.)

b) 의 설명을 보시면, 기본 전송률, 키프레임률 설정 주소도 나옵니다.

a) 와 b)
            a)  b)
00000AC6: A7 97 : 기본전송률 3000kbps -> 1500kbps
00001EAF: 08 01 : 키프레임   8초      -> 1초
00002407: 75 EB : AVI 체크
00002AE0: 75 EB : AVI 체크
00039435~: 여기는 ‘리소스’라고 해서, 대화창, 문자열 등이 들어가는 부분으로…
단지, Microsoft 를 Microcrap 등으로 고쳐서, MS 에 대한 반감을 표시한 부분입니다.

이렇게, 기본설정값 약간과, AVI 체크루틴(버그가 아니고, 고의로 넣은)을 고친… 정도입니다.

b) 와 c)
            b)  c)
000000E9: 7A 7C 데이터 부분의 길이 리소스 변경으로 인해서 바뀐 것입니다.
00000120: 2F CF
00000121: 6A 27
00000122: 06 07 체크섬 역시 파일 변경과, 리소스의 변경으로 인해서 바뀐 것입니다. (제대로 하려면 위의 것도 체크섬을 바꿔야 합니다만…)
00000218: 58 00
00000219: 09 10 리소스의 길이, 역시 리소스 변경으로 인한 것
00000221: 0A 0C 역시 길이… 역시 변경으로
0000024D: 20 22 재배치 테이블의 위치… 리소스 변경으로 약간 뒤로 밀렸습니다.
00000AC6: 97 8C 전송률, 이 값이, b 의 설명에 있는… 값들이 아닌 이상한 값으로 되어서… 표시되는 전송률과 생성되는 전송률이 다릅니다. (DivX 코덱이 같은 설정해도 파일이 더 작게나온다는 분들… 한번 생각해보세요… ‘화질’ 설정이 아니고, ‘전송률’설정인데… 당연히 비슷하게 나와야지… 엉뚱하게 나오는 것이 제대로 된 것입니까? 1500kbps 로 했는데, 500kbps 로 나온다거나…)
00001EA8: 4B 64 Crispness(75%->100%) 이것은 움직임이 많아서, 전송률이 딸릴 경우
화질을 유지하고, 프레임을 잘라먹을 것인지, 화질을 떨어뜨리고 프레임을 유지할 것인지…의 설정으로… low motion 코덱이라고 ‘이름을 붙인’ 것에 걸맞게… 화질위주로 설정된 것입니다.
00001EAF: 01 0A Keyframe(1초->10초) 원래는 8 초 였지만, 크랙에서 1 초로 했던 것을 10 초로 늘인 것… 키프레임 간격이 넓으면, 플레이중에 ‘이동’을 하거나 하면… 그에 대한 반응이 늦어지는 대신에 실 압축률은 증가하게 됩니다.

이렇게 설정 바뀐 것 외에는, MPG4 -> DIV1, MP42 -> DIV2, MP43 -> DIV3 로
코덱아이디(FOURCC 라고 합니다.)를 바꾼 것들…

그리고, 마지막으로, 리소스를 바꾼 것 뿐 입니다.
(‘글자’ 바꾼것들 뿐입니다. MPEG4 코덱을 DivX 코덱이라거나…)

또한 예전에 제가, 뒤에 약간 추가된 것이 있는 듯하다…
라고는 했었습니다만… ‘완전한 쓰레기’일 뿐입니다.
PE 파일 구조상 완전히 무시하는…(보통 디버그정보 등을 넣는 곳)

동일합니다. 설정 다른 것 빼고는…
fast motion 코덱…이라는 것은, MP43 를 DIV4 로 바꾸고,
설정을 Crispness 를 0% 로 한 정도입니다만… 약간 구버전의 코덱이기 때문에
바이너리 비교는 불가능합니다.(구버전이 없어서…)

1. AVI 파일재생
대부분의 AVI파일은 MPG4-3포멧입니다. 원래는 ASF용 포맷방식이었는데 이걸 일반 AVI화일에 사용한 것입니다.
(제가 ASF보다 AVI를 선호하는 이유는 같은 화질의 ASF보다 약 1/5이상 더 용량이 적습니다. ASF:120M -> AVI:96M 그리고 안정적이고 더 빠르고 파일복구가 가능합니다. )
제일 먼저 AVI화일을 플래이 하기 위해서는 그에 필요한 프로그램을 다운 받으셔야 합니다. 제일 간단한 windows media player 6.x 버전을 자료실에서 다운 받습니다. 그리고 설치합니다. 이미 설치하셨다면 다시 설치하실 필요가 없습니다.
AVI 파일을 보기위해서는 mpg4ds32.ax라는 파일이 필요합니다. 이 파일이 윈도우 시스템 디랙토리(c:/windows/system/)에 위치해야 합니다.
이 파일은 시스템 파일이기 때문에 숨겨져 있어서 일반 윈도우 설정에서는 파일을 보실수가 없습니다.
먼저 “시작 -> 설정 -> 폴더옵션 -> 보기 -> (숨김파일)모든파일 표시”를 선택합니다.
각종 자료실에서 mpg4ds32.ax라는 파일을 다운 받습니다.
이제 다운받은 mpg4ds32.ax파일을 “c:\windows\system\” 디랙토리에 카피합니다.
만약 같은 파일이 존재한다면 덮어쓰기를 선택하십시오.

[순서]
-windows media player 6.0를 설치한다
-폴더옵션의 보기에서 모든 파일보기를 선택한다.
-mpg4ds32.ax라는 파일을 자료실에서 다운받는다.
-다운받은 mpg4ds32.ax파일을 “c:\windows\system\” 디랙토리에 카피한다.
+ 이래도 안될 경우!!
맨 처음 실행할 경우 안될수도 있습니다.
그럼..먼저 ASF코덱을 받는다.(인터넷을 연결한 상태에서 ASF파일을 실행시키면 됩니다.)
그리고 AVI코덱을 받는다.(인터넷을 연결한 상태에서 AVI파일을 실행시킨다.)
코덱을 다운 받았는데도 실행이 안된다??라는 표시가 나오면 위 순서에 따라 mpg4ds32.ax파일을 덮어쓰십시오.
+ 참고 Windows NT/Windows 2000
제가 NT와 2000이 없어서 잘모르겠지만 같은 방법으로
“c:\windows\system32” 와 “windows\system32\dllcache”
디랙토리에 mpg4ds32.ax파일을 복사하면 된다는군여.
+ 참고 mpg4ds32.ax파일에 대해
이건 코덱파일입니다. 등록정보를 보시면 코덱의 버전정보를 아실수 있을겁니다.
이왕이면 최신코덱으로 깔아 보시는 것이 좋을겁니다.

참고로 avi에관련된 코덱을 전부다 설치해야만 볼 수 있습니다.
어떤 형식으로 포맷되어 있는지 모르기 때문이죠

2. DAT파일 재생
DAT 파일은 Window media player로 실행하실 수 있습니다.
최신버전을 설치하시는 것이 좋습니다. 참고로 재생이 되지 않는 것은 Xing mpeg player로 보실 수 있습니다.

3. MOV파일 재생
Quick Time player를 써보세요 거의 모든 mov파일은 다 재생이 됩니다.
아주 안정적이라 할수 있습니다. 확실히 동영상의 표준답다고 할까요..
또 등록을 할경우 mov -> avi화일로 바꿀 수 있습니다

4. RA, RM파일보기
Real player 라는 프로그램을 사용하면 됩니다 300kbps이상은 Real player 7.0이상에서만 작동됩니다

5. SMI재생, 자막 파일재생!!
*.smi 파일들은 대부분이 자막파일입니다. Real 용과 AVI용 두가지가 있습니다.

– Real용은 실행화일까지 모두 3가지 파일로 이루어져 있습니다.
예를들면 nadia.rm 이라는 파일의 경우 nadia.rm nadia.rt nadia.smi라는 3가지 파일로 나누어져 있습니다.
nadia.rm : 자막이 없는 동영상 파일
nadia.rt : 실질적인 자막파일
nadia.smi : 자막파일과 동영상파일을 묶어주는 파일
이 경우 nadia.smi파일에 적혀있는 설정과 동영상&자막파일의 파일명이 일치해야합니다.
만약 일치하지 않는다면 파일명을 변경하거나. 메모장으로 nadia.smi파일을 열어 변경하실수 있습니다.
간단한 예를들면 “nadia.smi”의 아래부분을 정확히 적어주셔야 합니다.
<video src=”nadia.rm” id=”Video” region=”Video1″ title=”Video”/>
<text src=”nadia.rt” id=”Caption” region=”Text1″ title=”Caption”/>
자막을 보실려면 nadia.smi파일을 real player로 실행하시면 됩니다.

– AVI파일의 경우 모두 2가지 파일로 이루어져 있습니다.
예를 들면 kurumi.avi파일 의 경우 kurumi.avi kurumi.smi 라는 2가지 파일로 나누어져 있습니다.
kurumi.avi : 자막이 없는 동영상 파일
kurumi.smi : 실질적인 자막파일
이때 자막파일(smi파일)은 동영상 파일과 파일명이 일치해야 합니다.
자막을 보시려면 같은 이름의 자막파일과 동영상파일을 같은 디랙토리에 놓고 windows media player의 보기에서 캡션기능를 선택합니다.(alt+v -> alt-a)
이제 동영상 파일을 windows media player를 이용하여 실행시키면 됩니다.

– ASF파일의 경우!!
이 경우 왜 안되는지는 잘 모르지만 파일명을 AVI파일로 바꾸시고 위 AVI파일의 경우처럼 하시면 됩니다.
윈도우에서는 파일명을 바꿀 때 아주 불편합니다. 저 같은 경우에는 도스를 이용하여 파일명을 바꿉니다.
예를 들어 파일명이 kurumi.asf라면 도스를 열고 파일이 있는 디랙토리로(c:\video\)이동합니다. 그 후 ren명령어를 이용하여 파일명의 확장자(asf)를 avi로 바꿉니다.
즉,
c:\windows\
c:\windows\cd c:\video
c:\video\ren kurumi.asf kurumi.avi
(혹시 cd나 ren같은 기본 명령어를 모르시는 것은 아니겠죠 ^^;;).

6. VIV파일 재생!!
vivo player를 사용합니다. (각종 자료실에 있습니다.) vivo offline이라는 프로그램도 있지만 이것보다 vivo player가 더 좋더군요(vivo offline의 경우 비주얼 런타임을 깔아야 한다니..)
VIV 압축률도 뛰어난 편이고 RM이나 ASF의 경우 서버가 필요한데 반해 VIVO는 별도의 서버가 필요없으며 단지 웹서버만 있으면 작동된다고 하네요.
즉 html문서에 애플릿처럼 삽입되서 작동시킬 수 있습니다.
제가 아는 바로는 윈도우95에서 더 안정적이라고 하더군여.
자세한 것은 “http://www.vivo.com

7. RAM, ASX 목록 파일 재생
이런 파일 보신적이 있으시죠?
이건 본래 실시간 파일을 위해 경로파일을 만든 것인데요..
이런 목록을 오프라인 상태에서 유용하게 사용하실수 있네요.
(인터넷에서는 짜증이 나네요.-_-;; 저장 못하게 막아놓고)
RAM : Realplayer용 목록파일,
ASX : windows media player용 목록파일, (AVI도 되는 군요)
+ 사용법
저 같은 경우 여러 가지의 비디오 파일을 묶어서 보기 편하게 만듭니다.
물론 경로는 상대경로로 하는 것이 좋겠구요.
이걸 간단히 만들어 주는 프로그램이 여러 자료실에 올라와 있을겁니다.
( video playlist editer : 찾기 힘드실지도 모르겠네요..)
만약 프로그램이 없을 경우에는 메모장으로 간단하게 만들 수 있죠.
파일 경로나 파일명을 넣으면 됩니다.
간단한 예를 들면
– 파일명이 RM , RA일 경우
egg1.rm , egg2.rm , egg3.rm이라는 3개의 파일이 있을 경우
메모장을 열고
egg1.rm
egg2.rm
egg3.rm
이렇게 차례대로 쓴후에 egg.ram이라는 파일명으로 저장하시면 됩니다.

– AVI나 ASF의 경우도 RM과 사용법이 거의 똑같습니다.
egg1.asf , egg2.asf , egg3.asf이라는 3개의 파일의 경우
마찬가지로 메모장을 열고
ASF Path   ←이것만 더 써주면 되요.
egg1.asf
egg2.asf
egg3.asf
이렇게 차례대로 쓴후에 egg.asx라는 파일명으로 저장하시면 됩니다.
+ 절대경로를 사용하면 편하기는 하지만 경로가 바뀌면 쓰질 못합니다.
(위에 꺼는 상대경로임..)

8. VOB파일 재생
DVD 돌비 디지털 파일, POWER DVD2.5를 사용하시면 DVD롬이 없이도 소프트적으로 재생해줍니다.
그 외에도 소프트적으로 실행해주는 프로그램이 제가 알기에는 유명한 것이 3가지 정도있다고 들었습니다. (power DVD로 재생이 되지 않으면 딴 것을 써야겠지요)
+ 참고 : 각각의 DVD소프트의 장단점 (http://www.dvdprime.com/softplayer.html)
1) PowerDVD V2.5
최적화 그래픽 칩셋 :
ATi Rage Pro chipsets (Rage 128은 지원이 안됨)
SiS6326 DVD
S3 Savage3D/Savage4 chipsets
4채널 지원 사운드 카드 칩셋 :
Fortemedia FM801A
Cmedia CMI8338/8738
FIC Maestro-2E
Sound Blaster Live 계열의 카드
PCI128, PCI64
YMF744
K-128 (훈테크 사트 디오에 사용된 DSP)
장 점
4채널 다운믹싱 지원
몇 종류의 사운드 칩셋에서 6채널 출력 지원 (ForteMedia 801 등)
샤블 라이브! 계열의 사운드 카드에서 AC-3 출력 (with Liveware 3.0)
설치 및 사용이 편리
아나몰픽 2.35 : 1 화면을 1.85 : 1로 확대 가능
전폭적으로 개선된 화질
단 점
CPU의 자원을 많이 차지
REWIND 기능이 지원되지 않는다!
챕터 선택이 프론트 메뉴에 없어 매우 불편

2) WinDVD V2.0 (2K)
최적화 그래픽 칩셋 :
ATI Rage Pro
SiS6326 DVD
S3 Savage3D/Savage4 chipsets
4채널 지원 사운드 카드 칩셋 :
SB Live! 계열
Vortex2
ForteMedia 801
장 점
낮은 CPU 점유율에 비해 높은 화질 구현
4채널 다운믹싱 지원 (SB Live!, MX300 등)
iDCT 가속 지원
Windows 2000(?) / Windows NT 지원
단 점
멀티미디어 코덱(codec)을 독점하기 때문에 MP3 파일 재생 등에 문제 발생
번들이 제공되는 하드웨어 제조사에 따라 상이한 버전 존재
+참고…
윈DVD로 유명한 인터비디오에서 리눅스용 소프트플레이어를 발표했다더군요.
제품명은 LinDVD..

3) Cinemaster Engine (주의: cinemaster engine은 단지 디코딩 엔진일 뿐이다!.)
최적화 그래픽 칩셋 :
ATi Rage Pro/ATI Rage 128 chipsets
Intel Whitney/Portola
ST Riva128DV
S/PDIF 디지탈 출력지원 사운드 카드
Vortex2 칩 기반의 카드 (MX300, Xitel Storm Platinum)
SB Live! (with Live!Ware 2.0) 
장 점
현재 가장 빠른 디코딩 엔진이다.
ATI의 Hardware Motion Compensation과 iDCT 가속을 지원한다.
Pentium-III의 Streaming SIMD 지원
몇 종류의 사운드 카드에서 S/PDIF 디지탈 출력 지원
단 점
오버레이를 지원하지 않는 그래픽 카드 (예를 들면, Millenium II)에서는 작동이 되지 않는다. 몇 종류의 듀얼 레이어 타이틀(예를 들면, Bug’s Life)에서 메뉴가 보이지 않는다.
시네마스터의 프론트 엔드 (Front End) 플레이어
ATI PLAYER V3.1 < http://www.atitech.com/ >
QI (Cinemaster) PLAYER V1.6 < http://www.qi.com/ >.

1. AVI나 ASF편집툴
동영상 툴을 몇 개 소개 해 보겠습니다.
자주 사용되는 툴은 Virtual Dub, Stream Anywhere 라는 프로그램 등이 있습니다.

– Windows Media Tools
마이크로소프트사에서 만든 공개 인코딩 프로그램!!
주로 AVI화일을 ASF화하는데 쓰입니다. MPG는 사용불가능 합니다.
이것도 마찬가지로 MP3같은 압축 음성은 지원을 안하네요.
그외 부수적인 유틸 몇개가 있군요.
1) Windows Media Encoder
2) Windows Media ASF Indexer : ASF에 자체적으로 자막을 넣을수 있더군요.
3) Windows Media Author
4) Windows Media command-line utilites : 이건 도스용이구요. 도움말을 확인하세요,

– Virtual Dub
이 프로그램은 공개이고 mpg를 asf이나 압축된 avi파일로 바꿀 수 있습니다.
virtual dub을 깔기 전에 먼저 window media tool를 깔아야 사용 가능합니다. windows media tool를 설치후에 코덱 파일 mpg4c32.dll이라는 파일을 “c:\windows\system\”의 디랙토리에 카피 해야 합니다
바로 DAT화일을 편집할수 없기 때문에 vcdcutter이나 이외 다른 mpg프로그램을 이용하여
DAT -> MPG한후에 편집하셔야 합니다.

– Stream Anywhere
이 프로그램은 정확히 공개가 아닙니다. (과자가 필요하다고 할까요..)
이 프로그램은 DAT파일이나 mpg파일을 읽어서 바로 asf나 rm으로 바꿀수 있습니다.
하지만 DAT의 경우 읽는 속도가 아주 느립니다. 마찬가지로 vcdcutter로 DAT->MPG하신후에 편집하시는 것이 좋습니다

2. AVI <-> ASF
– ASF -> AVI
대부분 저는 ASF->AVI로 바꾸는데 사용하고 있습니다.
물론 용량이 AVI가 더 적기 때문입니다. virtualdub을 사용하시면
화질의 변화없이 변환 가능 합니다.
먼저 virtual dub을 설치 합니다.
예를들면 egg.asf라는 파일을 virtualdub을 사용하여 열고 video -> direct stream copy를 선택하고 마찬가지로 audio -> direct stream copy를 선택합니다.
file -> save avi를 선택 하고 저장하면
egg.asf -> egg.avi로 저장할수 있습니다.

– AVI -> ASF
이 경우에는 Windows Media tools를 사용해야 합니다.
windows media tools에서 command-line utilities 라는 것이 있습니다.
자세한 것은 windows media tool의 도움말 항목을 참고하십시요.
dos창을 열고 윈도우 메이아 툴이 설치된 디랙토리를 이동합니다.
예를들면 다음과 같이 이동합니다.
C:\Program Files\Windows Media Components\Tools\
C:\ProgramFiles\Windows MediaComponents\Tools\vidtoasf
여기서 명령어 “vidtoasf” 명령어를 치면 사용법이 나옵니다.
간단히 말해서..형식은 이런식으로 하시면 됩니다.
VidToASF -in {filename.avi | filename.mov} -out filename.asf
즉, 비디오 파일이 egg.avi파일일 경우에
“vidtoasf -in egg,avi -out egg.asf”
+ 주의!! 오디오 포맷이 압축포멧의 경우 지원을 하지 않더군요..
– 오디오 포맷이 MP3의 경우
이 경우 코덱을 깔아주면 해결됩니다.
제가 올린 goldwave용 mp3코덱을 깔아주시면 변경이 가능합니다.
– 오디오 포맷이 windows media v2일 경우
Virtual Dub을 사용하여 사운드 부분만 재포맷을 해주어야 합니다.
사운드를 MP3로 재 포맷을 해주면 용량도 거의 변화 없을 겁니다

. DAT -> AVI, ASF
이 경우는 비디오 시디를 압축할 때 쓰는 방법입니다. 먼저 vcdcutter을 받으세요. 물론 이경우도 vcdcutter는 일반사용자는 사용에 제약이있어서 키를 입력해야합니다. (즉 과자가 필요함)
– vcdcutter
DAT -> MPG 하거나 하나의 MPG를 여러조각으로 나누는 것이 가능합니다.
먼저 압축하기전에 mpg로 변경해야 합니다.
물론 충분한 하드공간이 필요합니다.
이 변경된 mpg를 VirtualDub이나 Stream anywhere로 ASF화 합니다.

– VirualDub
편집용이 , ASF -> MPG4-AVI 프래임 래이트가 잘 맞는다.
사운드와 비디오를 자를수 한꺼번에 편집가능
+ 참고
고 용량의 동영상을 압축할 때 사운드가 느려지는 현상이 있다고 하네요.
이 경우 옵션을 맞추면 해결된다고 합니다.
( Audio -> Interleaving -> “enable audio/video interleaving”의 체크부분을 없앤다. )
But 사운드상 문제..

– Stream Anywhere
편집보다는 주로 ASF를 인코딩하는 것을 목적. mpg을 빠르게 인코딩
사운드와 비디오를 모두 ASF전용으로 포맷. 프래임을 줄이기 용의
예를들면 29.97프래임 -> 15프래임
But 편집에는 약세.. 압축AVI는 지원안함.(당연한가??), 프래임 레이트

4. TIP!!
ASF의 경우는 파일이 손상시에 복구는 불가능하지만 볼수는 있습니다.
(심하게 손상될 경우 볼수 없더군요, 주로 중간에 깨진 경우..뒷부분이..)
그리고 AVI화일의 경우 파일이 손상되었을 경우 복구할 수가 있습니다.
원리는 망가진 부분을 버립니다.
virtualdub을 사용하시면 됩니다.
예를 들면 어떤 55메가 용량의 동영상이 54메가정도만 있을 때 ASF의 경우는 복구는 불가능하지만 볼 수 있습니다. AVI의 경우는 virtualdub으로 편집해서 direct stream copy하시고 저장 하시면 복구가 가능합니다. (이경우엔 10~30초정도 걸리는군요) 하지만 문제점도 있습니다. 이 경우는 사운드의 경우 복구가 불가능 합니다. 즉 사운드가 나오지 않습니다. (사운드도 복구되는 경우가 종종 있지만 ^^;;)
단, AVI화일의 사운드가 MP3포멧이 아닌 ASF의 포맷일경우 사운드도 복구가 가능합니다.
중간에 파일이 씹힌 경우!! 자료전송에 문제가 발생한 경우 AVI화일의 경우는 사운드와 비디오 모두 복구가 가능합니다. ASF의 경우 물론 복구는 불가능하죠

5. RM제작 : 압축된 AVI,ASF -> RM으로..
음..저의 경우에는 RealProduce 7.0을 씁니다. Stream anywhere는 별루 안쓰죠.
그리고 MPG -> RM 하기보다는 압축된 AVI,ASF -> RM으로 만듭니다.
즉, 화질에 비해 용량이 많이 차지하는 경우에 사용합니다.
예를 들면 “23분짜리, 영어자막, 화질 중급, 80메가정도” 이경우에 RM(220bps)로 만들면 한 30메가 정도 밖에 안됩니다.

-Stream anywhere
스트림 에니웨어의 경우 압축된 AVI화일의 경우에 에러가 있더군여 RM의 경우에는 스트림으로 만드시면 에러가 좀 납니다.(가끔씩 런링타임 23분->1시간으로..-_-;;)
주로 MPG -> RM 으로 할경우에 사용하시면 됩니다.(이 경우는 에라가 없군여.)

-Real Producer 7.0
이 경우는 약간 편집을 해주어야 합니다. 왜냐하면 AVI화일을 읽기는 하는데..압축된 음성화일을 읽지 못하더군여. VirtualDub으로 음성화일만 변경시켜주시면 됩니다.

필요한 도구들.,.
1) VitualDub 1.3a
2) RealProducer 7.0

하나) 예를들면 ok.avi라는 파일이 있습니다. 이걸 VirtualDub을 이용하여 엽니다.
Video -> direct stream copy를 선택하고 audio -> full processing mode를 선택합니다.
먼저 audio -> conversion을 선택하여 음성 비율(sampling rate)를 선택합니다.
어짜피 RM로 만들꺼니 그렇게 안높아도 됩니다. 원본과 같게 선택하거나 약간 낮추어 선택하시면 됩니다. (저같은 경우: 22050Hz) audio -> compression을 선택하여 맨위에 있는 <no compression (PCM)>을 선택합니다. 그리고 “save AVI”하면 됩니다.
ASF의 경우도 마찬가지로 똑같이 하시면 됩니다.

둘) 이제 Realproducer 7.0을 엽니다. RealProducer의 경우 맨처음에 설정을 해 주셔야 합니다. Option -> preformance -> video filter -> resize filter -> High Quality Resize를 선택 합니다. new session -> record from file을 선택 합니다.
레코딩 마법사인가..아마 자동으로 체크만 하시면 될겁니다.
file type -> Single-rate for Web servers를 선택!!
Taget audience -> DSL/Cable Modem을 선택합니다. 이경우가 바로 (220bps입니다.)
사운드가 스테레오일 경우 audio format -> stereo music을 선택
video quality -> normal motion video를 선택
파일명을 정한후에 Start버튼을 누르면 무슨 경고문 같은 것이 나오는 데..
이걸 NO하시면 인코딩 됩니다.(yes는 하지 마시길..-_-;;

6. RA, RM파일은 편집 할 수 없나요?
저도 바로 편집할려구 각종 노력을 해보았고 유틸을 찾아 인터넷을 뒤지고 다녀봤지만 그건 불가능 한 것 같습니다. 일반적인 편집으로는 불가능 하고 캡쳐하는 방식으로 사용해야 합니다.
필요한 도구들..

1) realplayer : 전 realplayer plus 7.0 를 기준으로 설명!!
2) hypercam 1.51 : 캡쳐 프로그램. 아무거나 상관은 없습니다. snagit같은것도 좋을듯
3) total recorder : 자료실에 제가 올렸습니다.-_-;받아보세요..
4) goldwave : 이것두 자료실에 있답니다.
5) VirtualDub : 자료실에 있습니다.
6) 충분한 하드용량 – 한 1기가 정도가 편집시에 필요합니다.

첫째) 제가 고생 했던 부분인데 리얼을 그냥 캡쳐하면 보라색화면만 보일것 입니다..
-_-;;알고보니 옵션을 약간 변경해줘야하더군여.
realplayer를 엽니다.
view -> preferences -> performance -> video card compativility 에서
Use optimized video display의 체크부분을 없앱니다.

둘째) hypercam 이나 snagit 같은 프로그램을 상용 자료실에서 다운 받으세요..
hypercam의 경우는 키를 넣어야하니 -_-;; snagit이 좋을 듯하지만.
(hypercam 1.51)
user : egg@egg.net
key : KLWO-XEBV-ICPX-TPUQ-ZVIY-BSVF
license type – unlimited World-wide license

셋째) 캡쳐를 해야겠죠..screen area에서 select windows로 캡쳐부분을 지정하고
리얼플래이를 실행 시키고 재빨리 start Rec(F2)을 눌러 ^^:; 캡쳐 합시다..
(먼저 캡쳐실행후에 리얼실행하는 것이 편집시 용의합니다.)
+참고
캡쳐에는 주로 MJPEG코덱을 씁니다. 압축률도 괜잖고 무엇보다 속도가 괜잖죠.
캡쳐후에는 Virtual Dub으로 MPG4-3코덱으로 다시 인코딩 해야합니다.
picvideo라는 코덱이 있는데요..세어웨어라서..등록을 해야 합니다.
http://www.jpg.com/index.html 라는 곳에서 구할수 있습니다.

(PICVideo MJPEG Codec 2.1)
Decompressor Name: The GodFader
Ser#: 180673563
Compressor   Name: The GodFader
Ser#: 167486506

넷째) 물론 사운드 캡쳐두 해야지요 ^^;; 왜냐구여? 위 캡쳐프로그램은 비디오만 캡쳐 가능하구요..RA2WAV 2.003가 있스면 그걸루 RM -> WAV 롤 바로 바꿀수 있지만 없다면 자료실에 있는 TOTAL RECODRDER를 사용하시는 것이 좋군여 ^^;; 이건 사운드 캡쳐 프로그램인데..프로그램에서 사운드카드로 가는 데이터를 직접 녹음하기 때문에 깨끗하게 캡쳐 가능합니다. 먼저 total recorder에서 녹음을 누른후 리얼을 실행 합니다.
그러면 사운드가 wav화일로 캡쳐 될것입니다. 하지만 wav화일이 크기가 크기 때문에..
300~400메가 정도 될까 ^^;; 이것을 mp3코덱으로 압축 해주어야 합니다.
그러면 한 15~50메가로 줄어듭니다.(전에 화일은 지워주시구여..)

다섯째) 자료실에 있는 goldwave를 받습니다. 이건 사운드 편집 프로그램 입니다.
이걸로 넷째번에 캡쳐했던 wav화일을 불러와 save as에서 mp3코덱을 선택해서 압축 저장을 합니다.
(모르시면 해보시길 바랍니다..)
이걸루 편집도 할수 있으니 불필요한 부분을 자르세요..

여섯째) 아직 저도 다섯째까지 밖에 안해봤습니다. 먼저 캡쳐한 avi화일(사운드가 없는)에
압축한 wav화일을 끼워 넣어야 하겠죠.. 사운드랑 avi화일의 타임이 일치하지 않으면
-_-;;화면과 사운드가 따로 놀수있습니다.
VirtualDub 으로 시간에 맞게 자릅니다. 이때 비디오를 direc stream copy로 하셔야 합니다.
avi화일을 사운드와 시간을 맞춘후에 VirtualDub을 이용해 avi + wav -> avi화 합니다.
전에 소개했던 avi 유틸모음보다 virtualDub이 더 간단하군여..
예를 들면 : ex.avi ex.wav 화일이 캡쳐한후 손본 화일일 경우..
먼저 VirtualDub으로 ex.avi파일을 불러옵니다. audio -> wav audio 하신후에 ex.wav파일을 불러옵니다. 그리고 video, audio 모두 direct stream copy로 지정하고 저장(save as) 하시면 됩니다.

[순서]
– Realplayer의 욥션을 변경한다.
– 캡쳐프로그램을 이용하여 캡쳐한다.
– Totalrecorder를 이용하여 사운드를 캡쳐한다.
– 캡쳐한 사운드를 mp3코덱으로 압축한다.
– 비디오와 오디오를 알맞게 편집한다.
– VirtualDub을 이용하여 비디오와 오디오를 결합시킨다

7. 여러개의 MPG파일 합치기
iFilmEdit라는 프로그램을 사용합니다.
이걸 사용하면 여러개의 MPG를 합칠 수 있습니다.
음..하지만 별로 추천할만하지는 않습니다. 왜냐구요? 많은 용량을 차지하고 인코딩시에 많은 시간이 걸리거든요..그냥 MPG -> 압축AVI 해서 VirtualDub으로 합치시는 것이 좋을 듯 합니다.

8. MOV파일 합치기
QuickTime 4.03을 이용합니다. 먼저 Quick Time Installer를 다운 받으셔야 합니다.
그리고 등록을 하셔야 편집이 가능 합니다.이 프로그램은 공개이므로 구하기 쉬울겁니다.
먼저 퀵타임 4.03을 다운 받습니다.
인스톨 후에 등록할경우에는
시작 -> 제어판 -> Quick Time -> Enter Registration
등록, 회사에 모두 egg@egg.net
그리고 등록 번호에 7171-6095-AE12-3923-E456
(인스톨 중에 등록 가능합니다.)
예를 들어 egg1.mov 파일과 egg2.mov 파일을 합치려 한다면
egg1.mov파일을 Quicktime으로 불러온후에 스크롤를 맨끝으로 놓습니다. 그리고 egg2.mov파일을 왼쪽 버튼을 사용해 마우스로 끌어다가 화면에 놓으면 붙여넣기가 됩니다.
그후 저장(Save as)하시면 됩니다.(정말 쉽죠?)

9 AVI, ASF파일 합치기
VirtualDub 1.3a을 사용합니다.
이 경우 2개의 파일이 프래임레이트와 사운드 포맷이 일치 해야 합니다.
그렇지 않으면 합칠수가 없습니다.(또한 코덱도 같아야하고…)
예를 들면 egg1.avi ,egg2.avi 파일이 있을 경우 egg1.avi파일을 먼저 불러옵니다.
그 다음 file -> append video segment를 이용해 egg2.avi파일을 불러옵니다.
그리고 Video -> Direct Stream Copy , Audio -> Direct Stream Copy로 맞추고
저장(save AVI)하시면 됩니다.
ASF의 경우는 AVI화일로 바꾼후(위를 참고하세요)
합치시고…다시 ASF화 하시면 됩니다.
+ 또다른 방법 : 출처 – 나우만사동게시판
방법은… smart-rendering을 쓰면됩니다
이 방법은 아쉽게도 ulead 독점특어기술로 알고있는데요
그래서 ulead社의 제품만이 smart-rendering됩니다
그외의 어떤것도 렌더링다시안하고는 붙일수가 없습니다
VE나 VS를 사용해서 두파일을 로딩한후 코덱을 똑같이 잡고 붙이면 되겠습니다.
smart-rendring을 키구요
음성은 demux/mux를 혼합할경우 훨씬 정밀한 작업이 가능합니다
(참고)
VE : Ulead사의 MediaStudio Pro에 포함된 VideoEditor(VE) 
VS : Ulead사의 VideoStudio

10. VIV파일 제작
VivoActive VideoNow v3.0β를 사용합니다. 별루 좋다고는 말할 수 없군요.
AVI파일 밖에 읽지 못합니다.  사운드 MP3포멧을 지원 하지 않습니다.
관심이 있는 분은 신 버전이 나왔을지 모르니 한번 찾아보시길 바랍니다.

11. ASF에 자막넣기 : ASF 스크립트
ASF로되어있는 파일은 거의 일체형이라고 말할수 있네요. AVI파일의 경우 SMI같은 자막파일이 필요하지만 ASF의 경우 파일에 완전히 삽입된다고 볼수있죠.
ASF파일 실행중에 캡션기능만 키면 바로 작동되구요.
하지만 이런 편리함에도 불구하고
버벅되는 ASF파일을 싫어하는 사람들이 더 많은 편이죠.
MPEG4-AVI의 강세라 할까요?
먼저 Windows media tools라는 프로그램이 필요합니다.
-windows media tools
1) Windows Media Encoder
2) Windows Media ASF Indexer
3) Windows Media Author
에서 2번째를 이용합니다. 먼저 windows media ASF Indexer를 이용하여 파일을 open하신후 Edit Script Commands를 이용해 자막을 삽입하시면 됩니다.
먼저 만들어진 자막TXT파일에서 불러올수도 있는데 TXT의 경우 일정한 형식을 가지고 있어야 합니다.

12. AVI용 자막제작
이 부분에 대해서는 길게 말씀드릴만큼 많이 알지 못합니다.
AVI용 자막은 SMI를 대부분 사용하고 계실텐데..
– hoe.exe
나우누리의 이미정님께서 만드신겁니다.
아주 간편하게 TXT파일을 읽어서 편집 저장하면 SMI파일이 됩니다.
주의 할 것은 버그가 있습니다. 한가지 버그가 있는데.
시간에 있는 ms를 저장된 smi파일에서 모두 지워주셔야 합니다.
일반적인 메모장으로 지우시면 에러가 납니다.
그러니 워드패드로 지우시면 좋겠군요.

13. RM용 자막제작
– makert.exe
하이텔의 mossuply님께서 만드신 것이더군요. 아시다시피 RM용 파일은 모두 3개로 나뉘어 집니다. (위의 smi설명을 참고하세요)
egg.rm , egg.rt , egg.smi 이렇게 3개중에서 egg.rt만 생성 되는 것이니(생성되던가..-_-;;) egg.smi를 따로 만드셔야 될겁니다.
이건 메모장으로 간단히 만드실수 있을겁니다. 전에 만들어진 파일을 변경해주셔도 되구요.

(아래를 보세요) <smil>
<head>
        <layout type=”text/smil-basic-layout”>
                <region id=”Video1″ title=”Video1″ left=”0″ top=”0″ height=”240″ width=”320″ background-color=”#ffffff” fit=”meet”/>
                <region id=”Text1″ title=”Text1″ left=”0″ top=”240″ height=”90″ width=”320″ background-color=”#ffffff” fit=”hidden”/>
        </layout>
</head>
<body>
        <par>
                <video src=”egg.rm” id=”Video” region=”Video1″ title=”Video”/>
                <text src=”egg.rt” id=”Caption” region=”Text1″ title=”Caption”/>
        </par>
</body>
</smil>
; 붉은 색 부분만 변경 해주시면 됩니다.(그리고 egg.smi로 저장!!)
이것은 상대 경로이므로 같은 파일이 같은 디랙토리에 위치해야 합니다.
+ 참고 (노파심에 예를 써봅니다.)
상대경로 : src=”egg.rm”
절대경로 : src=”c:\eggchin\egg.rm”
+ 참고 Realplayer 옵션
view -> clip source 하시면 동영상의 사양을 알 수 있습니다.
(물론 height , width을 확인하실 수 있습니다

14. VOB -> AVI : (http://www.dvdprime.com/의 게시판 글에 첨부)

: Writed by -DVDprime.com-
본 메뉴얼은 http://divx.ctw.cc 에 전적으로 의존하였으며,
실제 테스트 결과를 조금 첨부했습니다.

<필요한 프로그램 및 코덱>
1) DeCSS/DODSRipper ( http://remco.xgov.net/dvd )
2) VirtualDub ( http://www.geocities.com/virtualdub )
3) FlasKMPEG ( http://go.to/flaskmpeg )
4) AVI Plug-in ( http://members.xoom.com/agrab )
5) DivX ;-) Codec ( http://divx.ctw.cc )

<절차 1, 2, 3, 4, 5>
1. Divx 코덱을 설치한다. — 5)
+ Divx코덱을 꼭 설치할 필요는 없습니다. 그냥 일반 mpg4-3코덱을 사용하셔도 됩니다.

2- DeCSS를 이용해 VOB 파일을 하드 디스크에 카피한다.  — 1)
+이 과정은 DVD의 시디를 vob파일(DVD 옵젝트 파일)로 변환 하는 과정입니다.
vob소스를 사용할 경우 할필요는 없겠죠.

3- FlaskMPEG와 AVI plug in를 이용해 DivxAVI로 변환한다. — 3), 4)
<옵션>
Decode Audio Mode
PCM compression for Audio
DivX MPEG-4 Low or High for Video
Keyframe to 10 seconds
Compression Control to 100 (Crispness)
Data rate to 1h30=900 2h=750

4- VirtualDub을 사용하여 AVI의 오디오를 MP3로 압축한다. — 2)
<옵션>
AVI video file / WAV file
Video -> Direct Stream Copy
Audio -> Interleaving -> 500 ms of audio before video start -> Interleave audio every 500 ms
Audio -> Compression -> Choose MP3 at > 96Kbps (or more)
Audio -> Full Processing Mode
+저 같은 경우는 FlaskMPEG로 오디오까지 압축이 가능했습니다. virtualDub까지 쓸필요가 없더군요.

5. AVI 저장!
<주의>
1. 테스트를 위해 일단 DVD 타이틀에서 1기가 바이트 이하의 용량을 가진 파일을 선택한다.
2. DeCSS로 1기가 파일의 암호해독시 약 8-10분 소요 (펜티엄 400)
3. AVI 변환시 1기가 당 약 4-5시간 소요 (펜티엄 450)
4. 시간이 문제라면, 300메가 이하의 파일도 테스트 가능하다.
5. 이 변환은 반드시 개인적 목적으로 사용되어야 한다.
+참고
물론 여기서는 DVIX라는 코덱을 사용했지만 설정에서 mpeg4-3코덱으로 설정해주시면 자료실에 올라와져 있는 압축AVI파일로 저장하실수 있습니다.
(제가 자료실에 올린 DVIX변환기를 사용하셔도 되구요)
그리고 해상도 설정(가로x세로)의 비율을 거의 비슷한 비율로 맞추시는 것이 좋습니다.
그리고 생각보다 시스템을 많이 탑니다. 325×240이 가장 문안합니다.
그 이상은 화면 깨짐이 심하더군요.. 소스에 따라 틀리기도 합니다.
안그러면 화면이 깨져 보입니다..알아두세요!!!

새로운 비디오 전송 기술 IP Multicasting에 대한 이해
김 대 성
(창성미디어기술영업 대리)
대부분의 사람들이 인터넷을 사용하다 보면 다양한 형태의 자료를 접하게 된다. 텍스트(Text)자료에서 그래픽(Graphic)자료까지, 특히 요즘은 비디오나 오디오로 되어 있는 자료를 다운 받아 실행시키거나 실시간으로 방송되는 내용을 직접 보고 들을 수 있게 되었다. 이런 웹(Web) 사이트(Site)나 홈페이지를 방문하다 보면 자주 나

오는 말이 있다. 디지털 비디오, 스트리밍(Streaming) 전송, 주문형비디오(VOD) 또는 멀티캐스팅(Multicasting) 전송 기술 등 과연 이런 언어들의 의미와 어떤 방법으로 비디오 데이터를 전송하는 것일까? 하고 궁금해 했을 것이다. 우선적으로 사용되고 있는 각가지의 언어에 대한 개념에 대해 설명할 것이다. 그리고 실질적으로 IP multicasting의 전송 방법과 현재 많이 알려진 Mbone에 대한 개념의 설명, 그리고 응용 가능한 분야에 대해 언급 할 것이다. 또 실질적으로 적용되고 있고 사용되고 있는 사례를 분석하면서 앞으로 발전될 방향에 대해 다음과 같이 예상할까 한다.
1. 멀티 캐스팅을 이해하기 위한 기본
1-1 디지털 비디오 형식 중 MPEG 이란

지금 사용되고 있는 디지털 비디오란 기존의 아날로그 비디오 신호를 컴퓨터가 인식할 수 있는 0과 1을 이용해 영상 신호로 압축하는 방법을 말한다. 이런 기본 개념을 이용해 발전 되어진 디지털 비디오 압축 방법은 다양하게 있지만 이번호에서는 주로 전송(비디오 데이터의 이동)에 이용되는 MPEG을 중심으로 설명하겠다.
가. MPEG 이란
MPEG은 Moving Picture Experts Group의 약자로 움직이는 화면의 정보를 부호화하는 것을 나타낸다. MPEG은 88년에 ISO/TC97/WG9에서 처음으로 시작되었다. JPEG이 모두 정지화상의 부호화를 대상으로 하고 있는데 비해 MPEG은 동화상 정보를 부호화 하는 것으로서 동화상의 프레임과 프레임 사이에 존재하는 정보의 중복성을 줄여서 보다 높은 압축율을 얻도록 구성되었다. 또 MPEG은 ISO/IEC 표준화 과정에서 비디오 코딩뿐만 아니라 오디오까지 포함한다. 정보량이 큰 동화상을 저장하거나 통신로를 통해 전송하기 위해서는 정보의 압축을 필요로 하기 때문에 개발되었다고 볼 수 있다. 이런 기본 개발 목표 때문인지 MPEG은 대부분의 비디오 전송 기술에 이용되고 있다. 또 MPEG은 그 사용 범위에 따라 MPEG 1에서부터 MPEG 8까지 세분화되어 규정되어 있다.

clip_image001

나. MPEG 압축 방법과 구조
MPEG의 압축 방법 중 가장 큰 특징이라고 할 수 있는 것은 예측과 보간을 이용한 영상 압축 방법이다. 즉 모든 프레임을 개별 정화상으로 압축하는 것이 아니라, 인접 프레임 사이의 동작 보상을 하는데 있어 예측과 보간을 이용해 이전 화면의 모든 정보를 전부 압축 부호화해 저장했다면 다음 화면의 정보를 저장할 때 앞 화면과 바뀐 부분의 정보(차영상)만을 압축 부호화 한다는 개념이다. 그러나 임의 접근과 같은 VCR식 제어( 빨리 보기, 정지, 되감기, 등의 기능 )가 가능해야 한다는 등의 여러 이유로 MPEG 비디오에

서는 자신이 가지고 있는 정보만으로도 복원될 수 있는 프레임이 규칙적으로 삽입되어야 한다. 이러한 프레임은 JPEG과 아주 유사하게 정화상으로 압축되어 진다. 정화상으로 압축된 프레임을 I프레임, 예측만을 한 프레임을 P프레임, 보간을 한 프레임을 B 프레임이라 한다.
1-2 비디오 스트림(Stream)이란 무엇인가
앞에서 간략하게 MPEG에 대해서 알아 보았다. 동영상을 전송 가능하게 압축하는 기술이 표준 포맷이라는 것을 대충은 알게 되었을 것이라 생각된다. 그럼 동영상 전송을 말할 때 반드시 따라 다니는 스트림(사전적 의미: 흐름, 연속되는 것 )은 무슨 의미이며, 왜 중요한가? 해답은 동영상이란 말에서 찾을 수 있다. 즉 일반 텍스트나 그림과 같은 데이터는 전송 또는 작업 중에 끊어짐 있어도 그리 큰 지장 없으나 동영상 같은 경우 중간 중간에 끊어짐이 발생한다면 데이터의 연속성이 상실되기 때문이다. 그래서 비디오 전송에 있어 비디오 스트림의 전송 능력을 가장 중요시 여기며 동시에 VOD 또는 멀티캐스트를 구축 할 때에도 가장 먼저 결정되어야 할 것이 스트림 숫자이다.
2. VOD 와 멀티 캐스팅 방송
정보통신과 PC의 발전으로 인해 MPEG 파일의 재생이 PC에서 가능해지면서 사람들은 정보의 공유에 대해 생각하게 되었다. 즉 1대의 PC에서 한 개의 파일을 재생하는 것이 아니라 여러 대의 PC에서 1개의 MPEG을 공유해 재생하는 것에 대해 생각하게 된것이다. 또 이런 공유 개념에서 출발해 자기가 필요한 시간에 필요한 비디오 정보를 얻을 수 있는 방법에 대해 연구하기 시작했다.
2-1 VOD 와 유니캐스트(Unicast)
언제든지 필요 할 때 보고싶은 비디오를 볼 수 있는 시스템을 VOD(Video On Demand)시스템이라고 하며 비디오 전송에 사용되는 기술을 유니캐스트(Unicast) 라고 한다. 시간에 제한을 받지 않고 보고 싶은 부분부터 볼 수 있으며 다시 되돌려 보거나 정지 후 다시 볼 수 있는 등 VTR에서 가지고 있는 대부분의 기능을 가지고 있는 전송 방법이다.
2-2 브로드캐스트(Broadcast)와 멀티캐스트(Multicast)
브로드캐스트나 멀티캐스트는 1개의 비디오 자료를 공유해 본다는 개념은 VOD 와 같으나 이용 방법이 일반적으로 사용되는 방송의 개념과 유사하다. 즉 방송되는 시간에 그 방송의 내용을 PC에서 보는 것으로 일반적으로 TV 방송을 시청하는 것으로 생각하면 된다.
3. VOD 와 멀티캐스트의 차이 ( Unicast VS Broadcast VS Multicast )
1개의 비디오 파일을 가지고 여러 명이 동시에 본다는 개념은 VOD나 Multicast 나 동일한 개념이다. 하지만 이들의 전송 방법에서 차이가 많이 있고 이런 차이로 인해 적용 범위도 다르게 나타난다.

clip_image002

3-1 유니캐스트(Unicast) 방식
Unicast 란 VOD 서버 또는 스트리밍(Streaming) S/W에서 비디오를 전송하는 방법이다. 앞에서 언급한 것 같이 필요한 시간에 공급하기 위해서는 요청한 자료를 요청한 사람수 만큼의 비디오 스트림을 보낸다. 이와 같은 방법은 사용자 측면에서 보면 비디오 자료를 다양한 형태로 이용이 가능하고 언제든지 다시 볼 수 있으며 안정적인 데이터 또는 비디오를 볼 수 있다는 장점이 있다.
그러나 네트워크나 시스템 관리자 입장에서 본다면 네트워크(Network)나 비디오 데이터를 전송하는 시스템 관리에 애로점이 있으며 구축비용도 많이 든다.
예) A라는 비디오 파일을 10명이 본다고 가정을 하면 실제적으로 A란 비디오파일을 10번 하드 드라이브에서 일어서 10개의 다른 비디오 스트림으로 연결되어 있는 PC에 비디오데이터를 전송한다. 이때 TCP/IP라는 전송 프로토콜을 이용해 각각의 PC에 전송하기 때문에 데이터전송 안정성은 가지게 되지만 네트워크에는 사용자수 만큼의 데이터들이 이동하게 되어 충분한 대역폭

(Bandwidth)이 보장되어야만 서비스가 가능하다.
하지만, 충분한 대역폭이 보장되었다고 하더라도 비디오 스트림을 공급해주는 서버가 용량이 적다면 그 서비스 또한 불안하게 된다.
유니캐스트 방식의 경우 네트워크의 비효율성이 문제가 될 수 있다. 즉 네트워크에 총 1000대의 PC가 연결되어 있고 단 한번이라도 1000대의 PC가 모두 비디오 데이터를 원한다면 안정적으로 1000대의 PC에 비디오 스트림을 공급할 수 있는 네트워크를 구성해야 하기 때문이다.

clip_image003

3-2 브로드캐스트(Broadcast) 방식
브로드캐스트방식의 전송 방식은 VOD와는 다른 형태를 가진다. 1개의 파일을 네트워크에 연결되어 있는 모든 PC에 전송하는 방법이다. 이 방법의 경우 비디오 데이터를 원하던 원하지 않던 네트워크에 연결되어 있는 모든 PC에 데이터를 전송하는 방법으로 네트워크상의 속도 저하와 동시에 불필요한 자료의 전송 등이 문제가 된다. 또한 네트워크에 연결된 모든 PC는 비디오 데이터에 관심이 있던 없던 간에 그 데이터를 실행해야 한다.
3-2 멀티캐스트(Multicast) 방식
멀티캐스트는 전송 방법에서 브로드캐스트와 유사한 면을 지닌다. 1개의 비디오 스트림으로 여러 PC에 비디오 데이터를 전송하는 것까지는 유사하나 필요한 PC에게만 전송하는 장점이 있다. 그러나 멀티캐스트를 이용해 데이터를 전송하기 위해서는 네트워크 구조 자체가 멀티캐스트를 수용 할 수 있는 장비로 구성되어야 하며 동시에 멀티캐스트 전송용 Application도 필요하다.

지난 호에는 간단하게 디지털 비디오(Digital Video)의 전송에 대해 설명했다. 특히 MPEG 1을 기준으로 유니캐스트(Unicast), 브로드캐스트(Broadcast), 멀티캐스트(Multicast)로 전송하는 방법에 대해 비교·설명했다. 이번 호에서는 IP 멀티캐스팅을 하기 위한 필수조건과 IP멀티캐스팅에서 꼭 필요로 하는 네트워크에 대해 알아보겠다.

1. IP 멀티캐스트(Multicast) 필수 사항
1) IP 멀티캐스트의 필수 사항
IP 멀티캐스트를 위해 데이터(Data) 전송자와 받는 클라이언트(Client)는 멀티 캐스트가 가능한 루터(Router)와 네트워크 상에 존재해야 한다. 멀티캐스트 데이터를 받기 위해서는 다음과 같은 사항이 필요하다.
·IP 멀티캐스트를 보내고 받기 위해서는 TCP/IP 프로토콜 스태크(Protocol Stack)를 지원해야 한다.
·멀티캐스트 그룹에 합류하고 데이터를 받기 위해서는 IGMP(Internet Group Management Protocol)를 지원해야 한다.
·IP 멀티캐스트를 지원하는 프로그램이 있어야 한다.
만약 같은 주소(Address)를 가진 네트워크 상에서 멀티캐스트를 할 경우 위의 사항만이 필요 할 것이다. 하지만 다른 네트워크까지 Multicast 데이터를 전송하기 위해서는 다음과 같은 사항이 필요하다.
·트랜스미터(Transmitter)와 리시버(Receiver)사이에 존재하는 모든 루터(Router)는 반드시 멀티캐스팅이 가능해야 한다. 오래된 루터의 경우 멀티캐스트 프로토콜(Protocol)을 지원하지 않기 때문에 반드시 업그레이드(Upgrade)를 해야 한다.
·방화벽이 있는 경우 IP 멀티캐스트 트래픽(Multicast Traffic)을 위해 재구성해야 한다.

clip_image004

다음 그림은 멀티캐스트의 일반적인 구성도를 나타낸 것이다.
2) IP Multicast의 IP Address
IP Multicast의 경우 D클래스(Class) Internet Protocol Address의 특별한 Multicast 호스트(Host)그룹 IP를 사용한다. Host Group Address의 범위는 224.0.0.0에서부터 시작돼 239.225.225.225의 IP Address범위를 가지게 된다. 이 IP범위는 고정(Permanent) IP와 임시(Temporary)IP로 분류돼 있다. 고정 IP 중 224.0.0.1은 IANA(The Internet Assigned Number Authority)에 의해 모든 IP Multicast Host

<멀티캐스트 일반 구성도>

Group이 직접 Network에 접속하기 위해 할당돼 있고 224.0.0.2의 경우 LAN 상에 있는 루터에 할당돼 있다. 224.0.0.0에서부터 224.0.0.225는 루팅 프로토콜과 다른 Low Level과 유지, 보수 프로토콜로 할당돼 있다. 또 다른 범위의 IP 즉, 224.0.13.000에서부터 224.0.13.255는 애플리케이션 프로그램을 위해서 할당돼 있다.

2.
네트워크(Network)와 멀티캐스트(Multicast)의 관계
멀티캐스트 전송에 있어 가장 핵심 사항중의 하나는 네트워크에 관련된 것이다. 아무리 방송 서버나 클라이언트 PC 성능이 좋다고 해도 네트워크 환경이 좋지 않다면 만족할만한 화질의 비디오 데이터를 얻을 수 없다. 또한 네트워크가 멀티캐스트를 지원하지 않는 장비로 구성돼 있다면 멀티캐스트 방법 자체를 사용 할 수 없다.
1) LAN, MBone의 이해
◆ LAN
일반적으로 사용하는 네트워크를 LAN(Local Area Network)이라고 하며 일반적으로 멀티캐스팅기법을 사용했던 네트워크환경이었다. 이런 환경에서는 높은 품질로 비디오 데이터의 실시간 전송이 가능하며 동시에 다양한 형태의 사용이 가능했다.
◆ MBone
Multicast Backbone (MBone)은 인터넷 유저에게 Multicast를 전송하기 위한 인터넷의 하부 구조이다. 1992년부터 시작해 지금은 2000개 이상의 서브넷(Subnet)을 가지고 있다.
MBone은 가상의 네트워크로 수많은 Multicast가 가능한 Network User와 연동해 멀티캐스트 데이터를 전송한다. Mbone상에서 멀티캐스트 데이터를 인터넷에 전송할 때에는 멀티캐스트가 가능한 네트워크와 멀티캐스트가 가능하지 않은 네트워크를 지나 이동하게 된다. 이때 멀티캐스트가 가능한 네트워크를 Multicast Island라고 하며 그 이동 경로를 터널(Tunnel)이라고 한다.

clip_image005

2) 네트워크 상에서 IP 멀티캐스팅의 전송 원리
멀티캐스팅은 일반 방송 즉 라디오나 TV와 같은 전송 방법으로 네트워크 상에 비디오, 오디오를 전송한다. 즉 데이터를 받고자 하는 클라이언트가 있을 경우 그 클라이언트에게만 데이터가 전송된다. 그림에서 보면 콘텐츠(Content)서버에서 비디오 데이터를 실시간으로 전송을 하게 되고 네트워크에 설치된 루터를 통해 멀티캐스트 데이터가 다른 네트워크 주소에 데이터를 전송하게 된다. <그림>

<네트워크상의 멀티캐스팅 전송
원리>

이 경우 Client PC에는 별도의 장비없이 단순히 네트워크와 연결하는 IP만 부여하는 작업만이 필요하다. 또한 Client는 Multicast 데이터를 받기 위한 세팅(Setting) 작업없이 데이터를 받을 수 있다. 그러나 Multicast 데이터를 전송하는 관리자는 Multicast Data를 전송하기 위해 필수적으로 세팅하고 확인해야 할 사항이 있다. 우선적으로 Multicast 데이터를 전송하기 위해 루터를 Multicast가 가능하도록 세팅해야 하며 동시에 멀티캐스트에 필요한 프로토콜이 지원돼야 한다. 이런 Multicast Protocol을 이용해 Multicast 비디오 데이터는 루터와 루터 사이 또는 다른 구간주소(Segment Address)를 가진 IP Network사이를 이동하면서 데이터를 전송하게 된다.
3. IP Multicast에서 사용되는 Protocol
일반적으로 데이터의 전송에는 TCP/IP를 사용한다. TCP/IP 프로토콜은 일반 데이터의 전송에는 탁월한 전송능력을 가진다. 하지만 멀티캐스트 데이터는 딜레이(Delay)나 중단 없이 전송해야 하며 멀티포인트(Multi-Point)로 전송해야 하는 기능이 있기 때문에 새로운 형태의 프로토콜이 필요하게 되었다.
1) IP Multicast Protocol
◆ SDP ( Session Description Protocol )
MBone에서 사용되는 프로토콜이다. SDP는 클라이언트에게 멀티캐스트 데이터에 포함돼 있는 모든 정보(예: Multicast의 file 이름, 설명, 실행 시간 등)를 받을 수 있게 한다. 특히 SDP는 다양한 형태의 정보를 같이 보낼 수 있기 때문에 넓은 범위에서 사용 가능하다.
◆ IGMP (the Internet Group Management Protocol) IGMP는 멀티캐스트 data를 요구하는 Receiver가 전송되는 Multicast Data를 받기 위해 Multicast Group에 접속하거나 여러 작업을 하기 위한 프로토콜이다. Multicast Group을 사용하는 이유는 크게 몇 가지가 있다.
● Multicast Group에 진입과 탈퇴가 자유롭다. 즉 언제든지 Multicast Data를 받거나 중단 할 수 있다.
● Multicast Group에 접속한 Receiver가 없으면 자동으로 네트워크 상에서 사라지게 된다.
● 그룹은 그 그룹이 구성된 숫자의 조정이 가능하다. 즉 접속 숫자가 많을 경우 자동으로 인지해 그 공간을 늘려 준다.
2) Multicast 루팅(Routing) 프로토콜(Protocol )
Multicast Data를 전송하기 위해서는 다양한 프로토콜이 있어야 하는데 특히 루터에서 사용되는 프로토콜이 중요하다고 할 수 있다. 즉 루터가 Multicast Protocol을 지원하지 않는다면 Multicast Data가 전송되지 않기 때문이다. 이런 루팅 프로토콜은 네트워크 상에 멀티캐스트 데이터가 이동 할 수 있도록 경로를 열어 놓는 작업을 한다. 루팅에 사용되는 멀티캐스트 프로토콜은 다음과 같다.
◆ DVMRP (Distance Vector Multicast Routing Protocol) 멀티캐스트를 전달하기 위해 처음 만들어진 프로토콜이다. DVMRP는 지금 MBone상에서 널리 사용되고 있는 프로토콜이다.
◆ MOSPF (Multicast Open Shortest Path First Protocol) MOSPF는 일반적으로 Single Domain에서 사용한다.
◆ PIM (Protocol-Independent Multicast) 이 프로토콜은 현재 IETF Work Group에서 개발 중인 프로토콜이며 일부 루터에서 이미 지원하고 있는 프로토콜이다. PIM은 두 가지 형태의 Operation Mode로 되어 있다.
·PIM-Dense Mode (PIM-DM)
·PIM-Sparse Mode (PIM-SM)
3) High Level Protocols
◆ RTP (Real-Time Transport Protocol) RTP(Version 2)는 실시간 데이터전송 애플리케이션 프로그램을 지원하기 위해 만들어진 프로토콜이다. RTP는 MBone에서 사용 되고 있으며, IETF RTC1889에 의해 정의되어 있다.
◆ RTCP (Real-Time Control Protocol)
RTCP은 RTP와 연동하여 운영되는 Control Protocol이다. RTCP는 사용되는 애플리케이션의 수행(Performance) 조정 및 환경 검사에 사용한다.
◆ RTSP (Real-Time Streaming Protocol)
RTSP는 다중 데이터(Multiple Data) 전송 조정 목적에 사용 할 계획이다. RTSP는 RSVP와 연동해 사용한다.
◆ RSVP (Resource Reservation Protocol)
RSVP는 인터네트워크(Internetwork) 서비스를 위해 개발된 프로토콜이다.
위에서 언급되지 않았지만 다양한 형태의 프로토콜이 있으며 좀더 효율적인 멀티캐스트 전송을 위해 지금도 개발 중이다. 지금까지 멀티캐스트에 관련된 기술적 내용에 대해 살펴보고 디지털 비디오에서부터 프로토콜까지 IP 멀티캐스트에서 필요한 부분에 대한 개념을 설명했다.
다음에는 IP 멀티캐스트의 이용 범위와 응용 사례, 그리고 프로그램에 대한 비교를 할 것이다

앞에서 IP 멀티캐스팅(Multicasting)에 관련된 용어 설명과 기술적 개념, 또한 멀티캐스팅이 무엇이며, 이를 구현하기 위해서는 어떤 기술적 환경이 필요한지 알아봤다. 이번 호에는 이런 환경을 바탕으로 IP 멀티캐스팅을 이용할 수 있는 범위에 대해 설명하고 동시에 응용 사례와 현재 이용되고 있는 대표적인 프로그램에 대해 알아 보기로 한다.

1. IP 멀티캐스팅의 이용 방법
IP 멀티캐스팅은 그 이용 범위에 따라 다양한 형태의 이용 범위와 응용 범위를 가진다.
● IP 멀티캐스팅 방송
● 원격 강의, 원격 진료
● MPEG 화상회의
● 원격 감시 시스템
1) IP 멀티캐스팅 방송
IP 멀티캐스팅은 앞에서 언급한 바와 같이 일반적인 방송과 비슷하다. 즉 일반 방송이 아날로그 신호를 전파로 변환해 각 가정의 TV 수신기에 동영상을 전달하는 방법을 쓰는 반면, IP 멀티캐스팅은 디지털 영상 신호를 네트워크에 전송하고 PC가 TV를 대신해 동영상을 보여주는 것만 차이가 있다고 보면 된다. 이런 IP 멀티캐스팅 방송 방법은 다양한 형태로 응용돼 쓰이고 있다.
·사내 방송/ 방송국
·학교 방송/ 방송국
·위성/ 일반 방송 내용의 디지털 방송
·인터넷 방송 등의 응용 방법이 있다.
특히 요즘은 사내 또는 학내 방송과 인터넷 방송에 IP 멀티캐스팅방식을 사용해 이미 설치된 네트워크 환경을 최대한 활용, 다양한 서비스를 하려고 하는 경향이 있다.

clip_image006

● 학내 방송 및 사내 방송 형태의 응용 방법
학내 또는 사내에 소규모의 방송국을 설치하고 자체적으로 제작한 내용을 방송한다. 특히 IP 멀티캐스팅을 이용한 방법의 경우 별도의 TV 장치가 필요 없이 PC에서 다른 작업과 동시에 수행할 수 있기 때문에 많은 학교와 회사에서 사용하고 있다.
<그림 3>은 4개의 채널을 동시에 방송 하는 형태를 구성한 예이다. 보편적으로 IP 멀티캐스팅 방송 방법을 이용할 때에는 VOD( Video On Demand ) 와 함께 사용하는 경우가 많다. 이 경우 학내 방송과 원격 교육, 그리고 VOD 서비스가 포함돼 있는 구성도의 형태이다. 또한 사용 목적에 따라 실시간 방송하는 채널의 수는 다양하게 조정이 가능하다.

<그림 3> IP Multicasting 방송 구성의 예

● 인터넷 방송 형태의 응용 방법
인터넷 상에서 많이 사용되고 있는 인터넷 방송국도 앞에서 언급한 학내 방송 응용 사례와 기본 구조면에서는 다를 것이 없다. 단, 인터넷이 다양한 전송속도의 네트워크(모뎀22.8∼56Kbps, ADSL, ISDN, 전용선 등)로 구성돼 있기 때문에 전송되는 데이터 형식은 다른 것을 사용해야 한다. 일반적으로 이더넷 환경(대역폭:10~100Mbps) 이상의 네트워크에서는 MPEG1 또는 MPEG2를 사용하지만 인터넷 상에서는 그 전송 폭을 고려해 ASF, RM, MOV 등의 포맷을 이용한다.

clip_image007

2) 원격 강의와 원격 진료
● 원격 강의 / 원격
진료 단 방향의 IP 멀티캐스팅 방송에서 응용된 부분으로 원격지 간에 방송을 통한 원격 교육 또는 진료 방법에 사용되는 방법이다. 기본적인 구성은 IP 멀티캐스팅 방송과 비슷한 구조를 가지고 있다. 일반적으로 원격 강의 또는 원격 진료의 경우 높은 화질의 비디오 데이터와 동시에 저장성을 요구하기 때문에 MPEG 포맷을 이용해 데이터를 전송하는 경우가 많이 있다. <그림 4>의 경우에는 원격 강의에 대한 기본 구성도를 표시한 것이다.

<그림 4>

clip_image008

3) MPEG 화상회의
코덱(CODEC)을 이용한 기존의 화상회의와 별도로 MPEG을 이용한 화상회의에 IP 멀티캐스팅 방식을 이용할 수 있다. 이 경우 고화질의 화상회의가 가능하며 동시에 회의 내용을 파일로 저장이 가능하다는 장점을 지니고 있다. 일반 화상회의의 경우 코덱 장비를 장착한 PC와 MCU가 있어야 다자간 화상회의가 가능하지만 MPEG 화상회의의 경우 인코딩 보드만 있으면 화상회의가 가능하다. 또한 MPEG 멀티캐스팅으로 화상회의를 할 경우 회의에 참여 하지 않은 사람들도 원하는 경우 회의 내용을 시청할 수 있기 때문에 다양한 형태의 회의 효과를 얻을 수 있다. 하지만 MPEG이라는 파일 포맷의 특징상 대용량의 네트워크 환경에서 가능하다는 단점이 있다.

<그림 5>

<그림 5>의 경우가 화상회의를 할 경우의 구성도이다. 이 구성도의 경우 MPEG2로 화상회의를 하는 경우이기 때문에 전용 회선을 사용해 화상회의를 구축한 경우이다.
4) 원격 감시 시스템
원격 감시 시스템의 경우 원격지에 카메라를 설치하고 감시하는 형태의 시스템이다. 이 경우도 IP 멀티캐스팅 방송의 기법을 이용해 데이터를 전송한다. 보편적으로는 사용되는 방법은 아날로그 형태의 신호를 이용한 감시 장비와 VTR로 구성돼 있으나 이 경우 보관이 어려우며 화질 저하의 우려가 있다. 하지만 IP 멀티캐스팅 방식을 사용하는 경우에는 화질의 저하가 없으며 감시 내용의 저장 관리가 용이하다. 요즘은 많은 부분에서 사용하고 있으며, 특히 인터넷을 이용한 원격 감시시스템이 선보이고 있다.
2. 응용 사례
응용 사례에서는 직접적으로 설치하고 사용하고 있는 사례를 중점적으로 알아본다.
1) IP 멀티캐스팅과 저장 장치의 만남 – 미국 CNN (Cable News Network)의 응용 사례 미국의 대표적인 뉴스 전문 방송국인 CNN은 하루 24시간, 32개의 위성에서 전송되는 엄청난 양의 비디오 데이터를 처리하는데 IP 멀티캐스팅 방법, 스트림(Stream) 방법, 아카이빙(Archiving) 방법을 사용해 처리 하고 있다. 몇 년 전만 해도 거의 불가능하다고 생각했던 다양한 서비스와 즉각적인 서비스가 가능하게 된 것이다.
● CNN의 업무 분석
32개의 위성에서 수신된 데이터는 MPEG2 형태의 디지털 자료로 변환돼 데이터 저장 서버에 저장된다. 이때 MPEG2 파일은 원본 파일과 별도로 MPEG1 파일이 생성된다. MPEG2는 원본 보관용이고 MPEG1은 검색, 재생용으로 사용된다. 검색을 하고 검색 조건에 합당한 이미지를 찾으면 PC에서 MPEG1으로 재생해 내용을 확인한 뒤 정보를 제작국 또는 편집국으로 보낸다. 그러면 제작국이나 편집국에서는 같은 내용의 MPEG2 파일을 접수 받아 편집 또는 위성으로 송출한다. 이런 시스템은 자료의 관리와 보관 뿐 만 아니라 신속한 정보의 창출에 많은 효과를 줬다.
2) 최적의 네트워크 환경을 이용한 교내 서비스(D 대학교 교내 방송 서비스 – 4 채널 )
경북지역 소재의 대학교로 대단위의 학교 캠퍼스를 가지고 있던 D대학교의 경우, 막대한 예산을 들여 설치한 네트워크가 단순 Text의 전송에만 사용 하고 있었다. 이런 네트워크의 활용도를 극대화로 올리고 동시에 다양한 서비스를 위해 IP 멀티캐스팅 방송을 선택해 운영하고 있다.
3) 초고속 통신망을 이용한 원격 강의 및 화상회의
LG전자 종합기술원과 대전 KAIST를 한국 통신 초고속 망을 이용해 원격 강의 및 화상 회의 시스템을 구성했다. 이 경우에는 MPEG2 파일 포맷을 이용하면서 동시에 IP 멀티캐스팅 방식으로 데이터를 전송한다. 평상시에는 원격 교육을 위한 시스템으로 사용하고 필요시에는 화상회의로 이용 하기도 한다.
다음에는 실질적으로 사용되고 있는 프로그램에 대해서 알아보기로 하겠다.

그 동안 IP Multicasting에 관련된 개념에 대한 설명과 기술적 설명 그리고 응용 범위와 응용 사례에 대해 언급했다. 이번 호에는 실질적으로 사용하고 있는 프로그램에 대해 설명하겠다.

Optibase사의 Commotion UDP 프로그램
Commotion UDP는 옵티베이스(Optibase)사의 자체 개발 프로그램으로써 최초 T1,E1에서의 MPEG1 데이터 전송 시스템으로 시작했다. 점차 업그레이드(Upgrade)를 거듭하며 RS-422 포트(Port)를 이용해 MPEG2까지 전송 가능케 했고 현재는 특정 네트워크(Network)에 얽매이지 않고 UDP상에서 모든 전송을 할 수 있게 되었다.
이로 인해 Commotion UDP는 어떠한 Network 환경에서도 자연스럽게 연결이 가능해 여러 형태의 응용분야에 이용되고 있다.
1. Commotion UDP의 특징
1) 단일 및 다중 실시간 전송
● MPEG Commotion UDP는 표준 TCP/IP상의 네트워크를 통해 고품질 MPEG1 & MPEG2를 전송할 수 있는 시스템으로써 UDP네트워크로 연결된 모든 클라이언트(Client)에 고품질의 동영상 전송을 보장한다. ● MPEG Commotion UDP는 윈도95/NT 플랫폼(Flatform)의 모든 PC로부터 구현이 가능하며 사용자의 요청에 따라 가상 IP를 사용하는 가상 그룹 및 전체 네트워크 가입자에게 Uni-cast, Multi-cast, Broad-cast를 지원한다.
2) Professional 입력 & 다양한 출력 형식
● MPEG Commotion UDP는 NTSC 및 PAL 영상의 복수 입력을 지원하며 일반적인 비디오 신호인 컴포지트(Composite), S-VHS부터 엔코더(Encoder)에 따라 Professional 영상 신호인 아날로그 컴포넌트(Analog Component) 및 Digital D-1신호까지 받을 수 있다.
● 동영상 생성 형식은 인터넷을 지원하는 56Kbps의 낮은 대역폭의 화질부터 위성방송을 지원하는 고화질의 15Mbps대역폭까지 다양하게 지원이 가능하다.

clip_image009

3) 구성 및 응용분야
● MPEG Commotion UDP는 전송부와 수신부로 구성되며 전송부는 15M까지의 동영상 자료를 단일 또는 다중 원격 단말에 전송하고 수신부는 동영상 자료를 PC Monitor 및 TV Monitor에서 재생하면서 Local PC에 동영상 자료의 저장이 가능하다.
● 응용분야
·광고 기획사 및 Post Production의 원격 프리젠테이션(Presentation)
·사내 방송 System
·원격 감시 시스템 ·원격강의
·다중 VOD 구축

·동영상 전광판 시스템

2. Commotion UDP
만의 특징
● 별도의 Server를 이용하지 않으므로 1:1부터 1:무한대까지 확장이 가능하다.
● Live영상부터 기존의 저장된 MPEG Data까지 전송이 가능하다.
● 56Kbps∼15Mbps까지의 유연한 Data 대역폭의 지원이 가능하다.
● MPEG1 QSIF, MPEG1 SIF, MPEG2 Half D-1, MPEG2 Full D-1까지 다양한 MPEG 데이터의 전송이 가능하다.
● 한 PC에서 Multi Encoding해 다수의 동영상 Data를 Channel로 분류해 전송이 가능하다.
● 한 PC에서 Multi Decoding이 가능
● Uni_cast, Multi_cast, Broad_cast가 모두 지원된다.
● Receive시 동영상을 부분적으로 Local PC에 저장이 가능하다.
● Receive시 Full 화면 및 (H/W Decoder 사용 시) Full Frame이 가능하다.
● Receive단에서는 Active Movie를 지원하는 모든 Decoder를 지원하므로 MPEG1과 MPEG2 의 지원이 가능하다.
● MPEG1은 별도의 디코더(Decoder)를 이용하지 않고 Active Movie의 S/W Decoding이 가능하다.
● 1:1, 1:100, 1:무한대의 라이센스(License)로 인해 경제적인 시스템 구성이 가능하다.
3. MPEG1을 이용한 Commotion UDP의 실시간 방송의 구성
Optibase의 대표적인 MPEG1 Encoding 보드를 이용한 입력과 구성의 예이다. 특히 MPEG1 쇼사이트(Showsite)의 경우는 Freeview 기능이 내장돼있어 방송되는 내용을 TV를 통해 볼 수 있는 기능도 제공한다.
4. Commotion UDP의 사용 방법
Commotion은 방송을 보내는 트랜스미터(Transmitter)와 리시버(Receiver)로 구성돼있다. 이중 Receiver는 두가지의 형태로 MPEG 데이터를 받을 수 있다.
1) 트랜스미터의 사용 방법
● 트랜스미터의 초기 화면
트랜스미터는 사용자의 관리를 최대한 줄이면서 동시에 최대의 효과를 얻을 수 있도록 구성돼있다.
간단한 형태로 방송을 보낼 수 있도록 구성돼 있는 조작 버튼과 각종의 정보와 방송 진행 상태를 볼 수 있는 정보 창과 베타캠(BetaCam)장비를 사용 할 경우 자동으로 시간에 맞게 방송을 보낼 수 있도록 구성돼 있는 Point 기능 등이 있다. 또한 환경설정 창에서는 다양한 형태의 환경을 설정 할 수 있다.
● 환경 설정 창
·네트워크 설정 창 네트워크의 형태와 전송 보내는 데이터 크기를 정할 수 있다. 또한 여기서는 전달되는 스트림(stream)의 형태를 다양하게 규정 할 수 있다.
·UDP Setting 설정 창
여기서는 전송에 관련된 IP 포트와 Group등에 관련된 정보를 설정 할 수 있다. 특히 여기서는 Unicast, Multicast, Broadcast를 선택해서 방송 할 수 있으며 동시에 가상 IP(D Clase)를 사용해 규정 할 수 있다. 또한 여기서 설정해주는 IP 와 포트 번호는 멀티채널을 구성하는 중요한 구성 요소가 된다.
·일반 환경 설정 창
여기서는 일반적으로 MPEG Encoding 보드에 관련된 사항에 대해서 설정하는 창이다.
·Source 설정 창
이 창은 입력되는 비디오의 환경 설정과 동시에 오디오 입력 형태에 대한 환경 설정을 한다. 이 환경 설정의 경우 MPEG1 과 MPEG2 가 다르게 나타난다.
·Signal Calibration 설정 창
여기서는 입력되는 비디오와 오디오의 소스의 변경에 사용된다. 비디오의 경우 밝기, 컬러 조정, 대조 등의 효과를 주어 최적의 화면을 전송 할 수 있게 한다. 오디오의 경우 사운드의 소리를 조정 할 수 있어 입력 소스에 따라 전송되는 오디오 소리를 조정 할 수 있다.
·Target 설정 창
Target 설정 창의 경우 파일의 속성에 대해 설정하는 창이다. 방송하는 MPEG 데이터에 관련된 상세 Bit rate에 관련된 정보를 설정하며 전송하는 Stream 타입에 대해서도 설정한다.
2) Receiver의 사용 방법
Receiver의 경우는 그 사용 목적에 따라 전용 Play를 사용하기도 하고 WEB 브라우저를 사용하기도 한다. Commotion의 경우 버전 별로 구별돼있다. 3.0버전의 경우 Play을 사용하고, 3.5부터는 웹(WEB) 또는 윈도 미디어(Window Media)를 사용하기도 한다. 특히 WEB 버전의 경우 Active X 기술을 사용하기 때문에 다양한 형태의 Viewer를 WEB에서 구현 할 수 있으며 동시에 사용자의 홈페이지에 맞게 설계 할 수도 있다.
·독자 Player를 쓸 경우
Play 시작 버튼과 정지 버튼 그리고 환경 설정에 관련된 버튼이 있다. 또 독자 Player를 쓸 경우 가장 큰 장점인 저장에 관련된 기능도 포함하고 있다. 저장 버튼이란 실시간으로 방송되고 있는 내용을 각각의 클라이언트가 필요한 부분만 자기의 하드에 저장하는 기능이다. 특히 이 기능은 학교에서 많이 사용 할 수 있다(선생님이나 교수님은 방송되는 내용 중 교육에 필요하다고 생각되는 내용을 자신의 PC HDD에 직접 저장 할 수 있어 교육에 효과를 얻을 수 있다). 또한 Play 되는 화면도 PC나 TV를 선택해서 Play 할 수 있기 때문에 다양한 이용 범위를 가질 수 있다.
·ACTIVE X를 사용 할 경우
일반적으로 사용되는 WEB 브라우저를 사용 할 수 있어 사용자의 환경에 따라 디자인을 다르게 할 수 있다.
※ 이로써 그 동안 IP Multicasting에 관련된 내용에 대해서 부족하나마 알고 있는 부분에 대해서 설명했습니다. 개념의 설명, 응용 범위, 그리고 프로그램까지 최선을 다해 설명했습니다. 마지막까지 관심을 보여주신 여러분께 감사합니다.

새로운 방송 서비스 형태 VOD (2)
김 대 성
(창성미디어기술영업 대리)

디지털 영상 압축 기술의 발전은 초기에 저장 기능을 중심으로 개발됐다. 하지만 현재에는 네트워크의 발전과 전송 기술의 발전으로 인해 단순 저장의 형태에서 벗어나 전송에 초점을 두어 개발되고 있다. 전송 중에 가장 기본이 되고 많이 사용되는 것은 VOD 시스템 또는 스트림(Stream) 방식이라고 할 수 있다.
1. VOD의 기본 개념
VOD는 지난 호에서 언급한 것 같이 Video On Demand의 약자로 동영상이 필요할 때 언제든지 Service를 받을 수 있는 시스템과 서비스를 포함해 말한다. VTR과 TV를 이용해 영상을 보는 일반적인 방법 대신 네트워크와 PC(Set top box)를 이용해 영상을 보는 것이다.
영상 전송의 방법
VOD기술의 핵심은 영상을 어떻게 안정적으로 보내고 동시에 Client는 어떻게 Play를 하느냐에 달려있다. 또한 단순 영상의 전달과 Play 뿐만 아니라 Client가 자유자제로 조정이 가능해야 한다. 즉 일반적으로 VTR을 이용하는 것과 마찬가지로 앞으로 빨리 보기, 뒤로 보기, 정지, 구간 반복 등의 기능이 지원돼야 한다.
Video On Demand는 기본적으로 Unicast란 방식을 이용해서 Data를 전송한다. Unicast는 영상 Data를 요구하는 Client에게 각각의 정보를 전달 해주는 방법으로 전송 되어온 Data의 제어 권한이 각 client에게 있어 마음대로 data를 조정 할 수 있다.

clip_image010

Unicast 방식의 data 전송
Unicast는(Uni: 독립적인, 하나의 유일한, Cast : 전송, 방송)말 의미처럼 각각의 비디오 Data가 전송되어 서비스하는 것을 말한다.
이 방법은 앞에서 언급한 것 같이 각각의 Client에게 통제권이 있어 다양한 조정과 사용 목적을 가질 수 있는 장점이 있으나 서비스 구축비용이 상대적으로 많이 드는 단점이 있다.
예를 들어 동시에 한 개의 같은 data를 100명에게 서비스를 하고자 하는 경우에도 100개의 Data가 네트워크를 통해 전송되기 때문에 네트워크와 VOD 서버의 성능이 매우 우수해야 한다. 특히 대규모의 서비스(대단위 아파트 또는 인텔리전트 빌딩)를 구축하기 위해서는 천문학전인 비용이 든다.
2. VOD
서비스를 위한 필수 사항
VOD 서비스를 하기 위해서는 크게 3가지의 필수적인 장비 또는 프로그램이 필요하다.
1) VOD 서버(Stream 공급 프로그램과 서버) Video Data는 그 자체가 막대한 양의 정보를 가

지고 있으며 동시에 지속적으로 전송 및 전달돼야 한다. 즉 Data 전송 중 끊어짐이 발생한다는 것은 동영상 자체가 멈추는 것을 의미하기 때문이다. 그러므로 계속적으로 영상 Data를 전송하기 위한 특수한 HW나 SW가 있어야 한다.
● 하드웨어(HW) VOD 서버
HW VOD서버란 Video stream을 위한 전문 구조를 가진 서버로 동시에 많은 인원에게 서비스하기 위해 만들어진 서버이다. 특히 고속의 Input/OutPut 하드웨어 구조를 가지고 있기 때문에 많은 인원에게 안정적인 서비스가 가능하다. 하지만 하드웨어의 구조상 그 확장에 한계가 있으며 대규모의 서비스를 위해서는 막대한 비용이 필요하다는 단점이 있다. 초기 VOD서비스는 대부분의 HW VOD System을 채택해 운영했다.
● 소프트웨어(SW) VOD
하드웨어 VOD서버의 구축비용이 높고 확장성의 어려움, 그리고 일반 File서버의 성능 강화로 SW로 VOD를 처리해주는 기술이 활발하게 개발됐다. SW 방식의 경우 특별한 하드웨어 장치 없이 일반 File서버에서 CPU와 HDD만을 이용해서 Video Stream을 공급 해주는 프로그램이다. 이 기술의 가장 핵심은 어떤 방법으로 비디오 Data를 안정적으로 공급하는 냐에 달려 있었다. 하지만 SW VOD의 경우 그 가격대 성능은 우수 하지만 안정적인 서비스를 위해서는 아직도 풀어야 할 기술적 문제들이 많이 있다.
2) 네트워크망
VOD 서버나 SW엔진에서 나오는 비디오 Data를 전송하기 위해서는 그 전달 통로가 있어야 하는데 네트워크가 그런 일을 담당한다. 서버와 동시에 가장 중요한 핵심 요소라고 볼 수 있다. 이유는 아무리 많은 자료를 보관하고 이를 서비스 할 수 있는 서버가 있어도 그 전달 통로인 네트워크가 부실하면 서비스 할 수 없거나 안정적인 서비스를 할 수 없게 된다. 실 예로 인터넷상에서도 모뎀을 사용하는 사용자가 안정적인 비디오 데이터를 받을 수 없는 것과 같은 이유이다.
기본적으로 VOD 서비스는 고화질의 서비스를 하는 경우가 많이 있다. 즉, MPEG1이나 MPEG2로 서비스하는 경우에는 그 정보의 양이 엄청나기 때문에 서비스를 받고자 하는 Client와 공급 Data 포맷을 정할 필요가 있으며 이에 따라 Network를 설정해야 한다.
예)
·MPEG1의 경우 초당 1.5Mbps, 100명에게 서비스 할 경우 네트워크는 최소 200Mbps 이상의 Network을 사용해야 한다.
·MPEG2의 경우 초당 4Mbps 이상, 100명에게 동시에 서비스 할 경우 네트워크는 최 소 800Mbps 이상의 대역폭을 가지고 있어야 한다.
3) Client 프로그램
전송되어 오는 Data를 각각의 Client에서 Play하기 위해서는 전송 Data를 Play 할 수 있는 소프트웨어가 필요하다. 요즘에는 표준으로 Window Media player를 지원하는 형태의 전송 방법과 Data형식을 보낸다. 또 Client가 전송되어오는 data를 Play하기 위해서는 동영상 재생이 가능한 PC를 가지고 있어야 한다. 요즘 대부분의 PC성능은 MPEG2까지 SW로 Play 가 가능하도록 되어 있기 때문에 이 부분에 대해서는 걱정할 필요 없다.

앞으로의 VOD 시스템
미래에는 어떤 형태의 VOD 시스템이 개발될지 예상하는 것은 무척 어렵다. 4년 전(96년) 국내 최초의 VOD 서버는 그 당시 최고의 기술과 부품으로 만들어진 고성능의 하드웨어였다(필자는 97년 2월부터 VOD에 관련된 일을 했다). 당시 VOD 서버는 펜티엄 프로 200Mhz Dual CPU에 256MB이상의 메모리, 그리고 고성능의 SCSI로 구성된 3 Channel RAID 컨트롤러(12GB-7200RPM HDD)로 구성된 시스템이었다. (그 당시의 File서버는 Pentium Pro 200Mhz CPU 1개와 64∼128MB 메모리, 그리고 일반 2∼4GB HDD을 가진 시스템이 최고였다.) 이런 고성능의 하드웨어 VOD는 60∼120명에게 동시에 MPEG1 Data를 서비스하기 위해 만들어진 시스템이었다. 그 후 기술의 개발로 인해 다양한 형태의 VOD 서버가 출시되었다. 또한 고가의 하드웨어에 대처하기 위해 개발된 소프트웨어 VOD 엔진은 VOD 확산에 많은 영향을 주었다. 특히 하드웨어 VOD의 경우 대부분의 부품을 수입해 사용했으나 소프트웨어 VOD의 경우는 오히려 수출까지 하고 있다.

clip_image011

현재 VOD 시스템의 경우 그 사용 범위의 확대로 인해 다양한 형태의 시스템이 출시되고 있으며, 동시에 소프트웨어와 하드웨어 VOD가 가지고 있는 장점만을 살린 시스템 또한 출시되고 있다.
인트라넷에서 인터넷으로
VOD는 기본적으로 고화질의 MPEG 동영상을 전달하는 영상 정보 서비스로 그 동안의 사용 범위가 인트라넷환경(Fast Ethernet 이상의 환경)에 국한되어 있었다. 초기의 인터넷은 정보의 양이 많은 MPEG1·2 데이터를 전송하기 위해서는 적합하지 않았다. 이런 이유로 인해 인터넷상에서 사용되는 VOD(혹은 Stream서비스라고도 함)는 높은 압축률을 가진 다른 형태의 동영상 압축 포맷으로 개발됐고 다양한 형태의 VOD 서비스를 실시하게 되었다. (인터넷에서 사용되고 있는 포맷: ASF, RM, MOV 등)

※참고: (·asf: Microsoft Windows Media Server (WMT)에서 사용되는 포맷 형태로 기본적으로 MPEG4를 지원하는 코덱(Codec)을 포함한다.
·rm: RealServer에서 사용되는 동영상 포맷 형태이다.
·mov: Apple Computer(QuickTime)가 동영상 전송을 위해 만들어낸 Apple용 동영상 압축 표준, 현재에는 PC에서도 동시 사용이 가능하다.
이런 인터넷용 포맷들은 현재 인터넷 방송에 사용되고 있는 포맷들이다.)
하지만, 이런 포맷들은 높은 압축률로 인터넷상의 전송에는 장점을 가지는 반면, MPEG에 비해 동영상의 화질과 음질이 떨어지는 단점을 가지고 있다.
인트라넷에서 디지털 위성 및 방송으로
초기 VOD는 한정적인 지역에서의 서비스만 가능했었다. 하지만 현재는 그 서비스 지역을 확대하기 위해 다양한 방법을 사용하고 있다. 디지털 위성을 사용해, MPEG2 동영상 데이터를 전송하는 방법이나, 초고속 전용망을 이용해 MPEG1을 서비스하는 경우가 점차 늘어가고 있다. 특히 차세대 방법으로 디지털 위성을 이용한 VOD서비스 또는 NVOD 방송이 점차 늘어가고 있으며, 가까운 시일 안에 현실화 될 것으로 보인다. (일본의 경우 디지털 위성을 이용해 Near VOD서비스를 실시하고 있다)
일반적인 VOD System의 구성
일반적으로 VOD는 다음과 같은 구성을 가지고 있다. 물론 사용하고자 하는 목적과 기능에 따라 기능 및 구성에 차이가 있으며, 또 구축비용에 따라 구성의 차이가 날 수도 있다.
① VOD Engine (또는 Stream Engine, Server Program)
② Network 및 분산 처리(Load Balanced) 관리 프로그램
③ Data Base 관리프로그램
④ Broadcast(Multicast) 방송 프로그램
⑤ Scheduler(시간표 작성) 프로그램
⑥ 동영상 제작/편집 프로그램
⑦ Client Viewer 프로그램
⑧ SDK(Software Development Kit)
위의 구성 요소는 서비스 하고자 하는 내용 및 대상, 서비스 인원 등에 의해 결정되며, 필요에 따라 다양하게 구축 할 수 있다.
1) VOD Engine (Stream Engine, Server Program)
동영상을 전송해주는 핵심적인 부분으로 VOD Engine 또는 Streamer, Stream Server 등의 이름으로 불린다. 일반적으로 VOD 엔진의 구성은 H/W와 S/W로 구분 할 수 있으나 현재에는 그 구분이 거이 없어지는 추세이다. VOD 엔진은 각각의 프로그램에 따라 약간의 차이가 있을 수 있겠지만, 대부분의 경우
① 서비스되는 네트워크 환경에 대한 설정
② 스트림서버의 관리
③ 서비스 Data 관리
④ 접속되거나 서비스 받고 있는 Client에 대한 정보 및 관리
등의 기능을 가지고 있다. 특히 VOD엔진은 그 안정성이 가장 중요시 된다. 안정성의 차이로 인해 VOD서버의 가격차이가 발생한다고 해도 과언이 아니다. 대규모의 서비스나 유료 서비스, 또는 중요 동영상 관리 서비스를 하기 위해서는 고가의 안정성이 입증된 제품을 사용하는 것이 안정적이다.
2) Network 및 분산 처리 관리 프로그램 (load Balanced )
대규모의 서비스를 하기 위해 반드시 구축돼야 하는 구성 요소이다. 안정적인 서비스를 위해 분산 처리를 주목적으로 사용한다. 동시에 많은 사람들이 자료를 원할 경우, 한대의 서버에 집중되는 것을 분산 처리해, 언제나 안정적인 서비스를 할 수 있도록 하는 프로그램 또는 하드웨어 장비이다. 이런 네트워크 또는 분산 처리 시스템은 현재 인터넷 방송국 구축에도 많이 사용하고 있다. 소프트웨어에는 Microsoft사의 Load Balanced 프로그램 등이 있으며, 하드웨어 방법으로는 SAN장비 혹은 광 채널(또는 SCSI) 외장 RAID구성 방법이 있다.
3) Data Base관리 프로그램
만족스러운 서비스를 위해서는 다양한 종류의 자료가 있어야 하며, 이런 자료를 가장 빠른 시간 안에 검색해서 시청 할 수 있는 기능이 있어야 한다.
Data Base 관리 프로그램은
▲저장되어 있는 자료의 관리
▲동영상과 다른 자료( Text 문서, 이미지, 사운드 등)와의 연동 기능
▲각 주제별 분류 및 검색 기능
▲Index 기능 등의 기능을 가지고 있다.
이런 Data Base는 그 구성과 기능에 따라 가격 차이가 많이 나기 때문에 사용 목적에 따라 신중히 선택해야 한다. Data Base의 경우 반드시 그 Data Base를 지원하는 Data Base Engine(Data Base 엔진 : Access, SQL, Oracle 등)이 있는데 사용자료의 양과 접속자수 등을 고려해 선택하도록 한다.
4) 브로드 캐스팅 방송 프로그램
사용자의 요청에 의해서만 동영상을 전달하는 것이 아니라 실시간으로 동영상을 전달 할 수 있는 기능을 말한다. 이 방법의 경우 일반 TV 방송과 비슷한 개념이다. 단 무선으로 송출하는 것이 아니라 네트워크로 전송한다는 것에 차이가 있다.
요즘의 VOD System은 실시간 방송(Broadcast/ Multicast)을 기본으로 지원하는 구성 형태를 많이 사용하고 있다. 실시간으로 발생되는 Data를 바로 전송 할 수 있다는 것이 가장 큰 장점으로 통한다.
5) Scheduler(시간표 작성) 프로그램
관리자에 의해, 지정된 시간에 지정된 File또는 Live방송을 할 수 있게 해주는 기능이다. 즉, 하루나 일주일 단위의 방송 스케줄을 미리 작성해 저장하면 Data Base의 관리하에 자동으로 방송되는 기능이다. 이 기능이 완벽하게 구현된다면 1일 1인터넷 방송국 설립이 가능해지며, 각종 VOD 및 디지털 방송국의 인력 절감 등의 효과를 얻을 수도 있다. Scheduler는 단순한 방송의 관련 만으로도 작동 할 수도 있고, 모든 서버와 장비를 조정하여 작동 할 수 있다. 이런 기능의 차이는 사용하고자 하는 목적에 따라 구분된다.
6) 동영상 제작/편집 프로그램
VOD서버에 자료를 입력하거나 저장되어 있는 자료를 편집하는 기능을 말한다. 전문 방송 장비의 경우 PC와 통신이 가능하도록 제작되어 있다.(참고 RS-422 port) 이런 경우 PC에서 다양한 형태의 방송장비 조정이 가능해 다양하고 편리한 자료 입력이 가능하다. 편집의 경우에서는 이미 저장되어 있는 File을 불러 새로운 파일을 만들 수 있는 기능(Cut, Paste, Delete, Save 등)을 말한다. 이런 경우 별도의 편집 장비 없이 간단한 작업으로 새로운 파일을 만들거나 수정할 수 있는 장점이 있다. Vsoft의 경우는 편집과 동시에 Bookmark기능이 있어 다양한 형태의 데이터 베이스를 구축 할 수 있는 장점이 있다.
7) Client Viewer 프로그램
Client Viewer 프로그램이란 각각의 고유한 VOD Engine에서 오는 Data를 Play 해주는 것이다. 일반적으로 전송되어 오는 Data는 표준인 MPEG1·2를 사용하지만, 그 밖의 다양한 기능을 수행하기 위한 것들은 VOD Engine에 포함되어 있는 Viewer를 사용한다.
Viewer는 웹 형태로 되어 있는 것도 있고 단독 프로그램 형태로 되어 있는 경우도 있다. 이 경우 사용자의 환경에 맞게 선택해서 사용하면 된다. 일반적으로 VOD Engine 개발 업체는 Client Viewer에 대해서 별도의 라이센스 가격을 산정하고 있는 경우가 많다. 이런 경우 서비스 하고자 하는 인원수에 맞게 사용 라이센스를 구입해야 한다.
8) SDK의 지원
SDK란 Software Development Kit의 약자로 소프트웨어 개발 툴이다. 즉 VOD엔진 및 Client Viewer 중심으로 사용자의 요구나 사용 목적, 환경에 따라 다양하게 개발할 수 있는 환경을 지원하는 것이다.
대부분의 VOD 회사들이 SDK의 지원 범위를 Client Viewer의 변경 정도에만 국한하고 있다. 그 이유는 VOD Engine 프로그램의 도용을 막기 위한 것이다. 하지만, 일부 VOD Engine 제공 업체들은 VOD Engine까지 제공하는 경우도 있다.
VOD 시스템의 결정
VOD 시스템을 결정할 때에는 그 사용 목적과 동시에 서비스 사용자 수가 반드시 정해져 있어야 한다. 그래야만 정확하고 적합한 시스템 구축이 가능하기 때문이다. 또 이런 기본 요소를 먼저 결정하면 좀 더 저렴한 비용에 VOD 시스템을 구축 할 수 있을 것이다.
참 고: VOD Stream Engine 관련 회사 및 제품명
● 국 내:
·창성 미디어 (Digital csm)- Commotion UDP/ Vsoft/ Virage / 3cx
·Soft-On-Net Cats Stream
·Conhan system Inter-Stream
● 국 외
·Site: Vsoft

IPv6에서, 애니캐스트는 단일 송신자와 그룹 내에서 가장 가까운 곳에 있는 일부 수신자들 사이의 통신을 말한다. 이 용어는 단일 송신자와 다중 수신자 사이의 통신인 멀티캐스트, 그리고 단일 송신자와 네트웍 내의 단일 수신자 사이의 통신인 유니캐스트와 대비하여 존재한다.

애니캐스트는 한 호스트가 호스트 그룹을 위해 라우팅 테이블을 효과적으로 갱신할 수 있도록 하기 위해 설계되었다. IPv6는 어떤 게이트웨이 호스트가 가장 가까이 있는지를 결정할 수 있으며, 마치 유니캐스트 통신인 것처럼 그 호스트에 패킷을 보낼 수 있다. 그 호스트는 모든 라우팅 테이블이 갱신될 때까지, 그룹 내의 다른 호스트에게 차례로 애니캐스트할 수 있다.

clip_image012

유니캐스트는 네트웍상에서 단일 송신자와 단일 수신자간의 통신이다. 이 용어는 단일 송신자와 다중 수신자간의 통신인 멀티캐스트나, 또는 네트웍 상의 어떠한 송신자와 가장 가까이 있는 수신자 그룹간의 통신인 애니캐스트 등과 구별하기 위해 존재한다. 이전에 쓰였던 점대점(point-to-point) 통신이라는 용어가 유니캐스트와 의미상으로 비슷하다. 새로운 인터넷 프로토콜 버전 6, 즉 IPv6는 애니캐스트와 멀티캐스트 뿐 아니라, 유니캐스트도 지원한다

인터넷의 전송 방식은 전송에 참여하는 송신자와 수신자 관점에서 나누어 유니캐스트, 브로드캐스트, 멀티캐스트로 구분할 수 있다.

유니캐스트 전송 방식은 하나의 송신자가 다른 하나의 수신자로 데이터를 전송하는 방식으로 일반적인 인터넷 응용프로그램이 모두 유니캐스트 방식을 사용하고 있다. 브로드캐스트 전송방식은 하나의 송신자가 같은 서브네트웍 상의 모든 수신자에게 데이터를 전송하는 방식이다. 반면 멀티캐스트 전송방식은 하나 이상의 송신자들이 특정한 하나 이상의 수신자들에게 데이터를 전송하는 방식으로 인터넷 화상 회의 등의 응용에서 사용한다.

clip_image013

그룹 통신을 위하여 다중 수신자들에게 동일한 데이터를 전송하고자 할 경우 유니캐스트 전송방식을 이용한다면 전송하고자 하는 데이터 패킷을 다수의 수신자에게 각각 여러 번 전송해야 하며, 이러한 동일한 패킷의 중복전송으로 인해 네트웍 효율이 저하된다. 또한 수신자 수가 증가할 경우 이러한 문제점은 더 커지게 된다.

반면 멀티캐스트 전송이 지원되면 송신자는 여러 수신자에게 한 번에 메시지가 전송되도록 하여, 데이터의 중복전송으로 인한 네트웍 자원의 낭비를 최소화할 수 있게 된다.

멀티캐스트 전송이 일반적인 유니캐스트 인터넷 응용 분야와 다른 점은 우선 그 전송 패킷에 있다. 일반적으로 TCP/IP 상의 인터넷 응용 프로그램은 데이터의 송신자가 이를 수신할 수신자의 인터넷 주소를 전송 패킷의 헤더에 표시해 패킷을 전송한다. 그러나 멀티캐스트 전송을 위해서는 헤더에 수신자의 주소 대신 수신자들이 참여하고 있는 그룹 주소를 표시하여 패킷을 전송한다.

멀티캐스트 전송을 위한 그룹 주소는 D-class IP 주소 (224.0.0.0∼239.255.255.255)로 전세계 개개의 인터넷 호스트를 나타내는 A, B, C-class IP 주소와는 달리 실제의 호스트를 나타내는 주소가 아니며, 그룹 주소를 갖는 멀티캐스트 패킷을 전송받은 수신자는 자신이 패킷의 그룹에 속해있는 가를 판단해 패킷의 수용여부를 결정하게 된다.

그러나 현재 인터넷상의 라우터들이 대부분 유니캐스트만을 지원하기 때문에 멀티캐스트 패킷을 전송하기 위하여서는 멀티캐스트 라우터 사이에 터널링(tunneling)이라는 개념을 사용하여 캡슐화(encapsulation)된 패킷을 전송한다. 즉 멀티캐스트 주소를 가진 데이터 패킷 헤더 앞에 멀티캐스트 라우터간에 설정된 터널의 양 끝단의 IP 주소를 덧붙여 라우팅(routing)을 함으로써 멀티캐스트를 지원하지 않는 일반 라우터들을 거칠 때 기존의 유니캐스트 패킷과 같은 방법으로 라우팅되어 최종적으로 터널의 종착지로 전송될 수 있게 하는 것이다.

약 200년 전 프랑스 수학자 푸리에는 임의의 파형(波形)이 직교하는 기본 함수를 써서 무한급수로 전개할 수 있다는 사실을 발견했다. 전기공학 분야에서는 통산 직교함수로서 삼각함수(sin 또는 cos 등)를 쓴다. 이 푸리에의 작업은 통신 이론의 기초를 이룬다.

푸리에에 이어 나이크스트, 샤논 등이 나타나 케이블을 사용하여 데이터를 보낼 때의 기본적인 성질을 밝혀냈다. 상세한 이론은 생략하고 결과만을 소개하면, 케이블을 지나는 파형의 주파수가 작으면 (즉 서서히 변화하는 파형을 사용하면) 데이터의 전송 속도는 늦어진다. 반대로 빨리 변화하는 파형을 사용하면 그만큼 많은 데이터를 보낼 수 있다. 직감적으로 생각해도 당연한 일이다.

푸리에의 이론을 적용하면, 1개 케이블에 2개의 다른 주파수 파형을 싣고 수신 측에서 파형을 직교함수를 사용하여 분리하면 이론적으로는 1개의 케이블로 복수의 신호를 병행적으로 송신할 수 있다. 현실적으로는 통신로에 잡음이 있게 마련이어서 너무 가까운 주파수를 사용하면 수신 단에서의 분리를 정확하게 할 수 없다.

이같이 1개 케이블에 복수의 신호를 겹쳐 송신하는 것을 브로드밴드(broadband) 방식이라 한다. 이에 대하여 이더넷 케이블은 1종류 신호만을 운반하므로 베이스밴드(baseband) 방식이라 한다. 베이스밴드 케이블의 임피던스는 50Ω, 브로드밴드는 75Ω이다.

멀티미디어의 출현에 의해 브로드밴드 방식이 관심을 모으고 있다. 브로드밴드 케이블을 사용하여 가령 6MHz대를 아날로그 TV에 할당하고 300MHz대를 디지털을 디지털 데이터 전송에 할당한다고 하면 이상적인 상태에서 150Mbps의 전송 속도를 얻을 수 있다. 이더넷의 15배, FDDI에 비하여 1.5배의 속도가 실현 가능하다.

브로드밴드 케이블은 앰프의 조정, 튜닝에 유지비가 드는 반면 베이스밴드인 이더넷은 유지비가 안 들어 누구나 쉽게 쓸 수 있다. 브로드밴드는 실시간 제어등 처리시간이 문제인(mission critical)경우에 쓰고, 일반 사무실에서는 이더넷을 쓴다

베이스밴드 방식

베이스밴드 방식은 데이터(정보)를 0, 1로 부호화하여 그대로 전송매체로 보내는 방식을 말합니다. 이 방식은 하나의 채널에 하나의 신호만을 양방향으로 전송하는 원리로서 모뎀(변복조기)이 불필요하기 때문에 비용이 저렴해지지만 전송거리가 짧은(수 Km)것이 단점입니다.

브로드밴드 방식

부호화된 데이터(정보)를 변조기에서 아날로그 신호로 변조하고 필터를 통해서 제한된 주파수 성분만을 전송매체로 보내는 방식을 말합니다. 비트는 반송파의 진폭 및 주파수, 위상을 변화시켜 표현하게 됩니다. 브로드밴드 방식은 다른 주파수 대역을 별도의 채널에 부여하여 1개의 동축케이블9전송매체)에 다중화해서 전송할 수 있으나, 신호는 한쪽 방향만 전송하게 됩니다. 이 방식은 디지털 신호를 아날로그 신호로 변환하기 때문에 모뎀이 필요하므로 베이스밴드 방식보다 비용이 많이 들지만 전송거리는 수십 Km까지 늘릴 수 있는 장점을 가지고 있습니다.

Advertisements

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

%s에 연결하는 중