코덱이란? Codec (Coder + Decoder)
일반적으로 코덱이라고 하면 영상, 음향 등 미디어 정보를 압축하는 기술을 가리킨다.
코덱은 어떠한 데이터 스트림이나 신호에 대해, 인코딩이나 디코딩, 혹은 둘 다를 할 수 있는 하드웨어나 소프트웨어를 일컫는다.
그리고 이를 위한 알고리즘을 가리키는 용어로도 쓰인다.
손실코덱과 비손실 코덱
1 손실 코덱
- 영상이나 음향 정보는 시공간적 연관성에 의해서 지각되기 때문에, 개별 데이터에 대하여 오차가 있더라도 문제가 없는 경우가 많다. 이에 따라 사람이 잘 느끼지 못하는 부분을 우선적으로 손실시켜 압축률을 크게 올리는 기술이 적용된다. 대부분의 유명한 비디오/오디오 코덱들이 손실 코덱을 사용한다.
2 비손실 코덱
- 압축된 데이터가 원본 스트림에 존재하는 모든 정보를 보유하고 있는 코덱을 비손실 코덱이라고 한다.
3 무압축
- 디지털 데이터가 다른 코덱 등을 거치지 않고 저장되고 변환되는 경우이다. RAW DATA라고 불린다.
인코딩과 디코딩 (Encoding & Decoding) (부호화 & 복호화)
압축 인코딩을 Coder
압축푸는 디코딩 Decoder
Error 지원가능한 코덱이 없습니다.
컴퓨터에 압축된 비디오 파일은 있는데, 컴퓨터에 그 파일을 열 수 있는 디코더가 없을 때,
해당하는 영상파일은 지원하는 코덱이 없다는 에러메세지가 뜬다.
Solution 1
- 컴퓨터에 있는 디코더에 맞게 파일을 변환
Solution 2
- 파일에 맞는 디코더를 찾아 다운로드
압축된 영상 파일을 다른 압축된 방식으로 변환하는 과정을 TransCoding 이라고 한다.
Transcoding = Encoding, 트랜스코딩 과정을 인코딩이라고 하기도 한다.
트랜스코딩 해주는 프로그램을 인코더(Encoder)라고 부른다.
아래는 데이터압축 소프퉤어 정보이다.
동영상 파일종류 (파일 확장자를 컨테이너라고 부른다.)
1 MP4 (MPEG-4) (Moving Picture Experts Group 4)
보통 H.264 나 H.265가 담겨있다.
가장 보편적인 비디오 컨테이너다.
1. ISO / IEA의 동영상 압축 표준 규격 파일 포맷
ISO(국제표준화기구), IEA(국제에너지기구)
2. 확장자는 .mp4
3. 호환성이 좋다. (H.264 코덱과 호환), 고품질
4. H265 코덱은 고화질, 고압축, 렌더링에 많은 시간이 걸린다.
* 렌더링이란 사람이 인지 가능한 영상으로 변환하는 과정이다.
2 MOV (MOVIE)
애플에서 만든 돈영상 형식, 맥에서 잘 작동하고 작동이 안되면 인코딩(코덱변환)이 필요하다. 고화질이다.
비압축부터 시작해서 HEVC까지 엄청나게 다양한 비디오 코덱을 담을 수 있다.
파일확장자만 보고 얘가 ProRes다 H.264다 판별할 수는 없지만, 대부분 ProRes라고 한다.
3 AVI (Audio Video Interleave)
MS사에서 만든 동영상 형식인데 비디오 오디오를 따로 압출,구식 파일
현재는 파일이 대용량이라서 사용이 잘 안되고 있다.
4 WMV
MS사에서 만든 동영상으로 압축률이 좋다. 윈도우 환경에선 실행 잘되지만, 압축은 잘 되지만
호환성이 안 좋아서 잘 사용되고 있지 않다고 한다.
5 MKV (Matroska Video) (러시아 전통인형)
다른 컨테이너와 다르게 오디오,비디오 뿐만 아니라 자막파일까지 한 번에 담을 수 있다.
이것도 오픈소스이고 영화베포용으로 사용한다고 한다.
코덱 종류 (코덱 = 비디오를 압축하는 방법)
일단 코덱의 종류가 다양한 이유는 원하는 품질이 다 다르고, 원하는 용량이 다르기 때문에
다양한 브랜드, 다양한 용도, 다양한 목적의 코덱들이 탄생하게 되었다.
H.264 (MPEG-4/AVC)
원본 대비 비디오를 약 1/200 정도 압축시켜주는 효율이 굉장히 좋은 코덱이다.
H.265 (High Efficiency Video Coding)
MPEG-2
ProRes
DNxHD
'Tech Blog > TCP-IP' 카테고리의 다른 글
비트레이트 (Bitrate) (0) | 2023.02.18 |
---|---|
미디어 프로토콜 정리 글 (0) | 2023.02.08 |
IPC란 ? (Inter-Process Communication) (0) | 2023.01.30 |
3way HandShaking, 4way HandShaking (0) | 2023.01.30 |
TCP IP의 I/O 모델 (Linux & Windows) (0) | 2023.01.29 |