Langue: en

Version: 256818 (debian - 07/07/09)

Section: 1 (Commandes utilisateur)


webcam-server - a server to stream webcam video or snapshots


webcam-server [-d device] [-p port] [-D[sh]] [-m[bsf]] [-c caption] [-tf R,G,B] [-tb R,G,B] [-tt R,G,B] [-T x,y] [-q jpeg_quality] [-g geometry] [-n] [-x] [-G gamma] [-f[hv]] [-R rotation] [-r] [-s] [-v] [-l logfile] [-a] [-h]


webcam-server is a server daemon that can stream frames from any video4linux device to remote clients running the provided applet or single frame snapshots running a web browser.


Enable test mode - does not accept client connections and prints out the current frames per second (fps).
-c caption
Set a caption to be displayed near the bottom of each captured frame. This string can be formatted for strftime() as follows: %Y - year, %m - month, %d - day, %H - hours, %M - minutes, %S - seconds
The following variables are also formatted:
%%V - webcam-server version, %%f - current frame, %%v - number of viewers
example: webcam-server -c "my webcam %d/%m/%Y %H:%M:%S [version: %%V, %%f frames, %%v viewers]"
-d device
Specify the video4linux supported device to capture frames from.
-Dh, -Ds
Disable HTTP (h) snapshots or applet streams (s).
-fh, -fv
Flip image horizontally (h) or vertically (v).
-g geometry
Set the image capture size. The specified size must be supported by your video device.
example: webcam-server -g 352x288
-G gamma
Simple gamma correction. Adjusts image pixels by specified value. Valid range is -100 to 100.
Display help and command line parameters.
-l logfile
Specify a file to print log messages.
-mb, -ms, -mf value
Maximum bytes (b), seconds (s) or frames (f) per client connection.
Force use of read() system call. For some devices this can be faster than the standard memory mapped method of frame capture. (**Recommended for some webcams)
-p port
Listen for client connections on the specified port.
-q jpeg_quality
Set JPEG compression quality. Valid range is 0-100 (%).
Retry camera initialization inifinitely upon failure. Useful for when you unplug your camera frequently; the server will start and wait until the camera has been connected.
-R n
Rotate the image 90 degrees (n) times. 1 = 90, 2 = 180, 3 = 270 degrees
Enable daemon mode via daemon() system call.
-tf R,G,B
Set text foreground colour. Valid range is 0-255 (for each in R,G,B).
-tb colour
Set text background colour. Valid range is 0-255 (for each in R,G,B).
-tf colour
Set text transparency colour. Valid range is 0-255 (for each in R,G,B). To make the foreground or background of the caption transparent, set it to the same R,G,B values as the transparency colour.
-T x,y
Draw the caption at the specified x,y coordinates in the frame. If the caption geometry (size of the text in pixels) is larger than the width or height of the image subtract the x,y point, the excess text will be truncated.
Verbose mode - display connections and messages to standard output.
Swap RGB colours to BGR colours. (Use this if your frames look blue or red)


The easiest way to make sure things are working is to run the server with no options and try to access "http://localhost:8888" via a web browser.

If your device does not seem to work, try using the -n option to force the use of the read() system call. Try using your device with other software and try similar settings with webcam-server.

If you are using a v4l supported TV capture card and want to change channels, download xawtv and use v4lctl to configure it. This functionality is not yet supported by webcam-server.


Note: The applet must reside on the same host as the webcam-server!

Copy the following code into a publicly visible HTML document. You may have to adjust some values to fit your needs. Before it can be viewable by others, you must change "localhost" to the host name or IP address of your server.

<APPLET code="WebCamApplet.class" archive="applet.jar" width="320" height="240"> <param name=URL value="http://localhost:8888"> <param name=FPS value="1"> <param name=width value="320"> <param name=height value="240"> </APPLET>


Donn Morrison <> Copyright (C) 2004 Donn Morrison <>

This manual page was written by Luca Bedogni <>, for the Debian project (but may be used by others).