.NET 全功能流媒体管理控制接口平台

news/2024/11/7 13:50:56/文章来源:https://www.cnblogs.com/1312mn/p/18502466

前言

视频会议、在线教育、直播娱乐还是远程监控,流媒体平台的性能和稳定性直接影响着用户体验。

给大家推荐一个基于 C# 开发的全功能流媒体管理控制接口平台。

项目介绍

AKStream是一个基于 C# 开发的全功能流媒体管理控制接口平台。

它集成了 GB28181、RTSP、RTMP、HTTP 等多种设备的推拉流控制、PTZ 控制、音视频文件录制管理、音视频文件裁剪合并等功能。

功能特点

  • 极低延时:支持画面秒开,延时极低(500 毫秒内,最低可达 100 毫秒)。
  • 标准 Restful WebAPI 接口:提供完善的标准 Restful WebAPI 接口,供其他语言调用。
  • GB28181 Sip 信令网关:重新编写 GB28181 Sip 信令网关,使其更加稳定可靠,并具备高可扩展性。

项目环境

  • 操作系统:支持 Linux、macOS、Windows,并可在 x86_64、ARM CPU 架构下运行。
  • 开发语言:使用 .NET 6 框架,采用 C# 语言编写。
  • 数据库支持:使用开源项目 freeSql 数据库类库,支持多种数据库类型(如 SQLite、MS SQL),建议使用 MySQL 5.7 及以上版本。

项目技术

  • 流媒体服务器:AKStream 集成了 ZLMediaKit 作为其流媒体服务器,并支持对 ZLMediaKit 的集群管理。
  • 编码格式支持:全面支持 H265/H264/AAC/G711/OPUS 等音视频编码格式。
  • 流转换:支持 GB28181 的 Rtp 推流、内置流代理器和 ffmpeg 流代理器的多种形式的拉流,以及几乎全协议的互相转换(如 RTSP/RTMP/HLS/HTTP-FLV 等),以供第三方调用播放。

AKStream 结构

AKStream是一个完善的接口平台,提供了几乎所有有关于NVR管理能力的API接口,有网友为AKStream实现了配套的UI,但仅仅只是Demo,是用来告诉你怎么调用AKStream相关接口,学习AKStream思想的一个工具,要真和自己业务相结合,需要自己实现前端UI和业务逻辑功能。

AKStreamWebUI

基于AKStream流媒体管理控制接口的Web管理端。

流媒体服务采用 ZLMediaKit

https://github.com/xia-chu/ZLMediaKit

接口服务采用了AKStream

https://github.com/chatop2020/AKStream

强烈推荐 AKStream 生态圈中的开源 Web 管理平台

基于 React 的纯前端 AKStream Web UI

我们很高兴地向大家推荐 AKStream 生态圈中的又一个开源 Web 管理平台 —— AKStreamNVR

这款基于 React 的纯前端框架,提供了非常简单的部署和运行方式,极大地简化了流媒体管理的复杂度。

部署简单:一键部署,快速启动。

运行简便:易于操作,无需复杂配置。

https://gitee.com/sscboshi/AKStreamNVR

https://github.com/langmansh/AKStreamNVR)

基于 .NET 5 和 Vue 2 的 AKStream Web UI

另外,我们还推荐另一款专为 AKStream 量身定制的开源 Web 管理平台 —— AKStreamUI。这款基于 .NET 5 和 Vue 2 的平台同样提供了出色的管理和控制功能。

现代化框架:使用 .NET 5 和 Vue 2,确保高性能和稳定性。

易于集成:无缝对接 AKStream 的各项功能。

https://github.com/langmansh/AKStreamUI

https://gitee.com/sscboshi/AKStreamUI

这两个平台不仅提供了强大的功能,还极大地简化了用户的操作体验。无论是基于 React 的 AKStreamNVR 还是基于 .NET 5 和 Vue 2 的 AKStreamUI,都将为流媒体管理带来全新的体验。

项目部署

1、新建数据库

创建新的数据库。

还原 Document\DatabaseScript\AKStreamWebUI.sql 文件中的数据库脚本。

2、修改配置文件

修改 YiSha.Admin.Web\appsettings.json 文件中的 AKStream 接口地址和数据库连接字符串。

3、同步数据库

将 AKStream 的数据库配置与本项目保持一致。(也可以将 AKStream 的 videochannels 表复制到本项目的数据库中。)

项目效果

设备管理

设备列表:通过 AKStream 服务自动添加 SIP 设备到数据库,并可查看设备列表信息。

设备操作:支持设备的添加、编辑、删除和激活功能。

视频预览

在线预览:支持设备的在线视频预览功能。

流媒体服务管理

服务控制:提供流媒体服务的启动、重启、停止功能,并支持查看服务详情和热加载配置文件。

