diff --git a/br-ext-chip-hisilicon/Config.in b/br-ext-chip-hisilicon/Config.in
index afeba386..59b83a22 100644
--- a/br-ext-chip-hisilicon/Config.in
+++ b/br-ext-chip-hisilicon/Config.in
@@ -30,6 +30,7 @@ source "$BR2_EXTERNAL_HISILICON_PATH/package/libogg-openipc/Config.in"
 source "$BR2_EXTERNAL_HISILICON_PATH/package/libre-openipc/Config.in"
 source "$BR2_EXTERNAL_HISILICON_PATH/package/librem-openipc/Config.in"
 source "$BR2_EXTERNAL_HISILICON_PATH/package/libsrt-openipc/Config.in"
+source "$BR2_EXTERNAL_HISILICON_PATH/package/libsrtp-openipc/Config.in"
 source "$BR2_EXTERNAL_HISILICON_PATH/package/libwebsockets-openipc/Config.in"
 source "$BR2_EXTERNAL_HISILICON_PATH/package/linux-firmware-openipc/Config.in"
 source "$BR2_EXTERNAL_HISILICON_PATH/package/majestic-fonts/Config.in"
diff --git a/br-ext-chip-hisilicon/configs/unknown_unknown_hi3516cv500_openipc_defconfig b/br-ext-chip-hisilicon/configs/unknown_unknown_hi3516cv500_openipc_defconfig
index a12ca2b1..8987a131 100644
--- a/br-ext-chip-hisilicon/configs/unknown_unknown_hi3516cv500_openipc_defconfig
+++ b/br-ext-chip-hisilicon/configs/unknown_unknown_hi3516cv500_openipc_defconfig
@@ -44,6 +44,7 @@ BR2_TARGET_GENERIC_HOSTNAME="openipc-hi3516cv500"
 BR2_GLOBAL_PATCH_DIR="$(TOPDIR)/../general/package/all-patches"
 
 # OpenIPC packages
+BR2_PACKAGE_AWS_WEBRTC=y
 BR2_PACKAGE_BUSYBOX_CONFIG="$(TOPDIR)/../general/package/busybox/busybox.config"
 BR2_PACKAGE_DROPBEAR_OPENIPC=y
 BR2_PACKAGE_FDK_AAC_OPENIPC=y
diff --git a/br-ext-chip-hisilicon/configs/unknown_unknown_hi3516ev200_openipc_defconfig b/br-ext-chip-hisilicon/configs/unknown_unknown_hi3516ev200_openipc_defconfig
index a42481ac..22be88e3 100644
--- a/br-ext-chip-hisilicon/configs/unknown_unknown_hi3516ev200_openipc_defconfig
+++ b/br-ext-chip-hisilicon/configs/unknown_unknown_hi3516ev200_openipc_defconfig
@@ -47,6 +47,7 @@ BR2_TARGET_GENERIC_HOSTNAME="openipc-hi3516ev200"
 BR2_GLOBAL_PATCH_DIR="$(TOPDIR)/../general/package/all-patches"
 
 # OpenIPC packages
+BR2_PACKAGE_AWS_WEBRTC=y
 BR2_PACKAGE_BUSYBOX_CONFIG="$(TOPDIR)/../general/package/busybox/busybox.config"
 BR2_PACKAGE_DROPBEAR_OPENIPC=y
 # BR2_PACKAGE_FDK_AAC_OPENIPC is not set
diff --git a/br-ext-chip-hisilicon/package/libsrtp-openipc b/br-ext-chip-hisilicon/package/libsrtp-openipc
new file mode 120000
index 00000000..3bd0ec08
--- /dev/null
+++ b/br-ext-chip-hisilicon/package/libsrtp-openipc
@@ -0,0 +1 @@
+../../general/package/libsrtp-openipc
\ No newline at end of file
diff --git a/general/package/aws-producer/aws-producer.mk b/general/package/aws-producer/aws-producer.mk
index 7d6db227..63b2b87c 100644
--- a/general/package/aws-producer/aws-producer.mk
+++ b/general/package/aws-producer/aws-producer.mk
@@ -17,6 +17,7 @@ AWS_PRODUCER_CONF_OPTS += \
 	-DBUILD_DEPENDENCIES=FALSE \
 	-DUSE_OPENSSL=OFF \
 	-DUSE_MBEDTLS=ON \
+	-DBUILD_SHARED_LIBS=OFF \
 	-DCMAKE_BUILD_TYPE=Release
 
 AWS_PRODUCER_MAKE_OPTS += VERBOSE=1
diff --git a/general/package/aws-webrtc/aws-webrtc.mk b/general/package/aws-webrtc/aws-webrtc.mk
index e42db2e2..1e75af0d 100644
--- a/general/package/aws-webrtc/aws-webrtc.mk
+++ b/general/package/aws-webrtc/aws-webrtc.mk
@@ -4,9 +4,9 @@
 #
 ################################################################################
 
-AWS_WEBRTC_VERSION = v1.7.3
+AWS_WEBRTC_VERSION = develop
 AWS_WEBRTC_SITE_METHOD = git
