С помощью обычного линуксового софта можно легко превратить вебкамеру в видеокамеру для записи каких-нибудь блогов или в "видеорегистратор", что я для разминки и сделал. Проверено на Ubuntu 14.04. #!/bin/bash # Длительность и количество видео # Длительность в секундах LENGTH="-t 3600" # Сколько записанных видео оставлять, если значение пустое - оставлять все # VIDEO_COUNT="10" VIDEO_COUNT="24" # Формат видео # С h.264 какие-то проблемы с синхронизацией, MPEG-1 с очень высоким битрейтом # выглядит нормально и его потом можно перекодировать. #OUTPUT_FORMAT="-strict experimental -c:v h264 -preset fast -b:v 4000k -c:a aac -b:a 384k -f mp4" #OUTPUT_EXTENSION="mp4" # MPEG-1 (по умолчанию) - самый надёжный вариант, зададим только видео битрейт OUTPUT_FORMAT="-b:v 4000k" OUTPUT_EXTENSION="mpg" # Формат захвата # Задайте тут OSS/ALSA и устройство ввода звука AUDIO_IN="-f oss -i /dev/dsp2" # Для задания частоты сэмплирования звука: -ar 48000 # Устройство и разрешение для захвата видео, разрешение должно поддерживаться камерой VIDEO_IN="/dev/video0" RESOLUTION="640x480" # Цикл записи while true do DT=`date +%Y-%m-%d-%H%M%S` FILENAME="$DT-webcam.$OUTPUT_EXTENSION" echo "Output file name: $FILENAME" COMMAND="avconv $AUDIO_IN -f video4linux2 -s $RESOLUTION -i $VIDEO_IN $OUTPUT_FORMAT $LENGTH $FILENAME" echo "Running:" echo "$COMMAND" $COMMAND || exit 0 if [[ "$VIDEO_COUNT" != "" ]] ; then echo "Cleaning up older videos..." KEEP_VIDEOS=`ls -1 | sort | tail -$VIDEO_COUNT` for X in *-webcam.$OUTPUT_EXTENSION ; do if [[ $KEEP_VIDEOS != *"$X"* ]]; then echo "Removing: $X" rm $X fi done fi done
Tags: Linux.
Archives
|