본문 바로가기

개발(Development)/Media(오디오&비디오 개발)16

[자바스크립트] MediaElementAudioSourceNode 음원 파일(mp3, wav 등) 사용 방법 Web Audi API는 음원의 타입(파일, 버퍼, 스트림 등)에 따라 소스Node와 작업 방식이 조금씩 다르다. 45초 이상의 긴 음원 파일(mp3, wav)을 다루기 위해서는 MediaElementAudioSourceNode를 소스Node로 이용해야 한다. 이 글에서는 MediaElementAudioSourceNode를 통해 mp3 등의 음원파일을 다루는 방법을 정리한다. ※ Web Audio API의 기본 사용 방법은 아래 글 참고 [자바스크립트] Web Audio API 기본 원리와 예제 코드 ※ 45초 이하의 짧은 음원을 다루는 AudioBufferSourceNode는 아래 글 참고 [자바스크립트] AudioBuffer, AudioBufferSourceNode 사용 방법 & 예제 코드 # Med.. 2022. 1. 20.
[자바스크립트] AudioBuffer, AudioBufferSourceNode 사용 방법 & 예제 코드 자바스크립트 Web Audio API는 "짧은 오디오 데이터"를 다룰 때 AudioBufferSourceNode 객체를 이용한다. 이 글에서는 AudioBufferSourceNode를 통해 1) 개발자가 생성한 오디오 데이터, 2) mp4, wav 등의 파일로 된 짧은 음원 등을 다루는 방법을 정리한다. 글의 가장 하단에는 각각에 대한 예제 코드를 정리해두었다. Web Audio API의 기초에 대해서는 아래 글을 참고하자. [자바스크립트] Web Audio API 기본 원리와 예제 코드 # AudioBufferSourceNode 란? AudioBufferSourceNode는 AudioBuffer를 음원으로 입력받는 소스Node 객체이다. 주로 45초 이내의 짧은 오디오를 단 1회 재생하는 용도로 사용된.. 2022. 1. 19.
[자바스크립트] Oscillator Node 사용 방법 & 예제코드 자바스크립트 Web Audio API를 이용하면 다양한 소스의 음원을 다룰 수 있다. 이번 글에서는 개발자가 직접 소리를 만들 수 있는 Oscillator Node에 대한 기초 사용 방법을 정리한다. 구체적으로 아래와 같이 특정 파형/주파수의 소리를 만들어 낼 수 있다. (실제로 작동한다. 재생 버튼을 눌러보자. 코드 전문은 글 하단에 작성해두었다.) 2022. 1. 18.
[자바스크립트] Web Audio API 기본 원리와 예제 코드 # Web Audio API란? Web Audio API란 오디오 데이터를 입력받아, 각종 처리 및 분석을 수행할 수 있게 해주는 API이다. Web Audio API에서 다룰 수 있는 소리 데이터는 아래의 4가지가 있다. 1) Oscillator: 주파수, 볼륨, 파형을 계산해 만들어내는 소리 2) AudioBuffer: 짧은 오디오 데이터 3) MediaElement: mp3, wav 등의 오디오 파일 4) MediaStream: 마이크 등을 통해 들어오는 스트림 객체 # Web Audio API가 필요한 이유? HTML에서 태그를 이용하면, 오디오를 재생/정지하고 볼륨을 조정할 수 있다. 물론 오디오의 재생위치를 조정하고, 재생완료 등의 이벤트 처리도 가능하다. 하지만 딱 거기까지다. 이게 끝이다... 2022. 1. 10.
[자바스크립트] 캔버스(canvas) 화면 캡처/녹화 방법(+파일 저장 다운로드 구현) 자바스크립트는 태그의 화면을 캡처/녹화하는 방법을 제공한다. 예를 들어 캔버스에서 동작 중인 애니메이션을 녹화하여 동영상 등으로 저장할 수 있다. 작업 순서는 아래와 같다. # canvas 태그 화면 캡처/녹화 방법 1. canvas태그 화면 스트림 취득 : HTMLCanvasElement.captureStream()=>MediaStream 2. 취득한 스트림을 저장 : MediaRecorder, Blob 3. 저장한 스트림을 재생 OR 동영상 파일로 저장(다운로드) : BlobURL(ObjectURL) 먼저 canvas화면을 캡처하는 예제 코드 전문을 보고, 상세 설명을 정리한다. # canvas 캡처/녹화 방법 - 코드 전문 - 태그의 화면을 녹화하여 태그에서 재생하고, 동영상 파일로 다운로드 받는다.. 2021. 12. 12.
[자바스크립트] audio/video 태그에서 재생 중인 소리/영상 녹음 방법 자바스크립트는 , 태그나 Audio, Video객체를 통해 재생 중인 오디오/비디오를 녹음/녹화하는 방법을 제공한다. audio나 video의 차이는 audio객체를 사용하느냐, video객체를 사용하느냐의 차이밖에 없다. # audio/video 녹음 방법 1. Audio/Video에서 재생 중인 스트림 취득: MediaStream 2. 재생 중인 스트림 녹음: MediaRecorder 3. 녹음된 스트림 재생: BlobURL(ObjectURL) MediaStream, MediaRecorder, Blob객체의 원리를 알고 있다면 아주 간단한 일이다. 자바스크립트 Media Capture and Streams API: MediaStream, MediaStreamTrack 자바스트립트 Media Strea.. 2021. 12. 11.
[자바스크립트] 카메라 영상 녹화 방법 (+무음 비디오 촬영) 웹 브라우저 상에서 노트북이나 스마트폰의 전면/후면 카메라로 촬영하는 동영상을 녹음해야 하는 경우가 있다. 이 글은 별도 라이브러리 없이! 순수 자바스크립트만으로 카메라로 입력 받는 영상(비디오)를 녹화하는 방법을 정리한다. * 참고로 별도 라이브러리 없이 순수 자바스크립트만 사용하는 방식을 바닐라 자바스크립트(Vanilla Javascript)라고 한다. # 카메라 영상 녹화 순서 1. 카메라 영상 취득: MediaStream 2. 취득한 영상 저장: MediaRecorder 3. 녹화된 영상 재생: Blob, Video 옵션 설정에 따라 오디오 없이 비디오만 녹화하면 무음 영상 녹화도 가능하다. ▼이를 위해 사용되는 MediaStream, MediaRecorder, Blob 객체에 대해서는 아래글을 .. 2021. 12. 10.
[자바스크립트] 마이크 음성 소리 녹음 방법 : MediaRecorder 별도 라이브러리 없이, 자바스크립트만으로 마이크로 입력 받는 오디오를 녹음하는 방법을 정리한다. 대략 아래와 같은 순서로 진행하면 된다. 1. 마이크 소리 입력: MediaStream 2. 입력된 소리 녹음: MediaRecorder 3. 녹음된 소리 재생: Blob, Audio 마이크 음성 녹음의 원리를 알기 위해서는 MediaStream, MediaRecorder, Blob 등에 대해 알아두면 좋다. ▼이에 대해서는 아래 글을 참고하자.▼ 자바스크립트 Media Capture and Streams API: MediaStream, MediaStreamTrack 자바스트립트 Media Stream Recording API: MediaRecorder 자바스크립트 File API 파헤치기: Blob, Fil.. 2021. 12. 9.
[자바스크립트] MediaStream 예제 코드: 마이크, 카메라, audio, video, canvas 이번 글은 자바스크립트의 Media Capture and Streams API이용해 아래의 MediaStream을 취득해서 동시 재생하는 예제 코드를 정리한다. 1. 마이크 소리 2. 카메라 영상 3. 태그에서 재생 중인 소리 4. 태그에서 재생 중인 영상 5. 화면 ▼MediaStream, MediaStreamTrack의 원리는 아래 글 참고▼ 자바스크립트 Media Capture and Streams API: MediaStream, MediaStreamTrack 1. 마이크 소리 - 마이크 MediaStream 취득 방법: navigator.mediaDevices.getUserMedia({audio: true}); 마이크로 입력되는 소리를 MediaStream으로 취득하고, 태그로 재생하는 예제 코드.. 2021. 12. 8.