====================================================================== This package contains binaries of the Personal Web Media (PWM) system for the Windows 95/NT operating system ====================================================================== developed at the Distributed Systems Dept, University of Ulm. For licence information read the file licence.txt. What is it? =========== PWM is a live video and audio server that looks like a web server to web clients. It grabs images from your local camera and distributes it as an inline realtime-movie. Audio is recorded from the sound input device and provided as a GSM or ADPCM stream. PWM includes a small WWW server (HTTP server). Requirements: ============= To use WebMedia you need a Windows95 PC with framegrabber and camera. (PWM will run with NT too but we did not that much testing.) The video has been tested with these framegrabber-cards: - MiroDC 1, MiroDC 20, MiroDC 30 - FAST Movie Machine, Movie Machine II - Creative Labs Video Blaster SE100 (Bernie Breton) - Creative Labs Video Blaster RT300 - Winnov Videum (Blake Stewart ) - Intel Smart Video Recorder III (Blake Stewart ) - PCI Stinger videoboard (M.E. Kraan ) - Connectix ColorQuickCam, B/W QuickCam - Cardinal SnapshotPlus (tele monster ) It works with other grabber cards. Please drop us a note if you succeeded using other cards. A soundblaster 16 compatible soundcard is required to record audio. Fullduplex audio communication is possible with soundblaster driver version 4.30 (win 95) and 4.04 (NT) or higher. Who did it? =========== Heiner Wolf Travis Heppe <> Rainer Birkenmaier Theo Gross Stephan Schmid Thanks to: Konrad Froitzheim for lots of comments and advice Holger Boenisch for testing and optimisations Steven Duntley Halpape for the IRIX port Scott Furman for integration of GIF-streams into NETSCAPE Tom Lane for the JPEG library Thomas Boutell ... and hundred thousends of beta testers who operated the interactive model railroad http://rr-vsinformatik.uni-ulm.de/rr/ Files: ====== README.txt: this file LICENSE.txt: another file to read pwm.cfg settings file webmedia.exe <---- executable binary notify.wav Notification sound htdocs\JPEGtest.html html text example for video with MJPEG htdocs\GIFtest.html html text example for video with animated GIF htdocs\comm.html html text example for combined audio/video htdocs\[other files] default web conferencing files webmedia.hlp Windows online help file Usage: ====== - The unpacked archive is ready to use, simply start 'webmedia.exe'. - Currently there are two video output modes: 1) a server-pushed sequence of JPEG compressed frames. Use this one, if more than half of the image is changing between frames. 2) a infinite animated GIF sequence. Use this if only small regions (1/3) are changing between frames. MPEG output and diference JPEG is under development. - If the grabber card provides JPEG compression and you want to serve in mode 1) then set the compression of the grabber card to JPEG. - If you want to serve in mode 2) then set the grabber card to 24 bit RGB-data output. - There are three example files for testing the WebMedia server: 1) JPEGtest.html 2) GIFtest.html 3) comm.html (JPEG+audio) - Access them at http://webmediahost.domain/JPEGtest.html - WebMedia writes some log files while running. - The WWW file server will serve html, htm, gif, jpeg, jpg, sdf and class files with a proper Content-type. The WWW server's toplevel directory is relative to the working directory of the binary: $WORKING_DIRECTORY_OF_WEBVIDEO\htdocs Paths below this directory are allowed. There are no cgi's and no ways to configure the built-in WWW server beyond the basic functionality and the server's toplevel directory. - Settings are read at startup from the config file. The file is written at shutdown time. Do not edit it while WebMedia runs. Your changes will be overwritten. Tips: ===== - Adapt the file comm.html to your needs, but leave it where it is. People try to reach you by accessing your default commpage (comm.html). WebMedia will provide audio and call answer capabilities in order to serve as a WWW based picturephone. - The default personal information files contain a structured version of the information, which is available on many users' homepages. The information will be used by conferencing services. E.g. the personal image/icon is used to represent the user. Provided information will be used to enhance conferencing services, but there is NO means to store or change information from the network. REALLY. - Default names of personal images are: image.jpg, image.jpeg, image.gif and icon.gif You can replace the provided icon.gif with your picture. An icon is the small version (32x32), an image is the large version of your picture. - The notification sound can chosen by a file select dialog. the default is notify.wav. - You can create your image.jpg easily using the "file/save image" menu command. Hint: save it into WWW server directory (this is the default). - Don't be confused, if you read about a program called sswin. Once upon a time it was called sswin. But it grew up, married and became the Win95 version of WebMedia. Changes: ======== 1.6.2 new GUI (menu structure and dialogs) second version of framerate control PWM related directories/files (e.g. notification sound file) may now contain space characters some NT debugging 1.6.1 first stable PWM version due to various bug fixes first version of dynamic framerate control MMX support added for differential GIF 1.6 Marriage of WebVideo and WebAudio to Personal Web Media (PWM) 1.5.2 less load while no client connected and if local display off 1.5.1 support for !(JPEG || RGB) grabber. works hopefully for VideoBlaster RT300 several algorithmic optimisations in GIF encoding write JPEG image.jpg snapshot even with RGB grabbers enhanced file select boxes removed YUV-based motion detection 1.5 fixed memory leak in the difflib (affects gif-part). streams are triggerd by the connections -> reduced system load. separated connect notification and acknowledge. choose video input device from config file a lot more minor fixes. 1.4.5 added support for B/W QuickCam added .sdf as MIME-type application/x-sdf to WWW server fixed memory leak in makeDiff 1.4.4 support for ColorQuickCam HTTP server: better support for user detail files 1.4.3 fixed HTTP reply header for animated GIF 1.4.2 menu cosmetics 1.4.1 beep, when acknowledge dialog appears icon cosmetics 1.4 added list of connections acknowledge connections save and restore settings in a single settings file rearranged menus added http server debugging enhanced online help 1.3 added animated GIF 1.2 first release of WebVideo as http server 1.2 - 1.0 grabs video and sends it to the Unix streamserver Known Bugs: =========== - The connected host display does not always update, if clients leave. - Many, many clients drive the program crazy. Even disconnecting them does not help. Troubleshooting: ================ if (webvideo starts) then if (crashes immediately) then restart Windows 95 try { change the grabbed data format to RGB 24 bit or MJPEG (if available) using the MSDOS-box program vidconf.exe . Vidconf will show the source and format control panels of any frame grabber driver if they are supplied by the driver. } else { send email to rbirkenm@hydra.informatik.uni-ulm.de or wolf@informatik.uni-ulm.de } else if (no local video visible) then video input might be wrong try { changing the video input using the options/source menu } else if (no video in Netscape) then URL in HTML file might be wrong change the hostname of the IMG SRC URL to the host running webvideo endif endif History: ======== 05.11.96 Rainer Birkenmaier rbirkenm@hydra.informatik.uni-ulm.de created 05.11.96 Heiner Wolf wolf@informatik.uni-ulm.de changes 07.11.96 hw added FAST card, Troubleshooting and WWW server description 12.11.97 hw added Quickcam 21.01.97 hw added Creative Labs Video Blaster SE100 10.02.97 hw adapted for version 1.4 12.02.97 hw added 2 grabber cards 13.02.97 hw added Changes section 17.02.97 hw ver 1.4.3 25.02.97 hw fiddled around to prepare for next version 03.03.97 hw ver 1.4.4 22.04.97 hw ver 1.4.5 09.04.97 rb new beta version (1.5.beta1) released. 08.05.97 hw 1.5 21.05.97 hw 1.5.1 26.05.97 hw 1.5.2 31.07.97 rb + S. Schmid merged WebVideo and WebAudio 20.08.97 H. Boenisch added MMX support 31.08.97 rb + hb 1.6.1 15.09.97 hb 1.6.2