Reliable Audio Tool, from UCL, version 3.0.33

This commit is contained in:
angelos 1999-09-04 01:54:34 +00:00
parent 5d7c398598
commit 38e10057e5
7 changed files with 390 additions and 0 deletions

24
mbone/rat/Makefile Normal file
View File

@ -0,0 +1,24 @@
# $OpenBSD: Makefile,v 1.1.1.1 1999/09/04 01:54:34 angelos Exp $
DISTNAME= rat-3.0
DISTFILES= rat-3.0.33.tar.gz
CATEGORIES= mbone
MASTER_SITES= http://www-mice.cs.ucl.ac.uk/multimedia/software/rat/3.0.33/
MAINTAINER= angelos@openbsd.org
NEED_VERSION= 1.111
LIB_DEPENDS= tcl80:${PORTSDIR}/lang/tcl80 \
tk80:${PORTSDIR}/x11/tk80 \
post-extract:
@${CP} ${FILESDIR}/buildcmd ${WRKSRC}/buildcmd
@${CHMOD} 755 ${WRKSRC}/buildcmd
do-build:
cd ${WRKSRC}; ${WRKSRC}/buildcmd
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/bin/rat-${OPSYS}-${OPSYS_VER} ${PREFIX}/bin/rat
.include <bsd.port.mk>

3
mbone/rat/files/buildcmd Executable file
View File

@ -0,0 +1,3 @@
#!/bin/sh
MAKE=gmake ./Build rat

3
mbone/rat/files/md5 Normal file
View File

@ -0,0 +1,3 @@
MD5 (rat-3.0.33.tar.gz) = 8b2118ad863ae253d117cb0831d8db0c
RMD160 (rat-3.0.33.tar.gz) = 315457c8288d7315cd181bbb93c7a54e209c0235
SHA1 (rat-3.0.33.tar.gz) = 5e046ab2b0cb21d53a1620070d26ccd4a3f72399

336
mbone/rat/patches/patch-rat Normal file
View File

