기 타 YouTube 업로드의 진실과 공략법
2016.01.10 18:02
이 글에서는 YouTube가 영상을 받아서 개시하는 방식과 YouTube에서 자신이 업로드한 동영상의 화질을 극대화하기 위한 방법에 대해서 논하고자 합니다.
YouTube에서 사용자가 비디오 파일을 업로드 시도하려고 하면 동영상 관리자를 통해서 미국 LA 소재의 Google 본사 서버로 사용자의 비디오 파일이 전송됩니다. (1편당 128GB 용량 제한, 분량 무제한) KT 기가인터넷 회선에서 최대 120Mbps의 업로드 속도를 보여줍니다.
미국 LA 소재의 Google 본사 서버로 전송된 동영상은 인코딩되기 전에 먼저 저작권 위반 여부 및 음란성을 자체 DB와 대조를 함으로써 검증하는 과정을 거칩니다. 이 때 저작권 위반 사항이 발견되면 해당 동영상에 대하여 비공개로 강제적으로 변경되거나 광고 수익이 제한됩니다. 또한 음란성이 높은 동영상으로 검증될 경우 해당 동영상에 대한 강제 삭제는 물론 그 업로더에 대한 제재도 이루어질 수 있습니다.
이 과정이 통과되면 Google 본사 내부망에 있는 인코딩 서버로 동영상이 전송되어 인코딩 과정을 거치게 됩니다. Google의 YouTube 권장 업로드 인코딩 설정은 YouTube의 동영상 화질을 가늠할 수 있는 잣대일 뿐 사용자가 업로드하는 모든 동영상들은 예외없이 Google 서버에서 반드시 인코딩을 거쳐서 YouTube에 개시됩니다.
또한 실제 YouTube의 인코딩 결과물과는 전혀 맞지않는 내용도 있어 이용자들에게 혼란을 야기하고 있습니다. 특히 Google이 제시하는 YouTube의 권장 업로드 인코딩 화질의 비트레이트는 실제로는 YouTube 서버에서 최고값으로 세팅된 수치일 뿐 평균 비트레이트는 이보다 훨씬 낮은 것으로 드러났습니다.
https://support.google.com/youtube/answer/1722171?hl=ko
제가 YouTube에서 여러개의 소스를 다운로드 받아서 실제 YouTube의 인코딩 설정을 분석하였습니다.
1. H.264 코덱으로 스트리밍되는 비디오 소스 (*.mp4)
지원되는 브라우저: Microsoft Internet Explorer 10, Microsoft Internet Explorer 11, Microsoft Edge, Google Chrome, FireFox, Opera
인코딩 화질: 무난하거나 좋지 않음
비디오: H.264 High Profile (YUV 4:2:0으로 크로마 서브샘플링)
2개의 연속된 B프레임, 폐쇄 GOP
720p
평균 2Mbps, 최고 5Mbps
720p HFR
평균 3Mbps, 최고 7.5Mbps
1080p
평균 3Mbps, 최고 8Mbps
1080p (2K, 2048x1152, H.264 스트리밍 단독 해상도)
평균 7Mbps, 최고 18Mbps
1080p HFR
평균 5Mbps, 최고 12Mbps
1440p (2K)
평균 8Mbps, 최고 16Mbps
2160p (4K)
평균 20Mbps, 최고 45Mbps
오디오: AAC-LC
44.1Khz 16비트 스테레오 128~256kbps
2. VP9 코덱으로 스트리밍되는 비디오 소스 (*.mkv)
지원되는 브라우저: Google Chrome, FireFox, Opera
*Microsoft Edge는 Windows 10 RS1_Release 정식 빌드에서 지원 예정
인코딩 화질: 좋음 (동일 비트레이트에서 H.264 코덱 대비 2배의 압축률)
*1440p 및 1440p HFR 또는 그 이상의 원본 해상도를 지닌 동영상을 업로드 할 경우에만 스트리밍 가능
비디오: VP9 (YUV 4:2:0으로 크로마 서브샘플링)
2개의 연속된 B프레임, 폐쇄 GOP
720p
평균 2Mbps, 최고 5Mbps
720p HFR
평균 3Mbps, 최고 7.5Mbps
1080p
평균 3Mbps, 최고 8Mbps
1080p HFR
평균 5Mbps, 최고 12Mbps
1080p HFR (2K, 2048x1152, VP9 스트리밍 단독 해상도)
평균 6Mbps, 최고 14Mbps
1440p (2K)
평균 8Mbps, 최고 16Mbps
1440p HFR (2K, VP9 스트리밍 단독 해상도)
평균, 14Mbps, 최고 24Mbps
2160p (4K)
평균 20Mbps, 최고 45Mbps
2160p HFR (4K, VP9 스트리밍 단독 해상도)
평균 28Mbps, 최고 68Mbps
오디오: Vorbis
44.1Khz 16비트 스테레오 128kbps
이제 인코딩 시의 주의해야 될 사항으로 이 글을 정리하겠습니다.
YouTube는 어떤 동영상을 올리던지 반드시 인코딩을 거친 후에 개시합니다. 그러므로 최대한 원본에 대해서 화질 손실없이 YouTube에 업로드 하는 것이 좋습니다.
마스터링 또는 동영상 편집 및 후처리 과정을 거치는 경우 가급적 무압축 RAW 또는 MPEG2 Intra 코덱 (I-프레임만 사용), H.264 Intra 코덱 (소니 XAVC Intra) 등의 인트라 코딩 압축 (시간적 압축을 하지 않음으로 인해 개별 프레임이 전부 최상의 화질을 보장하므로 후반 작업에 유리한 화질을 보장)으로 원본을 촬영 및 캡쳐하고 H.264와 같은 DCT 양자화 코덱보다는 Apple ProRes나 모션 JPEG 2000처럼 최대한 원본에 가까운 화질을 보장할 수 있는 Wavelet 양자화 코덱으로 업로드를 하는 것이 좋습니다. 막연하게 비트레이트가 높고 화질이 좋은 것으로는 충분하지 않습니다.
이 경우 최대한 크로마 서브샘플링을 거치지 않은 상태로 YouTube 배포용 비디오를 출력하는 것이 좋으며 12비트 또는 10비트 컬러로 출력하는 것이 YouTube 서버에서 인코딩될 때의 컬러 밴딩을 최대한 최소화할 수 있습니다.
한편으로는 아무리 최고화질로 작업해서 업로드하더라도 YouTube의 지나친 속도 위주의 인코딩으로 인한 색수차 손실 (낮은 비트레이트 할당에 YUV 4:2:0 색수차 손실 압축까지 겹처서 생긴다고 보는 것이 더 타당합니다.)은 피해갈 수 없는 큰 문제입니다. 결국 시간이 지날수록 Google이 원하는대로 VP9 코덱을 통한 스트리밍 이용률이 올라가거나 VP9의 실패를 인정하고 뒤늦게 H.265 코덱을 도입하거나 현재의 YouTube의 할당 비트레이트로는 H.264 코덱을 통해 스트리밍을 이용하는 것은 이용자들로 하여금 지글거리는 색상에 픽셀 현상이 보일 정도로 정말로 끔찍한 경험을 야기하고 있다는 것은 확실합니다.
*부록 - 필자가 테스트한 YouTube 호환 가능 코덱
H.264 (*.mkv, *.mp4, *.mxf), MPEG-2, VP9 (*.webm, *.mkv), 모션 JPEG, 모션 JPEG 2000 (*.mkv, *.mxf), Apple ProRes (해외 다수 Mac 이용자들로부터 호환 가능하다는 정보 입수)
*부록 - 필자가 테스트한 YouTube 호환 불가 코덱
Avid DNxHD/DNxHR (인코딩 오류 자주 발생), GoPro Cineform, H.265 (삼성 미러리스 카메라 사용자들로부터 H.265 녹화본이 YouTube에서 호환 불가능하다는 정보 입수)
댓글 [4]
-
kungms 2016.01.10 20:51
100Mbps 인터넷으로도 2160p 영상을 실시간으로 볼 수 있겠네요. -
DarknessAngel 2016.01.10 23:54
구형 코덱류도 지원 됩니다 (divx/xvid/mpeg1/mpeg2/mpeg4/mp2/mp3)
-
언덕넘어 2016.01.12 11:41
수고하셨네요
조은정보감사합니다.
-
천사와의데이트 2016.01.14 04:36
H.265에 비해 VP9가 화질면에서 밀리는데..구글이 인수한 On2때문이라도 VP9을 밀고 있는듯