최근 수정 시각 : 2020-03-07 09:45:25

H.264

비디오 포맷
{{{#!folding [ 펼치기 · 접기 ] 코덱 MPEG(MPEG-1, MPEG-2, MPEG-4 Part.2), DivX, H.26x(H.261, H.262, H.263, H.264, H.265, H.266), WMV, Theora, VP8, VP9, AV1, Apple ProRes, Bink, GoPro CineForm
컨테이너(확장자) ASF, AVI, BIK, FLV, mkv, MOV, MP4, MPEG, Ogg, SKM, TS, WebM, WMV
}}} ||
그래픽 | 오디오 | 비디오



1. 소개2. 효율
2.1. 낮은 경우
3. 방송 규격4. 느린 보급 속도5. 프로파일
5.1. 종류
6. 버전
6.1. Version 1 (2003년)6.2. Version 2 (2004년)6.3. Version 3 (2005년)6.4. Version 4 (2005년)6.5. Version 5, 6 (2006년)6.6. Version 7 (2007년)6.7. Version 8 (2007년)6.8. Version 9 (2009년)6.9. Version 10 (2009년)6.10. Version 11 (2009년)6.11. Version 12, 13 (2010년)6.12. Version 14, 15 (2011년)6.13. Version 16 (2012년)6.14. Version 17, 18, 19, 20 (2013년)6.15. Version 21, 22 (2014년)6.16. Version 23 (2016년)6.17. Version 24 (2016년)6.18. Version 25 (2017년)6.19. Version 26 (2019년)
7. 레벨8. 여담

1. 소개

2003년에 발표된 동영상 표준 규격. 기존 MPEG-4 Part 2보다 발전된 비디오 코딩이라 AVC(Advanced Video Coding)로도 통용된다.[1]

2. 효율

화질 향상 겸 H.263의 두 배의 압축률을 가지는 것으로 목표로 개발되었고, 실제로 두 배에 가까운 효율을 구현한다. H.262와 H.263 모두를 대체할 만한 코덱으로, 압축률도 좋을 뿐더러 비교적 낮은 비트레이트에서도 좋은 화질을 가진다. 특히 이제까지의 MPEG 계열의 영상 코덱에서 잘 나타나던 눈엣가시인 깍두기 현상이 많이 줄어들었다. H.262/MPEG-2 Part 2 기반의 2시간 분량 DVD[2]를 H.263 또는 MPEG-4 Part 2(DivX, Xvid)에서는 VCD 2장에 담을 수 있었다면, H.264/MPEG-4 Part 10(AVC)에서는 VCD 1장에 담을 수 있는 압축 효율이라는 것. 물론 꼼수가 동원되어야 1장이라는 것이지 꼼수 없이 변환하려면 VCD 1장 반 정도인 1GB 용량은 되어야 한다. (VHS나 12cm 디스크를 넣는 카메라처럼 미니디스크를 넣는 타입에 쓰라고 만든 6cm짜리를 쓰면 1.4~1.6GB 정도가 나온다. 듀얼 레이어 미디어만 2GB대이다. 가격은 M.disc 가격만큼 비싸다 USB가 더싸다 4기가짜리인, 영화도 좀만 커도 못넣는 디스크가 훨씬... 가격에서도... )

2.1. 낮은 경우

H.264 코덱은 압축률이 정말 좋으나 인코더 성능과 옵션에 따라 개떡이 될 수도 있다. 특히 네이버스포츠 저화질 중계에서 갑자기 깍두기가 창궐하는 모습을 쉽게 찾아볼 수 있는데 인코딩 속도를 위해 움직임 검색 옵션을 대폭 낮췄기 때문이다.

3. 방송 규격

블루레이에 기본 코덱으로 채택되면서 H.264가 사용되기 시작되었다.

2006년 12월, HD 방송 규격에도 채택되어 싱가포르의 Mediacorp HD5가 세계 최초로 H.264로 송출되었다. DVB-T 방식으로 방송되었다. (2013년부터 싱가포르 디지털 TV가 DVB-T2로 완전 이행되고 채널 5를 포함한 모든 채널이 HD화되면서 2017년 3월 1일에 방송을 종료했다.)

