bttvgrab
bttvgrab is a video capture/recording software for Linux. Or rather: it used to be. It has been discontinued since 2002, in favour of modern solutions like MythTV. Actually, some code of bttvgrab survives (through twisted paths) even in MythTV.
Being written for computers of the 300MHz class and ultra-low network bandwidth, bttvgrab is quite suitable for embedded scenarios today. It is in fact still in use at some sites. Due to this, the software is still available and support can be obtained on demand.
The following text has been taken straight from the old web page, thus the view point is a little out-of-date.
Overview
bttvgrab is a program for grabbing video sequences under Linux using the video4linux driver. Originally, it was written for bt848-based frame grabber cards (e.g. Hauppauge WinTV, Miro PCTV...) and the bttv Linux driver, so you will get best results when using one of them.
The goal of bttvgrab is to provide high-quality grabbing suitable for video recording. Currently, this is accomplished by trying hard not to leave out a single frame, and to catch temporary delays by buffering several frames. We have also synchronized sound and frame loss tracing. The included converter bttvconvert takes care of all neccessary steps to create MPEG (1 or 2) video sequences from the grabbed frames. Sound conversion is done as well.
Another use of bttvgrab is web-tv. Everything needed for that is included in the package. Audio is not currently supported, but is something we consider.
Finally, it is also suitable as a personal video recorder using the new pmm format to save space while still having 25fps. This is like the primary goal but trading quality for space savings.
bttvgrab was done by Jörg Walter (me), very remotely based on an early version of Adam Kopacz.
Requirements
- A regular Linux development environment with some common libraries.
- For the network client only, Cygwin on Windows is also supported.
- mpeg2encode for the automatic conversion.
Download
- bttvgrab-0.15.10.tar.gz
- 660kb, final release of 2000-04-13, source code only, for any video4linux driver
- Older versions
- Older versions have been pulled, since they rely on ancient driver APIs. If you really need one, contact me.
License
bttvgrab is distributed under the terms of the GNU General Public License (GPL) Version 2, or, at your option, Version 3.
Olds
Being my very first open source project and considering that I began using Linux just a year earlier, here is the news archive for historic curiosity:
- 13.04.2000:
- bttvgrab-0.15.10 released. Really good news! Automatic MPEG conversion works again, less segfaults on exit (none?), gpm-quirks removed, cleaned up the source tree completely.
- 21.03.2000:
- bttvgrab-0.15.9 released. New features: several bugfixes (like the "shows 'Working...' but doesn't do anything" bug)
- 01.03.2000:
- bttvgrab-0.15.8 released. New features: Much enhanced framebuffer device support, control position/palette/screen resolution with your mouse (needs gpm)
- 11.01.2000:
- Finally found the bug that broke mpeg encoding. Still, mpeg encoding is a bit instable, so be sure to use the -c option when encountering problems.
- 10.01.2000:
- bttvgrab-0.15.6 released. Some bugfixes, audio should work now on all cards, tested with linux-2.2.13. New features: H.263 codec (low-bitrate video), g728 (low- bitrate audio), multicast are all tested and work. Win32 port (see below). Really cool: Framebuffer driver: can output stuff to the SVGA framebuffer driver, watch TV on your console :-)
- 05.08.1999:
- Network is up again... we had a lightning strike which took us out for about 2 weeks... and really soon now (tm) there will be a new release...
- 16.04.1999:
- Maintenance release: bttvgrab-0.15.4 - all those nasty segfaults should be away now, a H.263 encoder and decoder is available, multicast as a new transport mechanism, and finally bttvgrab doesn't hang anymore when using an unpatched driver (yeah - that "he won't do anything" bug).. some other bugs removed as well.
- 16.03.1999:
- Bugfix release: bttvgrab-0.15.2 - the "final little change" broke -d q...
- 15.03.1999:
- The birthday release: bttvgrab-0.15.1 (my birthday, not bttvgrab's ;-) Internal structure changed, bttvgrab now needs libpthread, should conserve resources. The real reason for this are my plans for the next release. Moreover, many bugs were fixed.
- 18.01.1999:
- Happy new year! bttvgrab-0.15.0 released. Many, many new things added. Networking, X Display, even smaller pmm formats, free conversion, and more...
- 22.11.1998:
- bttvgrab-0.14.6 released. Just a maintenance release to fix all pending problems before the next major release. Verified to work with bttv-0.5.19.
- 27.9.1998:
- bttvgrab-0.14.5 released. New in this release: configure updates (now runs without c++ installed), patch & grab update to newest bttv driver, should work now with linux kernel 2.1 (untested).
- 26.9.1998:
- New webcam demo: www.cyberhome.de/webcam [long dead]. This is the official bttvgrab demo page.
- 21.9.1998:
- bttvgrab-0.14.4 released. New in this release: fixed a bug with bttvconverts -x option (first mpeg frame to encode), improved kgrabs progress display.
- 12.9.1998:
- Nokia uses bttvgrab for their webcam (this event is already over, check www.nokia.de to see if they have another event)
- 5.9.1998:
- bttvgrab-0.14.3 released. It includes another bunch of makefile/configure changes. Now bttvgrab is fully video4linux compliant. Use the bttv-0.5.15 driver. Added a switch for video norm selection.
- 1.9.1998:
- bttvgrab-0.14.2 released. Again, several bugs in the configure/make scripts fixed. Many thanks for all the patient bug reports.
- 31.8.1998:
- bttvgrab-0.14.1 released. Fixes problems with older systems.
- 30.8.1998:
- bttvgrab-0.14 released. New in this release: KDE frontend, many bugfixes, another redesign, GIF palette finally correct, revised Web-TV scripts (they work perfectly), once and forever glibc2-compatible as I have it myself now, support for newer drivers than 0.5.8, and many more...
- 30.7.1998:
- bttvgrab-0.13.1 released. New in this release: bugfixes for glibc2
- 28.7.1998:
- bttvgrab-0.13 released. New in this release: Tcl/Tk interface, synchronous writes
- 22.7.1998:
- bttvgrab-0.12 released. New in this release: pmm update, new filename handling (see docs!!), documentation, automatic creation of mpeg videos with sound
- 18.7.1998:
- bttvgrab-0.11 released. New in this release: new file formats (yuv, pmm), conversion program, jpeg enhancements, dumb and quiet user interface, some bugfixes
- 29.6.1998:
- Server running again - we had some problems in our internal network, the whole subnet was down
- 19.6.1998:
- bttvgrab-0.10.2 released. New in this release: new file formats (raw), adjustments for glibc2, made file numbering switchable (-t)
- 17.6.1998:
- bttvgrab-0.10.1 released. New in this release: configure script for easier setup
- 17.6.1998:
- bttvgrab-0.10 released. New in this release: GIF grabbing, grab logfile
- 25.5.1998:
- bttvgrab-0.9 released. New in this release: sound recording, more stable cleanup on program exit
- 11.5.1998:
- bttvgrab-0.8.1 released. New in this release: bugfix for grabbing with unpatched driver
- 11.5.1998:
- bttvgrab-0.8 released. New in this release: adapted for driver version 0.5.8, improved Multithreading, should work reduced without driver patch.
- 7.5.1998:
- bttvgrab-0.7 not released ;-). This is not a public release, but an assimilation of Adam's code. New in this release: Multithreading -> better quality/framerates if the computer is too slow for full 25 fps.
- 5.5.1998:
- Taken over bttvgrab. I am now the official maintainer of bttvgrab, as Adam doesn't have enough time. He still assists with good ideas.