Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 18 Sep 2000 14:05:59 +0600 (ESS)
From:      anton@urc.ac.ru
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   ports/21343: New port: mbone/rat30 (rat-3.0.35), the stable branch of rat (robust audio tool)
Message-ID:  <200009180805.e8I85xA21927@belle.rnoc.urc.ac.ru>

next in thread | raw e-mail | index | archive | help

>Number:         21343
>Category:       ports
>Synopsis:       New port: mbone/rat30 (rat-3.0.35), the stable branch of rat (robust audio tool)
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Mon Sep 18 01:10:00 PDT 2000
>Closed-Date:
>Last-Modified:
>Originator:     Anton Voronin
>Release:        FreeBSD 4.1-STABLE i386
>Organization:
Southern Ural State University, Chelyabinsk, Russia
>Environment:

>Description:

RAT is a network audio tool that allows users to particpate in
audio conferences over the internet. These can be between two
participants directly, or between a group of participants on a
common multicast group.  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.

This is a stable branche version. Works with half-duplex casrd as well.

WWW: http://www-mice.cs.ucl.ac.uk/multimedia/software/rat/

>How-To-Repeat:

>Fix:

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	rat30
#	rat30/Makefile
#	rat30/pkg
#	rat30/pkg/COMMENT
#	rat30/pkg/DESCR
#	rat30/pkg/PLIST
#	rat30/patches
#	rat30/patches/patch-aa
#	rat30/patches/patch-ab
#	rat30/files
#	rat30/files/md5
#
echo c - rat30
mkdir -p rat30 > /dev/null 2>&1
echo x - rat30/Makefile
sed 's/^X//' >rat30/Makefile << 'END-of-rat30/Makefile'
X# New ports collection makefile for:   rat
X# Date created:        18 September 2000
X# Whom:                anton
X#
X# $FreeBSD$
X#
X
XPORTNAME =	rat
XPORTVERSION =	3.0.35
X
XTCL_VER=8.3
XTCL_SHORTVER=83
XTK_VER=8.3
XTK_SHORTVER=83
X
XCATEGORIES =	mbone tk${TK_SHORTVER}
XMASTER_SITES =	http://www-mice.cs.ucl.ac.uk/multimedia/software/rat/3.0.35/
XWRKSRC =	${WRKDIR}/rat-3.0
X
XMAINTAINER =	anton@urc.ac.ru
X
XLIB_DEPENDS =	tk${TK_SHORTVER}.1:${PORTSDIR}/x11-toolkits/tk${TK_SHORTVER} \
X		tcl${TK_SHORTVER}.1:${PORTSDIR}/lang/tcl${TCL_SHORTVER}
XUSE_XLIB =	yes
X
XDEPENDS =	${PORTSDIR}/x11-toolkits/tk${TK_SHORTVER} \
X		${PORTSDIR}/lang/tcl${TCL_SHORTVER}
X
XMAN1 =		rat.1
XMANCOMPRESSED =	no
XUSE_GMAKE =	yes
XMAKE_ARGS =	TCL_VER=${TCL_VER} TCL_SHORTVER=${TCL_SHORTVER} TK_VER=${TK_VER} TK_SHORTVER=${TK_SHORTVER} X11BASE=${X11BASE} OSTYPE=FreeBSD
X
XALL_TARGET =	bin/rat
X
Xdo-install:
X	${INSTALL_PROGRAM} ${WRKSRC}/bin/rat ${PREFIX}/bin/rat
X	${INSTALL_MAN}  ${WRKSRC}/man/man1/rat.1 ${PREFIX}/man/man1
X
X.include <bsd.port.mk>
END-of-rat30/Makefile
echo c - rat30/pkg
mkdir -p rat30/pkg > /dev/null 2>&1
echo x - rat30/pkg/COMMENT
sed 's/^X//' >rat30/pkg/COMMENT << 'END-of-rat30/pkg/COMMENT'
XMulticast and unicast robust audio conferencing tool
X(stable branch, works with half-duplex cards as well)
END-of-rat30/pkg/COMMENT
echo x - rat30/pkg/DESCR
sed 's/^X//' >rat30/pkg/DESCR << 'END-of-rat30/pkg/DESCR'
XRAT is a network audio tool that allows users to particpate in
Xaudio conferences over the internet. These can be between two
Xparticipants directly, or between a group of participants on a
Xcommon multicast group.  RAT features sender based loss mitigation
Xmechanisms and receiver based audio repair techniques to compensate
Xfor packet loss, and load adaption in response to host performance.
X
XThis is a stable branche version. Works with half-duplex casrd as well.
X
XWWW: http://www-mice.cs.ucl.ac.uk/multimedia/software/rat/
END-of-rat30/pkg/DESCR
echo x - rat30/pkg/PLIST
sed 's/^X//' >rat30/pkg/PLIST << 'END-of-rat30/pkg/PLIST'
Xbin/rat
END-of-rat30/pkg/PLIST
echo c - rat30/patches
mkdir -p rat30/patches > /dev/null 2>&1
echo x - rat30/patches/patch-aa
sed 's/^X//' >rat30/patches/patch-aa << 'END-of-rat30/patches/patch-aa'
X*** src/auddev_freebsd.c.orig	Wed Mar 24 16:22:19 1999
X--- src/auddev_freebsd.c	Sat Sep 16 00:03:22 2000
X***************
X*** 89,102 ****
X      }
X      if ((ioctl(audio_fd, SNDCTL_DSP_SETFMT, &mode) == -1) || (mode != AFMT_S16_LE)) { 
X        printf("Device doesn't support 16bit linear format!\n");
X        return -1;
X      }
X      if ((ioctl(audio_fd, SNDCTL_DSP_STEREO, &stereo) == -1) || (stereo != 0)) {
X        printf("Device doesn't support mono!\n");
X        return -1;
X      }
X!     if ((ioctl(audio_fd, SNDCTL_DSP_SPEED, &speed) == -1) || (speed != 8000)) {
X        printf("Device doesn't support 8kHz sampling!\n");
X        return -1;
X      }
X  
X--- 89,106 ----
X      }
X      if ((ioctl(audio_fd, SNDCTL_DSP_SETFMT, &mode) == -1) || (mode != AFMT_S16_LE)) { 
X        printf("Device doesn't support 16bit linear format!\n");
X+       close(audio_fd);
X        return -1;
X      }
X      if ((ioctl(audio_fd, SNDCTL_DSP_STEREO, &stereo) == -1) || (stereo != 0)) {
X        printf("Device doesn't support mono!\n");
X+       close(audio_fd);
X        return -1;
X      }
X! //    if ((ioctl(audio_fd, SNDCTL_DSP_SPEED, &speed) == -1) || (speed != 8000)) {
X!     if (ioctl(audio_fd, SNDCTL_DSP_SPEED, &speed) == -1){
X        printf("Device doesn't support 8kHz sampling!\n");
X+       close(audio_fd);
X        return -1;
X      }
X  
X***************
X*** 158,163 ****
X--- 162,168 ----
X     * be open to do this, so if we're passed -1 as a file-descriptor we open
X     * the device, do the ioctl, and then close it again...
X     */
X+ /*
X          snd_chan_param scp;
X          if (audio_fd == -1) {
X                  audio_fd = audio_open_rw(O_RDONLY);
X***************
X*** 174,179 ****
X--- 179,197 ----
X          if (ioctl(audio_fd, AIOSFMT, 0) == -1) {
X                  return FALSE;
X          }
X+ */
X+ 	int caps;
X+ 	int was_defined = 1;
X+         if (audio_fd == -1) {
X+                 audio_fd = audio_open_rw(O_RDWR);
X+ 		was_defined = 0;
X+ 	}
X+         ioctl(audio_fd, SNDCTL_DSP_GETCAPS, &caps);
X+         if ((caps & DSP_CAP_DUPLEX) == 0) {
X+ 		if( was_defined == 0 ) audio_close(audio_fd);
X+                 return FALSE;
X+         }
X+ 	if( was_defined == 0 ) audio_close(audio_fd);
X          return TRUE;
X  }
X  
END-of-rat30/patches/patch-aa
echo x - rat30/patches/patch-ab
sed 's/^X//' >rat30/patches/patch-ab << 'END-of-rat30/patches/patch-ab'
X*** Makefile.orig	Tue Sep 14 16:39:00 1999
X--- Makefile	Mon Sep 18 13:30:23 2000
X***************
X*** 9,29 ****
X  # -DNDEBUG -DDEBUG -DTEST -DGSM -DDEBUG_MIX -DDEBUG_MEM
X  # -DDEBUG_RTP -DREPEAT
X  
X! DEFS += -D$(OSTYPE) -D$(OSTYPE)_$(OSMVER) 
X  CC     = gcc
X  CFLAGS = -Wall -Werror -Wno-implicit-int $(INCS) $(DEFS) -g -O -fsigned-char
X  LDFLAGS= 
X- LDLIBS=  $(LDLIBS) -lm
X  RANLIB = ranlib
X  RAT_HOME = $(PWD)
X  
X  GSMFLAGS   = -DSASR -DFAST -DUSE_FLOAT_MUL
X  
X! include Makefile_$(OSTYPE)_$(OSMVER)
X  
X! BINDIR = bin/$(USER)
X  SRCDIR = src
X! OBJDIR = objs/$(USER)/$(OSTYPE)_$(OSVERS)
X  OBJS   = $(OBJDIR)/codec_encoder.o \
X           $(OBJDIR)/codec_decoder.o \
X           $(OBJDIR)/codec_lpc.o \
X--- 9,38 ----
X  # -DNDEBUG -DDEBUG -DTEST -DGSM -DDEBUG_MIX -DDEBUG_MEM
X  # -DDEBUG_RTP -DREPEAT
X  
X! DEFS += -D$(OSTYPE)
X  CC     = gcc
X  CFLAGS = -Wall -Werror -Wno-implicit-int $(INCS) $(DEFS) -g -O -fsigned-char
X  LDFLAGS= 
X  RANLIB = ranlib
X  RAT_HOME = $(PWD)
X  
X  GSMFLAGS   = -DSASR -DFAST -DUSE_FLOAT_MUL
X  
X! X11BASE ?= /usr/X11R6
X! TCL_VER ?= 8.2
X! TCL_SHORTVER ?= 82
X! TK_VER ?= 8.2
X! TK_SHORTVER ?= 82
X! TCL_HOME = /usr/local/include/tcl$(TCL_VER)
X! TK_HOME  = /usr/local/include/tk$(TK_VER)
X! INCS   = -I$(X11BASE)/include \
X!          -I$(TCL_HOME)/generic -I$(TK_HOME)/generic
X! LDLIBS = -L/usr/local/lib -L/usr/X11R6/lib \
X!          -ltk$(TK_SHORTVER) -ltcl$(TCL_SHORTVER) -lXext -lX11 -lm
X  
X! BINDIR = bin
X  SRCDIR = src
X! OBJDIR = objs
X  OBJS   = $(OBJDIR)/codec_encoder.o \
X           $(OBJDIR)/codec_decoder.o \
X           $(OBJDIR)/codec_lpc.o \
X***************
X*** 79,87 ****
X            $(OBJDIR)/crypt_random.o \
X            $(OBJDIR)/md5c.o
X  
X! $(BINDIR)/rat-$(OSTYPE)-$(OSVERS): $(OBJS) $(GSMOBJS) $(CRYPTOBJS) $(RATOBJS)
X! 	rm -f $(BINDIR)/rat-$(OSTYPE)-$(OSVERS)
X! 	$(CC) $(RATOBJS) $(OBJS) $(GSMOBJS) $(CRYPTOBJS) $(LDLIBS) $(LDFLAGS) -o $(BINDIR)/rat-$(OSTYPE)-$(OSVERS)
X  
X  $(OBJDIR)/%.o: $(SRCDIR)/%.c
X  	$(CC) $(CFLAGS) $(GSMFLAGS) $(CRYPTFLAGS) -c $(SRCDIR)/$*.c -o $(OBJDIR)/$*.o
X--- 88,96 ----
X            $(OBJDIR)/crypt_random.o \
X            $(OBJDIR)/md5c.o
X  
X! $(BINDIR)/rat: $(OBJS) $(GSMOBJS) $(CRYPTOBJS) $(RATOBJS)
X! 	rm -f $(BINDIR)/rat
X! 	$(CC) $(RATOBJS) $(OBJS) $(GSMOBJS) $(CRYPTOBJS) $(LDLIBS) $(LDFLAGS) -o $(BINDIR)/rat
X  
X  $(OBJDIR)/%.o: $(SRCDIR)/%.c
X  	$(CC) $(CFLAGS) $(GSMFLAGS) $(CRYPTFLAGS) -c $(SRCDIR)/$*.c -o $(OBJDIR)/$*.o
X***************
X*** 134,139 ****
X  	(cd ..; gtar zcvf rat-`date +%Y%m%d`.tgz rat-3.0)
X  
X  depend:
X! 	makedepend $(DEFS) $(INCS) -f Makefile_$(OSTYPE)_$(OSMVER) $(SRCDIR)/*.[ch]
X  
X  
X--- 143,148 ----
X  	(cd ..; gtar zcvf rat-`date +%Y%m%d`.tgz rat-3.0)
X  
X  depend:
X! 	makedepend $(DEFS) $(INCS) $(SRCDIR)/*.[ch]
X  
X  
END-of-rat30/patches/patch-ab
echo c - rat30/files
mkdir -p rat30/files > /dev/null 2>&1
echo x - rat30/files/md5
sed 's/^X//' >rat30/files/md5 << 'END-of-rat30/files/md5'
XMD5 (rat-3.0.35.tar.gz) = fff6e4a4c9617c5b7ea80f63fda96a9a
END-of-rat30/files/md5
exit

>Release-Note:
>Audit-Trail:
>Unformatted:


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200009180805.e8I85xA21927>