video4linux2 장치에서 작동하는 CLI 웹캠 이미지 그래버가 있습니까?


8

나는 모든 것을 시도했다

apt-cache search webcam |sort -u

모든 것이 약간의 문제가 있습니다. CLI에서 "GUI 전용"또는 좋은 ffmpeg / mencoder / vlc one-liner를 사용하는 방법을 보여주는 구문 오류를 수정하면 내 질문에 대답 할 것입니다. 또는 ffmpeg를 짧은 MJPEG로 만드는 방법을 알고 있기 때문에 첫 번째 jpeg를 제거하는 방법을 보여주는 것이 좋습니다. 그러나 이것은 그보다 더 간단해야합니다.

$ camgrab
/dev/video0: no v4l device

(camgrab은 아마도 v4l2를 처리하지 않을 것입니다)

$ fswebcam --list-inputs
--- Opening /dev/video0...
Trying source module v4l2...
/dev/video0 opened.
--- Available inputs:
0: Camera 1
No input was specified, using the first.
Adjusting resolution from 384x288 to 352x288.
--- Capturing frame...
Premature end of JPEG file
Captured frame in 0.00 seconds.
--- Processing captured image...
There are unsaved changes to the image.
$ fswebcam --input 0 boo.jpg
--- Opening /dev/video0...
Trying source module v4l2...
/dev/video0 opened.jjjjjjjjj
Adjusting resolution from 384x288 to 352x288.
--- Capturing frame...
Premature end of JPEG file
Captured frame in 0.00 seconds.
--- Processing captured image...
Writing JPEG image to 'boo.jpg'.

이것을 생성

$ motion

저쪽에 있습니다.

$ uvccapture -oboo.jpg 
$ file boo.jpg        
boo.jpg: data
$ qiv -t boo.jpg 
Unable to read file: Failed to load image 'boo.jpg': Error interpreting JPEG image file (Not a JPEG file: starts with 0x8f 0x5a)

실제로 이미지가 아닙니다.

$ /usr/bin/vgrabbj -d /dev/video0 -f boo.jpg
Could not open configfile /usr/etc/vgrabbj.conf, ignoring
Reading image from /dev/video0

이것을 생성

$ webcamd
RTFM, missing template (/home/$USER/.webcamd/index_up.html)
$ man webcamd |cat
WEBCAMD(1)                                                                     WEBCAMD(1)
NAME
    webcamd - Take a image from your webcam
SYNOPSIS
    webcamd [ start | stop | refresh ]
DESCRIPTION
    This manual page documents briefly the webcamd daemon.
    This manual page was written for the Debian distribution because the original pro‐
    gram does not have a manual page.
    webcamd is a program that take images from your webcam and put it on a ftp  server
    on a local (web) directory
OPTIONS
    start  Start the daemon.
    stop   Stop the daemon.
    refresh Take a shot !
AUTHOR
    This  manual  page  was  written by Julien Danjou <acid@debian.org> for the Debian
    system (but may be used by others).  Permission is  granted  to  copy,  distribute
    and/or modify this document under the terms of the GNU Free Documentation License,
    Version 1.1 or any later version published by the Free Software  Foundation;  with
    no Invariant Sections, no Front-Cover Texts and no Back-Cover Texts.
                                  2002 april 21                            WEBCAMD(1)
$ webcamd start
RTFM, missing template (/home/$USER/.webcamd/index_up.html)
$ webcamd refresh
RTFM, missing template (/home/$USER/.webcamd/index_up.html)

웹캠은 이미지를 어딘가에 ftp로 설정 파일을 설정해야하며 기본적으로 아무것도하지 않는 것 같습니다.

$ /usr/bin/webcam 
reading config file: /home/$USER/.webcamrc
video4linux webcam v1.5 - (c) 1998-2002 Gerd Knorr
grabber config:
  size 320x240 [none]
  input (null), norm (null), jpeg quality 75
  rotate=0, top=0, left=0, bottom=240, right=320
  • GUI 만
    • 카모 라마
    • 치즈
    • 카모 소
    • luvcview

