मुझे MJPEG मोड में वेब कैमरा (logitech c910) खोलने के लिए ffmpeg की आवश्यकता है, क्योंकि वेबकैम MJPEG "प्रोटोकॉल" का उपयोग करके ~ 24 दे सकता है और YUYV का उपयोग करके केवल ~ 10 एफपीएस। मैं ffmpeg कमांड लाइन का उपयोग करके उनके बीच चयन कर सकता हूं?
xx@(none) ~ $ v4l2-ctl --list-formats
ioctl: VIDIOC_ENUM_FMT
Index : 0
Type : Video Capture
Pixel Format: 'YUYV'
Name : YUV 4:2:2 (YUYV)
Index : 1
Type : Video Capture
Pixel Format: 'MJPG' (compressed)
Name : MJPEG
मेरी वर्तमान कमांड लाइन:
ffmpeg -y -f alsa -i hw:3,0 -f video4linux2 -r 20 -s 1280x720 -i /dev/video0 -acodec libfaac -ab 128k -vcodec libx264 /tmp/web.avi
जब मैं वेबकैम से रिकॉर्ड करता हूं, तो ffmpeg भ्रष्ट h264 स्ट्रीम उत्पन्न करता है, लेकिन जब मैं x11grab से रिकॉर्ड करता हूं, तो सामान्य h264 strem। एक और कोडेक्स (mjpeg, mpeg4) वेबकेम के साथ अच्छा काम करता है ... लेकिन यह एक और कहानी है।
अद्यतन पूर्ण ffmpeg के कंसोल आउटपुट: http://pastebin.com/Hzem6CKF (आप देख सकते हैं कि यह YUV मोड में वीडियो डिवाइस खोलता है, लेकिन डिवाइस MJPEG आउटपुड भी प्रदान कर सकता है)।