@ -0,0 +1,336 @@
*** ./src/bat_include.h.orig Fri Sep 3 12:46:37 1999
--- ./src/bat_include.h Fri Sep 3 12:47:53 1999
***************
*** 44,50 ****
#include "config.h"
! #ifndef __FreeBSD__
#include <malloc.h>
#endif
#include <stdio.h>
--- 44,50 ----
#include "config.h"
! #if !defined(__FreeBSD__) && !defined(__OpenBSD__)
#include <malloc.h>
#endif
#include <stdio.h>
***************
*** 71,77 ****
#include <netdb.h>
#include <arpa/inet.h>
extern int h_errno;
! #if !defined(HPUX) && !defined(Linux) && !defined(__FreeBSD__)
#include <stropts.h>
#include <sys/filio.h>
#endif /* HPUX */
--- 71,77 ----
#include <netdb.h>
#include <arpa/inet.h>
extern int h_errno;
! #if !defined(HPUX) && !defined(Linux) && !defined(__FreeBSD__) && !defined(__OpenBSD__)
#include <stropts.h>
#include <sys/filio.h>
#endif /* HPUX */
*** ./src/rtcp_pckt.c.orig Fri Sep 3 12:48:16 1999
--- ./src/rtcp_pckt.c Fri Sep 3 14:52:10 1999
***************
*** 348,356 ****
--- 348,362 ----
break;
}
case 3 : if (sp->mode == TRANSCODER) {
+ #if !defined(__OpenBSD__)
len += rtcp_add_sdes_item(&ptr[len], RTCP_SDES_TOOL, RAT_VERSION " " OSNAME " [Transcoder]");
} else {
len += rtcp_add_sdes_item(&ptr[len], RTCP_SDES_TOOL, RAT_VERSION " " OSNAME);
+ #else
+ len += rtcp_add_sdes_item(&ptr[len], RTCP_SDES_TOOL, RAT_VERSION " OpenBSD" " [Transcoder]");
+ } else {
+ len += rtcp_add_sdes_item(&ptr[len], RTCP_SDES_TOOL, RAT_VERSION " OpenBSD");
+ #endif
}
break;
default: printf("ERROR: sdes_ter_count has strange value! %ld\n", sp->db.sdes_ter_count);
*** ./src/qfDES.c.orig Fri Sep 3 12:49:50 1999
--- ./src/qfDES.c Fri Sep 3 12:50:08 1999
***************
*** 23,29 ****
#include <string.h>
#include <stdio.h>
#include <memory.h>
! #ifndef FreeBSD
#include <malloc.h>
#endif
#include <ctype.h>
--- 23,29 ----
#include <string.h>
#include <stdio.h>
#include <memory.h>
! #if !defined(FreeBSD) && !defined(__OpenBSD__)
#include <malloc.h>
#endif
#include <ctype.h>
*** ./src/gsm_create.c.orig Fri Sep 3 12:50:29 1999
--- ./src/gsm_create.c Fri Sep 3 12:50:43 1999
***************
*** 11,17 ****
#include "assert.h"
#include "gsm.h"
! #ifndef FreeBSD
#include <malloc.h>
#endif
--- 11,17 ----
#include "assert.h"
#include "gsm.h"
! #if !defined(FreeBSD) && !defined(__OpenBSD__)
#include <malloc.h>
#endif
*** ./src/gsm_destroy.c.orig Fri Sep 3 12:50:59 1999
--- ./src/gsm_destroy.c Fri Sep 3 12:51:13 1999
***************
*** 6,12 ****
/* $Header: /home/cvs/ports/mbone/rat/patches/Attic/patch-rat,v 1.1.1.1 1999/09/04 01:54:34 angelos Exp $ */
! #ifndef FreeBSD
#include <malloc.h>
#endif
--- 6,12 ----
/* $Header: /home/cvs/ports/mbone/rat/patches/Attic/patch-rat,v 1.1.1.1 1999/09/04 01:54:34 angelos Exp $ */
! #if !defined(FreeBSD) && !defined(__OpenBSD__)
#include <malloc.h>
#endif
*** ./src/ui.c.orig Fri Sep 3 12:51:51 1999
--- ./src/ui.c Fri Sep 3 12:52:58 1999
***************
*** 42,47 ****
--- 42,51 ----
#include <ctype.h> /* for toupper() [csp] */
#include <math.h>
+ #if defined(__OpenBSD__)
+ #include <sys/types.h>
+ #include <sys/audioio.h>
+ #endif
#include "version.h"
#include "bat_include.h"
#include "crypt.h"
***************
*** 203,209 ****
eval_check(interp, comm);
}
! static us_active = 0;
void
ui_info_activate_us(void)
--- 207,213 ----
eval_check(interp, comm);
}
! static int us_active = 0;
void
ui_info_activate_us(void)
*** /dev/null Fri Sep 3 14:47:02 1999
--- Makefile_OpenBSD_2 Fri Sep 3 12:53:32 1999
***************
*** 0 ****
--- 1,5 ----
+ INCS = -I/usr/X11R6/include -I/usr/local/include/tcl8.0\
+ -I/usr/local/include/tcl8.0/generic -I/usr/local/include/tk8.0 \
+ -I/usr/local/include/tk8.0/generic
+ LDLIBS = -L/usr/local/lib -L/usr/X11R6/lib -ltk80 -ltcl80 -lXext -lX11 -lm \
+ -lossaudio
*** Makefile.orig Mon Mar 1 12:23:47 1999
--- Makefile Fri Sep 3 19:42:24 1999
***************
*** 9,15 ****
# -DNDEBUG -DDEBUG -DTEST -DGSM -DDEBUG_MIX -DDEBUG_MEM
# -DDEBUG_RTP -DREPEAT
- DEFS += -D$(OSTYPE) -D$(OSTYPE)_$(OSMVER) -D$(USER)
CC = gcc
CFLAGS = -Wall -Werror $(INCS) $(DEFS) -g -O -fsigned-char
LDFLAGS=
--- 9,14 ----
***************
*** 21,29 ****
include Makefile_$(OSTYPE)_$(OSMVER)
! BINDIR = bin/$(USER)
SRCDIR = src
! OBJDIR = objs/$(USER)/$(OSTYPE)_$(OSVERS)
OBJS = $(OBJDIR)/codec_encoder.o \
$(OBJDIR)/codec_decoder.o \
$(OBJDIR)/codec_lpc.o \
--- 20,28 ----
include Makefile_$(OSTYPE)_$(OSMVER)
! BINDIR = bin
SRCDIR = src
! OBJDIR = objs/$(OSTYPE)_$(OSVERS)
OBJS = $(OBJDIR)/codec_encoder.o \
$(OBJDIR)/codec_decoder.o \
$(OBJDIR)/codec_lpc.o \
*** Build.orig Mon Mar 1 12:23:47 1999
--- Build Fri Sep 3 19:43:42 1999
***************
*** 54,60 ****
case $OSTYPE in
Linux ) OSMVER=`echo $OSVERS | awk -F. '{printf("%d_%d", $1, $2)}'`
;;
! SunOS | IRIX | FreeBSD ) OSMVER=`echo $OSVERS | awk -F. '{print $1}'`
;;
HP-UX ) OSTYPE=HPUX
OSMVER=`echo $OSVERS | awk -F. '{print $2}'`
--- 54,60 ----
case $OSTYPE in
Linux ) OSMVER=`echo $OSVERS | awk -F. '{printf("%d_%d", $1, $2)}'`
;;
! SunOS | IRIX | FreeBSD | OpenBSD ) OSMVER=`echo $OSVERS | awk -F. '{print $1}'`
;;
HP-UX ) OSTYPE=HPUX
OSMVER=`echo $OSVERS | awk -F. '{print $2}'`
***************
*** 69,88 ****
echo "OSMVER=$OSMVER"
# Create a directory for the .o files, if it doesn't exist...
! if [ ! -d objs/${USER:=`whoami`}/${OSTYPE}_${OSVERS} ]; then
! echo "Creating object directory objs/${USER}/${OSTYPE}_${OSVERS}..."
! mkdir -p bin/${USER}
! mkdir -p objs/${USER}
! mkdir -p objs/${USER}/${OSTYPE}_${OSVERS}
! chmod 775 bin/${USER}
! chmod 775 objs/${USER}
! chmod 775 objs/${USER}/${OSTYPE}_${OSVERS}
fi
! cmd="${MAKE:=make} OSTYPE=$OSTYPE OSMVER=$OSMVER OSVERS=$OSVERS USER=`whoami`"
case $1 in
! rat ) echo "Running: $cmd bin/${USER}/rat-${OSTYPE}-${OSVERS}"
! eval $cmd bin/${USER}/rat-${OSTYPE}-${OSVERS}
exit
;;
depend|tags|tar|clean) echo "Running: $cmd $1"
--- 69,87 ----
echo "OSMVER=$OSMVER"
# Create a directory for the .o files, if it doesn't exist...
! if [ ! -d objs/${OSTYPE}_${OSVERS} ]; then
! echo "Creating object directory objs/${OSTYPE}_${OSVERS}..."
! mkdir -p objs/${OSTYPE}_${OSVERS}
! mkdir -p bin
! chmod 775 bin
! chmod 775 objs
! chmod 775 objs/${OSTYPE}_${OSVERS}
fi
! cmd="${MAKE:=make} OSTYPE=$OSTYPE OSMVER=$OSMVER OSVERS=$OSVERS"
case $1 in
! rat ) echo "Running: $cmd bin/rat-${OSTYPE}-${OSVERS}"
! eval $cmd bin/rat-${OSTYPE}-${OSVERS}
exit
;;
depend|tags|tar|clean) echo "Running: $cmd $1"
***************
*** 94,103 ****
cd dist
cp ../man/man1/rat.1 man/man1/rat.1
cp ../README ../MODS ../COPYRIGHT .
! for i in `ls ../bin/${USER}/`
do
echo "Making distribution $i"
! cp ../bin/${USER}/$i bin/rat
tar chf $i.tar README MODS COPYRIGHT bin man
gzip $i.tar
done
--- 93,102 ----
cd dist
cp ../man/man1/rat.1 man/man1/rat.1
cp ../README ../MODS ../COPYRIGHT .
! for i in `ls ../bin/`
do
echo "Making distribution $i"
! cp ../bin/$i bin/rat
tar chf $i.tar README MODS COPYRIGHT bin man
gzip $i.tar
done
*** src/auddev_sparc.c.orig Fri Sep 3 21:42:45 1999
--- src/auddev_sparc.c Fri Sep 3 21:47:05 1999
***************
*** 45,55 ****
#include "assert.h"
#include "bat_include.h"
! #ifdef SunOS
#include <multimedia/audio_hdr.h>
typedef Audio_hdr* audio_header_pointer;
static audio_info_t dev_info;
static int mulaw_device = FALSE; /* TRUE if the hardware can only do 8bit mulaw sampling */
--- 45,63 ----
#include "assert.h"
#include "bat_include.h"
! #if defined(SunOS) || defined(__OpenBSD__)
+ #if defined(SunOS)
#include <multimedia/audio_hdr.h>
+ #else
+ #include <sys/types.h>
+ #include <sys/ioctl.h>
+ #include <sys/audioio.h>
+ #endif
+ #if !defined(__OpenBSD__)
typedef Audio_hdr* audio_header_pointer;
+ #endif
static audio_info_t dev_info;
static int mulaw_device = FALSE; /* TRUE if the hardware can only do 8bit mulaw sampling */
***************
*** 69,75 ****
--- 77,85 ----
if (audio_fd > 0) {
AUDIO_INITINFO(&dev_info);
dev_info.monitor_gain = 0;
+ #if !defined(__OpenBSD__)
dev_info.output_muted = 0; /* 0==not muted */
+ #endif
dev_info.play.sample_rate = format.sample_rate;
dev_info.record.sample_rate = format.sample_rate;
dev_info.play.channels = format.num_channels;
***************
*** 157,163 ****
void
audio_drain(int audio_fd)
{
! ioctl(audio_fd, I_FLUSH, (caddr_t)FLUSHR);
}
/* Gain and volume values are in the range 0 - MAX_AMP */
--- 167,173 ----
void
audio_drain(int audio_fd)
{
! ioctl(audio_fd, AUDIO_FLUSH, NULL);
}
/* Gain and volume values are in the range 0 - MAX_AMP */

1
mbone/rat/pkg/COMMENT Normal file
View File

@ -0,0 +1 @@
Robust Audio Tool, from UCL version 3.0.33.

22
mbone/rat/pkg/DESCR Normal file
View File

@ -0,0 +1,22 @@
RAT is a network audio tool that allows users to participate in audio
conferences over the internet. These can be between two participants
directly, or between a group of participants on a common multicast
group. No special features are required to use RAT in point-to-point
mode, but to use the multiparty conferencing facilities of RAT, all
participants must reside on a portion of the Internet which supports
IP multicast. RAT is based on IETF standards, using RTP above UDP/IP
as its transport protocol, and conforming to the RTP profile for audio
and video conference with minimal control.
RAT features sender based loss mitigation mechanisms and receiver
based audio repair techniques to compensate for packet loss, and load
adaption in response to host performance. It runs on a range of
platforms: FreeBSD, HP-UX, IRIX, Linux, NetBSD, Solaris, SunOS, and
Windows 95/NT. The source code is publicly available for porting to
other platforms and for modification by others.
Note that RAT does not perform call services like user location,
neither does it listen to session announcements to discover advertised
multicast sessions. For these purposes, it is recommended you use RAT
in conjunction with the Session Directory (SDR), or a similar
application.

1
mbone/rat/pkg/PLIST Normal file
View File

@ -0,0 +1 @@
bin/rat