webcamd는 농담입니다. / usr / bin / v4lctl -c / dev / video0 snap jpeg 160x120 ~ / .webcamd / webcam.jpg 코드를 읽음으로써 이것은 구성 형식입니다. #section common <common> # 간격 샷 (중요 또는 무한 루프에 들어감) inter = 60 www_path = / tmp / www enable_ftp = no webcam_resolution = 320x200 # / dev /가이 장치에 추가됩니다 = video0 #section picture <picture> put_date = no font = arial fontsize = 12 fontcolor = black disp_box = 아니오 boxcolor = black border = yes bordercolor = black #section ftp <ftp> host = localhost user = teknopaul port = 999 password = foo directory = / tmp
teknopaul

흠 새 줄에 들어갈 수 없습니다
teknopaul

답변:


9

에서 여기

Streamer

Streamer (http://linux.bytesex.org/xawtv/) is a versatile program that allows a
capture from a webcam or video device using only the command line. It may be offered 
in your Linux distribution's Xawtv package. To install streamer try

# sudo apt-get install xawtv

To take a standard JPEG picture from the command line where the camera is accessed 
through /dev/video0:

#streamer -c /dev/video0 -b 16 -o outfile.jpeg

Where > -b is the number of colors (in bpp,whether 15, 16, 24 or 32)
& -o is the output filename in the current directory

If you are going to capture multiple images be sure to append the output file name 
with zeros, as streamer can name the capture files in sequence, i.e., -o 
outfile000.jpeg becomes outfile001.jpeg, outfile002.jpeg, and so on.  

의견에서 : 스 트리머는 xawtv 패키지에 포함되어 있지 않습니다. sudo apt-get install streamer


스트리 머가 좋아 보인다. 그래도 별도로 승인해야합니다. xawtv와 함께 자동으로 제공되지 않습니다.
John Baber-Lucero

작동하는 유일한 방법입니다. 그러나 사람은 느립니다. 이미지를 가져 오는 데 1.8 초가 걸립니다.
John Baber-Lucero

1
더 이야기하고 싶다면 채팅에 참여하십시오. Run-on 코멘트를 유지합니다
RobotHumans

3

몇 년 전 mplayer로 해봤지만 정확히 어떻게 기억할 수는 없습니다. mplayer tv:// -tv driver=v4l2:input=1:width=352:height=288:device=/dev/video0라이브 피드를 보여 주지만 jpg 또는 png로 저장할 수 있다고 확신합니다. 매뉴얼 페이지를 확인하십시오.


2

사용 fswebcam하지 -o하지만 함께 --save. -o로그 파일을 쓸 위치를 알려줍니다 ...

예:

fswebcam --save /home/$USER/webcamGrab.jpg -d /dev/video1 -r 1280x960

1

webcamd는 약간의 농담이며 프랑스어로 주석이 달린 펄 스크립트입니다!

그게 다야

/usr/bin/v4lctl -c /dev/video0 snap jpeg 160x120 ~/.webcamd/webcam.jpg

루프에서

코드를 읽음으로써 이것은 구성 형식입니다

#section common
<common>
# Interval between shots (important or it enters an infinite loop)
inter=60
www_path=/tmp/www
enable_ftp=no
webcam_resolution=320x200
# /dev/ is prepended on to this
device=video0
#section picture
<picture>
put_date=no
font=arial
fontsize=12
fontcolor=black
disp_box=no 
boxcolor=black
border=yes
bordercolor=black
#section ftp
<ftp>
host=localhost
user=teknopaul
port=999
password=foo
directory=/tmp

그러나 크레딧으로 인해 크레딧이 발생 v4lctl했지만 웹캠 검색을 찾지 못했습니다 :)


0

웹캠이나 유사한 장치에서 스크린 샷을 찍는 가장 쉬운 명령 줄 방법은 다음을 사용하여 찾을 수 있습니다 mplayer.

mplayer tv:// -tv driver=v4l2:width=640:height=480:device=/dev/video0 -fps 15 -vf screenshot

이제 키 's'를 누르면 png 형식의 스크린 샷이 작업 디렉토리에 저장됩니다.

여러 스크린 샷을 자동으로 찍으려면 'S'키를 눌러 스크린 샷을 시작하고 다시 눌러 흐름을 중지하십시오 :).

참고 문헌 :

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.