오디오 Base64 변환기

HTML, JavaScript, 음성 API 요청에 쓸 수 있도록 MP3, WAV, OGG 등 사운드 파일을 Base64로 인코딩합니다. 내장 플레이어로 파일을 재생해 본 다음 순수 문자열이나 data URI를 복사하십시오.

브라우저에서만 실행되며 어떤 데이터도 업로드되지 않습니다.

사용 방법

  1. 오디오 파일을 업로드 영역에 끌어다 놓거나 클릭해서 선택합니다. MP3, WAV, OGG, M4A, FLAC 등 다양한 형식을 지원합니다.
  2. 미리 듣기 플레이어로 재생해 올바른 소리인지 확인합니다.
  3. ‘출력’에서 HTML audio 요소용으로는 ‘Data URI’를, API 요청용으로는 순수 Base64인 ‘Base64’를 선택합니다.
  4. 결과를 복사하거나 .txt 파일로 다운로드합니다.

웹 페이지에서 Base64 오디오 재생하기

오디오 MIME 유형을 가진 data URI는 브라우저가 오디오 URL을 기대하는 곳이라면 어디서든 작동합니다.

<audio controls src="data:audio/mpeg;base64,..."></audio>

// JavaScript: 버튼을 클릭하면 짧은 소리 재생
const click = new Audio('data:audio/wav;base64,...');
button.addEventListener('click', () => click.play());

브라우저는 보통 방문자가 페이지와 상호 작용하기 전에는 소리 재생을 차단하므로, play()는 페이지 로드 시점이 아니라 클릭이나 키 입력 핸들러에서 호출하십시오.

Base64 오디오가 유용한 경우

  • 짧은 인터페이스 효과음: 몇 킬로바이트 정도의 클릭음, 알림음, 오류 경고음은 JavaScript 번들 안에 넣어 둘 수 있으므로 추가 요청 없이 즉시 재생됩니다.
  • 오프라인 앱과 단일 파일 앱: 서버 없이 파일 하나로 작동해야 하는 게임, 키오스크, 이러닝 패키지, HTML 보고서는 소리를 인라인으로 담을 수 있습니다.
  • 음성 인식(STT) API: 많은 클라우드 음성 인식 서비스는 JSON 요청 안에서 짧은 녹음을 Base64 필드로 받으며, 이 필드의 이름은 흔히 content나 audio입니다. 이런 서비스는 보통 특정 형식, 샘플링 레이트, 채널 수를 요구합니다. 이 도구는 파일을 있는 그대로 인코딩하며 형식 변환이나 리샘플링은 하지 않습니다.
  • 테스트 픽스처: 오디오 처리 코드를 테스트할 때 아주 작은 샘플을 문자열 상수로 보관할 수 있습니다.

오디오에 Base64를 쓰지 말아야 할 때

Base64는 크기를 약 3분의 1 늘리고, 브라우저는 재생을 시작하기 전에 문자열 전체를 받아야 합니다. 스트리밍도, 별도 캐싱도, 탐색을 위한 범위 요청도 불가능합니다. 128kbps로 인코딩한 5분짜리 MP3는 약 4.8MB인데, HTML이나 JavaScript 안에서는 약 6.4MB의 텍스트가 되며 그 파일이 바뀔 때마다 다시 다운로드됩니다. 음악, 팟캐스트 등 긴 녹음은 일반 오디오 파일로 제공하십시오. 경험상 몇 초 정도인 소리만 인라인으로 넣는 것이 좋습니다.

오디오 형식과 MIME 유형

형식Data URI 접두사참고
MP3data:audio/mpeg;base64,용량이 작고 모든 브라우저에서 재생됨
WAVdata:audio/wav;base64,압축되지 않아 용량이 큼. 아주 짧은 소리에 적합
OGG(Vorbis, Opus)data:audio/ogg;base64,용량이 작음. 구버전 Safari에서는 재생되지 않음
M4A(AAC)data:audio/mp4;base64,용량이 작고 폭넓게 지원됨
FLACdata:audio/flac;base64,무손실이며 MP3나 AAC보다 훨씬 큼

운영 체제에 따라 파일이 audio/x-wav나 audio/x-m4a 같은 변형 유형으로 표시될 수 있습니다. 브라우저는 대개 이런 유형도 재생하며, 플랫폼에서 특정 유형을 요구하면 접두사를 직접 수정하면 됩니다.

자주 묻는 질문

data URI에서 MP3의 MIME 유형은 무엇입니까?
등록된 유형은 audio/mpeg이므로 data URI는 data:audio/mpeg;base64,로 시작합니다. 실제로는 audio/mp3도 볼 수 있고 이를 받아들이는 브라우저도 있지만, audio/mpeg를 쓰는 것이 안전합니다.
미리 듣기에서 파일이 재생되지 않는 이유는 무엇입니까?

플레이어는 브라우저에 내장된 코덱을 사용합니다. 구버전 Safari의 OGG처럼 브라우저가 지원하지 않는 형식이면 미리 듣기에서 소리가 나지 않지만, Base64 출력은 여전히 파일을 정확하게 옮긴 것입니다.

Base64 오디오 클립은 얼마나 길어도 됩니까?

이 도구는 최대 100MB 파일까지 인코딩하지만, 그 정도는 삽입하기에 너무 큽니다. 인라인으로 사용할 때는 몇 초, 수십 킬로바이트 이내로 유지하십시오. 음성 API를 쓴다면 인라인 오디오의 한도를 확인하십시오. 스토리지에 업로드한 오디오보다 한도가 훨씬 낮은 경우가 많습니다.

여기서 MP3를 WAV로 변환할 수 있습니까?

아니요. 이 도구는 형식, 비트레이트, 샘플링 레이트를 바꾸지 않고 파일을 있는 그대로 인코딩합니다. 오디오 편집기나 FFmpeg 같은 명령줄 도구로 먼저 변환한 다음 결과를 인코딩하십시오.

오디오가 업로드됩니까?

아니요. 인코딩과 재생은 브라우저에서 이루어지며 파일은 기기에 그대로 남습니다.