여러 브라우저를 지원하려면 FFmpeg를 사용하여 .mov
파일을 2개의 다른 컨테이너, 즉 MP4 컨테이너와 WebM 컨테이너에 연결합니다. 포함
동시에 코덱을 지정할 수 있습니다. 지금은
FFmpeg가 기본값을 사용하도록 합니다.
이러한 개념을 처음 접하는 경우 미디어 파일 기본사항 진행하시기 바랍니다. 또한 FFmpeg가 설치되어 있지 않은 경우 미디어 애플리케이션 기본사항 Docker로 설정할 수 있습니다
제안된 Docker 설치를 사용하고
웹용 미디어 파일 준비의 glocken.mov 파일
media
디렉터리 내에 추가됩니다. 우리는 모든 ICS 프로세스를 위해 FFmpeg 버전 4.3.2를
명령어에 대해 자세히 알아보세요.
컨테이너
먼저 .mp4
를 사용하여 .mov
파일에서 두 개의 컨테이너를 만들어야 합니다.
및 .webm
파일 확장자를 포함해야 합니다.
미디어 파일 기본사항 검토
어떻게 다른지 모르는 경우 컨테이너와 스트림에 대해 자세히 알아보세요.
있습니다.
MP4
/media # ffmpeg -i glocken.mov glocken.mp4
WebM
/media # ffmpeg -i glocken.mov glocken.webm
WebM은 MP4보다 생성 시간이 오래 걸립니다. 여러분이 이 기술을 살펴보면
확인할 수 있습니다 MP4는 원본 파일의 약 83%
로 압축되지만
WebM은 원래 크기의 78%
까지 줄어들지만 훨씬 이보다 작을 수 있습니다.
실제 결과는 다를 수 있습니다. FFmpeg 4.2.2
가
기본 동영상 비트 전송률이 200k
로 설정되고 4.3.2
에서는 기본 비트 전송률이 설정되지 않습니다.
따라서 이 동영상은 더 이상 원본의 4%
에 불과하지 않습니다. 직접 확인할 수 있습니다
미디어 파일이 있는 폴더에서 ls -a
bash 명령어를 사용합니다.
예를 들면 다음과 같습니다.
/media # ls -l
-rw-r--r-- 1 root root 12080306 Mar 7 12:16 glocken.mov
-rwx------ 1 root root 10106446 Mar 7 12:33 glocken.mp4
-rwx------ 1 root root 9503301 Mar 7 18:30 glocken.webm
작은 파일을 가져오려면 다음과 같이 하면 됩니다.
/media # ffmpeg -i glocken.mov -b:v 200k glocken.webm
...
frame= 300 fps=3.6 q=0.0 Lsize= 483kB time=00:00:10.01 bitrate= 395.0kbits/s speed=0.121x
video:359kB audio:117kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 1.356068%
/media # ls -l
-rw-r--r-- 1 root root 12080306 Mar 7 12:16 glocken.mov
-rwx------ 1 root root 10106446 Mar 7 12:33 glocken.mp4
-rwx------ 1 root root 494497 Mar 7 18:45 glocken.webm
학습 내용 확인
결과를 확인하려면 FFmpeg 및 Shaka Packager를 사용합니다. 미디어 애플리케이션 기본사항:
/media # packager input=glocken.mp4 --dump_stream_info
/media # ffmpeg -i glocken.mp4
코덱
다음은 코덱입니다. 미디어 파일 기본사항에 설명된 대로 코덱은
컨테이너 (파일 형식)와 같지 않습니다. 동일한 컨테이너의 두 파일
유형은 다른 코덱을 사용하여 압축된 데이터를 보유할 수 있습니다. WebM 형식의 예는
Vorbis 또는 Opus를 사용하여 오디오를 인코딩할 수 있습니다. 코덱을 변경하려면
FFmpeg를 사용하세요. 예를 들어 이 명령어는 vorbis
오디오가 포함된 .mkv
파일을 출력합니다.
코덱 및 av1
동영상 코덱을 포함합니다.
/media # ffmpeg -i glocken.mov -c:a vorbis -c:v av1 glocken.mkv
이 예시에서 -c:a
플래그와 -c:v
는 오디오와
각각 동영상 코덱을 지원합니다.
미디어 전환 페이지에는 명령어를 사용하여 코덱을 변환하는 데 필요한 명령을 실행합니다. 아래 표에는 Google Kubernetes Engine에서 FFmpeg를 사용하여 WebM 및 MP4 파일의 코덱 변환을 수행합니다. 다음은 DASH 및 HLS에 각각 권장되는 형식입니다.
동영상
코덱 | 확장 | 라이브러리 |
---|---|---|
av1 | WebM, mkv | libaom-av1 |
h264 | MP4 | libx264 |
vp9 | WebM | libvpx-vp9 |
오디오
코덱 | 확장 | 라이브러리 |
---|---|---|
aac | MP4 | aac |
오푸스 | WebM | 리보푸스 |
Vorbis | WebM | libvorbis |
다음으로 새로 만든 파일의 비트 전송률을 변경하는 방법을 보여드리겠습니다.