티스토리 뷰
3.10. 파이카메라 비디오를 스트림에 녹화하기
이것은 비디오를 파일에 기록하는 것과 매우 유사합니다 :
from io import BytesIO from picamera import PiCamera stream = BytesIO() camera = PiCamera() camera.resolution = (640, 480) camera.start_recording(stream, format='h264', quality=23) camera.wait_recording(15) camera.stop_recording()
여기서는 품질 매개 변수를 설정하여 인코더가 시도하고 유지하고자하는 이미지 품질 수준을 나타냅니다. 카메라의 H.264 인코더는 기본적으로 두 가지 매개 변수로 제한됩니다.
비트 전송률은 인코더의 출력을 초당 특정 비트 수로 제한합니다. 기본값은 17000000 (17Mbps)이고 최대 값은 25000000 (25Mbps)입니다. 값이 높을수록 인코더는 더 높은 품질로 인코딩 할 수있는 "자유"를 얻게됩니다. 기본 설정은 높은 레코딩 해상도를 제외하고는 엔코더를 전혀 제한하지 않는 것으로 보입니다.
품질은 유지할 이미지 품질 수준을 인코더에 알려줍니다. 값은 1 (최고 품질)과 40 (최저 품질) 사이 일 수 있으며, 일반적인 값은 대역폭과 품질 사이의 적절한 균형을 20에서 25 사이에서 제공합니다.
BytesIO와 같은 Python에 내장 된 스트림 클래스를 사용할뿐만 아니라 사용자 정의 출력을 구성 할 수도 있습니다. 연결된 방법에서 설명한대로 비디오 녹화에 특히 유용합니다.
댓글