Sie sind auf Seite 1von 10

Connecting WebCam to BeagleboneBlack

fswebcam is a small and simple webcam app. It can capture images from
a number of different sources and
perform
simple manipulation on
the captured image. The image can be saved as one or more PNG or JPEG
files.
Installing fswebcam
Firstly, we need to update the system
> sudo apt-get update
>sudo apt-get upgrade
Now installing fswebcam from ubuntu base repository
>sudo apt-get install -y fswebcam
Checking available Camera
> ls -ltrh /dev/video*
it will show all the camera present on you BeagleBoneBlack or ubuntu pc

Testing fswebcam
> fswebcam -r 320x240 -d /dev/video0 capture.jpg

Saving Multiple Screenshots in loop


save this script in .su extension and give that 777 permission rights. And
run that to start capturing frame for time lapse. Change the directories as
per your script location and where you want to save the jpg file.
#!/bin/bash
#time-lapse video frame
width=320
height=240
interval=4
output=/home/ubuntu32/Desktop/fswebcam/inprocess.jpg
capture=/home/ubuntu32/Desktop/fswebcam/capture.su
#
# Uncomment the following lines if using uvccapture.
#
# brightness=96

# saturation=32
# contrast=32
# gain=16
# exec uvccapture -v -m -t$((interval)) \
# -B$brightness -S$saturation -C$contrast -G$gain \
# -c$capture \
# -x$width -y$height -o$output
#
# Comment out the following lines if using uvccapture.
#
font=/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
exec fswebcam --quiet --skip 14 \
--font $font \--timestamp '%d %b %y %H:%M:%S (%Z)' \
--no-title -r $height\x$width \
--banner-colour '#FF000000' \
--line-colour '#FF000000' \
--exec $capture \
--loop $interval $output
#renaming
timestamp=$(date -u +"%y%m%d-%H:%M:%S")
image=/home/ubuntu32/Desktop/fswebcam/inprocess.jpg
output=/home/ubuntu32/Desktop/fswebcam/capture-$timestamp.jpg
cp $image $output
>chmod +x script_name.su
>./script_name.su

sample fswebcam directory view

You can even remove #tag from script to change the preferences of capturing
frame and also can include following predefine function in library of
fswebcam to edit the script.
Configuration File
Config files use the long version of options without the "--" prefix.
Comments start with a # symbol at the beginning of the line.
General Options
-?, --help
Show a usage summary.
-c, --config
Load options from a file. You can load more than one config
file, and can mix them with command-line arguments.
Note: This option can not be used from
file.

within

configuration

-q, --quiet
Hides all messages except errors.
-v, --verbose
Print extra information during the capture process.
--version
Print the version number and exit.
-l, --loop <frequency>
Continually capture images. The time between images is specified
in seconds.
Default behaviour is to capture a single image and exit.
Note: The time to capture the next image is calculated relative
to the epoch, so an image will not be captured immediately when
the program is first started.
--offset <seconds>
Sets the offset to use when calculating when the next
due in loop mode. Value can be positive or negative.

image

is

-b, --background
Run in the background. In this mode stdout and console logging
are unavailable.
--pid <filename>
Saves the PID of the background process to the
Ignored when not using background mode.

specified

file.

--log [file/syslog:]<filename>
Redirect log messages to a file or syslog. For example
--log output.log
--log file:output.log
--log syslog
--gmt

Use GMT instead of the local timezone when formatting text with
strftime.

Capture Options
-d, --device [<prefix>:]<device name>
Set the source or device to use. The source module
automatically unless specified in the prefix.

is

selected

Default is /dev/video0.
Available source modules, in order of preference:
V4L2 - Capture images from a V4L2 compatible video device.
V4L1 - Capture images from a V4L1 compatible video device.
FILE - Capture an image from a JPEG or PNG image file.
RAW - Reads images straight from a device or file.
TEST - Draws colour bars.
-i, --input <input number or name>
Set the input to use. You may select an input by either its
number or name.
Default is "0".
--list-inputs
List available inputs for the selected source or device.
fswebcam -d v4l2:/dev/video1 --list-inputs
-t, --tuner <tuner number>
Set the tuner to use.
-f, --frequency <frequency>
Set the frequency of the selected input or tuner. The value
be read as KHz or MHz depending on the input or tuner.

may

-p, --palette <name>


Try to use the specified image format when capturing the image.
Default is to select one automatically.
Supported formats:
PNG
JPEG
MJPEG
RGB32
RGB24
BGR32

BGR24
YUYV
UYVY
YUV420P
BAYER
RGB565
RGB555
GREY
-r, --resolution <dimensions>
Set the image resolution of the source
resolution used may differ if the
capture at the specified resolution.

or device. The actual


source or device cannot

Default is "384x288".
--list-framesizes
Lists the supported resolutions for the selected source.
--list-framerates
Lists the supported frame rates
resolution.

for

the

selected

source

and

-F, --frames <number>


