[데이터압축포맷-코덱만들기]나만의 멀티미디어 파일 포맷 만들기(멀티미디어 시스템 개론)
본 자료는 5페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
해당 자료는 5페이지 까지만 미리보기를 제공합니다.
5페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

[데이터압축포맷-코덱만들기]나만의 멀티미디어 파일 포맷 만들기(멀티미디어 시스템 개론)에 대한 보고서 자료입니다.

목차

(0) 여는 글 (p.2~)

(1) 텍스트 (p.5~)

(2) 정지영상 (p.8~)

(3) 음성(소리) (p.9~)

(4) 동영상 (p.11~)

(5) 맺음말

본문내용

수 있듯이 sync byte로 8bit transport error indicator로 1bit, payload unitstart indicator로 1bit, transport priority로 1bit, PID로 13bit, transport scarambing control로 2bit, adaptation field control로 2bit, continuity counter로 4bit를 쓰고 adaptation field도 뒤에 붙여진 구조이다.
그림 5에서는 PES(Packetised Elementary Stream) 구조에 대해서 나타내고 있다. PES의 헤더와 PES 패킷 데이터 바이트로 구성되며 헤더는 packet start code prefix 24bit, stream ID 8bit, PES packet length 16bit, optional PES header로 구성된다.
이렇게 구성되어진 패킷으로 영상과 음성이 전송되게 된다.
그림 6에서 보면 알 수 있듯이 음성 데이터가 영상 데이터에 비해 용량이 적으므로 stream되면서 영상 패킷을 많이 보내고 음성은 중간 중간에 끼워 넣는 식으로 구성된다. 가변적이기 때문에 음성과 영상 패킷의 비율이 정해진 것은 아니다.
그림 7과 같이 전송 후 decode할 때는 MUX를 통해서 선택적인 재생을 한다.(비디오 오디오 등) 관련 사진 출처 : E2G(Embedded system Expert Group Cafe),
그림 8과 같이 전체적인 MPEG동작을 생각해 볼 수 있다.
앞과 같은 구조는 유지하고 압축방식을 다르게 할 것이기 때문에 패킷 앞 포맷명에는 NRM(NR Movie의 줄임말)라고 적어주기로 하고 압축 방법에 대해서 이야기하도록 하겠다.
앞에서 이야기한 바와 같이 최대의 압축률을(재생이 끊기지 않는 범위에서) 하는 것이 나의 동영상 코덱의 방향이다. 그리하여 압축 방식은 여러 가지를 혼합하여(Hybrid) 쓸 생각이다. 인코딩 시간과 디코딩 시간이 좀 더 걸리겠지만 저장 용량이나 전송상의 이점을 부각시킬 생각이다.
압축에 대한 인코딩과 디코딩 기술은 코덱 파일 안에 자체적으로 있는 것이기에 따로 패킷 구조를 바꿀 필요는 없다. 다만 NRM이라는 포맷명을 가진 파일에 대해서는 앞으로 기술할 압축 방식으로 압축을 하고 디코딩해야할 것이다.
일단 위에서 한번 이야기했던 것과 같이 MPEG1의 포맷도 커버 가능해야한다. 그러기 위해서 안에 MPEG1과 호환성이 있는 테이블과 인트라 매크로블록 전용의 테이블을 마련해두어야 한다. 또 오류에 대해서는 은닉 기능을 쓴다. ATM망과 같은 곳에서 망의 폭주로 셀 상실이 생기면 영상 중의 일부 정보가 없어질 가능성ㅇ이 있는데 이때 잃어버린 매크로블록에 대해 주위 매크로 블록의 움직임 정보로부터 이 매크로블록의 움직임을 추측해서 참조화면에서 화소를 복사해오면 어느 정도의 오류은닉이 가능하다. 참고도서 : 멀티미디어 신호처리
MPEG는 혼성압축 방식을 쓴다. 즉 무손실 압축방법과 손실 압축방법을 모두 사용하는 것이다. 압축방법을 보면 데이터 준비=> 데이터 변환=> 양자화=> 무손실 압축의 4단계를 거친다. 용량을 위해서 화질에 파괴가 크지 않은 만큼의 DCT 과정을 거치고(손실 압축) 거기에다가 예측 압축 방법을 써서 압축률을 높인 후(동영상에는 이 방법이 좋다.) 마지막으로 엔트로피 압축(무손실 압축)을 사용할 것이다.
DCT방법이란 신호 에너지가 몇 개의 계수로 집중되게 하여서 저장되는 정보량을 줄이는 방법이다. 이 과정에서 손실이 생기나 사람이 인식하지 못할 정도로 그 level을 조절함으로 용량을 줄이고 품질의 손상은 줄일 수 있다. 그리고 엔트로피 압축 방법은 무손실 방법이라서 양자화된 데이터에 대한 손실 없는 압축이 가능하다. 중복된 데이터열 같은 것을 간단하게 표현하여서 이중 압축을 가능하게 한다. TEXT 압축에서 사용했던 방법들을 화면재생이 끊기지 않는 디코딩 시간을 고려하여서 최대로 사용해주면 될 것이다.
위에서 거론된 모든 압축 방법을 넣어서 압축률을 최대로 하고 다만 인코딩과 디코딩 시간의 증가라는 대가를 치른다. 기존의 MPEG 압축 방식에 내가 알고 있는 다른 압축 기술을 더함으로 인코딩 시간은 2배에서 10배까지 늘어날 것으로 보이고 디코딩시간은 2배가량 늘어날 것으로 보인다. 만약 재생 때 끊김 현상이 보인다면 압축 기술들을 하나씩 뺄 것이다. 아니 옵션에서 그 압축률에 대해서 선택할 수 있게 해주고 다만 한계를 정해줄 것이다. 선택 가능한 한계가 바로 끊김 현상이 일어나기 전의 Sampling Rate일 것이다.
(5) 맺음말
이번 과제를 하면서 각 파일에 대해서 다양한 지식을 알 수 있었다. 참고도서로 멀티미디어 신호처리와 디지털 오디오의 이해, (알기쉬운)정보통신과 멀티미디어 세계를 보며 수업시간에 배운 내용을 보충하여 보았다. 무엇인가 새로운 압축 방식을 생각해보려 했지만 딱히 떠오르는 것이 없었다. 결국 기존의 방식의 압축 방식을 쓰며 나만의 스타일로 압축 방식을 선택하여 조합하자는 결론을 내렸다. 내가 멀티미디어 플레이어를 만든다면 어떻게 만들까를 키워드로 잡고 하나씩 접근했다. 각 format별로 내가 구현할 수 있는 format 중 가장 나은 성능의 것으로 조합하여 텍스트, 소리, 정지영상과 동영상을 모두 아우를 수 있는 멀티미디어 코덱을 생각했다. 일단 기존의 방식을 그대로 써서 기존의 포맷과는 같았고 동영상 포맷 또한 틀은 MPEG2와 같게 하고 안에 있는 압축 방식을 좀 더 집어넣어 시간은 오래 걸리더라도 압축률을 더 높이는 방법에 대해 고민해보았다.
최종 정리 : 파일 형식을 보고 나의 멀티미디어 코덱에서 해당 코덱 방식을 써서 처리한다. TEXT는 자막파일로 처리하고 소리파일은 Wave, 정지영상은 BMP, 동영상은 MPEG2 방식으로 처리한다. 소리파일은 Wave형식을 쓰면서 옵션에 따라 다양한 압축이 가능하고 동영상의 MPEG2는 기준의 압축률보다 더 많이 늘리기 위해서 손실압축과 무손실 압축 방식들을 더 추가하여서 인코딩과 디코딩 시간은 늘어나지만 줄일 수 있는 만큼의 크기만큼 줄일 것을 목표로 한다.
  • 가격2,000
  • 페이지수17페이지
  • 등록일2009.06.20
  • 저작시기2009.6
  • 파일형식한글(hwp)
  • 자료번호#542300
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니