Obecnie mam mikrofon i kamerę internetową podłączoną do mojego komputera. Używam ffmpeg na CentOS 6.3.
Kiedy próbuję nagrać film bez dźwięku:
ffmpeg -y -f video4linux2 -t 15 -s 640x480 -r 25 -i /dev/video0 /home/irdb/Desktop/out2.mp4
działa idealnie i dostaję niezły film. Jednak gdy próbuję uruchomić z dźwiękiem zawartym w:
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
Występuje błąd i drukuje:
[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
Zakładam, że ma to związek z pierwszym błędem, ponieważ gdy używam czegoś takiego jak mpg, działa dobrze. Jednak planuję transmisję strumieniową na żywo i chcę, aby format mp4 był obsługiwany przez wszystkie przeglądarki (Firefox z flash fallback).
Czy ktoś wie, jak sprawić, by dźwięk działał bez dodatkowego przetwarzania (ponieważ chcę przesyłać strumieniowo na żywo i ostatecznie nie zapisywać do pliku).