summaryrefslogtreecommitdiff
path: root/audio/sphinx
diff options
context:
space:
mode:
authorMuhammad Moinur Rahman <bofh@FreeBSD.org>2024-01-25 21:24:48 +0100
committerMuhammad Moinur Rahman <bofh@FreeBSD.org>2024-01-25 21:35:25 +0100
commit3b9e38afd2f89ec01aef169ccf8853d1388e2045 (patch)
tree9deaa2d4261dc126dfd6beec83ea0b8c0a64e5a4 /audio/sphinx
parentaudio/sphinx3: Remove expired port (diff)
audio/sphinx: Remove expired port
2024-01-25 audio/sphinx: Upstream advises to use audio/pocketsphinx
Diffstat (limited to 'audio/sphinx')
-rw-r--r--audio/sphinx/Makefile46
-rw-r--r--audio/sphinx/distinfo2
-rw-r--r--audio/sphinx/files/patch-src_examples_clicore.c11
-rw-r--r--audio/sphinx/files/patch-src_examples_srvcore.c11
-rw-r--r--audio/sphinx/files/patch-src_examples_tty-continuous.c12
-rw-r--r--audio/sphinx/files/patch-src_libsphinx2_blk__cdcn__norm.c37
-rw-r--r--audio/sphinx/files/patch-src_libsphinx2_cdcn__norm.c27
-rw-r--r--audio/sphinx/files/patch-src_libsphinx2_cdcn__update.c29
-rw-r--r--audio/sphinx/files/patch-src_libsphinx2_eht__quit.c10
-rw-r--r--audio/sphinx/files/patch-src_libsphinx2_err.c10
-rw-r--r--audio/sphinx/files/patch-src_libsphinx2_include_pconf.h8
-rw-r--r--audio/sphinx/files/patch-src_libsphinx2_linklist.c19
-rw-r--r--audio/sphinx/files/patch-src_libsphinx2_prime.c9
-rw-r--r--audio/sphinx/files/patch-src_libsphinx2_r__agc__noise.c10
-rw-r--r--audio/sphinx/files/patch-src_libsphinx2_sc__vq.c10
-rw-r--r--audio/sphinx/files/patch-src_libsphinx2_search.c28
-rw-r--r--audio/sphinx/files/patch-src_libsphinx2ad_ad__oss__bsd.c209
-rw-r--r--audio/sphinx/files/patch-src_libsphinx2fe_fe__sigproc.c11
-rw-r--r--audio/sphinx/pkg-descr12
-rw-r--r--audio/sphinx/pkg-plist136
20 files changed, 0 insertions, 647 deletions
diff --git a/audio/sphinx/Makefile b/audio/sphinx/Makefile
deleted file mode 100644
index c6bbb455d116..000000000000
--- a/audio/sphinx/Makefile
+++ /dev/null
@@ -1,46 +0,0 @@
-PORTNAME= sphinx
-PORTVERSION= 2.0.4
-PORTREVISION= 3
-CATEGORIES= audio accessibility
-MASTER_SITES= SF/cmu${PORTNAME}/${PORTNAME}2/0.4
-DISTNAME= sphinx2-0.4
-
-MAINTAINER= ports@FreeBSD.org
-COMMENT= Speech recognition system
-WWW= http://cmusphinx.sourceforge.net/
-
-LICENSE= BSD2CLAUSE
-LICENSE_FILE= ${WRKSRC}/COPYING
-
-DEPRECATED= Upstream advises to use audio/pocketsphinx
-EXPIRATION_DATE= 2024-01-25
-# contains i386 sound code
-ONLY_FOR_ARCHS= i386
-
-USES= dos2unix gmake libtool shebangfix
-DOS2UNIX_FILES= src/libsphinx2fe/fe_sigproc.c
-USE_LDCONFIG= yes
-
-SHEBANG_FILES= scripts/sphinx2-demo.in
-perl_OLD_CMD= "@PERL@ -w"
-
-GNU_CONFIGURE= yes
-PKGMESSAGE= ${WRKDIR}/pkg-message
-
-post-patch:
- @${REINPLACE_CMD} -e 's:<malloc.h>:<stdlib.h>:g' \
- ${WRKSRC}/src/libsphinx2/CM_funcs.c \
- ${WRKSRC}/src/libsphinx2/hash.c \
- ${WRKSRC}/src/libsphinx2/list.c \
- ${WRKSRC}/src/libsphinx2/salloc.c
-
-post-build:
- ${ECHO_CMD} "*** WARNING ***" > ${PKGMESSAGE}
- ${ECHO_CMD} "The sphinx 2 port/package has not had" >> ${PKGMESSAGE}
- ${ECHO_CMD} "proper testing or source review by the" >> ${PKGMESSAGE}
- ${ECHO_CMD} "FreeBSD maintainer." >> ${PKGMESSAGE}
-
-post-install:
- ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libsphinx2*.so
-
-.include <bsd.port.mk>
diff --git a/audio/sphinx/distinfo b/audio/sphinx/distinfo
deleted file mode 100644
index cf826fe0195b..000000000000
--- a/audio/sphinx/distinfo
+++ /dev/null
@@ -1,2 +0,0 @@
-SHA256 (sphinx2-0.4.tar.gz) = 922b81dfff8c86901d65d5ca59abee9b49b60144fbbf2c8a5a2191eca74b41e4
-SIZE (sphinx2-0.4.tar.gz) = 6575454
diff --git a/audio/sphinx/files/patch-src_examples_clicore.c b/audio/sphinx/files/patch-src_examples_clicore.c
deleted file mode 100644
index e842c15fe771..000000000000
--- a/audio/sphinx/files/patch-src_examples_clicore.c
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/examples/clicore.c.orig 2001-12-13 21:11:13 UTC
-+++ src/examples/clicore.c
-@@ -323,7 +323,7 @@ SOCKET cli_open (char *hostname, int32 p
- memcpy (&addr.sin_addr, hp->h_addr, hp->h_length);
- addr.sin_port = htons((u_short) port);
-
-- if (connect (conn_sd, &addr, sizeof(addr)) == 0)
-+ if (connect (conn_sd, (struct sockaddr *)&addr, sizeof(addr)) == 0)
- break;
- print_errno ("connect");
- cli_close (conn_sd);
diff --git a/audio/sphinx/files/patch-src_examples_srvcore.c b/audio/sphinx/files/patch-src_examples_srvcore.c
deleted file mode 100644
index 64194468b326..000000000000
--- a/audio/sphinx/files/patch-src_examples_srvcore.c
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/examples/srvcore.c.orig 2001-12-13 21:11:15 UTC
-+++ src/examples/srvcore.c
-@@ -381,7 +381,7 @@ SOCKET server_await_conn ( void )
-
- ERRLOG((stderr, "%s(%d): Listening at port %d\n", __FILE__, __LINE__, bindport));
-
-- if ((conn_sd = accept (listen_sd, &address, &address_len)) == INVALID_SOCKET) {
-+ if ((conn_sd = accept (listen_sd, (struct sockaddr *)&address, &address_len)) == INVALID_SOCKET) {
- print_errno ("conn_accept");
- return INVALID_SOCKET;
- }
diff --git a/audio/sphinx/files/patch-src_examples_tty-continuous.c b/audio/sphinx/files/patch-src_examples_tty-continuous.c
deleted file mode 100644
index 78652fcd3235..000000000000
--- a/audio/sphinx/files/patch-src_examples_tty-continuous.c
+++ /dev/null
@@ -1,12 +0,0 @@
-author: Andriy Gapon
-
---- src/examples/tty-continuous.c.orig 2001-12-13 21:11:15 UTC
-+++ src/examples/tty-continuous.c
-@@ -175,7 +175,6 @@ static void utterance_loop()
- * listening until current utterance completely decoded
- */
- ad_stop_rec (ad);
-- while (ad_read (ad, adbuf, 4096) >= 0);
- cont_ad_reset (cont);
-
- printf ("Stopped listening, please wait...\n"); fflush (stdout);
diff --git a/audio/sphinx/files/patch-src_libsphinx2_blk__cdcn__norm.c b/audio/sphinx/files/patch-src_libsphinx2_blk__cdcn__norm.c
deleted file mode 100644
index 21f15e5afc35..000000000000
--- a/audio/sphinx/files/patch-src_libsphinx2_blk__cdcn__norm.c
+++ /dev/null
@@ -1,37 +0,0 @@
---- src/libsphinx2/blk_cdcn_norm.c.orig 2001-12-13 21:11:20 UTC
-+++ src/libsphinx2/blk_cdcn_norm.c
-@@ -36,6 +36,18 @@
- #include <math.h>
- #include "cdcn.h"
-
-+static void
-+block_actual_cdcn_norm(float variance[][NUM_COEFF+1], /* Speech cepstral variances of modes */
-+ float *prob, /* Ratio of a-prori mode probs. to mod variance */
-+ float *tilt, /* Spectral tilt cepstrum */
-+ float *noise, /* Noise estimate */
-+ float means[][NUM_COEFF+1], /* The cepstrum codebook */
-+ float corrbook[][NUM_COEFF+1], /* The correction factor's codebook */
-+ int num_codes, /* Number of codewords in codebook */
-+ float z[][NUM_COEFF+1], /* The input cepstrum */
-+ int num_frames); /* Number of frames in utterance */
-+
-+
- /************************************************************************
- * Dummy routine to convert from suitcase to sane varibles
- ***************************************************************************/
-@@ -46,7 +58,6 @@ void block_cdcn_norm (float z[][NUM_COEF
- {
- /* Multidimensional arrays in C suck, so we have to
- forward-declare-hack this. */
-- static void block_actual_cdcn_norm();
- float *variance, *prob, *tilt, *noise, *codebook, *corrbook;
- int num_codes;
-
-@@ -88,7 +99,6 @@ void block_cdcn_norm (float z[][NUM_COEF
- * Coded by Alex Acero (acero@s), November 1989
- *
- *************************************************************************/
--
- static void
- block_actual_cdcn_norm(float variance[][NUM_COEFF+1], /* Speech cepstral variances of modes */
- float *prob, /* Ratio of a-prori mode probs. to mod variance */
diff --git a/audio/sphinx/files/patch-src_libsphinx2_cdcn__norm.c b/audio/sphinx/files/patch-src_libsphinx2_cdcn__norm.c
deleted file mode 100644
index bb94530dcf6a..000000000000
--- a/audio/sphinx/files/patch-src_libsphinx2_cdcn__norm.c
+++ /dev/null
@@ -1,27 +0,0 @@
---- src/libsphinx2/cdcn_norm.c.orig 2001-12-13 21:11:20 UTC
-+++ src/libsphinx2/cdcn_norm.c
-@@ -35,6 +35,15 @@
- */
- #include <math.h>
- #include "cdcn.h"
-+static void
-+actual_cdcn_norm(float variance[][NUM_COEFF+1], /* Speech cepstral variances of modes */
-+ float *prob, /* Ratio of a-prori mode probs. to mod variance */
-+ float *tilt, /* Spectral tilt cepstrum */
-+ float *noise, /* Noise estimate */
-+ float means[][NUM_COEFF+1], /* The cepstrum codebook */
-+ float corrbook[][NUM_COEFF+1], /* The correction factor's codebook */
-+ int num_codes, /* Number of codewords in codebook */
-+ float z[NUM_COEFF+1]); /* The input cepstrum */
-
- /************************************************************************
- * Dummy routine to convert from suitcase to sane varibles
-@@ -43,8 +52,6 @@
- void cdcn_norm (float z[NUM_COEFF+1], /* The input cepstrum */
- CDCN_type *cdcn_variables)
- {
-- /* Multidimensional arrays, yuck. */
-- static void actual_cdcn_norm();
- float *variance, *prob, *tilt, *noise, *codebook, *corrbook;
- int num_codes;
-
diff --git a/audio/sphinx/files/patch-src_libsphinx2_cdcn__update.c b/audio/sphinx/files/patch-src_libsphinx2_cdcn__update.c
deleted file mode 100644
index b457815cc1ed..000000000000
--- a/audio/sphinx/files/patch-src_libsphinx2_cdcn__update.c
+++ /dev/null
@@ -1,29 +0,0 @@
---- src/libsphinx2/cdcn_update.c.orig 2001-12-13 21:11:20 UTC
-+++ src/libsphinx2/cdcn_update.c
-@@ -47,6 +47,11 @@
- * Modified by Uday Jain, June 95
- *
- *************************************************************************/
-+static float initialize (float [][NUM_COEFF+1], int, float *, float *, float,
-+ float [][NUM_COEFF+1], float *, float [][NUM_COEFF+1], int);
-+static void correction(float *, float *, float *, float *, int);
-+static float max_q (float *, float *, float *, float *, float *,
-+ float *, int, float *, int);
-
- float
- cdcn_update (float *z, /* The observed cepstrum vectors */
-@@ -56,13 +61,7 @@ cdcn_update (float *z, /* The observed
- float distortion;
- float *noise, *tilt, *codebook, *prob, *variance, *corrbook;
- int num_codes;
-- /* Multidimensional arrays, gar gar gar */
-- static float initialize (float *, int, float *, float *, float,
-- float *, float *, float *, int);
-- static void correction(float *, float *, float *, float *, int);
-- static float max_q (float *, float *, float *, float *, float *,
-- float *, int, float *, int);
--
-+
- /*
- * If error, dont bother
- */
diff --git a/audio/sphinx/files/patch-src_libsphinx2_eht__quit.c b/audio/sphinx/files/patch-src_libsphinx2_eht__quit.c
deleted file mode 100644
index f545fff4e4ef..000000000000
--- a/audio/sphinx/files/patch-src_libsphinx2_eht__quit.c
+++ /dev/null
@@ -1,10 +0,0 @@
---- src/libsphinx2/eht_quit.c.orig 2001-12-13 21:11:20 UTC
-+++ src/libsphinx2/eht_quit.c
-@@ -85,6 +85,7 @@
- */
-
- #include <stdio.h>
-+#include <stdlib.h>
- #include <stdarg.h>
-
- void
diff --git a/audio/sphinx/files/patch-src_libsphinx2_err.c b/audio/sphinx/files/patch-src_libsphinx2_err.c
deleted file mode 100644
index 5c654b575287..000000000000
--- a/audio/sphinx/files/patch-src_libsphinx2_err.c
+++ /dev/null
@@ -1,10 +0,0 @@
---- src/libsphinx2/err.c.orig 2001-12-13 21:11:20 UTC
-+++ src/libsphinx2/err.c
-@@ -49,6 +49,7 @@
- */
-
- #include <stdio.h>
-+#include <stdlib.h>
- #if ((! WIN32) && (! _SGI_SOURCE))
- #include <sys/errno.h>
- #else
diff --git a/audio/sphinx/files/patch-src_libsphinx2_include_pconf.h b/audio/sphinx/files/patch-src_libsphinx2_include_pconf.h
deleted file mode 100644
index 1a89cbebd6fa..000000000000
--- a/audio/sphinx/files/patch-src_libsphinx2_include_pconf.h
+++ /dev/null
@@ -1,8 +0,0 @@
---- src/libsphinx2/include/pconf.h.orig 2001-12-13 21:11:27 UTC
-+++ src/libsphinx2/include/pconf.h
-@@ -124,4 +124,4 @@ int ppconf(int argc, char *argv[],
- char * (*GetDefault)(char const *, char const *), char last);
- void pusage(char *prog, Config_t *cp);
-
--#endif _PCONF_
-+#endif
diff --git a/audio/sphinx/files/patch-src_libsphinx2_linklist.c b/audio/sphinx/files/patch-src_libsphinx2_linklist.c
deleted file mode 100644
index d8816d04b6e7..000000000000
--- a/audio/sphinx/files/patch-src_libsphinx2_linklist.c
+++ /dev/null
@@ -1,19 +0,0 @@
---- src/libsphinx2/linklist.c.orig 2001-12-13 21:11:22 UTC
-+++ src/libsphinx2/linklist.c
-@@ -81,7 +81,6 @@
-
- #include <stdio.h>
- #include <stdlib.h>
--#include <malloc.h>
-
- #include "s2types.h"
-
-@@ -132,7 +131,7 @@ void *listelem_alloc (int32 elem_size)
- cpp = list[i].freelist = (void **) malloc (list[i].n_malloc * elem_size);
- cp = (void *) cpp;
- for (j = list[i].n_malloc-1; j > 0; --j) {
-- (char*)cp += elem_size;
-+ cp += elem_size;
- *cpp = cp;
- cpp = (void **)cp;
- }
diff --git a/audio/sphinx/files/patch-src_libsphinx2_prime.c b/audio/sphinx/files/patch-src_libsphinx2_prime.c
deleted file mode 100644
index 10bb7ff70b76..000000000000
--- a/audio/sphinx/files/patch-src_libsphinx2_prime.c
+++ /dev/null
@@ -1,9 +0,0 @@
---- src/libsphinx2/prime.c.orig 2001-12-13 21:11:23 UTC
-+++ src/libsphinx2/prime.c
-@@ -75,5 +75,4 @@ main ()
- }
- }
-
--#endif MAIN
--
-+#endif
diff --git a/audio/sphinx/files/patch-src_libsphinx2_r__agc__noise.c b/audio/sphinx/files/patch-src_libsphinx2_r__agc__noise.c
deleted file mode 100644
index 4050c77e96d7..000000000000
--- a/audio/sphinx/files/patch-src_libsphinx2_r__agc__noise.c
+++ /dev/null
@@ -1,10 +0,0 @@
---- src/libsphinx2/r_agc_noise.c.orig 2001-12-13 21:11:23 UTC
-+++ src/libsphinx2/r_agc_noise.c
-@@ -34,6 +34,7 @@
- *
- */
- #include <stdio.h>
-+#include <string.h>
-
- #include "s2types.h"
- #include "c.h"
diff --git a/audio/sphinx/files/patch-src_libsphinx2_sc__vq.c b/audio/sphinx/files/patch-src_libsphinx2_sc__vq.c
deleted file mode 100644
index a687843c24b2..000000000000
--- a/audio/sphinx/files/patch-src_libsphinx2_sc__vq.c
+++ /dev/null
@@ -1,10 +0,0 @@
---- src/libsphinx2/sc_vq.c.orig 2001-12-13 21:11:23 UTC
-+++ src/libsphinx2/sc_vq.c
-@@ -64,6 +64,7 @@
-
- #include <stdio.h>
- #include <stdlib.h>
-+#include <string.h>
- #include <assert.h>
- #include <limits.h>
-
diff --git a/audio/sphinx/files/patch-src_libsphinx2_search.c b/audio/sphinx/files/patch-src_libsphinx2_search.c
deleted file mode 100644
index 69e5c737e849..000000000000
--- a/audio/sphinx/files/patch-src_libsphinx2_search.c
+++ /dev/null
@@ -1,28 +0,0 @@
---- src/libsphinx2/search.c.orig 2001-12-13 21:11:24 UTC
-+++ src/libsphinx2/search.c
-@@ -2236,6 +2236,9 @@ search_one_ply_fwd (void)
- lm_next_frame ();
- }
-
-+static void compute_phone_perplexity( void );
-+static search_hyp_t *fwdtree_pscr_path ( void );
-+
- void
- search_finish_fwd (void)
- {
-@@ -2245,7 +2248,6 @@ search_finish_fwd (void)
- CHAN_T *hmm, /* *thmm,*/ **acl;
- /* int32 bp, bestbp, bestscore; */
- /* int32 l_scr; */
-- static void compute_phone_perplexity( void );
-
- if ((CurrentFrame > 0) && (topsen_window > 1)) {
- /* Wind up remaining frames */
-@@ -2306,7 +2308,6 @@ search_finish_fwd (void)
- /* Get pscr-score for fwdtree recognition */
- {
- search_hyp_t *pscrpath;
-- static search_hyp_t *fwdtree_pscr_path ( void );
-
- if (query_phone_conf ()) {
- pscrpath = fwdtree_pscr_path ();
diff --git a/audio/sphinx/files/patch-src_libsphinx2ad_ad__oss__bsd.c b/audio/sphinx/files/patch-src_libsphinx2ad_ad__oss__bsd.c
deleted file mode 100644
index 90f9eb75ffc0..000000000000
--- a/audio/sphinx/files/patch-src_libsphinx2ad_ad__oss__bsd.c
+++ /dev/null
@@ -1,209 +0,0 @@
-author: Andriy Gapon
-
---- src/libsphinx2ad/ad_oss_bsd.c.orig 2001-12-13 21:11:27 UTC
-+++ src/libsphinx2ad/ad_oss_bsd.c
-@@ -61,7 +61,7 @@
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
--#include <machine/soundcard.h>
-+#include <sys/soundcard.h>
- #include <errno.h>
-
- #include "s2types.h"
-@@ -72,14 +72,11 @@
-
- #define SPS_EPSILON 200
-
--#ifndef SNDCTL_DSP_SETDUPLEX
--#define SNDCTL_DSP_SETDUPLEX -1
--#endif
-
- ad_rec_t *ad_open_sps (int32 sps) {
- ad_rec_t *handle;
- int32 dspFD, mixerFD;
-- int32 nonBlocking=1, sourceMic=1, inputGain=INPUT_GAIN;
-+ int32 sourceMic=1, inputGain=INPUT_GAIN;
- int32 audioFormat=AUDIO_FORMAT;
- int32 dspCaps=0;
- int32 sampleRate;
-@@ -96,7 +93,6 @@ ad_rec_t *ad_open_sps (int32 sps) {
- }
- sampleRate = sps;
-
-- /* Used to have O_NDELAY. */
- if((dspFD = open ("/dev/dsp", O_RDONLY))<0){
- if (errno == EBUSY)
- fprintf(stderr, "Audio device busy\n");
-@@ -105,18 +101,6 @@ ad_rec_t *ad_open_sps (int32 sps) {
- return NULL;
- }
-
-- if (ioctl (dspFD, SNDCTL_DSP_SYNC, 0) < 0){
-- fprintf(stderr, "Audio ioctl(SYNC) failed: %s\n", strerror(errno));
-- close (dspFD);
-- return NULL;
-- }
--
-- if (ioctl (dspFD, SNDCTL_DSP_RESET, 0) < 0){
-- fprintf(stderr, "Audio ioctl(RESET) failed: %s\n", strerror(errno));
-- close (dspFD);
-- return NULL;
-- }
--
- if (ioctl (dspFD, SNDCTL_DSP_SETFMT, &audioFormat) < 0){
- fprintf(stderr, "Audio ioctl(SETFMT 0x%x) failed: %s\n", audioFormat, strerror(errno));
- close (dspFD);
-@@ -139,12 +123,6 @@ ad_rec_t *ad_open_sps (int32 sps) {
- return NULL;
- }
-
-- if (ioctl (dspFD, SNDCTL_DSP_NONBLOCK, &nonBlocking) < 0) {
-- fprintf(stderr, "ioctl(NONBLOCK) failed: %s\n", strerror(errno));
-- close (dspFD);
-- return NULL;
-- }
--
- if (ioctl (dspFD, SNDCTL_DSP_GETCAPS, &dspCaps) < 0) {
- fprintf(stderr, "ioctl(GETCAPS) failed: %s\n", strerror(errno));
- close (dspFD);
-@@ -161,8 +139,6 @@ ad_rec_t *ad_open_sps (int32 sps) {
- printf("DSP %s memory map capability.\n", (dspCaps&DSP_CAP_MMAP)?"has":"does not have");
- #endif
-
-- if ((dspCaps & DSP_CAP_DUPLEX) && (ioctl (dspFD, SNDCTL_DSP_SETDUPLEX, 0) < 0))
-- fprintf(stderr, "ioctl(SETDUPLEX) failed: %s\n", strerror(errno));
-
- /* Patched by N. Roy (nickr@ri.cmu.edu), 99/7/23.
- Previously, mixer was set through dspFD. This is incorrect. Should
-@@ -210,10 +186,10 @@ ad_rec_t *ad_open_sps (int32 sps) {
- }
-
- handle->dspFD = dspFD;
-- handle->recording = 0;
- handle->sps = sps;
- handle->bps = sizeof(int16);
--
-+ handle->recording = 1;
-+
- return(handle);
- }
-
-@@ -224,15 +200,10 @@ ad_rec_t *ad_open ( void )
-
- int32 ad_close (ad_rec_t *handle)
- {
-- if (handle->dspFD < 0)
-- return AD_ERR_NOT_OPEN;
--
- if (handle->recording) {
-- if (ad_stop_rec (handle) < 0)
-- return AD_ERR_GEN;
-+ ad_stop_rec (handle);
- }
-
-- close (handle->dspFD);
- free(handle);
-
- return(0);
-@@ -240,48 +211,62 @@ int32 ad_close (ad_rec_t *handle)
-
- int32 ad_start_rec (ad_rec_t *handle)
- {
-- if (handle->dspFD < 0)
-- return AD_ERR_NOT_OPEN;
--
-- if (handle->recording)
-- return AD_ERR_GEN;
-+
-+ if (!handle->recording) {
-+
-+ int32 dspFD;
-+ int32 audioFormat=AUDIO_FORMAT;
-+ int32 sampleRate=handle->sps;
-+
-+ if((dspFD = open ("/dev/dsp", O_RDONLY))<0){
-+ if (errno == EBUSY)
-+ fprintf(stderr, "Audio device busy\n");
-+ else
-+ fprintf(stderr, "Failed to open audio device: %s\n", strerror(errno));
-+ return AD_ERR_GEN;
-+ }
-
-- /* Sample rate, format, input mix settings, &c. are configured
-- * with ioctl(2) calls under Linux. It makes more sense to handle
-- * these at device open time and consider the state of the device
-- * to be fixed until closed.
-- */
-+ if (ioctl (dspFD, SNDCTL_DSP_SETFMT, &audioFormat) < 0){
-+ fprintf(stderr, "Audio ioctl(SETFMT 0x%x) failed: %s\n", audioFormat, strerror(errno));
-+ close (dspFD);
-+ return AD_ERR_GEN;
-+ }
-+ if (audioFormat != AUDIO_FORMAT) {
-+ fprintf(stderr, "Audio ioctl(SETFMT): 0x%x, expected: 0x%x\n", audioFormat, AUDIO_FORMAT);
-+ close (dspFD);
-+ return AD_ERR_GEN;
-+ }
-
-- handle->recording = 1;
--
-- /* rkm@cs: This doesn't actually do anything. How do we turn recording on/off? */
-+ if (ioctl (dspFD, SNDCTL_DSP_SPEED, &sampleRate) < 0) {
-+ fprintf(stderr, "Audio ioctl(SPEED %d) failed %s\n", sampleRate, strerror(errno));
-+ close (dspFD);
-+ return AD_ERR_GEN;
-+ }
-+ if (sampleRate != handle->sps) {
-+ fprintf(stderr, "Audio ioctl(SPEED): %d, expected: %d\n", sampleRate, handle->sps);
-+ close (dspFD);
-+ return AD_ERR_GEN;
-+ }
-+ handle->dspFD = dspFD;
-+ handle->recording = 1;
-+ }
-
- return(0);
- }
-
- int32 ad_stop_rec (ad_rec_t *handle)
- {
-- if (handle->dspFD < 0)
-- return AD_ERR_NOT_OPEN;
--
-- if (! handle->recording)
-- return AD_ERR_GEN;
--
-- if (ioctl (handle->dspFD, SNDCTL_DSP_SYNC, 0) < 0) {
-- fprintf(stderr, "Audio ioctl(SYNC) failed: %s\n", strerror(errno));
-- return AD_ERR_GEN;
-- }
--
-- handle->recording = 0;
--
-+ if (handle->recording) {
-+ close (handle->dspFD);
-+ handle->dspFD = -1;
-+ handle->recording = 0;
-+ }
- return (0);
- }
-
- int32 ad_read (ad_rec_t *handle, int16 *buf, int32 max)
- {
-- int32 length;
--
-- length = max * handle->bps; /* #samples -> #bytes */
-+ int32 length = max * handle->bps; /* #samples -> #bytes */
-
- if ((length = read (handle->dspFD, buf, length)) > 0) {
- #if 0
-@@ -292,7 +277,7 @@ int32 ad_read (ad_rec_t *handle, int16 *
- }
-
- if (length < 0) {
-- fprintf(stderr, "Audio read error\n");
-+ perror("Audio read error");
- return AD_ERR_GEN;
- }
-
diff --git a/audio/sphinx/files/patch-src_libsphinx2fe_fe__sigproc.c b/audio/sphinx/files/patch-src_libsphinx2fe_fe__sigproc.c
deleted file mode 100644
index 2b47eb0afe2f..000000000000
--- a/audio/sphinx/files/patch-src_libsphinx2fe_fe__sigproc.c
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/libsphinx2fe/fe_sigproc.c.orig 2016-07-26 15:58:05 UTC
-+++ src/libsphinx2fe/fe_sigproc.c
-@@ -43,7 +43,7 @@
-
- #ifndef M_PI
- #define M_PI (3.14159265358979323846)
--#endif M_PI
-+#endif
-
- #define FORWARD_FFT 1
- #define INVERSE_FFT -1
diff --git a/audio/sphinx/pkg-descr b/audio/sphinx/pkg-descr
deleted file mode 100644
index 204dbb1f3f3a..000000000000
--- a/audio/sphinx/pkg-descr
+++ /dev/null
@@ -1,12 +0,0 @@
-Sphinx 2 is a large-vocabulary, speaker-independent, continuous
-speech recognition engine.
-
-This is an early release of a research system. The APIs and function
-names are likely to change, and several tools still need to be made
-available to make this all complete.
-
-Once the system is built, try running the Perl script sphinx2-demo.
-The sphinx2-test script should run sphinx2-batch over an example
-utterance of "go forward ten meters."
-
-Trevor Johnson
diff --git a/audio/sphinx/pkg-plist b/audio/sphinx/pkg-plist
deleted file mode 100644
index 08005a9c4927..000000000000
--- a/audio/sphinx/pkg-plist
+++ /dev/null
@@ -1,136 +0,0 @@
-bin/adpow
-bin/adrec
-bin/cont_adseg
-bin/cont_fileseg
-bin/lm3g2dmp
-bin/raw2cep
-bin/sphinx2-align
-bin/sphinx2-allphone
-bin/sphinx2-batch
-bin/sphinx2-client
-bin/sphinx2-continuous
-bin/sphinx2-demo
-bin/sphinx2-phone
-bin/sphinx2-ptt
-bin/sphinx2-server
-bin/sphinx2-simple
-bin/sphinx2-test
-include/sphinx2/CM_macros.h
-include/sphinx2/ad.h
-include/sphinx2/cdcn.h
-include/sphinx2/cont_ad.h
-include/sphinx2/dict.h
-include/sphinx2/err.h
-include/sphinx2/fbs.h
-include/sphinx2/fe.h
-include/sphinx2/hash.h
-include/sphinx2/list.h
-include/sphinx2/lm_3g.h
-include/sphinx2/lmclass.h
-include/sphinx2/log.h
-include/sphinx2/log_add.h
-include/sphinx2/mulaw.h
-include/sphinx2/posixsock.h
-include/sphinx2/posixwin32.h
-include/sphinx2/s2params.h
-include/sphinx2/s2types.h
-include/sphinx2/sphinxp.h
-include/sphinx2/win32sock.h
-lib/libsphinx2.a
-lib/libsphinx2.so
-lib/libsphinx2.so.0
-lib/libsphinx2.so.0.0.4
-lib/libsphinx2ad.a
-lib/libsphinx2ad.so
-lib/libsphinx2ad.so.0
-lib/libsphinx2ad.so.0.0.4
-lib/libsphinx2fe.a
-lib/libsphinx2fe.so
-lib/libsphinx2fe.so.0
-lib/libsphinx2fe.so.0.0.4
-share/sphinx2/doc/README.bin
-share/sphinx2/doc/README.lib
-share/sphinx2/doc/README.win32
-share/sphinx2/doc/SCHMM_format
-share/sphinx2/doc/filler.dict
-share/sphinx2/doc/phoneset
-share/sphinx2/doc/phoneset-old
-share/sphinx2/doc/phoneset_s2.html
-share/sphinx2/doc/sphinx2.html
-share/sphinx2/model/hmm/6k/+BREATH+.chmm
-share/sphinx2/model/hmm/6k/+COUGH+.chmm
-share/sphinx2/model/hmm/6k/+LAUGH+.chmm
-share/sphinx2/model/hmm/6k/+SMACK+.chmm
-share/sphinx2/model/hmm/6k/+UH+.chmm
-share/sphinx2/model/hmm/6k/+UHUM+.chmm
-share/sphinx2/model/hmm/6k/+UM+.chmm
-share/sphinx2/model/hmm/6k/AA.chmm
-share/sphinx2/model/hmm/6k/AE.chmm
-share/sphinx2/model/hmm/6k/AH.chmm
-share/sphinx2/model/hmm/6k/AO.chmm
-share/sphinx2/model/hmm/6k/AW.chmm
-share/sphinx2/model/hmm/6k/AX.chmm
-share/sphinx2/model/hmm/6k/AXR.chmm
-share/sphinx2/model/hmm/6k/AY.chmm
-share/sphinx2/model/hmm/6k/B.chmm
-share/sphinx2/model/hmm/6k/CH.chmm
-share/sphinx2/model/hmm/6k/D.chmm
-share/sphinx2/model/hmm/6k/DH.chmm
-share/sphinx2/model/hmm/6k/DX.chmm
-share/sphinx2/model/hmm/6k/EH.chmm
-share/sphinx2/model/hmm/6k/ER.chmm
-share/sphinx2/model/hmm/6k/EY.chmm
-share/sphinx2/model/hmm/6k/F.chmm
-share/sphinx2/model/hmm/6k/G.chmm
-share/sphinx2/model/hmm/6k/HH.chmm
-share/sphinx2/model/hmm/6k/IH.chmm
-share/sphinx2/model/hmm/6k/IX.chmm
-share/sphinx2/model/hmm/6k/IY.chmm
-share/sphinx2/model/hmm/6k/JH.chmm
-share/sphinx2/model/hmm/6k/K.chmm
-share/sphinx2/model/hmm/6k/L.chmm
-share/sphinx2/model/hmm/6k/M.chmm
-share/sphinx2/model/hmm/6k/N.chmm
-share/sphinx2/model/hmm/6k/NG.chmm
-share/sphinx2/model/hmm/6k/OW.chmm
-share/sphinx2/model/hmm/6k/OY.chmm
-share/sphinx2/model/hmm/6k/P.chmm
-share/sphinx2/model/hmm/6k/R.chmm
-share/sphinx2/model/hmm/6k/S.chmm
-share/sphinx2/model/hmm/6k/SH.chmm
-share/sphinx2/model/hmm/6k/SIL.chmm
-share/sphinx2/model/hmm/6k/T.chmm
-share/sphinx2/model/hmm/6k/TH.chmm
-share/sphinx2/model/hmm/6k/UH.chmm
-share/sphinx2/model/hmm/6k/UW.chmm
-share/sphinx2/model/hmm/6k/V.chmm
-share/sphinx2/model/hmm/6k/W.chmm
-share/sphinx2/model/hmm/6k/Y.chmm
-share/sphinx2/model/hmm/6k/Z.chmm
-share/sphinx2/model/hmm/6k/ZH.chmm
-share/sphinx2/model/hmm/6k/cep.256.var
-share/sphinx2/model/hmm/6k/cep.256.vec
-share/sphinx2/model/hmm/6k/d2cep.256.var
-share/sphinx2/model/hmm/6k/d2cep.256.vec
-share/sphinx2/model/hmm/6k/map
-share/sphinx2/model/hmm/6k/noisedict
-share/sphinx2/model/hmm/6k/p3cep.256.var
-share/sphinx2/model/hmm/6k/p3cep.256.vec
-share/sphinx2/model/hmm/6k/phone
-share/sphinx2/model/hmm/6k/phonelist
-share/sphinx2/model/hmm/6k/sendump
-share/sphinx2/model/hmm/6k/xcep.256.var
-share/sphinx2/model/hmm/6k/xcep.256.vec
-share/sphinx2/model/lm/turtle/README
-share/sphinx2/model/lm/turtle/goforward.16k
-share/sphinx2/model/lm/turtle/turtle.cor
-share/sphinx2/model/lm/turtle/turtle.corpus
-share/sphinx2/model/lm/turtle/turtle.ctl
-share/sphinx2/model/lm/turtle/turtle.dic
-share/sphinx2/model/lm/turtle/turtle.handdict
-share/sphinx2/model/lm/turtle/turtle.hdict
-share/sphinx2/model/lm/turtle/turtle.lm
-share/sphinx2/model/lm/turtle/turtle.sent
-share/sphinx2/model/lm/turtle/turtle.sent.arpabo
-share/sphinx2/model/lm/turtle/turtle.token
-share/sphinx2/model/lm/turtle/turtle.vocab