git: 92fc8d2fcd5f - main - net/yate: convert AMR codec to opencore one
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 18 Feb 2025 14:26:37 UTC
The branch main has been updated by fuz:
URL: https://cgit.FreeBSD.org/ports/commit/?id=92fc8d2fcd5f4314a6f73faa9afa95b29f972301
commit 92fc8d2fcd5f4314a6f73faa9afa95b29f972301
Author: Tatsuki Makino <tatsuki_makino@hotmail.com>
AuthorDate: 2025-02-13 19:18:45 +0000
Commit: Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2025-02-18 14:16:17 +0000
net/yate: convert AMR codec to opencore one
This would allow us to sunset audio/libamrnb.
PR: 277803, 277802
---
net/yate/Makefile | 8 ++++----
net/yate/files/patch-configure.ac | 24 +++++++++++++++++++++++-
net/yate/files/patch-modules_amrnbcodec.cpp | 23 +++++++++++++++++++++++
net/yate/files/patch-modules_efrcodec.cpp | 23 +++++++++++++++++++++++
net/yate/pkg-plist | 4 ++--
5 files changed, 75 insertions(+), 7 deletions(-)
diff --git a/net/yate/Makefile b/net/yate/Makefile
index 298bac251beb..fd3599bb6572 100644
--- a/net/yate/Makefile
+++ b/net/yate/Makefile
@@ -1,6 +1,7 @@
PORTNAME= yate
DISTVERSION= 6.4.1
DISTVERSIONSUFFIX= -g${GH_TAGNAME}
+PORTREVISION= 1
CATEGORIES= net
MAINTAINER= ports@FreeBSD.org
@@ -49,19 +50,18 @@ GROUPS= yate
PLIST_SUB= VERSION="${PORTVERSION}"
-OPTIONS_DEFINE= AMRNB DAHDI DOCS H323 ILBC MYSQL PGSQL SCTP SPANDSP \
+OPTIONS_DEFINE= AMR DAHDI DOCS H323 ILBC MYSQL PGSQL SCTP SPANDSP \
SQLITE
OPTIONS_DEFAULT= SCTP
OPTIONS_SUB= yes
-AMRNB_DESC= Adaptive Multi-Rate Narrowband support
DAHDI_DESC= Dahdi support
H323_DESC= H323 software channel/protocol support
ILBC_DESC= iLBC narrowband speech codec support
SCTP_DESC= Stream Control Transmission Protocol support
-AMRNB_LIB_DEPENDS= libamrnb.so:audio/libamrnb
-AMRNB_CONFIGURE_WITH= amrnb=${LOCALBASE}
+AMR_CONFIGURE_WITH= amrnb=${LOCALBASE}
+AMR_LIB_DEPENDS= libopencore-amrnb.so:audio/opencore-amr
DAHDI_BUILD_DEPENDS= ${LOCALBASE}/include/dahdi/user.h:misc/dahdi \
libpri>=1.4.10:misc/libpri
diff --git a/net/yate/files/patch-configure.ac b/net/yate/files/patch-configure.ac
index 980b6363bad9..e85d38d43979 100644
--- a/net/yate/files/patch-configure.ac
+++ b/net/yate/files/patch-configure.ac
@@ -1,6 +1,6 @@
--- configure.ac.orig 2024-01-15 13:41:34 UTC
+++ configure.ac
-@@ -113,7 +113,8 @@ AC_MSG_RESULT([$ac_cv_no_overload_virt])
+@@ -113,7 +113,8 @@ if [[ "x$ac_cv_no_overload_virt" = "xyes" ]]; then
fi
AC_MSG_RESULT([$ac_cv_no_overload_virt])
@@ -10,3 +10,25 @@
ld_unresolved_symbols=no
AC_MSG_CHECKING([if ld supports reporting unresolved symbols])
SAVE_CFLAGS="$CFLAGS"
+@@ -1204,7 +1205,7 @@ AC_SUBST(SPEEX_LIB)
+
+ HAVE_AMRNB=no
+ AMRNB_INC=""
+-AMRNB_LIB="-lamrnb"
++AMRNB_LIB="-lopencore-amrnb"
+ AC_ARG_WITH(amrnb,AC_HELP_STRING([--with-amrnb=DIR],[use AMR-NB if available (default)]),[ac_cv_use_amrnb=$withval],[ac_cv_use_amrnb=/usr])
+ if [[ "x$ac_cv_use_amrnb" = "xstatic" ]]; then
+ ac_cv_use_amrnb=/usr
+@@ -1213,9 +1214,9 @@ fi
+ if [[ "x$ac_cv_use_amrnb" != "xno" ]]; then
+ AC_MSG_CHECKING([for AMR-NB in $ac_cv_use_amrnb])
+ local_lib="$ARCHLIB"
+-amrinc="$ac_cv_use_amrnb/include/amrnb"
+-test -f "$ac_cv_use_amrnb/$local_lib/libamrnb.so" || local_lib="lib"
+-if [[ -f "$ac_cv_use_amrnb/$local_lib/libamrnb.so" -a -f "$amrinc/interf_rom.h" ]]; then
++amrinc="$ac_cv_use_amrnb/include/opencore-amrnb"
++test -f "$ac_cv_use_amrnb/$local_lib/libopencore-amrnb.so" || local_lib="lib"
++if [[ -f "$ac_cv_use_amrnb/$local_lib/libopencore-amrnb.so" -a -f "$amrinc/interf_enc.h" ]]; then
+ HAVE_AMRNB=yes
+ AMRNB_LIB="-L$ac_cv_use_amrnb/$local_lib $AMRNB_LIB"
+ AMRNB_INC="-I$amrinc"
diff --git a/net/yate/files/patch-modules_amrnbcodec.cpp b/net/yate/files/patch-modules_amrnbcodec.cpp
new file mode 100644
index 000000000000..f0ac4587c3bb
--- /dev/null
+++ b/net/yate/files/patch-modules_amrnbcodec.cpp
@@ -0,0 +1,23 @@
+--- modules/amrnbcodec.cpp.orig 2017-08-14 12:53:31 UTC
++++ modules/amrnbcodec.cpp
+@@ -30,7 +30,19 @@ extern "C" {
+ }
+ namespace RxTypes {
+ // There is a conflict between encoder and decoder so insulate in a namespace
+-#include <sp_dec.h>
++extern "C" {
++ // copied from ${WRKSRC}/opencore/codecs_v2/audio/gsm_amr/amr_nb/common/include/frame.h of audio/opencore-amr
++ enum RXFrameType { RX_SPEECH_GOOD = 0,
++ RX_SPEECH_DEGRADED,
++ RX_ONSET,
++ RX_SPEECH_BAD,
++ RX_SID_FIRST,
++ RX_SID_UPDATE,
++ RX_SID_BAD,
++ RX_NO_DATA,
++ RX_N_FRAMETYPES /* number of frame types */
++ };
++}
+ };
+
+ // IF1/GP3 is Bandwidth-Efficient Mode
diff --git a/net/yate/files/patch-modules_efrcodec.cpp b/net/yate/files/patch-modules_efrcodec.cpp
new file mode 100644
index 000000000000..f5865f06c209
--- /dev/null
+++ b/net/yate/files/patch-modules_efrcodec.cpp
@@ -0,0 +1,23 @@
+--- modules/efrcodec.cpp.orig 2017-03-28 09:13:48 UTC
++++ modules/efrcodec.cpp
+@@ -31,7 +31,19 @@ extern "C" {
+ }
+ namespace RxTypes {
+ // There is a conflict between encoder and decoder so insulate in a namespace
+-#include <sp_dec.h>
++extern "C" {
++ // copied from ${WRKSRC}/opencore/codecs_v2/audio/gsm_amr/amr_nb/common/include/frame.h of audio/opencore-amr
++ enum RXFrameType { RX_SPEECH_GOOD = 0,
++ RX_SPEECH_DEGRADED,
++ RX_ONSET,
++ RX_SPEECH_BAD,
++ RX_SID_FIRST,
++ RX_SID_UPDATE,
++ RX_SID_BAD,
++ RX_NO_DATA,
++ RX_N_FRAMETYPES /* number of frame types */
++ };
++}
+ };
+
+ using namespace TelEngine;
diff --git a/net/yate/pkg-plist b/net/yate/pkg-plist
index 8c0e99c8c1d6..31b2e083a15c 100644
--- a/net/yate/pkg-plist
+++ b/net/yate/pkg-plist
@@ -151,8 +151,8 @@ lib/yate/sig/ss7_lnp_ansi.yate
lib/yate/jabber/jabberserver.yate
lib/yate/jabber/jbfeatures.yate
lib/yate/sip/sip_cnam_lnp.yate
-%%AMRNB%%lib/yate/amrnbcodec.yate
-%%AMRNB%%lib/yate/efrcodec.yate
+%%AMR%%lib/yate/amrnbcodec.yate
+%%AMR%%lib/yate/efrcodec.yate
%%SPANDSP%%lib/yate/faxchan.yate
%%H323%%lib/yate/h323chan.yate
%%ILBC%%lib/yate/ilbccodec.yate