이 오디오 변환기의 작동 방식
이 변환기가 하는 일
오디오 파일을 읽어 MP3 또는 WAV로 다시 인코딩합니다. 입력으로는 MP3, WAV, OGG, AAC, M4A, FLAC, WebM까지 폭넓게 받아들이며, Web Audio API를 통해 디코딩해 압축된 원본을 원시 오디오 샘플로 풀어냅니다. 이 샘플을 바탕으로, 지정한 샘플레이트와 채널 구성을 적용하면서 선택한 형식으로 새 파일을 써 냅니다.
MP3 출력은 JavaScript로 동작하는 LAME 인코더(lamejs)가 만들고, WAV는 비압축 16비트 PCM으로 기록합니다. 최대 500MB 파일을 받으며, 디코딩과 인코딩의 전 과정이 서버 업로드 없이 사용자 기기 안에서 끝납니다.
언제 사용하나요
재생하려는 앱이나 기기가 지원하지 않는 형식의 파일이 있을 때, 또는 더 가볍고 휴대하기 좋은 사본이 필요할 때 쓰기 좋습니다. 가장 흔한 경우는 M4A나 FLAC로 도착한 음성 메모나 내려받은 트랙을, 거의 모든 플레이어와 스마트폰이 무리 없이 다루는 MP3로 바꾸는 것입니다.
반대 방향도 그만큼 유용합니다. 편집용으로 비압축 파일이 필요할 때 압축 원본에서 WAV를 뽑아내거나, 음성 녹음을 가볍게 하려고 스테레오 트랙을 모노로 합칠 수 있습니다. 원하는 용량이나 음질에 맞춰 비트레이트나 샘플레이트를 조정하는 것도 같은 단계에 포함됩니다.
예시: M4A 음성 메모를 MP3로
40MB짜리 M4A 파일로 녹음한 강의가 있다고 해 봅시다. 출력으로 MP3를 고르고, 비트레이트를 128 kbps로 설정한 뒤, 채널을 모노로 바꿉니다. 음성은 스테레오로 얻을 이점이 없기 때문입니다. Web Audio API가 M4A 안의 AAC 오디오를 디코딩하고, LAME 인코더가 128 kbps로 다시 인코딩하면 어디서든 재생되는 훨씬 작은 MP3가 만들어집니다. 확정 전에 예상 용량이 표시되고, 내장 플레이어로 결과를 먼저 확인할 수 있습니다.
형식·음질·예외 상황
출력은 MP3와 WAV로 제한됩니다. 이 둘이면 압축해서 휴대하기 좋은 형식과 비압축으로 편집하기 좋은 형식이라는, 대부분의 작업에 필요한 구분을 모두 아우를 수 있기 때문입니다. 비트레이트 선택지(128, 192, 256, 320 kbps)는 MP3에만 적용되며, WAV의 용량은 대신 샘플레이트와 채널 수로 결정됩니다. 샘플레이트는 44.1 kHz(CD 표준) 또는 48 kHz(영상에서 흔히 쓰는 값)로 설정할 수 있습니다.
알아 두면 좋은 제약이 몇 가지 있습니다. 모노를 고르면 좌우 채널이 평균으로 합쳐지므로 나중에 되돌릴 수 없습니다. 아주 큰 파일은 디코딩 중 사용 가능한 메모리를 다 써 버릴 수 있는데, 그럴 때는 더 짧은 구간이 잘 처리됩니다. 그리고 브라우저가 디코딩하지 못하는 코덱을 쓴 원본이라면, 먼저 일반적인 형식으로 변환해 두면 대개 문제가 풀립니다.