이 페이지의 코드가 시작되지 않았습니다.

index.html을 폴더에서 바로 열면 브라우저가 JavaScript 모듈을 막습니다. 그래서 동영상 하나를 골라도 아무 일도 일어나지 않아요. 폴더를 http로 띄워서 여세요:

powershell -ExecutionPolicy Bypass -File serve.ps1

그런 다음 http://localhost:8080/을 여세요.

동영상에서 오디오 추출 — 소리만 따로, WAV로

동영상을 놓으면 소리만 가져갑니다. 화면은 한 번도 디코딩되지 않고, 아무것도 업로드되지 않습니다.

언어: 한국어
소스 보기
동영상은 절대 업로드되지 않습니다. 서버가 아예 없으니까요.

디코더는 브라우저에 이미 들어 있는 그 디코더입니다. 파일을 <video> 요소에서 재생할 때와 똑같은 코드 경로이고, 여기서 요청하는 것은 오디오 트랙 하나뿐입니다. WAV를 쓴다는 것은 샘플 앞에 마흔네 바이트짜리 헤더를 붙이는 일이고, src/shared/wav.js에 그렇게 적혀 있습니다. 중간에 인코더가 없고, 업로드 단계도 없으며, 이 페이지에는 네트워크 기능 자체가 없습니다.

실시간 확인: 확인 중…

오프라인: 확인 중…

말을 믿으실 필요는 없습니다. 개발자 도구를 열고 네트워크 탭을 보면서 동영상을 놓아 보세요. 어느 요청에도 그 파일의 1바이트조차 실리지 않습니다. 아니면 인터넷을 끊고 그대로 소리를 꺼내 보셔도 됩니다.

1 동영상 고르기

2 소리 가져가기

채널 모노는 파일을 절반으로 줄여 주고, 전사나 음성 녹음이 원하는 것이 바로 이쪽입니다. 한쪽을 버리는 대신 두 채널의 평균을 냅니다.

Markdown으로 보기

동영상을 업로드하지 않고 오디오를 꺼내는 방법

  1. 동영상을 놓으세요. 휴대폰, 카메라, 화면 녹화기, 내려받은 파일에서 온 MP4, MOV, M4V, WebM이면 됩니다. 읽는 것은 사용자의 브라우저이고, 건너뛸 업로드 단계 자체가 없습니다.
  2. 무엇을 찾았는지 읽어 보세요. 길이, 채널 수, 샘플레이트가 파일에서 그대로 나옵니다. 파일이 자기 샘플레이트를 밝히지 않았다면, 조용히 리샘플링해 놓고 아무것도 건드리지 않았다고 주장하는 대신 페이지가 그렇다고 말합니다.
  3. 더 작게 하고 싶으면 모노를 고르세요. 채널을 그대로 두면 녹음은 있던 그대로 남습니다. 모노로 합치면 파일이 절반이 되고, 전사나 음성 녹음이 원하는 것이 바로 이쪽입니다. 한쪽을 버리는 대신 두 채널의 평균을 냅니다.
  4. 저장하기 전에 들어 보세요. 재생되는 것은 곧 내려받게 될 바로 그 파일이지 동영상이 아닙니다. 그러니 소리가 맞으면 내려받는 것도 맞습니다.
  5. 가져가거나, 이어서 넘기세요. WAV를 내려받거나, 저장하지 않은 채로 자르기나 편집으로 곧장 보내세요.

자주 묻는 질문

제 동영상이 어딘가로 업로드되나요?

아닙니다. 디코딩도 쓰기도 모두 사용자의 브라우저에서, 사용자의 하드웨어 위에서 이뤄집니다. 이 도구에는 네트워크 기능 자체가 없어서 무언가를 가져오지도, 보내지도 않습니다. 페이지의 Content-Security-Policy에는 연결할 수 있는 모든 주소가 적혀 있고 그중 우리 것은 하나도 없습니다. 듣기보다 확인하고 싶으시면 인터넷을 끊은 채로 소리를 꺼내 보세요.

MP3로 받을 수 있나요?

아닙니다. 그런 척도 하지 않습니다. MP3 인코더를 싣고 오는 브라우저는 없고, 인코더에 닿는 유일한 길은 동영상을 인코더가 있는 서버로 보내는 것인데 그것이야말로 이 사이트가 하지 않으려고 존재하는 단 한 가지입니다. 받으시는 것은 WAV, 곧 샘플 앞에 마흔네 바이트짜리 헤더를 붙인 것으로 인코더가 전혀 필요 없고 품질을 깎을 수도 없습니다. 대신 큽니다. 스테레오 기준 1분에 10메가바이트 남짓이고, 어떤 재생기든 휴대폰이든 편집기든 열립니다. MP3가 필요한 쪽에서는 이 파일로 1초면 만들 수 있습니다.

