WavPack

오디오 코덱

순수 무손실, 독립 손실, 손실 주 파일과 보정 파일로 원본 데이터를 복원하는 하이브리드 모드를 지원하는 개방형 오디오 압축 형식.

상세 설명

WavPack은 David Bryant가 개발한 개방형 오디오 압축 형식으로, 확장자 `.wv`가 일반적이다. 순수 무손실, 손실, 하이브리드 세 모드로 동작하며 정수 PCM, 부동소수점 PCM, 다채널, 후기 버전의 DSD 등을 지원한다.

무손실 모드에서 WavPack은 예측, 채널 탈상관, 잔차 인코딩으로 오디오 중복을 줄이고 디코드 후 원 샘플을 복원한다. 인코딩 옵션은 예측 복잡도, 처리 속도, 파일 크기를 바꾸지만 올바르게 복원된 데이터는 바꾸지 않아야 한다. 형식은 독립적으로 파싱 가능한 블록으로 오디오와 메타데이터를 구성해 스트리밍, 오류 위치 특정, 다채널 확장에 유리하다.

하이브리드 모드는 WavPack의 특유 작동 방식 중 하나다. 인코더는 단독 재생 가능한 손실 `.wv` 주 파일을 생성하고 `.wvc` 보정 파일도 함께 만들 수 있다. 둘을 함께 쓰면 디코더가 인코딩 입력과 일치하는 무손실 오디오를 복원한다. `.wvc`는 독립 재생 가능한 두 번째 완전 트랙이 아니며, 보정 파일을 잃으면 주 파일은 재생되지만 손실 결과만 얻는다.

WavPack의 손실 모드는 MP3, AAC와 설계가 완전히 같지 않다. 예측 잔차 양자화 등으로 데이터량을 줄이며 이후 보정 파일과 결합하기 적합한 구조를 중시한다. 실제 청감과 압축률은 설정과 소스에 달린다. 독립 손실 주 파일을 일반 무손실 형식으로 변환해도 누락된 `.wvc`를 대체할 수 없다.

태그는 보통 APEv2 구조를 쓰며 텍스트, 커버, 리플레이 게인을 저장한다. WavPack은 디코드 시 원 파일 구조를 재구성하기 위해 일부 비오디오 부가 정보도 캡슐화할 수 있다. "원 파일 복원"과 "오디오 샘플 복원"은 인코딩 옵션과 입력 유형별로 따로 판단해야 한다.

WavPack, FLAC, ALAC 모두 PCM을 무손실 저장할 수 있지만 비트스트림, 메타데이터, 하드웨어 지원, 인코딩 특성은 다르다. 확장자는 기대 형식만 나타내며, 무손실 아카이브 검증에는 디코드 검증, 샘플 비교, 형식 내 검증 메커니즘이 필요하고 파일 크기만으로는 부족하다.