Date: Sun, 27 Jun 1999 19:06:05 -0700 From: Amancio Hasty <hasty@rah.star-gate.com> To: "Piers O'Hanlon" <P.OHanlon@cs.ucl.ac.uk> Cc: release@cs.ucl.ac.uk, vic@cs.ucl.ac.uk, mbone@ISI.EDU, multimedia@freebsd.org Subject: Re: New UCL vic release (vic2.8ucl4) Message-ID: <199906280206.TAA29479@rah.star-gate.com> In-Reply-To: Your message of "Wed, 23 Jun 1999 17:30:05 BST." <4549.930155405@cs.ucl.ac.uk>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --]
Patches to enable UCL's version of vic on FreeBSD 4.0 -current. . LBL's
vic is easily build from FreeBSD port/mbone/vic directory.
UCL's vic build instructions for FreeBSD.
mkdir mbone
cd mbone
tar -xzf tcl-8.0.3ucl6.tar.gz
tar -xzf tk-8.0.3ucl6.tar.gz
tar -xzf vic-2.8ucl4.tar.gz
cd tcl-8.0
./configure --prefix=/usr/mbone
gmake
gmake install-binaries
gmake install-libraries
cd ../tk-8.0
./configure --prefix=/usr/mbone
gmake
gmake install-binaries
gmake install-libraries
cd ../vic-8.0
./configure --prefix=/usr/mbone
gmake
UCL's vic is able to use the tuner component of the FreeBSD Bt848 driver which
means that in addition to broadcast from a camera we can also tune in to a TV
channel and broadcast it.
[-- Attachment #2 --]
diff -b -c -r vic/configure vic.new/configure
*** vic/configure Fri Jun 4 04:39:32 1999
--- vic.new/configure Sun Jun 27 18:50:52 1999
***************
*** 1684,1691 ****
echo "can't find tcl.h in $d/include"
exit 1
fi
! places="$d/lib/libtcl8.0.so \
! $d/lib/libtcl8.0.a \
$d/lib/libtcl.so \
$d/lib/libtcl.a"
V_LIB_TCL=FAIL
--- 1684,1691 ----
echo "can't find tcl.h in $d/include"
exit 1
fi
! places="$d/lib/libtcl80.so \
! $d/lib/libtcl80.a \
$d/lib/libtcl.so \
$d/lib/libtcl.a"
V_LIB_TCL=FAIL
***************
*** 1738,1744 ****
$PWD/../tcl-8.0 \
$PWD/../tcl \
/cs/research/mice/starship/common/$OPSYS/include/tcl8.0 \
! /usr/local/include/tcl8.0 \
/usr/src/local/tcl8.0 \
/import/tcl/include/tcl8.0 \
$prefix/include \
--- 1738,1744 ----
$PWD/../tcl-8.0 \
$PWD/../tcl \
/cs/research/mice/starship/common/$OPSYS/include/tcl8.0 \
! /usr/mbone/include/tcl8.0 \
/usr/src/local/tcl8.0 \
/import/tcl/include/tcl8.0 \
$prefix/include \
***************
*** 1758,1771 ****
exit 1
fi
fi
! echo $ac_n "checking for main in -ltcl8.0""... $ac_c" 1>&6
! echo "configure:1763: checking for main in -ltcl8.0" >&5
ac_lib_var=`echo tcl8.0'_'main | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
ac_save_LIBS="$LIBS"
! LIBS="-ltcl8.0 $LIBS"
cat > conftest.$ac_ext <<EOF
#line 1771 "configure"
#include "confdefs.h"
--- 1758,1771 ----
exit 1
fi
fi
! echo $ac_n "checking for main in -ltcl80""... $ac_c" 1>&6
! echo "configure:1763: checking for main in -ltcl80" >&5
ac_lib_var=`echo tcl8.0'_'main | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
ac_save_LIBS="$LIBS"
! LIBS="-ltcl80 $LIBS"
cat > conftest.$ac_ext <<EOF
#line 1771 "configure"
#include "confdefs.h"
***************
*** 1789,1795 ****
fi
if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
echo "$ac_t""yes" 1>&6
! V_LIB_TCL="-ltcl8.0"
else
echo "$ac_t""no" 1>&6
V_LIB_TCL="FAIL"
--- 1789,1795 ----
fi
if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
echo "$ac_t""yes" 1>&6
! V_LIB_TCL="-ltcl80"
else
echo "$ac_t""no" 1>&6
V_LIB_TCL="FAIL"
***************
*** 1812,1819 ****
/import/tcl/lib/tcl8.0 \
"
for dir in $places; do
! if test -r $dir/libtcl8.0.so -o -r $dir/libtcl8.0.a; then
! V_LIB_TCL="-L$dir -ltcl8.0"
break
fi
if test -r $dir/libtcl.so -o -r $dir/libtcl.a; then
--- 1812,1819 ----
/import/tcl/lib/tcl8.0 \
"
for dir in $places; do
! if test -r $dir/libtcl8.0.so -o -r $dir/libtcl80.a; then
! V_LIB_TCL="-L$dir -ltcl80"
break
fi
if test -r $dir/libtcl.so -o -r $dir/libtcl.a; then
***************
*** 1836,1842 ****
$PWD/../tcl-8.0/library \
$PWD/../tcl/library \
/cs/research/mice/starship/common/$OPSYS/lib/tcl8.0 \
! /usr/local/lib/tcl8.0 \
/usr/contrib/lib/tcl8.0 \
/usr/lib/tcl8.0 \
/usr/lib/tk/tcl8.0 \
--- 1836,1842 ----
$PWD/../tcl-8.0/library \
$PWD/../tcl/library \
/cs/research/mice/starship/common/$OPSYS/lib/tcl8.0 \
! /usr/mbone/lib/tcl8.0 \
/usr/contrib/lib/tcl8.0 \
/usr/lib/tcl8.0 \
/usr/lib/tk/tcl8.0 \
***************
*** 1884,1890 ****
exit 1
fi
places="$d/lib/libtk8.0.so \
! $d/lib/libtk8.0.a \
$d/lib/libtk.so \
$d/lib/libtk.a"
V_LIB_TK=FAIL
--- 1884,1890 ----
exit 1
fi
places="$d/lib/libtk8.0.so \
! $d/mbone/libtk80.a \
$d/lib/libtk.so \
$d/lib/libtk.a"
V_LIB_TK=FAIL
***************
*** 1938,1944 ****
$PWD/../tk-8.0/generic \
$PWD/../tk/generic \
/cs/research/mice/starship/common/$OPSYS/include \
! /usr/local/include \
$prefix/include \
/usr/contrib/include \
/usr/include/tcl \
--- 1938,1944 ----
$PWD/../tk-8.0/generic \
$PWD/../tk/generic \
/cs/research/mice/starship/common/$OPSYS/include \
! /usr/mbone/include \
$prefix/include \
/usr/contrib/include \
/usr/include/tcl \
***************
*** 1960,1973 ****
exit 1
fi
fi
! echo $ac_n "checking for main in -ltk8.0""... $ac_c" 1>&6
! echo "configure:1965: checking for main in -ltk8.0" >&5
ac_lib_var=`echo tk8.0'_'main | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
ac_save_LIBS="$LIBS"
! LIBS="-ltk8.0 $LIBS"
cat > conftest.$ac_ext <<EOF
#line 1973 "configure"
#include "confdefs.h"
--- 1960,1973 ----
exit 1
fi
fi
! echo $ac_n "checking for main in -ltk80""... $ac_c" 1>&6
! echo "configure:1965: checking for main in -ltk80" >&5
ac_lib_var=`echo tk8.0'_'main | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
ac_save_LIBS="$LIBS"
! LIBS="-ltk80 $LIBS"
cat > conftest.$ac_ext <<EOF
#line 1973 "configure"
#include "confdefs.h"
***************
*** 1991,1997 ****
fi
if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
echo "$ac_t""yes" 1>&6
! V_LIB_TK="-ltk8.0"
else
echo "$ac_t""no" 1>&6
V_LIB_TK="FAIL"
--- 1991,1997 ----
fi
if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
echo "$ac_t""yes" 1>&6
! V_LIB_TK="-ltk80"
else
echo "$ac_t""no" 1>&6
V_LIB_TK="FAIL"
***************
*** 2003,2009 ****
$PWD/../tk-8.0/unix \
$PWD/../tk/unix \
/cs/research/mice/starship/common/$OPSYS/lib \
! /usr/local/lib \
/usr/contrib/lib \
/usr/lib \
/usr/lib/tk \
--- 2003,2009 ----
$PWD/../tk-8.0/unix \
$PWD/../tk/unix \
/cs/research/mice/starship/common/$OPSYS/lib \
! /usr/mbone/lib \
/usr/contrib/lib \
/usr/lib \
/usr/lib/tk \
***************
*** 2013,2020 ****
$prefix/lib \
$x_libraries"
for dir in $places; do
! if test -r $dir/libtk8.0.so -o -r $dir/libtk8.0.a; then
! V_LIB_TK="-L$dir -ltk8.0"
break
fi
if test -r $dir/libtk.so -o -r $dir/libtk.a; then
--- 2013,2020 ----
$prefix/lib \
$x_libraries"
for dir in $places; do
! if test -r $dir/libtk80.so -o -r $dir/libtk80.a; then
! V_LIB_TK="-L$dir -ltk80"
break
fi
if test -r $dir/libtk.so -o -r $dir/libtk.a; then
***************
*** 2037,2043 ****
$PWD/../tk-8.0/library \
$PWD/../tk/library \
/cs/research/mice/starship/common/$OPSYS/lib/tk8.0 \
! /usr/local/lib/tk8.0 \
/usr/contrib/lib/tk8.0 \
/usr/lib/tk8.0 \
/usr/lib/tk/tk8.0 \
--- 2037,2043 ----
$PWD/../tk-8.0/library \
$PWD/../tk/library \
/cs/research/mice/starship/common/$OPSYS/lib/tk8.0 \
! /usr/mbone/lib/tk8.0 \
/usr/contrib/lib/tk8.0 \
/usr/lib/tk8.0 \
/usr/lib/tk/tk8.0 \
diff -b -c -r vic/grabber-meteor.cc vic.new/grabber-meteor.cc
*** vic/grabber-meteor.cc Thu Jan 14 04:48:41 1999
--- vic.new/grabber-meteor.cc Sun Jun 27 16:50:16 1999
***************
*** 73,85 ****
class MeteorGrabber : public Grabber {
public:
MeteorGrabber(const char* name);
virtual int command(int argc, const char*const* argv);
virtual void fps(int);
- virtual ~MeteorGrabber();
virtual void start();
virtual void stop();
- protected:
virtual int grab();
void format();
virtual void setsize() = 0;
void suppress(const u_char* in, int istride);
--- 73,85 ----
class MeteorGrabber : public Grabber {
public:
MeteorGrabber(const char* name);
+ virtual ~MeteorGrabber();
virtual int command(int argc, const char*const* argv);
virtual void fps(int);
virtual void start();
virtual void stop();
virtual int grab();
+ protected:
void format();
virtual void setsize() = 0;
void suppress(const u_char* in, int istride);
***************
*** 93,102 ****
u_int baseheight_; /* Width of frame to be captured */
u_int decimate_; /* division of base sizes */
volatile u_int* pyuv_; /* pointer to yuv data */
-
- int count;
- long first;
- double values[1500];
int tuner_ ; /* tuner device... */
};
--- 93,98 ----
***************
*** 132,137 ****
--- 128,134 ----
public:
MeteorScanner(const int n);
};
+
static MeteorScanner find_meteor_devices(4);
MeteorScanner::MeteorScanner(const int n)
***************
*** 160,167 ****
}
}
}
! }
!
MeteorDevice::MeteorDevice(const char* nickname, const char *devname, int free):
InputDevice(nickname), name_(devname)
--- 157,163 ----
}
}
}
! }
MeteorDevice::MeteorDevice(const char* nickname, const char *devname, int free):
InputDevice(nickname), name_(devname)
***************
*** 171,177 ****
format {422 411} \
type {pal ntsc secam auto} \
size {large normal small cif} \
! port {RCA Port-1 Port-2 Port-3 S-Video RGB}";
else
attributes_ = "disabled";
}
--- 167,173 ----
format {422 411} \
type {pal ntsc secam auto} \
size {large normal small cif} \
! port {Port-1 RCA Port-2 Port-3 S-Video RGB}";
else
attributes_ = "disabled";
}
***************
*** 192,201 ****
return (InputDevice::command(argc, argv));
}
! MeteorGrabber::MeteorGrabber(const char* name, const char* format)
{
- count = 0;
-
int devnum;
if (sscanf(name, "/dev/bktr%d", &devnum) == 1) {
char *tunerdev = new char[strlen(name) + 3];
--- 188,195 ----
return (InputDevice::command(argc, argv));
}
! MeteorGrabber::MeteorGrabber(const char* name)
{
int devnum;
if (sscanf(name, "/dev/bktr%d", &devnum) == 1) {
char *tunerdev = new char[strlen(name) + 3];
***************
*** 208,214 ****
status_ = -1;
return;
}
! port_ = METEOR_INPUT_DEV0;
video_format_ = METEOR_FMT_AUTOMODE;
decimate_ = 2;
basewidth_ = PAL_WIDTH * 2;
--- 202,210 ----
status_ = -1;
return;
}
! port_ = METEOR_INPUT_DEV1;
! ioctl(dev_, METEORSINPUT, &port_);
! port_ = METEOR_INPUT_DEV1;
video_format_ = METEOR_FMT_AUTOMODE;
decimate_ = 2;
basewidth_ = PAL_WIDTH * 2;
***************
*** 238,244 ****
geom.frames = 1;
geom.oformat = METEOR_GEO_UNSIGNED | METEOR_GEO_YUV_PACKED;
/*
! * If we can aet by with only reading even fields, then by all
* means do so.
*/
unsigned short status;
--- 234,240 ----
geom.frames = 1;
geom.oformat = METEOR_GEO_UNSIGNED | METEOR_GEO_YUV_PACKED;
/*
! * If we can get by with only reading even fields, then by all
* means do so.
*/
unsigned short status;
***************
*** 415,420 ****
--- 411,417 ----
u_char val = atoi(argv[2]);
ioctl(dev_, METEORSCHCV, &val);
return (TCL_OK);
+ }
} else if (argc == 2) {
if (strcmp(argv[1], "format") == 0 ||
strcmp(argv[1], "type") == 0) {
diff -b -c -r vic/grabber.cc vic.new/grabber.cc
*** vic/grabber.cc Thu Jan 14 04:48:43 1999
--- vic.new/grabber.cc Sun Jun 27 13:05:41 1999
***************
*** 496,501 ****
--- 496,508 ----
outh_ = 144;
break;
+ case 640:
+ /* full ntsc */
+ ispal = 0;
+ outw_ = 640;
+ outh_ = 480;
+ break;
+
default:
/* XXX this shouldn't happen */
fprintf(stderr, "vic: CIF grabber: bad geometry\n");
diff -b -c -r vic/qfDES_memory.c vic.new/qfDES_memory.c
*** vic/qfDES_memory.c Thu Apr 8 04:07:26 1999
--- vic.new/qfDES_memory.c Sun Jun 27 11:48:48 1999
***************
*** 13,19 ****
#include "config.h"
#include "qfDES.h"
! #ifndef DEFINED_ERRLIST
extern int sys_nerr;
extern char *sys_errlist[];
#endif
--- 13,19 ----
#include "config.h"
#include "qfDES.h"
! #ifdef DEFINED_ERRLIST
extern int sys_nerr;
extern char *sys_errlist[];
#endif
diff -b -c -r vic/tmn-x/io.c vic.new/tmn-x/io.c
*** vic/tmn-x/io.c Tue Jun 22 04:19:30 1999
--- vic.new/tmn-x/io.c Sun Jun 27 11:33:31 1999
***************
*** 53,59 ****
#include "sim.h"
#ifdef VIC
! /*extern*/
unsigned char *h263_frame;
#endif
--- 53,59 ----
#include "sim.h"
#ifdef VIC
! /*extern */
unsigned char *h263_frame;
#endif
diff -b -c -r vic/tmn-x/putbits.c vic.new/tmn-x/putbits.c
*** vic/tmn-x/putbits.c Tue Jun 22 04:19:31 1999
--- vic.new/tmn-x/putbits.c Sun Jun 27 11:33:32 1999
***************
*** 63,71 ****
#include "sim.h"
#ifdef VIC
! /*extern */
int h263_streamcount;
! /*extern */
unsigned char *h263_bitstream;
#else
extern FILE *streamfile; /* the only global var we need here */
--- 63,71 ----
#include "sim.h"
#ifdef VIC
! /*extern*/
int h263_streamcount;
! /*extern*/
unsigned char *h263_bitstream;
#else
extern FILE *streamfile; /* the only global var we need here */
diff -b -c -r vic/ui-grabber.tcl vic.new/ui-grabber.tcl
*** vic/ui-grabber.tcl Wed Jun 9 04:29:24 1999
--- vic.new/ui-grabber.tcl Sun Jun 27 12:58:21 1999
***************
*** 453,459 ****
# label $w.f.cl.slabel -font $f -text "Saturation" -anchor n
# pack $w.f.cl.glabel $w.f.cl.label $w.f.cl.slabel \
# -side left -fill x -expand 1
!
scale $w.f.c.gscale \
-orient horizontal -width 12 -length 100 -relief groove \
-showvalue 1 -from 0 -to 255 \
--- 453,459 ----
# label $w.f.cl.slabel -font $f -text "Saturation" -anchor n
# pack $w.f.cl.glabel $w.f.cl.label $w.f.cl.slabel \
# -side left -fill x -expand 1
! frame $w.f.c -relief flat
scale $w.f.c.gscale \
-orient horizontal -width 12 -length 100 -relief groove \
-showvalue 1 -from 0 -to 255 \
[-- Attachment #3 --]
Amancio Hasty
ahasty@mindspring.com
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199906280206.TAA29479>
