반응형

아주 오래 전에 썼던 간단한 글에서도 비슷한 소재를 다뤘는데, 단순히 컴파일하는 것에 그쳤었다.

좀 다양한 라이브러리의 적용은 Zeranoe님[각주:1]이 다 알아서 해주셨고...

 

 

참고로, AAC 인코더는 여전히 최종 보스 솔루션이 존재하지 않으며, 선택지마다 조금씩 다른 특성이 있다는 점도 생각해야 한다.

 

1. 전체적인 품질은  iTunes가 가장 훌륭하다는데, 모두가 쓸 수 있는 건 아님

2. Nero AAC 인코더는 2010년으로 개발 및 수정보완이 완전히 중단됨

3. 원조 맛집 Fraunhofer FDK AAC는 오픈 소스이나 내가 임의로 실행파일을 배포할 수는 없음

 

iTunes의 품질이 가장 좋다는 평이 지배적이지만, 외국 포럼들을 다니다 보면 libfdk가 좋다는 평도 보인다.

나는 이중 1, 2번을 그동안 적용해왔는데, 3번을 적용하려니 직접 컴파일하는 방법 외엔 없어[각주:2] 직접 컴파일해보기로 했다.

MainConcept도 그랬지만, 많은 전문가들은 원하는 필터가 모두 탑재된 버전을 직접 컴파일하기를 바라는 것 같다.

하지만, FFmpeg은 파이프를 통해 서로 연동할 수 있기 때문에 대부분의 기능은 공식 배포 버전을 사용하고, 원하는 기능만 탑재된 버전을 별도로 만들어 사용하는 게 더 효율적[각주:3]인 것 같다.

 

FFmpeg을 빌드하려면 이젠 더 이상 일일이 컴파일러를 다운받아 직접 설정을 할 필요가 없다.

이미 대단히 대단하신 분들께서 깃허브에 솔루션을 올려두셨다.

일단 깃허브 media-autobuild_suite에서 최신 버전을 다운받아 압축을 푼다.

여기서 media-autobuild_suite.bat만 실행하면 된다.

그러면 계속 선택사항을 물어오는데, 답하는 대로 원하는 결과를 얻을 수 있다.

 

여기서는 libfdk-aac를 사용하는 것이 목적이기 때문에 첫 단계에서 라이센스 설정을 Non-free로 해야 한다.

공식이든 비공식이든 배포되는 버전은 모두 GPL 또는 LGPL을 따르기 때문에 프라운호퍼 코덱을 사용할 수 없다.

 

FFmpeg license: 1

 

여기부터는 대체로 무엇이든 하지 않는 것(2)을 선택하면 된다.

독립적으로 실행되는 이진파일도 필요 없고, VP8/VP9도 필요 없다...

 

 

비슷한 선택을 한참 하다가 FLAC이랑 FDK-AAC에서는 1을 선택한다.

FAAC설치할 필요가 없다. 이건 FDK-AAC와 다른 것이고, 품질도 떨어진다.

 

 

또 하나의 중요한 선택은 FFmpeg을 static하게 빌드하는지 여부다.

static을 선택하지 않으면 많은 dll 파일들이 함께 생성되는데, 보기에 그닥 좋지 않다.

 

 

조금만 더 선택을 하면 이제 필요한 파일들을 다운받고 알아서 컴파일하는 작업이 시작된다.

 

012

 

여기서 조금만 기다리면[각주:4] local64\bin-video 폴더에 컴파일된 결과가 저장된다.

 

이 버전을 활용하면 libfdk-aac를 이용해서 AAC 파일을 생성할 수 있다.

 

 

덧1. 컴파일 과정에서 종종 BSOD를 띄우는 현상이 발생하는데, 원인은 모르겠지만, 다시 실행하면 됨

덧2. 32비트 버전은 지원하지 않는다고 되어있지만, 선택도 되고, 컴파일도 됨

      아마도 모든 필터를 다 추가하는 경우에는 컴파일이 안 된다는 얘기 같음

 

 

  1. 2020년 9월에 운영을 중단하심 [본문으로]
  2. libfdk_aac가 적용된 ffmpeg.exe는 배포할 수 없음 [본문으로]
  3. MainConcept도 지원하고, nvenc도 지원하며, AMF도 지원하면서 libfdk_aac도 지원하는 버전 컴파일이 쉽지는 않을 듯... [본문으로]
  4. 조금만 이라고 썼지만, 실은 30분 이상 소요됨 [본문으로]
반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band