Merge branch 'openwrt:master' into master
This commit is contained in:
commit
5138c498ae
19 changed files with 89 additions and 190 deletions
|
@ -11,7 +11,7 @@ include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=pjproject
|
PKG_NAME:=pjproject
|
||||||
PKG_VERSION:=2.13.1
|
PKG_VERSION:=2.13.1
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=2
|
||||||
PKG_CPE_ID:=cpe:/a:pjsip:pjsip
|
PKG_CPE_ID:=cpe:/a:pjsip:pjsip
|
||||||
|
|
||||||
# download "vX.Y.tar.gz" as "pjproject-vX.Y.tar.gz"
|
# download "vX.Y.tar.gz" as "pjproject-vX.Y.tar.gz"
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/pjlib/include/pj/config_site.h
|
+++ b/pjlib/include/pj/config_site.h
|
||||||
@@ -0,0 +1,83 @@
|
@@ -0,0 +1,91 @@
|
||||||
+/*
|
+/*
|
||||||
+ * Asterisk config_site.h
|
+ * Asterisk config_site.h
|
||||||
+ */
|
+ */
|
||||||
|
@ -84,3 +84,11 @@
|
||||||
+#define PJSIP_TSX_UAS_CONTINUE_ON_TP_ERROR 0
|
+#define PJSIP_TSX_UAS_CONTINUE_ON_TP_ERROR 0
|
||||||
+#define PJ_SSL_SOCK_OSSL_USE_THREAD_CB 0
|
+#define PJ_SSL_SOCK_OSSL_USE_THREAD_CB 0
|
||||||
+#define PJSIP_AUTH_ALLOW_MULTIPLE_AUTH_HEADER 1
|
+#define PJSIP_AUTH_ALLOW_MULTIPLE_AUTH_HEADER 1
|
||||||
|
+
|
||||||
|
+/*
|
||||||
|
+ * The default is 32 with 8 being used by pjproject itself.
|
||||||
|
+ * Since this value is used in invites, dialogs, transports
|
||||||
|
+ * and subscriptions as well as the global pjproject endpoint,
|
||||||
|
+ * we don't want to increase it too much.
|
||||||
|
+ */
|
||||||
|
+#define PJSIP_MAX_MODULE 38
|
||||||
|
|
|
@ -0,0 +1,26 @@
|
||||||
|
--- a/pjsip/src/pjsip/sip_transport.c
|
||||||
|
+++ b/pjsip/src/pjsip/sip_transport.c
|
||||||
|
@@ -2088,15 +2088,17 @@ PJ_DEF(pj_ssize_t) pjsip_tpmgr_receive_p
|
||||||
|
* which were sent to keep NAT bindings.
|
||||||
|
*/
|
||||||
|
if (tmp.slen) {
|
||||||
|
- PJ_LOG(1, (THIS_FILE,
|
||||||
|
- "Error processing %d bytes packet from %s %s:%d %.*s:\n"
|
||||||
|
- "%.*s\n"
|
||||||
|
- "-- end of packet.",
|
||||||
|
+ PJ_LOG(2, (THIS_FILE,
|
||||||
|
+ "Dropping %d bytes packet from %s %s:%d %.*s\n",
|
||||||
|
msg_fragment_size,
|
||||||
|
rdata->tp_info.transport->type_name,
|
||||||
|
- rdata->pkt_info.src_name,
|
||||||
|
+ rdata->pkt_info.src_name,
|
||||||
|
rdata->pkt_info.src_port,
|
||||||
|
- (int)tmp.slen, tmp.ptr,
|
||||||
|
+ (int)tmp.slen, tmp.ptr));
|
||||||
|
+ PJ_LOG(4, (THIS_FILE,
|
||||||
|
+ "Dropped packet:"
|
||||||
|
+ "%.*s\n"
|
||||||
|
+ "-- end of packet.",
|
||||||
|
(int)msg_fragment_size,
|
||||||
|
rdata->msg_info.msg_buf));
|
||||||
|
}
|
|
@ -9,12 +9,12 @@ include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=sofia-sip
|
PKG_NAME:=sofia-sip
|
||||||
|
|
||||||
PKG_VERSION:=1.13.16
|
PKG_VERSION:=1.13.17
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||||
PKG_SOURCE_URL:=https://codeload.github.com/freeswitch/$(PKG_NAME)/tar.gz/v${PKG_VERSION}?
|
PKG_SOURCE_URL:=https://codeload.github.com/freeswitch/$(PKG_NAME)/tar.gz/v${PKG_VERSION}?
|
||||||
PKG_HASH:=125a9653bea1fc1cb275e4aec3445aa2deadf1fe3f1adffae9559d2349bfab36
|
PKG_HASH:=daca3d961b6aa2974ad5d3be69ed011726c3e4d511b2a0d4cb6d878821a2de7a
|
||||||
|
|
||||||
# sofia-sip adds a version to include path
|
# sofia-sip adds a version to include path
|
||||||
# need to update this when the version changes
|
# need to update this when the version changes
|
||||||
|
|
|
@ -11,10 +11,10 @@ PKG_NAME:=asterisk-chan-dongle
|
||||||
|
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_URL:=https://github.com/wdoekes/asterisk-chan-dongle.git
|
PKG_SOURCE_URL:=https://github.com/wdoekes/asterisk-chan-dongle.git
|
||||||
PKG_SOURCE_VERSION:=3d046f7d6842298c6838b5ce5b51d495d383b158
|
PKG_SOURCE_VERSION:=503dba87d726854b74b49e70679e64e6e86d5812
|
||||||
PKG_SOURCE_DATE=2021-10-06
|
PKG_SOURCE_DATE=2022-11-04
|
||||||
PKG_RELEASE:=2
|
PKG_RELEASE:=1
|
||||||
PKG_MIRROR_HASH:=d485c89a7230ab8c318eed6c3a954b154d7e53cc7a0194abf96f4dcb83e6909c
|
PKG_MIRROR_HASH:=0d585c108ec18d136ce03704b96d0a6769e617c820fc74f735e3e192ad282611
|
||||||
|
|
||||||
PKG_FIXUP:=autoreconf
|
PKG_FIXUP:=autoreconf
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/configure.ac
|
--- a/configure.ac
|
||||||
+++ b/configure.ac
|
+++ b/configure.ac
|
||||||
@@ -237,8 +237,6 @@ dnl Apply options to defines
|
@@ -247,8 +247,6 @@ dnl Apply options to defines
|
||||||
if test "x$enable_debug" = "xyes" ; then
|
if test "x$enable_debug" = "xyes" ; then
|
||||||
CFLAGS="$CFLAGS -O0 -g3"
|
CFLAGS="$CFLAGS -O0 -g3"
|
||||||
AC_DEFINE([__DEBUG__], [1], [Build with debugging])
|
AC_DEFINE([__DEBUG__], [1], [Build with debugging])
|
||||||
|
|
16
net/asterisk-chan-dongle/patches/400-time_t.patch
Normal file
16
net/asterisk-chan-dongle/patches/400-time_t.patch
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -165,11 +165,13 @@ dnl AC_CHECK_TYPE(uint64_t, unsigned lon
|
||||||
|
|
||||||
|
AC_CHECK_SIZEOF(int)
|
||||||
|
AC_CHECK_SIZEOF(long int)
|
||||||
|
+AC_CHECK_SIZEOF(long long int)
|
||||||
|
AC_CHECK_SIZEOF(time_t)
|
||||||
|
case "$ac_cv_sizeof_time_t" in
|
||||||
|
''|0) AC_MSG_ERROR([Could not find time_t type]);;
|
||||||
|
$ac_cv_sizeof_int) AC_DEFINE([PRI_time_t], ["d"], [printf format for time_t]);;
|
||||||
|
$ac_cv_sizeof_long_int) AC_DEFINE([PRI_time_t], ["ld"], [printf format for time_t]);;
|
||||||
|
+$ac_cv_sizeof_long_long_int) AC_DEFINE([PRI_time_t], ["lld"], [printf format for time_t]);;
|
||||||
|
*) AC_MSG_ERROR([Could not find match size of time_t to printf format])
|
||||||
|
esac
|
||||||
|
|
|
@ -8,13 +8,13 @@
|
||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=asterisk
|
PKG_NAME:=asterisk
|
||||||
PKG_VERSION:=20.3.0
|
PKG_VERSION:=20.5.2
|
||||||
PKG_RELEASE:=2
|
PKG_RELEASE:=1
|
||||||
PKG_CPE_ID:=cpe:/a:digium:asterisk
|
PKG_CPE_ID:=cpe:/a:digium:asterisk
|
||||||
|
|
||||||
PKG_SOURCE:=asterisk-$(PKG_VERSION).tar.gz
|
PKG_SOURCE:=asterisk-$(PKG_VERSION).tar.gz
|
||||||
PKG_SOURCE_URL:=https://downloads.asterisk.org/pub/telephony/asterisk/releases
|
PKG_SOURCE_URL:=https://downloads.asterisk.org/pub/telephony/asterisk/releases
|
||||||
PKG_HASH:=2e70b4bb40114966c6572eae38b5106b588a7a759d41f1c90a6032407dd60463
|
PKG_HASH:=8f68e1789dfb8aa04b0eba87ea1d599a62e088ddd20926afc997f36b455e1859
|
||||||
|
|
||||||
PKG_BUILD_DEPENDS:=libxml2/host
|
PKG_BUILD_DEPENDS:=libxml2/host
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/configure.ac
|
--- a/configure.ac
|
||||||
+++ b/configure.ac
|
+++ b/configure.ac
|
||||||
@@ -1256,7 +1256,7 @@ if test "${ac_cv_have_variable_fdset}x"
|
@@ -1257,7 +1257,7 @@ if test "${ac_cv_have_variable_fdset}x"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
AC_MSG_CHECKING([if we have usable eventfd support])
|
AC_MSG_CHECKING([if we have usable eventfd support])
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/configure.ac
|
--- a/configure.ac
|
||||||
+++ b/configure.ac
|
+++ b/configure.ac
|
||||||
@@ -2616,7 +2616,7 @@ if test -z "$__opus_include" -o x"$__opu
|
@@ -2608,7 +2608,7 @@ if test -z "$__opus_include" -o x"$__opu
|
||||||
fi
|
fi
|
||||||
AST_EXT_LIB_CHECK([OPUSFILE], [opusfile], [op_open_callbacks], [opus/opusfile.h], [], [$__opus_include])
|
AST_EXT_LIB_CHECK([OPUSFILE], [opusfile], [op_open_callbacks], [opus/opusfile.h], [], [$__opus_include])
|
||||||
|
|
||||||
|
|
17
net/asterisk/patches/180-app_queue_time_t.patch
Normal file
17
net/asterisk/patches/180-app_queue_time_t.patch
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
--- a/apps/app_queue.c
|
||||||
|
+++ b/apps/app_queue.c
|
||||||
|
@@ -4614,8 +4614,12 @@ static int is_longest_waiting_caller(str
|
||||||
|
* will be unused until the first caller is picked up.
|
||||||
|
*/
|
||||||
|
if (ch->start < caller->start && !ch->pending) {
|
||||||
|
- ast_debug(1, "Queue %s has a call at position %i that's been waiting longer (%li vs %li)\n",
|
||||||
|
- q->name, ch->pos, ch->start, caller->start);
|
||||||
|
+ char time1[AST_TIME_T_LEN];
|
||||||
|
+ char time2[AST_TIME_T_LEN];
|
||||||
|
+ ast_time_t_to_string(ch->start, time1, sizeof(time1));
|
||||||
|
+ ast_time_t_to_string(caller->start, time2, sizeof(time2));
|
||||||
|
+ ast_debug(1, "Queue %s has a call at position %i that's been waiting longer (%s vs %s)\n",
|
||||||
|
+ q->name, ch->pos, time1, time2);
|
||||||
|
is_longest_waiting = 0;
|
||||||
|
break;
|
||||||
|
}
|
|
@ -1,33 +0,0 @@
|
||||||
From 94c884d5b8afca96164852cfb29fc496bc5b9e0a Mon Sep 17 00:00:00 2001
|
|
||||||
From: Sean Bright <sean@seanbright.com>
|
|
||||||
Date: Mon, 5 Jun 2023 18:17:47 -0400
|
|
||||||
Subject: [PATCH] res_crypto.c: Avoid using the non-portable ALLPERMS macro.
|
|
||||||
|
|
||||||
ALLPERMS is not POSIX and it's trivial enough to not jump through
|
|
||||||
autoconf hoops to check for it.
|
|
||||||
|
|
||||||
Fixes #149.
|
|
||||||
---
|
|
||||||
res/res_crypto.c | 9 +++++++--
|
|
||||||
1 file changed, 7 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
--- a/res/res_crypto.c
|
|
||||||
+++ b/res/res_crypto.c
|
|
||||||
@@ -217,10 +217,15 @@ static struct ast_key *try_load_key(cons
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ /* PERM_MASK is a bitwise OR of all possible file mode bits encoded in the
|
|
||||||
+ * `st_mode` member of `struct stat`. For POSIX compatible systems this
|
|
||||||
+ * will be 07777. */
|
|
||||||
+#define PERM_MASK (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO)
|
|
||||||
+
|
|
||||||
/* only user read or read/write modes allowed */
|
|
||||||
if (ktype == AST_KEY_PRIVATE &&
|
|
||||||
- ((st.st_mode & ALLPERMS) & ~(S_IRUSR | S_IWUSR)) != 0) {
|
|
||||||
- ast_log(LOG_ERROR, "Private key file has bad permissions: %s: %#4o\n", ffname, st.st_mode & ALLPERMS);
|
|
||||||
+ ((st.st_mode & PERM_MASK) & ~(S_IRUSR | S_IWUSR)) != 0) {
|
|
||||||
+ ast_log(LOG_ERROR, "Private key file has bad permissions: %s: %#4o\n", ffname, st.st_mode & PERM_MASK);
|
|
||||||
fclose(f);
|
|
||||||
return NULL;
|
|
||||||
}
|
|
|
@ -1,25 +0,0 @@
|
||||||
From d26a00ef3484f7fa602044e73e31bcefc8ca1917 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Sean Bright <sean@seanbright.com>
|
|
||||||
Date: Fri, 7 Jul 2023 15:57:39 -0400
|
|
||||||
Subject: [PATCH] chan_iax2.c: Avoid crash with IAX2 switch support.
|
|
||||||
|
|
||||||
A change made in 82cebaa0 did not properly handle the case when a
|
|
||||||
channel was not provided, triggering a crash. ast_check_hangup(...)
|
|
||||||
does not protect against NULL pointers.
|
|
||||||
|
|
||||||
Fixes #180
|
|
||||||
---
|
|
||||||
channels/chan_iax2.c | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
--- a/channels/chan_iax2.c
|
|
||||||
+++ b/channels/chan_iax2.c
|
|
||||||
@@ -14323,7 +14323,7 @@ static struct iax2_dpcache *find_cache(s
|
|
||||||
ast_log(LOG_WARNING, "Timeout waiting for %s exten %s\n", data, exten);
|
|
||||||
}
|
|
||||||
|
|
||||||
- if (ast_check_hangup(chan)) {
|
|
||||||
+ if (chan && ast_check_hangup(chan)) {
|
|
||||||
doabort = 1;
|
|
||||||
}
|
|
||||||
|
|
|
@ -8,13 +8,13 @@
|
||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=freeswitch
|
PKG_NAME:=freeswitch
|
||||||
PKG_VERSION:=1.10.10
|
PKG_VERSION:=1.10.11
|
||||||
PKG_RELEASE:=2
|
PKG_RELEASE:=1
|
||||||
PKG_MAINTAINER:=Sebastian Kemper <sebastian_ml@gmx.net>
|
PKG_MAINTAINER:=Sebastian Kemper <sebastian_ml@gmx.net>
|
||||||
|
|
||||||
PKG_SOURCE:=freeswitch-$(PKG_VERSION).-release.tar.xz
|
PKG_SOURCE:=freeswitch-$(PKG_VERSION).-release.tar.xz
|
||||||
PKG_SOURCE_URL:=https://files.freeswitch.org/releases/freeswitch
|
PKG_SOURCE_URL:=https://files.freeswitch.org/releases/freeswitch
|
||||||
PKG_HASH:=d2c702c7f4bd6eca539c3981cf859ad5c1846d9283829e24cd75686f2322b9df
|
PKG_HASH:=7f9603a691220d9f47da42f3b19290b629b69dceb2eee56448f0a7cefcf9d1a1
|
||||||
|
|
||||||
PKG_CPE_ID:=cpe:/a:freeswitch:freeswitch
|
PKG_CPE_ID:=cpe:/a:freeswitch:freeswitch
|
||||||
|
|
||||||
|
|
|
@ -166,7 +166,7 @@ The most portable fix for time_t handling is to always cast it to
|
||||||
switch_channel_set_variable(channel, "end_uepoch", tmp);
|
switch_channel_set_variable(channel, "end_uepoch", tmp);
|
||||||
--- a/src/switch_ivr_originate.c
|
--- a/src/switch_ivr_originate.c
|
||||||
+++ b/src/switch_ivr_originate.c
|
+++ b/src/switch_ivr_originate.c
|
||||||
@@ -800,7 +800,7 @@ static uint8_t check_channel_status(orig
|
@@ -804,7 +804,7 @@ static uint8_t check_channel_status(orig
|
||||||
time_t elapsed = switch_epoch_time_now(NULL) - start;
|
time_t elapsed = switch_epoch_time_now(NULL) - start;
|
||||||
oglobals->originate_status[i].per_channel_progress_timelimit_sec = elapsed + extend_timeout;
|
oglobals->originate_status[i].per_channel_progress_timelimit_sec = elapsed + extend_timeout;
|
||||||
oglobals->originate_status[i].per_channel_timelimit_sec = elapsed + extend_timeout;
|
oglobals->originate_status[i].per_channel_timelimit_sec = elapsed + extend_timeout;
|
||||||
|
|
|
@ -12,7 +12,7 @@ Reported-by: Sebastian Kemper <sebastian_ml@gmx.net>
|
||||||
|
|
||||||
--- a/src/switch_core_sqldb.c
|
--- a/src/switch_core_sqldb.c
|
||||||
+++ b/src/switch_core_sqldb.c
|
+++ b/src/switch_core_sqldb.c
|
||||||
@@ -3551,7 +3551,7 @@ SWITCH_DECLARE(switch_status_t) switch_c
|
@@ -3553,7 +3553,7 @@ SWITCH_DECLARE(switch_status_t) switch_c
|
||||||
if (force) {
|
if (force) {
|
||||||
sql = switch_mprintf("delete from registrations where hostname='%q'", switch_core_get_switchname());
|
sql = switch_mprintf("delete from registrations where hostname='%q'", switch_core_get_switchname());
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -1,23 +0,0 @@
|
||||||
From 6f9e72c585265d8def8a613b36cd4f524c201980 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Andrey Volk <andywolk@gmail.com>
|
|
||||||
Date: Wed, 4 Oct 2023 00:47:39 +0300
|
|
||||||
Subject: [PATCH] [libvpx] VP8: disallow thread count changes
|
|
||||||
|
|
||||||
---
|
|
||||||
libs/libvpx/vp8/encoder/onyx_if.c | 5 +++++
|
|
||||||
1 file changed, 5 insertions(+)
|
|
||||||
|
|
||||||
--- a/libs/libvpx/vp8/encoder/onyx_if.c
|
|
||||||
+++ b/libs/libvpx/vp8/encoder/onyx_if.c
|
|
||||||
@@ -1447,6 +1447,11 @@ void vp8_change_config(VP8_COMP *cpi, VP
|
|
||||||
last_h = cpi->oxcf.Height;
|
|
||||||
prev_number_of_layers = cpi->oxcf.number_of_layers;
|
|
||||||
|
|
||||||
+ if (cpi->initial_width) {
|
|
||||||
+ // TODO(https://crbug.com/1486441): Allow changing thread counts; the
|
|
||||||
+ // allocation is done once in vp8_create_compressor().
|
|
||||||
+ oxcf->multi_threaded = cpi->oxcf.multi_threaded;
|
|
||||||
+ }
|
|
||||||
cpi->oxcf = *oxcf;
|
|
||||||
|
|
||||||
switch (cpi->oxcf.Mode) {
|
|
|
@ -1,88 +0,0 @@
|
||||||
From 2ab7a3d323984a4df969ea19dadf86213308a361 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Andrey Volk <andywolk@gmail.com>
|
|
||||||
Date: Fri, 6 Oct 2023 00:42:10 +0300
|
|
||||||
Subject: [PATCH] [libvpx] Fix bug with smaller width bigger size
|
|
||||||
|
|
||||||
---
|
|
||||||
libs/libvpx/vp9/common/vp9_alloccommon.c | 12 +++++------
|
|
||||||
libs/libvpx/vp9/encoder/vp9_encoder.c | 27 ++++++++++++++++++++++--
|
|
||||||
2 files changed, 31 insertions(+), 8 deletions(-)
|
|
||||||
|
|
||||||
--- a/libs/libvpx/vp9/common/vp9_alloccommon.c
|
|
||||||
+++ b/libs/libvpx/vp9/common/vp9_alloccommon.c
|
|
||||||
@@ -123,12 +123,6 @@ int vp9_alloc_context_buffers(VP9_COMMON
|
|
||||||
if (cm->alloc_mi(cm, new_mi_size)) goto fail;
|
|
||||||
}
|
|
||||||
|
|
||||||
- if (cm->seg_map_alloc_size < cm->mi_rows * cm->mi_cols) {
|
|
||||||
- // Create the segmentation map structure and set to 0.
|
|
||||||
- free_seg_map(cm);
|
|
||||||
- if (alloc_seg_map(cm, cm->mi_rows * cm->mi_cols)) goto fail;
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
if (cm->above_context_alloc_cols < cm->mi_cols) {
|
|
||||||
vpx_free(cm->above_context);
|
|
||||||
cm->above_context = (ENTROPY_CONTEXT *)vpx_calloc(
|
|
||||||
@@ -143,6 +137,12 @@ int vp9_alloc_context_buffers(VP9_COMMON
|
|
||||||
cm->above_context_alloc_cols = cm->mi_cols;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ if (cm->seg_map_alloc_size < cm->mi_rows * cm->mi_cols) {
|
|
||||||
+ // Create the segmentation map structure and set to 0.
|
|
||||||
+ free_seg_map(cm);
|
|
||||||
+ if (alloc_seg_map(cm, cm->mi_rows * cm->mi_cols)) goto fail;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if (vp9_alloc_loop_filter(cm)) goto fail;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
--- a/libs/libvpx/vp9/encoder/vp9_encoder.c
|
|
||||||
+++ b/libs/libvpx/vp9/encoder/vp9_encoder.c
|
|
||||||
@@ -1915,6 +1915,17 @@ static void alloc_copy_partition_data(VP
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
+static void free_copy_partition_data(VP9_COMP *cpi) {
|
|
||||||
+ vpx_free(cpi->prev_partition);
|
|
||||||
+ cpi->prev_partition = NULL;
|
|
||||||
+ vpx_free(cpi->prev_segment_id);
|
|
||||||
+ cpi->prev_segment_id = NULL;
|
|
||||||
+ vpx_free(cpi->prev_variance_low);
|
|
||||||
+ cpi->prev_variance_low = NULL;
|
|
||||||
+ vpx_free(cpi->copied_frame_cnt);
|
|
||||||
+ cpi->copied_frame_cnt = NULL;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
void vp9_change_config(struct VP9_COMP *cpi, const VP9EncoderConfig *oxcf) {
|
|
||||||
VP9_COMMON *const cm = &cpi->common;
|
|
||||||
RATE_CONTROL *const rc = &cpi->rc;
|
|
||||||
@@ -1999,6 +2010,8 @@ void vp9_change_config(struct VP9_COMP *
|
|
||||||
new_mi_size = cm->mi_stride * calc_mi_size(cm->mi_rows);
|
|
||||||
if (cm->mi_alloc_size < new_mi_size) {
|
|
||||||
vp9_free_context_buffers(cm);
|
|
||||||
+ vp9_free_pc_tree(&cpi->td);
|
|
||||||
+ vpx_free(cpi->mbmi_ext_base);
|
|
||||||
alloc_compressor_data(cpi);
|
|
||||||
realloc_segmentation_maps(cpi);
|
|
||||||
cpi->initial_width = cpi->initial_height = 0;
|
|
||||||
@@ -2014,8 +2027,18 @@ void vp9_change_config(struct VP9_COMP *
|
|
||||||
update_frame_size(cpi);
|
|
||||||
|
|
||||||
if (last_w != cpi->oxcf.width || last_h != cpi->oxcf.height) {
|
|
||||||
- memset(cpi->consec_zero_mv, 0,
|
|
||||||
- cm->mi_rows * cm->mi_cols * sizeof(*cpi->consec_zero_mv));
|
|
||||||
+ vpx_free(cpi->consec_zero_mv);
|
|
||||||
+ CHECK_MEM_ERROR(
|
|
||||||
+ cm, cpi->consec_zero_mv,
|
|
||||||
+ vpx_calloc(cm->mi_rows * cm->mi_cols, sizeof(*cpi->consec_zero_mv)));
|
|
||||||
+
|
|
||||||
+ vpx_free(cpi->skin_map);
|
|
||||||
+ CHECK_MEM_ERROR(
|
|
||||||
+ cm, cpi->skin_map,
|
|
||||||
+ vpx_calloc(cm->mi_rows * cm->mi_cols, sizeof(cpi->skin_map[0])));
|
|
||||||
+
|
|
||||||
+ free_copy_partition_data(cpi);
|
|
||||||
+ alloc_copy_partition_data(cpi);
|
|
||||||
if (cpi->oxcf.aq_mode == CYCLIC_REFRESH_AQ)
|
|
||||||
vp9_cyclic_refresh_reset_resize(cpi);
|
|
||||||
rc->rc_1_frame = 0;
|
|
|
@ -9,12 +9,12 @@ include $(TOPDIR)/rules.mk
|
||||||
include $(INCLUDE_DIR)/kernel.mk
|
include $(INCLUDE_DIR)/kernel.mk
|
||||||
|
|
||||||
PKG_NAME:=rtpengine
|
PKG_NAME:=rtpengine
|
||||||
PKG_VERSION:=11.5.1.12
|
PKG_VERSION:=11.5.1.18
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE:=$(PKG_NAME)-mr$(PKG_VERSION).tar.gz
|
PKG_SOURCE:=$(PKG_NAME)-mr$(PKG_VERSION).tar.gz
|
||||||
PKG_SOURCE_URL:=https://codeload.github.com/sipwise/rtpengine/tar.gz/mr$(PKG_VERSION)?
|
PKG_SOURCE_URL:=https://codeload.github.com/sipwise/rtpengine/tar.gz/mr$(PKG_VERSION)?
|
||||||
PKG_HASH:=76a16d00926838cdb16b0004043c2476115b8481f85eff454d5134204c780d47
|
PKG_HASH:=d5b0288ec02164b13730c14976425160d9a0b42b1c74796f8d9e59649e705fa6
|
||||||
|
|
||||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-mr$(PKG_VERSION)
|
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-mr$(PKG_VERSION)
|
||||||
|
|
||||||
|
@ -51,6 +51,7 @@ ENGINE_DEPENDS := \
|
||||||
+libpcre2 \
|
+libpcre2 \
|
||||||
+libwebsockets-openssl \
|
+libwebsockets-openssl \
|
||||||
+libopus \
|
+libopus \
|
||||||
|
+xmlrpc-c \
|
||||||
+xmlrpc-c-client \
|
+xmlrpc-c-client \
|
||||||
+zlib
|
+zlib
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue