Написать два видео с веб-камеры с avconv
Проблемы с захватом видео с помощью avconv
Я использую эту команду video0
в shell 0
а также video1
в shell 1
avconv -f video4linux2 -i /dev/video0 video0.avi
avconv -f video4linux2 -i /dev/video1 video1.avi
Но с началом второго видеомагнитофона сообщение
/dev/video1: на устройстве не осталось места
Вопрос есть возможность записи двух видео одновременно?
Другой
Первый захват video0.avi
работает отлично, но если я прерву с помощью Ctrl+C и попытаюсь выполнить ту же команду, видео не будет записано.
Это сообщение отображается в оболочке
uvcvideo: не удалось повторно отправить видео URB (-27)
Процесс все еще запущен?
Снятие веб-камеры и повторное подключение отлично работают в первый раз.
2 ответа
Я столкнулся с той же проблемой - в моем случае я решил ее, подключив веб-камеры к отдельным шинам USB2. Я до сих пор не могу заставить работать 2 USB-камеры одновременно на одной шине. Я также обнаружил, что должен запускать ffmpeg (теперь avconv) от имени пользователя root, чтобы захватывать и кодировать звук и видео с обеих камер одновременно.
Кроме того, я запускаю это из скрипта bash и обнаружил, что должен выполнить одну фоновую команду avconv для одновременного запуска обеих команд. Сценарий выглядит так:
nohup avconv -f video4linux2 -s 640x360 -r 30 /dev/video0 -f alsa -ac 2 -i hw:1,0 -acodec libmp3lame -ab 96k -async1 stream1.mp4
P1=$!
avconv -f video4linux2 -s 640x360 -r 30 /dev/video1 -f alsa -ac 2 -i hw:2,0 -acodec libmp3lame -ab 96k -async1 stream2.mp4
kill $P1
Я надеюсь, что это полезно для вас.
Я думаю, что вы должны убить идентификатор процесса с первого захвата.