项目地址

GitHub:https://github.com/chatop2020/AKStream

Gitee:https://gitee.com/chatop2020/AKStream

最后

如果你觉得这篇文章对你有帮助,不妨点个赞支持一下!你的支持是我继续分享知识的动力。如果有任何疑问或需要进一步的帮助,欢迎随时留言。

也可以加入微信公众号[DotNet技术匠] 社区,与其他热爱技术的同行一起交流心得,共同成长!优秀是一种习惯,欢迎大家留言学习!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/828280.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024-2025-1 20241401 《计算机基础与程序设计》 第七周学习总结

班级链接 2024计算机基础与程序设计作业要求 第七周作业作业目标 ①数组与链表 ②基于数组和基于链表实现数据结构 ③无序表与有序表 ④树 ⑤图 ⑥子程序与参数教材学习内容总结 《计算机科学概论》第八章抽象数据类型: 用于定义数据和对数据的操作,而不需要具体实现细节。 栈…

微服务架构——不可或缺的注册中心

从今天开始,我们将以Java后端技术为切入点,深入探讨微服务架构。本章的重点将聚焦于微服务中最关键的环节之一:服务发现与注册。文章将循序渐进,由浅入深,逐步引领你进入微服务的广阔世界。不论你是技术新手还是经验丰富的专家,我都希望通过这篇文章,能够为你提供独特而…

家有蓝猫

小年糕已经来了三天,昨晚不知怎么特别黏我,刚回家就开始跟着我。一直想让我摸摸它。晚上睡觉也趴到我身边喵喵叫,让我摸摸它。搞得我一夜醒了好几次。小家伙还想偷吃零食,我把猫条放在上面了。不是说小猫就喜欢纸箱子吗,给它准备的它连看都不看。这是在打哈欠,伸懒腰本文…

系统中电源的设计和选择 BOSHIDA acdc电源模块 BAL2.5-5W

系统中电源的设计和选择 BOSHIDA acdc电源模块 BAL2.5-5W1.确定所用电源的规格: 电源功率电源输出电压,输出端数电源尺寸2.使用标准模块设计系统时,请尽可能使用市场上通用的标准电源模块。这样可缩短设计和开发的时间,提高可靠性。3.尽地减少电源的输出端数一-般很容易买到…

c语言中函数体中的变量声明不能使用和形参相同的变量名

001、[root@PC1 test]# ls test.c [root@PC1 test]# cat test.c #include <stdio.h>int max(int a, int b) // 创建一个名为max的函数 {int k = 100;if(a > b){return a;}else{return b;} }int main(void) {int x, y;puts("pl…

如何为管理者设计 360 评估调查题目?

宣布360 评估通常会使管理人员不稳定。同事、下属、管理层甚至客户和供应商通过预先制定的问卷来反馈。 360 评估可以采用多种形式:从 50 到 300 多个问题,例如使用开放式或封闭式问题。但抛开其形式不谈,当 360 评估与全球人力资源战略保持一致并受其驱动时,它的好处是多方…

[NOIP2022] 比赛 随机排列 部分分

看到最大值,考虑使用单调栈搞出 \([la_i, ra_i], [lb_i, rb_i]\) 表示这一段区间 \(i\) 是 \(a, b\) 的最大值。预处理是简单的。inline void init() {static auto f = [] (int a[], int l[], int r[]) -> void {static int stack[N], top;top = 0, a[n + 1] = 0x3f3f3f3f;…

鸿蒙接入Flutter3.22

配置环境变量配置HarmonyOS SDK和环境变量API12, deveco-studio-5.0 或 command-line-tools-5.0 配置 Java17 配置环境变量 (SDK, node, ohpm, hvigor)export TOOL_HOME=/Applications/DevEco-Studio.app/Contents # mac环境export DEVECO_SDK_HOME=$TOOL_HOME/sdk # command-l…

王慧文回归带队美团探索 AI 应用;对话音频开源模型 Hertz-dev:120 毫秒超低延迟丨 RTE 开发者日报

开发者朋友们大家好:这里是 「RTE 开发者日报」 ,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE(Real-Time Engagement) 领域内「有话题的 新闻 」、「有态度的 观点 」、「有意思的 数据 」、「有思考的 文章 」、「有看点的 会议 」,但内容仅代表编辑…

思通数科纸质档案扫描与识别与档案馆应用场景介绍

在传统档案馆中,纸质文件的处理和管理是一个重要且繁琐的环节,特别是面对庞大的历史资料库。思通数科的AI能力平台提供了一种高效的数字化解决方案,利用OCR技术将纸质档案中的信息自动提取并转化为数字文本,具体过程包括以下几个步骤: 1.扫描与图像预处理 首先,系统将纸质…