이어서 일본 일부 지역과 유럽 쪽에서도 H.264로 HD 방송이 송출되기 시작했다. 이즈음 한국도 H.264로 바꿔주세요. 현기증 난단 말이에요란 밈이 퍼지기도 했다. 유선방송 중심(UHD TV, 3D TV, IPTV)으로 H.264로 전환되기 시작했다. 공중파 방송의 경우 MPEG2에서 H.264로 넘어가기 이른감이 있어 지지부진 하다가 UHD 방송을 시작히는 기점(2016년 전후)에 H.264를 건너뛰고 ATSC 3.0 즉 H.265를 채택했다.

4. 느린 보급 속도

정말 놀라운 화질을 보여줬지만 DivX, Xvid 대비 놀랍도록 높은 성능을 요구했기에 보급화는 더뎠다. 발표 당시의 컴퓨터 사양으로는 벅차서 발표한 지 3년 후 2006년 7월 코어 아키텍처 기반의 코어2 듀오가 출시되기 전까지는 CPU 성능만으로 1080p Full HD는 커녕 720p HD 영상 조차 재생하기에는 벅찼다. 2005년 펜티엄 D에 와서야 별다른 조치 없이 간신히 재생되었을 정도. 그래서 하드웨어 가속을 GPU에 구현하는 쪽으로 선회했으며, 이를 추상화하는 인터페이스가 MS의 DXVA이다. 주요 GPU 가속 기술은 다음과 같다.
  • 인텔 Clear Video: 인텔 메인보드 내에 온보드 형태로 내장된 GMA 계열의 디코더 전용 기술이었다. 클락데일 CPU의 내장그래픽부터는 Clear Video HD로 적용되었다.
  • 인텔 Quicksync Video: 샌디브릿지부터 적용된 인텔 비디오 인코더 겸 디코더 기술이다.
  • AMD Avivo HD: 현재의 UVD를 가리키는 기술이었다.
  • NVIDIA PureVideo

이런 가속 버프를 받으려면 해당 기술을 지원하는 그래픽카드를 장착하고 셋팅해야 가능하다. 설령 H.264 하드웨어 가속을 지원하는 보급형 그래픽카드가 장착된 PC가 많았더라도 엔비디아 제어판, 동영상 플레이어의 코덱 설정 등 그걸 다룰 줄 아는 일반인들이 상대적으로 많지 않고 운영체제 자체적으로 지원하지 않았을 때라 널리 쓰이기까지 규격 발표 이후 7년이나 걸렸던 것이다. 그래도 기술의 발전은 무서운 것이어서 2011년부터는 PC뿐만 아니라 일부 하이엔드급 스마트폰으로도 웬만한 H.264 1080p 30fps 정도는 가뿐하게 돌리는 편이다. PC의 경우 Windows 7이 제대로 돌아갈 성능이라면 이 코덱의 영상 재생에는 기본적인 문제는 없다. 다만 4K UHD(3840×2160) 이상의 해상도에서는 어지간한 컴퓨터에서도 재생이 어려운 좌절영상이 되기 쉽다.

따라서 나무위키의 관련 항목에 서술된 내용만 보면 무슨 괴물코덱이??? 할 수도 있지만, 서술된 내용이 갱신이 안 돼서 그런 것이지 실제로 지금은 그리 부담이 되는 코덱이 아니다. Windows 7 운영체제에 2006년 7월 이후에 출시된 중급형 라인 이상의 코어2 듀오 CPU라면 무난하게 1080p 영상을 감상할 수 있다. 이러한 편견을 가지게 해 준 원흉은 초창기에 제대로 GPU 가속을 지원하는 코덱의 보급이 늦었고 2009년에 출시된 Windows 7에 들어서야 H.264용 코덱이 기본으로 내장되었기 때문이다. 2010년에 들어서야 개나소나 쉽게 재생이 가능하도록 소프트웨어 보급이 완료되었다.

5. 프로파일

