[include(틀:오디오 코덱)] ||||<table align=right><bgcolor=#ffffff> [[파일:macOS m4a icon.png|width=300]] || ||||<:> '''Apple Lossless''' || ||[[개발자]]||[[Apple|애플]]|| ||정식 버전||[[2011년]] 10월 28일|| ||[[운영체제]]||크로스 플랫폼|| ||종류||오디오 코덱|| ||확장자||.m4a, .caf|| ||[[라이선스]]||아파치 라이센스 2.0|| ||[[홈페이지]]||[[https://macosforge.github.io/alac/]]|| [목차] [clearfix] == 개요 == [[Apple]]에서 개발한 디지털 음악의 [[무손실 압축 포맷]]이다. Apple lossless, ALAC[* Apple Loseless Audio Codec], Apple 무손실 등으로 불린다. == 상세 == MPEG-4 파트 14에도 정의된 오디오 코덱으로 데이터는 기본적으로 [[MP4]] 컨테이너에 저장되고 확장자는 기본적으로 .m4a를 사용하지만 .mp4 확장자로도 사용할 수 있다. 아주 드물게 .caf 확장자도 볼 수 있는데 가장 쉽게 접할 수 있는 곳은 [[GarageBand]]나 [[Logic Pro]]의 일부 음원 파일이라고 한다. 그 외에 iOS의 벨소리 등 시스템 사운드의 확장자도 caf포맷이다. [[2004년]] 4월 28일, [[QuickTime Player]] 6.5.1에 포함된 것으로 처음 공개되었는데, [[2011년]] 10월 말 애플이 아파치 라이선스로 공개하여 [[오픈 소스]]가 되기 전까지 포맷이 비공개였다.[* 압축된 코덱을 재생하기 위해선 디코딩 과정이 필요한데 이 디코딩 방법을 비공개로 했다는 소리이다. 즉, 다른 플레이어나 장치에서는 재생 불가였다는 뜻.] 그럼에도 불구하고 프로그래머 David Hammerton와 Cody Brocious의 노력 끝에 코덱을 해석해 디코딩하는데 성공했고, [[C(프로그래밍 언어)|C]]를 기반으로 한 오픈소스 디코더를 배포하기도 하였다. Apple에서 개발한 다른 오디오 포맷도 있는데, 자세한 내용은 [[AIFF]] 문서를 참조하길 바란다. == 특징 == [[http://wiki.hydrogenaud.io/index.php?title=Lossless_comparison|무손실 코덱 간 비교표]] [[무손실 압축 포맷]]으로 [[FLAC]]와 구조적으로 상당히 유사하다. [[FLAC]]과는 다르게 압축 레벨 옵션이 전혀 없고 오직 한 방식으로만 압축하거나^^(스테레오 제외)^^ 2단계^^(스테레오, 미입력 시 일반 압축, --fast 입력 시 고속 압축)^^만 있다. FLAC의 압축 레벨에 따라 조금씩 차이는 있지만 실제 압축된 결과물은 [[FLAC]]쪽이 약간 더 용량이 작다. 또한 [[FLAC]]와는 달리 Error handling을 지원하지 않는다. 메타 태그를 독자적인 iTunes태그를 사용하는 점도 특징. 일반적으로 이 코덱은 음악 감상을 목적으로 사용되고 m4a 확장자를 사용하기 때문에 잘 알려지진 않은 사실이나 기본적으로 MP4 컨테이너에 저장 되기 때문에 일반적이지는 않은 조합이지만 mp4를 확장자로 하는 동영상의 음성 코덱으로도 사용이 가능하다. == 인코더/디코더 == 오픈소스로 코덱이 공개되었지만 이후 별다른 업데이트도 없고 현재까지도 Apple이 공식적으로 [[빌드]]해서 배포한 인코더가 없다. 공개된 소스를 받아서 빌드하면 libalac [[라이브러리]]가 나올 뿐이다. 간단한 인코더도 포함되어 있기는 한데, 사용하기 불편한 예제 수준의 물건이라서 비공식적으로도 배포하는 사람이 없다. 즉 ALAC 인코더라고 나온 것들은 대부분이 공개된 libalac 소스를 기반으로 한 비공식 인코더이고, 독자적인 소스를 쓰는 것도 조금 있다. 가장 유명한 것은 [[macOS]], [[iTunes]], [[QuickTime Player]] 등에 포함된 [[라이브러리]]의 ALAC 인코딩 기능을 사용하는 [[서드파티]] [[프론트엔드]] 인코더인 '''qaac'''이다. 이름에서 알 수 있듯 본디 AAC 인코딩을 목적으로 개발된 인코더지만 같은 라이브러리를 쓰므로 ALAC도 지원한다. 유명한 미디어 플레이어인 [[foobar2000]]의 컨버트 기능에도 qaac를 이용한 ALAC 인코딩 프리셋이 추가되었고, [[2015년]] 3월 5일자로 무료 인코더 팩에도 qaac가 포함됨에 따라 ALAC 인코딩이 좀 더 편해졌다. 단, qaac 인코더는 Apple Application Support(iTunes 등에 내장됨)가 시스템에 먼저 설치되어 있어야 동작한다. iTunes나 QuickTime Player을 설치하기 싫다면 qaac와 한 패키지인 refalac을 쓰면 된다. 이쪽은 Apple이 공개한 ALAC 소스를 사용하기 편하도록 qaac와 비슷한 프론트엔드로 만든 인코더. Apple 라이브러리에 의존성이 없으므로 iTunes 같은 걸 설치하지 않고도 쓸 수 있다. 어차피 qaac를 받으면 같이 들어있으니 마음에 드는 걸 쓰자. foobar2000의 경우 무료 인코더 팩을 설치하면 refalac을 컨버터 옵션에 추가해준다. [[FFmpeg]]는 직접 개발한 libavcodec [[코덱]]을 쓰고, libavcodec은 위에서 언급했듯 Apple이 오픈소스로 인코더/디코더를 공개하기 전에 [[리버스 엔지니어링]]으로 개발한 소스를 쓴다. 당연히 iTunes나 QuickTime Player 설치 없이 변환이 가능하다. AAC M4A에서 qaac보다 압축률이 떨어지는 것을 보아 인코더의 성능이 qaac보다 떨어지긴 하는 듯. == 사양 == * 샘플당 비트 수: 16, 20, 24, 32비트 * 샘플 레이트 * 공식 지원: 1[[헤르츠|Hz]]에서 384k[[헤르츠|Hz]]까지의 모든 정수 샘플 레이트 * 이론적: 1Hz에서 (2^32-1Hz)까지 * [[채널]]: 1~8채널 * 프리셋: 1개^^(스테레오 제외)^^, 2개^^(스테레오, 미입력 시 일반 압축, --fast 입력 시 고속 압축)^^ == 관련 문서 == * [[무손실 압축 포맷]] [[분류:Apple/소프트웨어]][[분류:코덱]]