-AWS_WEBRTC_SITE = https://github.com/awslabs/amazon-kinesis-video-streams-webrtc-sdk-c
+AWS_WEBRTC_SITE = https://github.com/OpenIPC/webrtc-c
 AWS_WEBRTC_INSTALL_STAGING = YES
 AWS_WEBRTC_LICENSE = Apache-2.0
 AWS_WEBRTC_LICENSE_FILES = LICENSE
@@ -17,13 +17,13 @@ AWS_WEBRTC_CONF_OPTS += \
 	-DUSE_OPENSSL=OFF \
 	-DUSE_MBEDTLS=ON \
 	-DENABLE_DATA_CHANNEL=OFF \
+	-DBUILD_SAMPLE=OFF \
 	-DBUILD_DEPENDENCIES=OFF
 
 AWS_WEBRTC_MAKE_OPTS += VERBOSE=1
 
 AWS_WEBRTC_DEPENDENCIES = \
-	libsrtp \
-	libwebsockets-openipc \
+	libsrtp-openipc \
 	aws-producer \
 	usrsctp \
 	mbedtls-openipc
diff --git a/general/package/libevent-openipc/libevent-openipc.mk b/general/package/libevent-openipc/libevent-openipc.mk
index f1f8b15d..473dde17 100644
--- a/general/package/libevent-openipc/libevent-openipc.mk
+++ b/general/package/libevent-openipc/libevent-openipc.mk
@@ -10,11 +10,17 @@ LIBEVENT_OPENIPC_INSTALL_STAGING = YES
 LIBEVENT_OPENIPC_LICENSE = BSD-3-Clause, OpenBSD
 LIBEVENT_OPENIPC_LICENSE_FILES = LICENSE
 LIBEVENT_OPENIPC_CONF_OPTS = \
+	-D_GNU_SOURCE=ON \
 	-DEVENT__DISABLE_BENCHMARK=ON \
 	-DEVENT__DISABLE_SAMPLES=ON \
 	-DEVENT__DISABLE_TESTS=ON \
 	-DCMAKE_BUILD_TYPE=Release
 
+define LIBEVENT_OPENIPC_PATCH_MMAH_H
+	sed -i 's/#define mmap64 mmap/void *mmap64 (void *, size_t, int, int, int, off_t);/' $(STAGING_DIR)/usr/include/sys/mman.h
+endef
+
+LIBEVENT_OPENIPC_PRE_BUILD_HOOKS += LIBEVENT_OPENIPC_PATCH_MMAH_H
 
 define LIBEVENT_OPENIPC_REMOVE_PYSCRIPT
 	rm $(TARGET_DIR)/usr/bin/event_rpcgen.py
diff --git a/general/package/libsrtp-openipc/Config.in b/general/package/libsrtp-openipc/Config.in
new file mode 100644
index 00000000..75545864
--- /dev/null
+++ b/general/package/libsrtp-openipc/Config.in
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_LIBSRTP_OPENIPC
+	bool "libsrtp_openipc"
+	help
+	  This package provides an implementation of the Secure
+	  Real-time Transport Protocol (SRTP), the Universal Security
+	  Transform (UST), and a supporting cryptographic kernel.
+
+	  https://github.com/cisco/libsrtp
diff --git a/general/package/libsrtp-openipc/libsrtp-openipc.mk b/general/package/libsrtp-openipc/libsrtp-openipc.mk
new file mode 100644
index 00000000..7860dcc9
--- /dev/null
+++ b/general/package/libsrtp-openipc/libsrtp-openipc.mk
@@ -0,0 +1,22 @@
+################################################################################
+#
+# libsrtp-openipc
+#
+################################################################################
+
+LIBSRTP_OPENIPC_VERSION = bd0f27ec0e299ad101a396dde3f7c90d48efc8fc
+LIBSRTP_OPENIPC_SITE = https://github.com/cisco/libsrtp.git
+LIBSRTP_OPENIPC_SITE_METHOD = git
+LIBSRTP_OPENIPC_INSTALL_STAGING = YES
+LIBSRTP_OPENIPC_LICENSE = BSD-3-Clause
+LIBSRTP_OPENIPC_LICENSE_FILES = LICENSE
+LIBSRTP_OPENIPC_CPE_ID_VENDOR = cisco
+
+LIBSRTP_OPENIPC_CONF_OPTS = \
+	-DENABLE_OPENSSL=OFF \
+	-DBUILD_SHARED_LIBS=OFF \
+	-DCMAKE_BUILD_TYPE:STRING=Release
+
+LIBSRTP_OPENIPC_MAKE_OPTS += VERBOSE=1
+
+$(eval $(cmake-package))
diff --git a/general/package/usrsctp/usrsctp.mk b/general/package/usrsctp/usrsctp.mk
index e6bcd894..288c1461 100644
--- a/general/package/usrsctp/usrsctp.mk
+++ b/general/package/usrsctp/usrsctp.mk
@@ -15,6 +15,7 @@ USRSCTP_CONF_OPTS += \
 	-Dsctp_werror=0 \
 	-Dsctp_build_programs=0 \
 	-Dsctp_debug=0 \
+	-DBUILD_SHARED_LIBS=OFF \
 	-DCMAKE_BUILD_TYPE=Release
 
 USRSCTP_MAKE_OPTS += VERBOSE=1