H.264는 개발될 당시의 컴퓨터 사양이 부족하다는 것을 알았고 프로파일과 레벨별로 나누어 해당되는 몇가지 규격에 맞추면 저사양에서도 무리없게 돌릴 수 있도록 설계가 되어 있다. 이와 관련된 내용은 영어 위키백과에 상세히 나와 있다.참고 영어의 압박 물론 고사양 용으로 만들어진 영상을 저사양에서도 돌릴 수 있다는 말은 아니라는 게 함정. 디블럭(Deblock) 필터 같은 걸 꺼서 저사양에서도 안 끊기게 보는 방법도 있지만 대신 깍두기 현상이 난무하게 되는 단점이 있다.

만일 H.264 영상이 제대로 돌아가지 않아 고민이라면 LAVFilters 항목을 참고

5.1. 종류

  • Baseline
  • Constrained Baseline
  • Main
  • Extended
  • High
  • High 10
  • High 10 intra
  • High 4:2:2
  • High 4:2:2 intra
  • High 4:4:4 Predictive
  • High 4:4:4 intra
  • CAVLC 4:4:4 intra
  • Multiview High

6. 버전

6.1. Version 1 (2003년)

  • Baseline : H.264 중에서 복잡도가 가장 낮은 타입으로, 주로 스마트폰, 태블릿, 동영상 기능이 있는 MP3 플레이어에서 재생할 동영상에 많이 쓰인다. 화질이 중요하지 않고, 모바일 기기에 주로 재생할 것이라면 이 타입으로 인코딩하는 것이 좋다. 하지만 2015년 기준으로 스마트폰과 태블릿의 성능이 많이 향상되어 초저가형이 아닌 이상 굳이 이 프로파일을 고집할 필요는 없다. EBSi의 인강 동영상 파일은 720p급 조차도 이 프로파일로 인코딩되어 있다.
  • Main : 중간 타입. 480p 동영상은 이쪽이 많다. SD화질 방송용으로도 쓰인다.
  • Extended : 데이터가 일부분 누락되어도 최대한 재생이 되도록 스트리밍에 최적화 되어있다.

6.2. Version 2 (2004년)

기존 Version 1의 마이너 체인지 버전.

6.3. Version 3 (2005년)

  • High : HD급 혹은 Full HD급 고화질 동영상에 많이 쓰인다. 연산이 가장 많이 소요되는 타입이라 저사양 기기에서 사용 시 CPU에 무리를 줄 수 있다. 720p 이상 동영상에 많으며 1080p에서는 사실상 표준이다. Full HD급 최신 태블릿은 High를 지원하므로, High로 맞춰 인코딩 하자.
  • High 10
  • High 4:2:2
  • High 4:4:4

6.4. Version 4 (2005년)

기존 Version 3의 마이너 체인지 버전. 새로운 종횡비가 일부 추가.

6.5. Version 5, 6 (2006년)

Version 3부터 존재했던 High 4:4:4 프로필이 제거되고 확장된 색역을 추가.

6.6. Version 7 (2007년)

  • High 4:4:4 Predictive
  • High 10 Intra
  • High 4:2:2 Intra
  • High 4:4:4 Intra
  • CAVLC 4:4:4 Intra

6.7. Version 8 (2007년)

  • Scalable Video Coding(SVC) 기술이 추가.
  • Scalable Baseline
  • Scalable High
  • Scalable High Intra

6.8. Version 9 (2009년)

기존 Version 8의 마이너 체인지 버전.

6.9. Version 10 (2009년)

  • Constrained Baseline

6.10. Version 11 (2009년)

  • Multiview Video Coding(MVC) 기술이 추가.
  • Multiview High

6.11. Version 12, 13 (2010년)

  • Stereo High

6.12. Version 14, 15 (2011년)

  • 4K UHD 해상도를 지원하는 Level 5.x 항목이 추가.
  • Progressive High

6.13. Version 16 (2012년)

  • Constrained High
  • Scalable Constrained Baseline
  • Scalable Constrained High

6.14. Version 17, 18, 19, 20 (2013년)

  • 3D 스테레오스코픽 비디오를 위한 깊이 맵 데이터 코딩이 추가.
  • 멀티뷰 비디오를 위한 확장된 서브-비트스트림의 에러 검출 기능이 추가.
  • 4K UHD TV를 위한 Rec. 2020 색공간 추가.
  • Multiview Depth High

6.15. Version 21, 22 (2014년)

  • Enhanced Multiview Depth High
  • Multi-resolution Frame Compatible(MFC) High

