В настоящее время у меня есть микрофон и веб-камера, подключенная к моему компьютеру. Я запускаю ffmpeg на CentOS 6.3.
Когда я пытаюсь записать видео без звука:
ffmpeg -y -f video4linux2 -t 15 -s 640x480 -r 25 -i /dev/video0 /home/irdb/Desktop/out2.mp4
он работает отлично, и я получаю хорошее видео. Однако, когда я пытаюсь запустить с аудио, включенным:
ffmpeg -y -f video4linux2 -t 15 -s 640x480 -r 25 -i /dev/video0 -f alsa -ar 22050 -ab 64k -ac 2 -i default /home/irdb/Desktop/out2.mp4
Выдает ошибки и печатает:
[NULL @ 0x1e33fc0] Codec is experimental but experimental codecs are not enabled, see -strict -2
Output #0, mp4, to '/home/irdb/Desktop/out2.mp4':
Stream #0:0: Video: h264, yuv420p, 640x480, q=-1--1, 90k tbn, 25 tbc
Stream #0:1: Audio: none, 22050 Hz, 2 channels, flt, 128 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (rawvideo -> libx264)
Stream #1:0 -> #0:1 (pcm_s16le -> aac)
Error while opening encoder for output stream #0:1 - maybe incorrect parameters such as bit_rate, rate, width or height
Я предполагаю, что это связано с первой ошибкой, так как когда я использую что-то вроде mpg, все работает отлично. Однако я планирую потоковую трансляцию в реальном времени и хочу формат mp4, так как он в значительной степени поддерживается всеми браузерами (Firefox с резервной версией флэш-памяти).
Кто-нибудь знает, как заставить звук работать без дополнительной обработки (поскольку я хочу транслировать в реальном времени, а не записывать в файл в конце концов).