화면을 들여다보기는 하나요?

아닙니다. 그럴 수 있는 것이 여기에는 없습니다. 브라우저의 디코더에 파일을 건네고 오디오 트랙을 달라고 할 뿐이고, 영상 트랙은 한 번도 디코딩되지 않고 그려지지도 않으며 이 페이지의 코드에 닿지조차 않습니다. src/에는 실행할 영상 디코더가 없습니다. 나오는 파일에 들어 있는 것은 소리뿐입니다.

소리를 읽을 수 없다는데 동영상은 잘 재생됩니다.

그렇다면 그 동영상에는 거의 틀림없이 오디오 트랙이 없습니다. 마이크를 고르지 않고 찍은 화면 녹화는 무음이고, 편집기에서 소리를 음소거한 채 내보낸 클립도 무음입니다. 둘 다 보여 줄 화면이 있으니 문제없이 재생됩니다. 메시지가 이 경우를 먼저 말하는 것은 둘 중 더 잦은 쪽이기 때문이고, 다른 하나는 이 브라우저가 읽지 못하는 형식인 경우입니다. 파일을 재생기에서 열고 움직여도 아무 반응이 없는 음량 조절을 찾아보세요. 어느 쪽인지 가리는 가장 빠른 방법입니다.

어떤 동영상 형식을 열 수 있나요?

브라우저가 디코딩하는 것이면 무엇이든, 실제로는 MP4, M4V, MOV, WebM을 뜻하고 오디오 형식은 전부 됩니다. 빠지는 것은 이 사이트 어디서나 같은 짧은 목록, 곧 AVI와 WMV, 그리고 대부분의 MKV입니다. 브라우저가 읽지 못할 파일은 도중에 실패하는 대신 그렇다고 말하는 메시지와 함께 거절됩니다.

품질이 떨어지나요?

그 동영상이 만들어질 때 자기 오디오에 이미 한 일 말고는 더 떨어지지 않습니다. 디코더가 돌려준 샘플은 있는 그대로 적힙니다. 두 번째 인코딩이 없으니 두 번째 세대의 손실도 없습니다. 알아 두실 것은 샘플레이트 하나뿐입니다. 파일 자신의 샘플레이트를 헤더에서 먼저 읽고 그 레이트로 디코딩하기 때문에 녹음이 조용히 리샘플링되지 않습니다. 파일이 아무것도 밝히지 않았다면 어떤 레이트로 보았는지 페이지가 말해 줍니다.

WAV가 왜 동영상보다 훨씬 큰가요?

WAV는 압축되지 않았고 동영상의 오디오 트랙은 압축돼 있었기 때문입니다. CD 품질의 소리는 내용이 무엇이든 스테레오 기준 1분에 10메가바이트쯤 되고, MP4 안의 AAC 트랙은 그 10분의 1쯤입니다. 모노로 합치면 절반이 됩니다. 다시 인코딩하지 않는 대가이고, 한 번만 치르면 됩니다. 이 파일을 다음에 무엇으로 열든 그쪽에서 압축할 수 있습니다.

얼마나 긴 동영상까지 다룰 수 있나요?

여기에 걸어 둔 제한은 없습니다. 그 값을 치를 서버가 없기 때문입니다. 실제 한계는 사용자 기기의 메모리입니다. 파일을 읽어 들이고 오디오 트랙 전체를 샘플로 들고 있기 때문에, 작은 기기에서 아주 긴 녹음을 다루면 자리가 모자랄 수 있습니다. 몇 시간짜리 동영상은 대개 괜찮고, 휴대폰은 노트북보다 짧은 데서 한계에 닿습니다.

짧게 자르거나 소리를 키울 수 있나요?

네, 다만 여기서는 아닙니다. 이 페이지는 한 가지 일만 합니다. 결과가 나오면 내려받기 옆에 링크 줄이 생겨서, 저장하지 않은 채로 오디오 자르기나 오디오 편집기로 곧장 옮겨 줍니다. 그 둘도 업로드하지 않습니다.

무료인가요? 가입해야 하나요?

무료이고 계정도, 로그인도, 체험 기간도 없으며 동영상을 몇 개 열든 제한이 없습니다. 이 사이트에는 광고가 있고 그것이 비용을 댑니다. 광고에는 파일에 관한 것이 아무것도 주어지지 않습니다.

오프라인에서도 되나요?

됩니다. 페이지를 한 번 불러온 뒤 인터넷을 끊어도 계속 동작합니다. 이것이 아무것도 업로드되지 않는다는 가장 간단한 증명이기도 합니다. 동영상을 처리하러 밖으로 보내는 도구라면 선을 뽑는 순간 멈췄을 것입니다.