x264 리비전614 - h.264(avc)인코더
 hjwng
 조회 : 2880 , 2006/12/23 07:13
초고속 100Mb 다운 | 다운로드링크 복사

보드나라 자료실은 전용 고속회선으로 최대 100Mbps의 초고속 다운로드를 제공합니다
IE9 사용자는 다운로드가 응답하지 않을경우 도구-옵션-삭제 클릭하여 캐시 삭제후 클릭하세요

다른 AVC인코더인 ateme, elecard와 함께 용량 대비 화질이 가장 뛰어난 비디오 인코더입니다.
압축파일 안에는 커맨드라인 실행파일(x264.exe)만 들어 있습니다.

------------------------------------------------------------------------
r614 | pengvado | 2006-12-20 05:22:59 +0100 (Wed, 20 Dec 2006) | 2 lines
wrong reference frames were used with refs>=14 + pyramid (regression in r607)
------------------------------------------------------------------------
r613 | pengvado | 2006-12-19 22:24:47 +0100 (Tue, 19 Dec 2006) | 2 lines
enable thread synchronization primitives on linux too
------------------------------------------------------------------------
r612 | pengvado | 2006-12-19 10:35:45 +0100 (Tue, 19 Dec 2006) | 2 lines
fix a crash with x264_encoder_headers() + threads

[ 커맨드라인 x264인코딩의 간단한 예와 설명 ]

start /BELOWNORMAL x264.exe --pass 1 --qp 24 -o "출력파일.mkv" --min-keyint 1 --bframes 16 --ref 15 --ipratio 1.0 --stats "x264.stats" --partitions "all" --8x8dct --weightb --me "umh" --subme 7 --b-rdo --mixed-refs --bime --no-fast-pskip --b-bias -5 --progress "입력파일.avs"
(한 줄 입니다.)

- 이런 긴 명령문은 배치파일에 넣어야겠죠.
- 앞에 붙은 'start /BELOWNORMAL'은 인코딩작업의 우선순위를 낮추기 위함입니다. 인코딩 중에 다른 작업을 해도 버벅대지 않게... 더 낮추려면 start /LOW로...
- 입력파일에는 avs(aviSynth script)파일이나 avi 또는 y4m(yuv4mpeg)파일이 들어갈 수 있고, mkv나 mp4파일을 출력할 수 있습니다. 물론, 파일이름들앞에 디렉토리 경로가 올 수 있습니다.

- 인코딩시간보다 화질에 중점을 두고 옵션들을 설정했습니다.
- '--qp'옵션으로 화질을 결정합니다. 값이 낮을수록 화질이 좋지만 파일크기는 커집니다. 값이 높으면 그 반대...

- 코어가 2개 이상(듀얼코어 이상)인 컴퓨터에서는 '--threads auto'를 덧붙여 주면 인코딩 속도가 빨라집니다.
그 댓가로 쓰레드가 많을 수록 용량대비 화질이(조금)낮아지지만, 리비전607부터는 멀티쓰레딩 인코딩에 따른 파일크기늘어남(1패스) 또는 화질낮아짐(2패스)이 무척 줄어들어서 무시해도 될 듯 합니다.


위의 첫번째 인코딩(첫번째 패스)으로 나온 결과에 만족한다면 거기서 인코딩은 끝납니다.
하지만 출력되는 파일의 크기를 정하고 싶다면 인코딩을 한 번 더 해야 합니다.(두번째 패스)

두번째 패스에서는, 아래의 두 개 옵션만 바꿔서(나머지는 같게) 실행해야 합니다. 물론 출력파일의 이름은 바꿔도 됩니다.
'--pass 1' --> '--pass 2'
'--qp 정수값(value of quantizer)' --> '--bitrate 정수값(단위:Kb/s)'

- '--bitrate'로 파일크기가 정해집니다. 값의 단위는 Kb/s( kilobit per second )인데, 다음과 같이 값을 구할 수 있습니다.( 1kilobit=1000bit )
Kb/s값 = ( 원하는파일크기(Kbyte) * 1024 * 8 ) / ( 1000 * 동영상의길이(시간의 초단위) )
- 첫번째 패스에서 얻어지는 스탯파일(x264.stats)을 바탕으로 두번째 패스가 이루어집니다.
- 두번째 패스에서 추가로 '--qcomp'라는 옵션을 쓸 수 있습니다. 값의 범위는 0.0 ~ 1.0 (기본값: 0.6)
값이 클 수록, 모든 프레임들의 품질이 비슷해 집니다. '--qp'를 사용한 첫번째 패스처럼...
값이 작을 수록, 움직임이 많은 화면(구간)의 품질을 떨어트려서 확보한 용량으로 움직임이 적은(정적인) 화면(구간)의 품질을 향상시킵니다.
 
2


 
   이 게시물의 댓글 보기
로그인 | 이 페이지의 PC버전
Copyright NexGen Research Corp. 2010