이 섹션에서 우리는 FFmpeg로 우리 webM비디오를 mp4로 변환시킬 것임.
FFmpeg를 이용해 비디오 썸네일을 추출할 것임.
되게 실험적인 부분이 많은 section임.
-> 세계 최고의 소프트웨어 중 하나. 비디오나 오디오 같은 어떤 종류의 미디어 파일을 다룰 수 있음.
예를 들어 비디오를 압축하거나, 비디오 포맷을 변환해야 하거나 아니면 비디오에서 오디오를 추출하고 싶거나, 비디오에서 스크린샷을 찍고 싶을 때 등 사용. 비디오를 가지고 할 수 있는 것들은 모두 할 수 있음.
-> C언어로 만들어졌고, 거의 모든 언어에서 사용 가능함. 또한 나의 콘솔에(터미널에) 설치 ㄱㄴ. 일반적으로 FFmpeg는 mongo처럼 터미널에서 실행돼야함. 무슨 의미냐면 컴퓨터 즉, 백엔드에서ㅜ 실행해야함. 우리가 webM파일을 다운로드할 때마다 변환하여 압축하려면 자체의 좋은 서버가 필요한데, 이는 돈이 들음.
-> 프로그램을 이용하기 때문에 FS(파일 시스템)을 이용할 수 있고, 여기에 파일을 작성하거나 불러올 수 있음
-> 실제 유튜브에서는 업로드된 비디오를 그들의 비싼 서버에서 변환할 것임.
-> 좋은 서버를 이용하면 돈이 드는 걸 방지위한 대비책. 개방형 표준이고, 기본적으로 웹사이트가 매우 빠른 코드를 실행할 수 있게 해줌. 이 모든 것들은 원래는 백엔드에서 쓰는 것임.
이 웹에섬블리는 프론트엔드에서 매우 빠른 코드를 실행할 수 있게 해줌(webassembly 덕분에 프론트엔드에서 사용 ㄱㄴ). JS를 이용하지 않고, 다른 종류의 프로그램을 사용할 수 있음. 대부분 webAssembly를 직접 작성하지 않고, webAssembly로 컴파일 되는 go 또는 Rust를 작성하게 될 것임. 실행 비용이 큰 프로그램들을 브라우저에서 실행할 수 있는 거임.
npm install @ffmpeg/ffmpeg @ffmpeg/core