6.16. Version 23 (2016년)

6.17. Version 24 (2016년)

  • 8K 해상도 지원 (레벨 6, 6.1, 6.2)

6.18. Version 25 (2017년)

6.19. Version 26 (2019년)

7. 레벨

Level 최대 비트레이트 최대 해상도
최대 프레임속도
Baseline Profile
Main Profile
Extended Profile
High Profile High 10 Profile High 422 Profile
High 444 Profile
1.0 64kbps 80kbps 192kbps 256kbps 128x96 30.9fps
176×144 15.0fps
1.0b 128kbps 160kbps 384kbps 512kbps
1.1 192kbps 240kbps 576kbps 768kbps 176×144 30.3fps
320x240 10.0fps
352x288 7.5fps
1.2 384kbps 480kbps 1,152kbps 1,536kbps 320x240 20.0fps
352x288 15.2fps
1.3 768kbps 960kbps 2,304kbps 3,072kbps 320x240 36.0fps
352x288 30.0fps
2.0 2Mbps 2.5Mbps 6Mbps 8Mbps
2.1 4Mbps 5Mbps 12Mbps 16Mbps 352x480 30.0fps
352x576 25.0fps
2.2 352x480 30.7fps
352x576 25.6fps
720×480 15.0fps
720×576 12.5fps
3.0 10Mbps 12.5Mbps 30Mbps 40Mbps 352x480 61.4fps
352x576 51.1fps
720×480 30.0fps
720×576 25.0fps
3.1 14Mbps 17.5Mbps 42Mbps 56Mbps 720×480 80.0fps
720×576 66.7fps
1280×720 30.0fps
3.2 20Mbps 25Mbps 60Mbps 80Mbps 1280×720 60.0fps
1280x1024 42.2fps
4.0 1280×720 68.3fps
1920x1080 30.1fps
2048x1024 30.0fps
4.1 50Mbps 62.5Mbps 150Mbps 200Mbps
4.2 1280×720 145.1fps
1920x1080 64.0fps
2048x1080 60.0fps
5.0 135Mbps 168.75Mbps 405Mbps 540Mbps 1920×1080 72.3fps
2048x1024 72.0fps
1920x1080 67.8fps
2560×1920 30.7fps
3672×1536 26.7fps
5.1 240Mbps 300Mbps 720Mbps 960Mbps 1920×1080 120.5fps
2560×1920 51.2fps
3840×2160 31.7fps
4096×2048 30.0fps
4096×2160 28.5fps
4096×2304 26.7fps
5.2 1920×1080 172.0fps
2560×1920 108.0fps
3840×2160 66.8fps
4096×2048 63.3fps
4096×2160 60.0fps
4096×2304 56.3fps
6.0 3840x2160 128.9fps
7680x4320 32.2fps
8192x4320 30.2fps
6.1 480Mbps 600Mbps 1,440Mbps 1,920Mbps 3840x2160 257.9fps
7680x4320 64.5fps
8192x4320 60.4fps
6.2 800Mbps 1Gbps 2.4Gbps 3.2Gbps 3840x2160 300fps
7680x4320 128.9fps
8192x4320 120.9fps

8. 여담

  • x264의 경우 초창기에는 기본 옵션이 최적화되지 못해서 그냥 인코딩하면 화질이 별로였지만 2009년 이후로는 최적화된 preset을 내장시켰기 때문에 기본값으로 대충 인코딩해도 최상의 결과를 얻을 수 있다.
  • 쿼드코어의 인텔 코어 i5급은 되어야 720p 30fps 영상을 실시간으로 인코딩할 수 있다. 스마트폰은 훨씬 구린 CPU로 4K급 인코딩이 가능한 기종이 있는데 그건 전용 하드웨어(DSP)와 그 하드웨어에 최적화된 코덱을 사용하기 때문이다.


[1] avc1이라고 표현되기도 한다.[2] 일반적인 DVD는 최대 135분(2시간 15분) 분량을 담을 수 있다.

파일:크리에이티브 커먼즈 라이선스__CC.png 이 문서의 내용 중 전체 또는 일부는 H.26x 문서의 r117 판, 6번 문단에서 가져왔습니다. 이전 역사 보러 가기


분류