[파이썬] imageio 오디오를 비디오에 삽입
Image source: Unsplash
오디오를 비디오에 삽입하는 것은 멀티미디어 작업에서 자주 사용되는 작업입니다. imageio 라이브러리는 Python에서 이미지 및 비디오 처리를 위해 널리 사용되는 라이브러리입니다. 이 블로그 포스트에서는 imageio를 사용하여 오디오를 비디오에 삽입하는 방법에 대해 알아보겠습니다.
imageio 라이브러리 설치
imageio 라이브러리는 Python Package Index (PyPI)에서 제공되므로 pip를 사용하여 설치할 수 있습니다. 다음 명령어를 터미널에 입력하여 라이브러리를 설치합니다.
pip install imageio
오디오 파일 및 비디오 파일 준비
먼저, 오디오 파일과 비디오 파일을 준비해야 합니다. 이 예제에서는 ‘audio.mp3’라는 오디오 파일과 ‘video.mp4’라는 비디오 파일을 사용하겠습니다. 이 파일들이 현재 작업 디렉토리에 있어야 합니다.
오디오를 비디오에 삽입하는 코드
이제, 준비한 오디오 파일을 비디오에 삽입하는 코드를 작성해보겠습니다.
import imageio
import numpy as np
# 비디오 파일 열기
video_reader = imageio.get_reader('video.mp4')
# 비디오의 프레임 수 확인
num_frames = len(video_reader)
# 삽입할 오디오 파일 열기
audio_reader = imageio.get_reader('audio.mp3')
# 비디오 프레임마다 오디오 프레임을 가져와 삽입
for i in range(num_frames):
video_frame = video_reader.get_data(i)
audio_frame = audio_reader.get_data(i % len(audio_reader))
# 오디오를 삽입할 프레임에 오디오 데이터 추가
video_frame[..., -1] = audio_frame
# 비디오 프레임 저장
imageio.imwrite('output/frame{}.png'.format(i), video_frame)
# 비디오 리더 종료
video_reader.close()
audio_reader.close()
위의 코드는 ‘video.mp4’ 비디오 파일을 읽어들이고, ‘audio.mp3’ 오디오 파일의 프레임을 비디오의 각 프레임에 삽입한 다음, 삽입된 비디오를 이미지 파일로 저장합니다. 삽입된 비디오 프레임의 파일 이름은 ‘frame{}.png’로 지정되어 각 프레임마다 저장됩니다.
마치며
Python의 imageio 라이브러리를 사용하여 오디오를 비디오에 삽입하는 방법을 살펴보았습니다. 이를 통해 멀티미디어 작업에서 더 다양한 기능을 구현할 수 있습니다. 이 라이브러리의 다양한 기능과 옵션을 알아보고 적용해보세요!
이미지 출처: Unsplash