WavPack
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
WavPack은 오디오 파일을 압축하는 데 사용되는 무손실 오디오 코덱이며, `.wv` 확장자를 사용한다. 다양한 비트 심도와 샘플링 레이트를 지원하며, 하이브리드 모드를 통해 무손실 압축과 손실 압축을 결합하여 유연성을 제공한다. 오픈 소스이며, BSD 라이선스 하에 배포된다. FLAC이나 Apple Lossless보다 압축률이 높고, 하드웨어 및 소프트웨어 지원을 받으며, 1998년에 데이비드 브라이언트가 개발했다.
더 읽어볼만한 페이지
- 무손실 오디오 코덱 - FLAC
FLAC은 조시 콜슨이 개발한 무손실 오디오 코덱으로, 원본 음질을 유지하면서 파일 크기를 줄이기 위해 오디오 데이터를 압축하며, 4~32비트 샘플 크기, 최대 8 채널을 지원하고, 미국 국립 문서 기록 관리청에서 디지털 오디오에 선호되는 형식으로 지정되었다. - 무손실 오디오 코덱 - MPEG-4 ALS
MPEG-4 ALS는 MPEG-4 오디오 표준의 무손실 오디오 코덱으로, 높은 해상도와 샘플링 속도, 멀티 채널 오디오 및 스트리밍을 지원하지만 널리 사용되지는 않았다. - 자유 멀티미디어 코덱 - FLAC
FLAC은 조시 콜슨이 개발한 무손실 오디오 코덱으로, 원본 음질을 유지하면서 파일 크기를 줄이기 위해 오디오 데이터를 압축하며, 4~32비트 샘플 크기, 최대 8 채널을 지원하고, 미국 국립 문서 기록 관리청에서 디지털 오디오에 선호되는 형식으로 지정되었다. - 자유 멀티미디어 코덱 - Vorbis
Vorbis는 Xiph.Org 재단에서 개발한 로열티 없는 자유 소프트웨어 오디오 코덱으로, MP3의 대안으로 개발되어 가변, 평균, 고정 비트레이트를 지원하며 갭리스 디코딩을 통해 끊김 없는 재생이 가능하고 MP3보다 나은 음질을 제공한다. - 오디오 파일 포맷 - MP3
MP3는 MPEG 표준의 오디오 압축 형식으로, 인간의 청각 심리를 이용하여 음질 저하를 최소화하며 데이터를 압축하고, 1991년에 발명되어 2017년 특허 만료로 퍼블릭 도메인이 되었다. - 오디오 파일 포맷 - 고급 오디오 부호화
고급 오디오 부호화(AAC)는 MP3 후속 코덱으로 설계되어 더 나은 음질을 제공하며, ISO/IEC 표준으로 다양한 프로파일과 기술을 통해 발전하여 아이튠즈 스토어, 유튜브, 디지털 방송 등에서 널리 활용되는 디지털 오디오 데이터 압축 표준이다.
| WavPack - [IT 관련 정보]에 관한 문서 | |
|---|---|
| 소프트웨어 정보 | |
| 이름 | WavPack 소프트웨어 |
| 개발자 | 데이비드 브라이언트 |
| 최신 출시 버전 | 5.7.0 |
| 최신 출시 날짜 | 2024년 2월 29일 |
| 운영 체제 | 크로스 플랫폼 |
| 장르 | 오디오 코덱 컨테이너 |
| 라이선스 | BSD 라이선스 |
| 웹사이트 | wavpack.com |
| 파일 포맷 정보 | |
| 이름 | WavPack 파일 포맷 |
| 확장자 | .wv (.wvc는 하이브리드 파일 전용 보정 파일) |
| MIME 형식 | audio/x-wavpack (.wv), audio/x-wavpack-correction (.wvc) |
| 매직 넘버 | wvpk |
| 포함된 포맷 | Matroska (필수 아님) |
| 개방 여부 | 예 |
| 사용료 | 예 |
| 타입 | 무손실 오디오 |
2. 특징
WavPack은 오픈 소스이며, BSD 계열 라이선스로 제공되어 자유롭게 사용할 수 있다. 또한, 윈도우, macOS, 리눅스 등 다양한 운영 체제를 지원하는 멀티 플랫폼 소프트웨어이다.[1][2]
WavPack은 오류 복원력이 뛰어나 손상된 파일에서도 데이터를 복구할 수 있으며, 스트리밍 기능을 지원하여 파일을 완전히 다운로드하지 않고도 재생할 수 있다. 멀티 채널 오디오 및 고해상도 오디오를 지원하며, 하이브리드/손실 모드를 제공한다.[1][2]
Rockbox 펌웨어를 통해 일부 하드웨어에서도 WavPack을 지원하며, ID3v1, APEv2 태그와 같은 메타데이터 태그 및 RIFF 청크를 지원한다. ReplayGain과 호환되며, Win32용 자기 압축 해제 파일을 생성할 수 있다. 32비트 부동소수점 스트림과 큐 시트 포함을 지원하며, MD5 해시를 사용하여 빠른 무결성 검사를 할 수 있다.[1][2]
WavPack은 대칭 모드와 비대칭 모드를 모두 지원하여 인코딩 속도를 조절할 수 있다. 또한, 잘 알려진 퍼블릭 도메인 기술만을 사용하며, 특허를 취득한 적이 있는 어떠한 기법이나 알고리즘도 사용하지 않아 오픈 소스 및 로열티 프리임을 보장한다.[2]
2. 1. 압축률
WavPack은 오디오 파일을 `.wv` 확장자로 압축한다. .WAV 파일 형식을 가진 8비트, 16, 24 그리고 32 비트 부동소수점 오디오 파일을 압축할 수 있으며, 서라운드 사운드 스트림과 높은 주파수의 샘플링 레이트를 지원한다. 다른 무손실 오디오 압축 코덱과 마찬가지로 압축률은 소스에 따라 달라지지만, 일반적인 팝 음악 파일의 경우 보통 30% 내지 70%의 압축률을 보여준다. 클래식 음악이나 다이내믹 레인지가 큰 소스에 대해서는 더 나은 압축률을 제공한다.[2]WavPack은 비트 심도 8, 16, 24, 32비트(32비트는 정수형/부동소수점 수형 모두 지원) 및 샘플링 주파수 6kHz - 192kHz의 펄스 부호 변조 방식(PCM)과, 펄스 밀도 변조 방식(PDM)인 DSD (DSDIFF, DSF)를 지원한다. 또한 서라운드 사운드 스트림도 지원한다. 압축률은 다른 무손실 압축 방식과 마찬가지로 음원에 따라 다르지만, 대략 30%에서 70% 정도이다.
다른 무손실 압축 방식과 비교했을 때, WavPack은 평균적으로 FLAC나 Apple Lossless보다 압축률이 높고, TAK와 비슷한 빠른 인코딩 및 디코딩 속도를 제공한다.
2. 2. 하이브리드 모드
WavPack은 "하이브리드" 모드를 지원하는데, 이 모드는 손실 압축 파일(.wv)과 "보정" 파일(.wvc) 두 개를 만든다.[1] 이 두 파일을 함께 사용하면 완벽하게 원음을 복원할 수 있다. 또는, 비교적 작은 크기의 고품질 손실 압축 파일(.wv)만 사용할 수도 있다.[1][2]이러한 방식은 손실 압축 코덱과 무손실 압축 코덱의 장점을 모두 제공한다. 손실 압축 알고리즘은 ADPCM과 유사하다.[1] 하이브리드 모드는 부동 소수점 데이터를 처리할 수 있지만, 무한대나 NaN과 같은 "예외" 값이 없을 때만 가능하다. DSD에 대한 손실 압축 알고리즘이 없기 때문에 DSD는 처리할 수 없다.[1]
OptimFROG DualStream, MPEG-4 SLS, DTS-HD 마스터 오디오도 이와 비슷한 "하이브리드" 기능을 제공한다.[1][2]
3. 역사
데이비드 브라이언트(David Bryant)는 1998년 중반에 WavPack 개발을 시작하여 1998년 8월 15일에 버전 1.0을 출시했다. 이 첫 번째 버전은 오디오를 무손실로 압축 및 압축 해제했으며, 이미 무손실 인코더 중 최고의 효율 대 속도 비율을 자랑했다.[4]
버전 1.0 출시 직후, 손실 인코딩을 특징으로 하는 v. 2.0(1998년 9월 2일)이 출시되었다(데이터 감소를 위해 예측 잔여물의 양자화만 사용, 심리 음향 마스킹 모델은 스트림에 적용되지 않았다).
1999년에는 새로운 "고속 모드"(압축률은 감소했지만)가 있는 버전 3.0(1999년 9월 12일)이 출시되었으며, 원시(헤더가 없는) PCM 오디오 파일의 압축과 32비트 순환 중복 검사를 사용한 오류 감지가 추가되었다.
3.x 버전 후반에 추가된 기능은 인코더가 손실 파일과 수정 파일을 생성하여 둘 다 원본과 동일한 품질의 PCM 스트림으로 압축 해제할 수 있는 "하이브리드" 모드이다.[5]
WavPack 4에서는 새로운 파일 형식 구조가 도입되었다. 또한 저자는 향후 개발에 대한 가능한 힌트를 담은 4.40 "로드맵"을 게시했다.[6] WavPack 5는 DSD 압축을 지원한다.
4. 지원
WavPack은 다양한 기능을 지원하여 사용자들이 편리하게 오디오 파일을 압축하고 관리할 수 있도록 돕는다. 주요 특징은 다음과 같다.
- 오픈 소스이며, BSD 계열 라이선스로 제공되어 자유롭게 사용 및 수정이 가능하다.
- 멀티 플랫폼을 지원하여 윈도우, 리눅스, macOS 등 다양한 운영체제에서 사용할 수 있다. 지원하는 운영 체제는 UNIX 및 유닉스 계열 (리눅스, macOS, Solaris, FreeBSD, OpenBSD, NetBSD, Tru64, HP-UX 등)과 Windows, DOS, Palm OS, OpenVMS이다.
- 지원하는 아키텍처는 x86, ARM, PowerPC, AMD64, IA-64, SPARC, Alpha, PA-RISC, MIPS, 68k 등이다.
- 오류 수정 기능을 통해 데이터 손상에 대한 안정성을 높였다.
- 스트리밍을 지원하여 파일을 다운로드하지 않고도 실시간으로 재생할 수 있다.
- 다중 채널 오디오 및 고해상도 오디오를 지원하여 고품질 음원을 즐길 수 있다.
- 하이브리드 모드를 통해 손실 압축과 무손실 압축의 장점을 모두 활용할 수 있다.
- 메타데이터로 (ID3v1, APEv2 태그)를 지원한다.
- RIFF 청크를 지원한다.
- ReplayGain과 호환된다.
- Win32용 자기 압축 해제 파일을 만들 수 있다.
- 32비트 정수/부동 소수점 스트림을 지원
- 큐 시트를 포함하여 지원한다.
- MD5 해시를 사용한 고속 완전성 검사를 지원한다.
- 대칭 모드와 비대칭 모드가 있다(인코딩 시간이 다름)
4. 1. 소프트웨어 지원
DeaDBeeF, foobar2000,[7] Jack! The Knife 등의 일부 소프트웨어는 이 형식을 기본적으로 지원하며, 다른 소프트웨어는 플러그인이 필요하다. 공식 WavPack 웹사이트는 Winamp, Nero Burning ROM 등 여러 애플리케이션용 플러그인과 DirectShow 필터를 제공한다.[8] [9] foobar2000[10] 자체 및4. 2. 하드웨어 지원
Rockbox 오픈 소스 펌웨어를 설치하면, 디지털 미디어 플레이어에서 WavPack을 지원할 수 있다. 예를 들어, 아이리버 제품이나 아이팟 등이 있다.[22]코원의 코원 A3도 WavPack을 지원한다.
| 구분 | 지원 기기 |
|---|---|
| 기본 지원 | 코원 A3 PMP |
| 비기본 지원 | 아이팟 (Rockbox 펌웨어 설치 시) |
| 아이리버 H100 시리즈 (Rockbox 펌웨어 설치 시) | |
| 아이리버 H300 시리즈 (Rockbox 펌웨어 설치 시)[12] | |
| 안드로이드 스마트폰 및 태블릿 (타사 미디어 플레이어 소프트웨어 설치 시) | |
| 크롬OS 기기 (Linux 서브 시스템 또는 Android Play Store에 설치된 미디어 플레이어 소프트웨어 사용) |
5. 기술
WavPack은 8비트, 16비트, 24비트 및 32비트 고정 소수점 및 32비트 부동 소수점 PCM 오디오 파일을 .WAV 파일 형식으로 압축(무손실 복원)할 수 있으며, DSDIFF 또는 DSF 형식의 DSD 입력도 처리할 수 있다.[1] 또한 서라운드 사운드 스트림과 높은 샘플링 속도도 지원한다. 다른 무손실 압축 방식과 마찬가지로 데이터 감소율은 소스에 따라 다르지만, 일반적인 대중음악의 경우 일반적으로 30%에서 70% 사이이며, 클래식 음악 및 다이내믹 레인지가 더 큰 다른 소스의 경우 이보다 약간 더 우수하다.[2]
WavPack은 "하이브리드" 모드를 통해 무손실 압축 기능을 제공하지만, 이 경우 두 개의 파일을 생성한다. 하나는 자체적으로 사용할 수 있는 비교적 작고 고품질의 손실 압축 파일(.wv)이고, 다른 하나는 손실 압축 파일과 결합하여 완벽한 무손실 복원을 제공하는 "수정" 파일(.wvc)이다. 이를 통해 손실 압축 코덱과 무손실 코덱을 함께 사용하는 효과를 얻을 수 있다. 손실 압축 알고리즘은 ADPCM과 유사하다.
하이브리드 모드는 부동 소수점 데이터를 처리할 수 있지만, 무한대나 NaN과 같은 "예외" 값이 없을 때만 가능하다. DSD에 대한 손실 압축 알고리즘이 없기 때문에 DSD는 처리할 수 없다.
OptimFROG DualStream, MPEG-4 SLS, DTS-HD Master Audio에서도 유사한 "하이브리드" 기능을 제공한다.
WavPack은 고속 작동을 보장하기 위해 정수 수학으로 완전히 구현된 예측기를 사용한다.[13] "고속" 모드에서 예측은 단순히 이전 두 샘플의 산술 외삽이다. 예를 들어, 이전 두 샘플이 -10과 20이었다면 예측은 50이 된다. 기본 모드에서는 간단한 적응형 계수가 추가되어 예측에 대한 이전 샘플의 영향을 가중시킨다. 위의 예에서 결과 예측은 영향을 받지 않는 20에서 전체 영향을 받는 50까지 다양할 수 있다. 이 가중치 계수는 오디오 데이터의 변화하는 스펙트럼 특성에 따라 지속적으로 업데이트된다.
생성된 예측은 인코딩할 실제 샘플에서 빼서 오류 값을 생성한다. 모노 모드에서 이 값은 코더로 직접 전송된다. 그러나 스테레오 신호는 두 채널 간에 추가로 활용할 수 있는 상관 관계를 갖는 경향이 있다. 따라서 왼쪽 및 오른쪽 오류 값의 차이와 평균을 나타내는 두 개의 오류 값이 계산된다. "고속" 모드에서는 이러한 두 개의 새로운 값이 왼쪽 및 오른쪽 값 대신 코더로 전송된다. 기본 모드에서는 차이 값은 항상 세 값(평균, 왼쪽 또는 오른쪽) 중 하나와 함께 코더로 전송된다. 적응형 알고리즘은 채널의 변화하는 균형을 기반으로 전송할 세 가지 중 가장 효율적인 값을 지속적으로 결정한다.
WavPack은 Rice 코딩 대신 특수 데이터 인코더를 사용한다. Rice 코딩은 이러한 유형의 데이터에 최적의 비트 코딩이지만, WavPack의 인코더는 덜 효율적(샘플당 약 0.15 비트, 16비트 데이터의 경우 1% 미만)이다. 그러나 몇 가지 장점이 있다. 첫째, WavPack의 인코더는 인코딩 전에 데이터를 버퍼링할 필요가 없어 각 샘플을 비트 코드로 직접 변환한다. 이는 계산 효율성이 높고 코딩 지연이 중요한 일부 애플리케이션에서 유리하다. 둘째, 모든 유효 비트(암시된 "1" MSB)가 직접 전송되므로 손실 인코딩에 쉽게 적용할 수 있다. 예를 들어, 각 샘플의 가장 중요한 3개의 비트(부호 포함)만 전송하거나, 부호와 암시된 MSB만 전송하여 평균 3.65 비트/샘플을 얻을 수 있다.
이 코딩 방식은 WavPack의 "손실" 모드를 구현하는 데 사용된다. "고속" 모드에서 비적응적 상관 제거기의 출력은 지정된 비트 수에 대해 가장 가까운 코딩 가능 값으로 반올림된다. 기본 모드에서는 적응적 상관 제거기가 사용되어 평균 노이즈를 약 1 dB 감소시키고, 현재 및 다음 샘플을 모두 고려하여 더 나은 코드를 선택하여 노이즈를 추가로 1 dB 감소시킨다.
WavPack의 데이터 경로에서는 부동 소수점 연산을 사용하지 않는다. 작성자에 따르면 정수 연산은 압축의 무손실 특성을 손상시킬 수 있는 미묘한 칩 간 변동(예: 펜티엄 부동 소수점 버그)에 덜 민감하기 때문이다.[14] 부동 소수점 수학을 사용하는 무손실 압축기는 결함이 있는 펜티엄에서 실행할 때 다른 출력을 생성할 수 있다. 실제 버그 외에도 부동 소수점 수학은 복잡하여 "정확한" 구현 간에도 미묘한 차이가 발생할 수 있다.[14] WavPack은 압축 무결성에 대한 신뢰를 위해 생성된 스트림에 32비트 오류 감지 코드를 포함한다.
WavPack 소스 코드는 이식성이 뛰어나 리눅스, macOS, Solaris, FreeBSD, OpenBSD, NetBSD, Compaq Tru64, HP-UX 등 여러 Unix 및 Unix 계열 운영 체제뿐만 아니라 Windows, DOS, Palm OS, OpenVMS에서도 컴파일되었다. 또한 x86, ARM, PowerPC, AMD64, IA-64, SPARC, Alpha, PA-RISC, MIPS, Motorola 68k 등 다양한 아키텍처에서 작동한다.
WavPack의 축소 버전은 Texas Instruments TMS320 시리즈 디지털 신호 프로세서용으로 개발되었다. 이는 제조업체가 WavPack 압축 및 압축 해제를 휴대용 메모리 오디오 레코더에 통합하도록 장려하기 위한 것이었다. 이 버전은 임베디드 애플리케이션에만 적용되는 기능(실시간 스트림 압축, 선택 가능한 압축률)을 지원하고, 전체 컴퓨터 시스템에만 적용되는 기능(자체 추출, 높은 압축 모드, 32비트 플로트)은 삭제했다. TMS320 시리즈 DSP는 정수 장치이며 WavPack을 잘 지원한다. 전체 WavPack 소프트웨어의 일부 "특수" 기능(예: 수정 파일 스트림 생성)은 포함되었고 다른 기능은 제외되었다. 이 포트는 버전 4를 기반으로 했다.
WavPack 지원은 2006년 10월 WinZip 11.0 베타 버전에 추가되었다.[15] 이 ZIP 파일 형식 확장은 2007년 9월 28일 PKWARE에서 출시한 버전 6.3.2부터 공식 APPNOTE.TXT 설명 파일에 포함되었다.[16]
참조
[1]
웹사이트
WavPack User Documentation
https://www.wavpack.[...]
[2]
웹사이트
Compression and speed of lossless audio formats
https://web.archive.[...]
2009-07-17
[3]
서적
Data Compression: The Complete Reference
https://www.wavpack.[...]
[4]
웹사이트
Performance comparison of lossless audio compressors
https://web.archive.[...]
2009-07-17
[5]
웹사이트
WavPack Audio Compression
https://www.wavpack.[...]
[6]
웹사이트
WavPack 4.40 released
http://www.hydrogena[...]
[7]
웹사이트
foobar2000
http://foobar2000.or[...]
2019-11-19
[8]
웹사이트
WavPack downloads
https://www.wavpack.[...]
[9]
웹사이트
dBpoweramp Codec Central
https://www.dbpowera[...]
2019-11-19
[10]
웹사이트
foobar2000: Free Encoder Pack
http://www.foobar200[...]
2019-11-19
[11]
웹사이트
WavPack - Hydrogenaudio Knowledgebase
https://wiki.hydroge[...]
[12]
웹사이트
SoundCodecs < Main < Wiki
https://www.rockbox.[...]
[13]
웹사이트
Forum comment by developer
http://www.hydrogena[...]
2009-07-17
[14]
간행물
What Every Computer Scientist Should Know About Floating-Point Arithmetic
http://perso.ens-lyo[...]
2016-01-20
[15]
웹사이트
WinZip – Additional Compression Methods Specification
http://www.winzip.co[...]
WinZip International LLC
2006-11-15
[16]
웹사이트
APPNOTE.TXT – .ZIP File Format Specification
http://www.pkware.co[...]
PKWARE Inc
2007-09-28
[17]
웹사이트
WavPack 5.7.0 Release
https://www.wavpack.[...]
2024-12-11
[18]
문서
補完的に.wvcも使用される。
[19]
웹사이트
WavPack downloads
http://www.wavpack.c[...]
2009-07-01
[20]
웹사이트
WinZip - Additional Compression Methods Specification
http://www.winzip.co[...]
WinZip International LLC
2006-11-15
[21]
웹사이트
APPNOTE.TXT - .ZIP File Format Specification
http://www.pkware.co[...]
PKWARE Inc
2007-09-28
[22]
웹사이트
Sound Codecs, Rockbox Wiki
http://www.rockbox.o[...]
2009-07-01
[23]
Youtube
Changelog
http://www.wavpack.c[...]
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com