- 博客(30)
- 收藏
- 关注

原创 JAIN SIP API详解与GB28181服务器实现【保姆级源码教程】
这篇文章展示了基于Java SE如何创建客户端侧的SIP应用。JAIN SIP API是一个强大的“SIP协议栈”。本文将通过一个简单的即时通讯程序以及一个GB28181协议的简单应用程序,详细的分析该技术。 详细的代码说明,SIP学习一眼便会!玩转Java信令服务器的开发,玩转Java音视频,玩转融合通信!
2023-05-31 14:44:39
10265
41
原创 Python aiortc API
本研究的主要目的是基于Python aiortc api实现抓取本地设备(摄像机、麦克风)媒体流实现Web端预览。
2025-02-05 22:14:59
1371
原创 JsSIP Demo
JsSIP是一个用JavaScript编写的轻量级且功能丰富的SIP库,它利用了SIP和WebRTC技术的最新进展,使得任何网站都能够通过简单的代码集成,实现音视频通话、即时消息和状态展示等实时通信功能
2024-08-21 10:17:57
1081
3
原创 Java SIP Client
采用JAIN SIP API实现一个SIP客户端实现向SIP服务器注册。SIP服务器可以为FreeSWITCH也可以为满足GB28181的SIP平台。
2024-08-13 15:03:24
1687
1
原创 WebRTC-SFU服务器-Janus部署【保姆级部署教程】
WebRTC SFU(Selective Forwarding Unit)构架是一种通过服务器来路由和转发WebRTC客户端音视频数据流的方法。这种构架的核心特点是将服务器模拟成一个WebRTC的Peer客户端,从而实现了音视频流的直接转发。在SFU构架中,服务器作为中心节点,但并不负责音视频流的混合处理,而是直接将其从一个客户端转发到其他客户端。这种构架的优点在于,由于数据包是直接转发,不需要进行编码、解码等复杂处理,因此对CPU、内存等机器资源的消耗较小。
2024-05-23 14:45:38
2364
原创 WebRTC视频会议系统
基于WebRTC技术栈是实现的简易视频会议系统,支持多人通话、文件传输、聊天室等功能,对于WebRTC学习具有借鉴意义。
2024-05-17 10:52:40
816
原创 WebRTC实现多人通话-Mesh架构【保姆级源码教程】
WebRTC(Web Real-Time Communications)中的Mesh架构是一种将多个终端之间两两进行连接,形成网状结构的通信模式。在Mesh架构中,每个参与者(或称为peer)都需要与其他所有参与者建立直接的媒体连接。例如,如果有A、B、C、D四个参与者,那么A需要分别与B、C、D建立连接,B也需要分别与A、C、D建立连接,以此类推。Mesh架构不需要服务器中转数据,充分利用了客户端的带宽资源,节省了服务器资源。此外,由于所有参与者都直接相连,因此网络延迟较低,实时性较好。
2024-05-06 10:22:47
1808
3
原创 Coturn部署以及关于打洞的思考
文中部署架构图为Corturn为解决互联网NAT环境下“找朋友”的部署架构,也是Coturn发挥其价值的最佳方案。但是我们好多小白在进行WebRTC自学开发时并没有公网ip,那么应该怎么“打洞”呢?打洞到底是怎么一个过程?我们在开发时应该如何决定candidate?回答这些问题之前首先想一想我们自己能搭建什么样的网络环境吧。下面将自己搭建网络环境并介绍无互联网ip的环境下Coturn应用与部署。通过下面的测试过程,我相信你将充分理解“打洞”。
2024-04-19 17:09:19
2219
2
原创 缓存数据一致性解决方案
缓存一致性问题解决方案cache-aside是一种常见的缓存一致性方案,也称为Cache-Through或Lazy-Load
2024-01-05 17:31:58
456
1
原创 Java实现网络摄像头实时视频人脸识别
Java服务实现摄像头实时视频人脸识别,本demo突出一个简单,学习简单开发简单部署简单,同时保证人脸识别的准确率。本demo提供一个Java实现音视频图像处理的解决思路,可以结合具体业务场景如人脸告警,人脸比对等进行扩展,具有举一反三的学习意义。
2023-12-22 14:48:19
1128
1
原创 WebRTC实现1V1通话与文件传输【保姆级源码教程】
WebRTC局域网实现一对一音视频通话详解,谁说WebRTC通话必须要有NAT穿越或中继服务器,该demo教小白学会WebRTC并实现P2P通话。
2023-12-15 15:55:42
4401
11
原创 元空间OOM排查记录【详解】
项目开发数据源全部通过访问其他平台开放的RestFul接口获取,接口查询数据并不能像查询本地数据库一样自由写SQL般灵活,导致大量数据基于内存处理,随着需求增多,最终导致了项目组件出现了元空间OOM异常。记录一次完整的OOM排查过程。
2023-11-17 20:17:25
757
1
原创 Spring Web MVC知道这些就够了
Spring Web MVC是基于Servlet API的原始Web框架,从一开始就包含在Spring框架中。其正式名称“Spring Web MVC”来自其源模块(Spring -webmvc)的名称,但更常见的名称是“Spring MVC”。与Spring Web MVC并行,Spring Framework 5.0引入了一个响应式堆栈Web框架,其名称“Spring WebFlux”也是基于其源模块(Spring - WebFlux)。
2023-07-27 20:23:04
470
1
原创 CAS协议
CAS协议是一个简单而强大的基于票证的协议。完整的协议规范可以在这里(https://apereo.github.io/cas/6.6.x/protocol/CAS-Protocol-Specification.html)找到。它涉及一个或多个客户机和一个服务器。
2023-07-18 19:59:56
471
原创 SpringBoot集成Swagger
OpenAPI规范(OAS)定义了一个标准的、与语言无关的HTTP api接口,它允许人类和计算机发现和理解服务的功能,而无需访问源代码、文档或通过网络流量检查。正确定义后,使用者可以用最少的实现逻辑理解远程服务并与之交互。OpenAPI3.1.0规范详情请参阅Swagger官网:https://swagger.io/specification/
2023-07-18 10:06:31
466
原创 简洁持久层开发之Spring Data JPA
Spring项目开发中,持久层的框架常用的有MyBatis、Mybatis Plus、Hibernate和Spring Data JPA等,国内常用的是前两种,本人最先接触的也是MyBatis。下面我列举了常用的三类框架的一些对比信息。今天我们要聊一聊一种解放双手的持久成框架Spring Data JPA。
2023-07-05 09:35:54
514
1
原创 一文读懂MapStruct 1.5.5.Final
我们在平时项目开发过程中会经常这样的情况,从数据库中查出来的PO对象中包含很多字段,但是在业务处理过程中需要处理的DTO包含PO中的部分字段,或者返回给前端的VO为DTO的部分字段,这就需要Class类转化,如果用构造器或者get()/set()方法,将会写大量冗余代码并且容易出错。面对这样的场景,采用MapStruct插件处理类转换是一个绝佳的选择。MapStruct 是一个注释处理器,用于生成类型安全、高性能和无依赖的 Bean 映射代码。
2023-06-30 15:53:40
2365
原创 Spring Cloud Sleuth HTTP详解
Spring Cloud Sleuth是一个分布式跟踪解决方案,集成Zipkin等流行的分布式跟踪系统,使得跨越不同微服务的跟踪和调试更加方便。Spring Cloud Sleuth支持以下协议的跟踪:HTTP、JMS、Kafka、RabbitMQ、gRP、Dubbo通过支持这些协议的跟踪,Spring Cloud Sleuth可以帮助开发者在分布式系统中更全面地获取服务调用信息和性能指标,从而更好地诊断和解决各种分布式系统中的问题。
2023-06-19 10:07:05
2017
原创 Java音视频处理——JavaCV
JavaCV使用来自JavaCPP预设库的包装器,这些库是计算机视觉领域的研究人员常用的库(OpenCV, FFmpeg, libdc1394, FlyCapture, Spinnaker, OpenKinect, librealsense, CL PS3 Eye Driver, videoInput, ARToolKitPlus, flandmark, Leptonica和Tesseract),并提供实用程序类,使其功能更容易在Java平台(包括Android)上使用。
2023-05-31 14:51:23
5637
1
freeSwitch+linphone.zip
2024-08-13
SpringBoot集成Swagger
2023-07-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人