視訊會議、線上教育、直播娛樂還是遠端監控,流媒體平臺的效能和穩定性直接影響著使用者體驗。
給大家推薦一個基於 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:
如果你覺得這篇文章對你有幫助,不妨點個贊支援一下!你的支援是我繼續分享知識的動力。如果有任何疑問或需要進一步的幫助,歡迎隨時留言。
也可以加入微信公眾號[DotNet技術匠] 社群,與其他熱愛技術的同行一起交流心得,共同成長!優秀是一種習慣,歡迎大家留言學習!