Set the number of frames to capture. More frames mean less noise
in the final image, however capture times will be longer and
moving objects may appear blurred.
Default is "1".
-S, --skip <number>
Set the number of frames to skip. These frames will be captured
but wont be use. Use this option if your camera sends some bad
or corrupt frames when it first starts capturing.
Default is "0".
-D, --delay <delay>
Inserts a delay after the source or device has been opened and
initialised, and before the capture begins. Some devices need
this delay to let the image settle after a setting has changed.
The delay time is specified in seconds.
-R, --read
Use read() to capture images. This can be slower but more stable
with some devices.
Default is to
unavailable.

use mmap(), falling back on read() if mmap() is

-s, --set <name=value>


Set a control. These are used by the source modules to control
image or device parameters. Numeric values can be expressed as a
percentage of there maximum range or a literal value, for
example:
--set brightness=50% --set framerate=5

Non-numeric controls are also supported:


--set lights=on
V4L2 features a type of control called a button. These
controls do not take any value, but trigger an action. For
example:
--set "Restore Factory Settings"
Control names and values are not case sensitive.
Note: Available controls will
module and devices used. For
--list-controls option.

vary
more

depending in the source


information
see
the

--list-controls
List available controls and their current values
selected source module and device. For example:

for

the

fswebcam -d v4l2:/dev/video2 --list-controls


Output Options
These options are performed in the order they
line, only effecting images output later
example:

appear on the command


on the command line. For

fswebcam -r 640x480 output1.jpeg --scale 320x240 output2.jpeg


Will create two images, "output1.jpeg" containing a
full
resolution
copy of the captured image and "output2.jpeg"
containing the same captured image but scaled to half the size.
--no-banner
Disable the banner.
--top-banner
Position the banner at the top of the image.
--bottom-banner
Position the banner at the bottom of the image.
This is the default.
--banner-colour <#AARRGGBB>
Set the colour of the banner. Uses the web-style hexadecimal
format (#RRGGBB) to describe the colour, and can support an
alpha channel (#AARRGGBB). Examples:
"#FF0000" is pure red.
"#80000000" is semi-transparent black.
"#FF000000" is invisible (alpha channel is at maximum).
Default is "#40263A93".
--line-colour <#AARRGGBB>
Set the colour of the divider line. See --banner-colour for more

information.
Default is "#00FF0000".
--text-colour <#AARRGGBB>
Set the colour of
information.

the

text.

See

--banner-colour

for

more

Default is "#00FFFFFF".
--font <[file or font name]:[font size]>
Set the font used in the banner. If no path is specified the
path in the GDFONTPATH environment variable is searched for the
font.
If no font size is specified the default of "10" will be used.
Default is "luxisr:10".
--no-shadow
Disable the text shadow.
--shadow
Enable the text shadow.
This is the default behaviour.
--title <text>
Set the main text, located in the top left of the banner.
--no-title
Clear the main text.
--subtitle <text>
Set the sub-title
banner.

text,

located

in

the

bottom left of the

--no-subtitle
Clear the sub-title text.
--timestamp <text>
Set the timestamp text, located in the top right of the
This string is formatted by strftime.

banner.

Default is "%Y-%m-%d %H:%M (%Z)".


--no-timestamp
Clear the timestamp text.
--info <text>
Set the info text, located in the bottom right of the banner.
--no-info
Clear the info text.
--underlay <filename>
Load a PNG image and overlay it on the image, below the banner.

The image is aligned to the top left.


Note: The underlay is only applied when saving an image
not modified by any of the image options or effects.

and

is

--no-underlay
Clear the underlay image.
--overlay <filename>
Load a PNG image and overlay on the image, above the banner. The
image is aligned to the top left.
Note: The overlay is only applied when saving an image
not modified by any of the image options or effects.

and

is

--no-overlay
Remove the overlay image.
--jpeg <factor>
Set JPEG as the output image format. The compression factor is a
value between 0 and 95, or -1 for automatic.
This is the default format, with a factor of "-1".
--png <factor>
Set PNG as the output image format. The compression
be a value between 0 and 9, or -1 for automatic.

factor

can

--save <filename>
Saves the image to the specified filename.
Note: This isnt necessary on the command-line where a filename
alone is enough to save an image.
--revert
Revert to the original captured image and
undoes all previous effects on the image.

resolution.

This

Note: This only reverts the image itself, and not options such
as font, colours and overlay.
--flip <direction[,direction]>
Flips the image. Direction can be
Example:
--flip h
--flip h,v

(h)orizontal

or

(v)ertical.

Flips the image horizontally.


Flips the image both horizontally and vertically.

--crop <dimensions[,offset]>
Crop the image. With no offset the cropped area will be the
center of the image. Example:
--crop 320x240
--crop 10x10,0x0
the image.
--scale <dimensions>

Crops the center 320x240 area of the image.


Crops the 10x10 area at the top left corner of

Scale the image.


Example:
640x480.

"--scale

640x480"

scales

the

image

up

or down to

Note: The aspect ratio of the image is not maintained.


--rotate <angle>
Rotate the image in right angles (90, 180 and 270 degrees).
Note: Rotating the
dimensions.

image

90

or

270

degrees

will

swap

the

--deinterlace
Apply a simple deinterlacer to the image.
--invert
Invert all the colours in the image, creating a negative.
--exec <command>
Executes the specified command and waits for it to complete
before continuing. The command line is formatted by strftime.

Das könnte Ihnen auch gefallen