# ngx_cloud
**Repository Path**: H-kernel/ngx_cloud
## Basic Information
- **Project Name**: ngx_cloud
- **Description**: 基于nginx源码构建的多进程服务,包括了媒体服务、转码服务等等
- **Primary Language**: C
- **License**: BSD-4-Clause
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2025-09-02
- **Last Updated**: 2026-04-11
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# ngx_cloud
## 介绍
### 基于nginx源码构建的多进程服务框架:
系统在nginx源码基础上构建的多进程服务框架,即利用nginx的master守护进程和管理机制支持扩展
进程服务管理,并定义了扩展进程以动态库形式独立扩展;同时兼顾nginx原来内生的module扩展功能和开
源生态整合。
1、基于nginx-rtmp模块构建的实时流服务
2、基于nginx-vod模块构建的媒体点播服务
3、扩展进程服务:媒体服务、转码服务等等
### 最新版本nginx 1.28.0
## 软件架构
### 软件架构说明
1、系统采用nginx做基础服务框架,并多nginx进程管理进行增强支持管理外部动态库扩展服务进程。
2、同时支持预集成nginx-rtmp、nginx-vod模块进行媒体直播、点播服务器。
3、支持http文件上传、远程文件管理等接口能力。
## 扩展进程模块
### 扩展进程架构
扩展进程是满足扩在接口的so库拉起的单独进程服务,扩展进程被nginx master进程统一管理,如下:

[参考]ngx_cloud 扩展进程接入
### 扩展进程配置
扩在进程在ngx_cloud.conf配置文件中配置,如下配置
指令sub_process 参数分别按顺序是模块名称、模块动态库、模块工作目录。

### 扩展进程启动
扩展模块启动后启动,会自动创建一个子进程,并运行扩展模块。

### 扩展进程列表
下列扩展进展还在建设中,请关注后续版本(提供下载包)。
#### mod_hostguard
1、主机守护进程,提供实时采集主机CPU、内存、网卡、磁盘等使用和健康信息
2、提供以独立日志文件形式提供上述信息的记录和归档
3、可以配置独立文件目录按保存天数删除清理(可以最后写时间和读取时间判断过期)
4、支持配置功能目录下的日志文件等进行归档和定期伤处处理。
#### mod_authorize
1、基于SQLite数据库构建的认证模块。
2、支持账户+密码方式认证,http-degist 方式认证。
3、支持通过token方式认证,JWT方式认证。
4、支持对回话Seesion或者token的有效期管理。
5、支持通过https接口管理账户信息和token信息。
------建设中...
#### mod_transcode
1、集成ffmpeg库、支持对实时流、视频文件进行编码压缩、分辨率转换、封装转化等转码处理。
2、支持以XML模版形式配置和控制音视频相关参数。
3、支持多路并发和拉流、推流任务。
#### mod_live_stream
1、实时流服务模块
2、支持通过rtsp、rtmp协议进行拉流
3、支持rtmp推流
4、支持标准H264、H265视频编码格式
5、支持标准G7.11、ACC音频编码格式
6、支持多路转发和高性能转发能力。
#### mod_smartimage
1、基于AiCodec的智能图片压缩处理模块,不改变分辨率、人眼感知体验的AiCodec压缩。
2、支持基于图像分块和帧内预测的图片AiCodec压缩技术
3、支持多路压缩和多磁盘路径扫描压缩
4、支持基于ESRGAN的图像增强和提高分辨率
5、支持对图像增展示

#### mod_rtxpnode
1、基于RTSP/RTMP协议接入RTXP节点,多路高并发网络IO处理。
2、支持RTSP流形式复制多路拉流转发输出。
3、支持通过任务形式RTMP形式推流输出。
4、支持通过任务形式将视频流录制成为mp4文件。
5、支持H264、H265、G711A、G711U、G722、G726、G729A、AAC音频编码格式。
## Nginx 扩展模块
#### ngx_stor_upload_module 模块
1、基于开源nginx-http-upload-module模块修改,实现http 文件multipart上传功能。
2、基于开源nginx-upload-progress-module实现上传进度反馈。
3、扩展增加上传过程中临时文件命名参数和能力;支持上传过程中.upload后缀,上传完成rename为原名。
#### ngx_s3_http_module 模块
1、基于nginx扩展s3接口能力,将本地磁盘存储提供s3接口。
2、支持上传文件、下载文件、删除文件、文件列表查询等标准s3接口能力。
-----模块规划中......
#### ngx_rtmp_module 模块
1、基于nginx-rtmp模块构建的实时流服务模块。
2、提供rtmp实时流推入,支持实时rtmp、flv、hls、dash流输出。
3、支持视频H.264、H.265和AAC音频编码格式。
#### ngx_vod_module 模块
1、基于nginx-vod模块构建的媒体点播服务模块。
2、提供点播服务,支持http、hls、dash流输出。
3、支持H.264、H.265和AAC音频编码格式。
4、支持MP4文件播放。
## 安装教程
TODO:
## 使用说明
### ngx_cloud 扩展进程接入
用户可以自定义基于C/C++实现的动态库(only linux),导出.so文件实现以下函数接口,
ngx_cloud守护进程(master)会根据配置文件启动进程,并管理进程。如下:
#ifndef __MUTIL_MODULES_INCLUDE_H__
#define __MUTIL_MODULES_INCLUDE_H__
#include
#include
#include
#ifdef WIN32
#ifdef LIB_MS_MODULE_EXPORTS
#define MOD_API __declspec(dllexport)
#else
#define MOD_API __declspec(dllimport)
#endif
#else
#define MOD_API
#endif
extern "C"
{
MOD_API int mod_start(const char* wrkpath);
MOD_API void mod_stop();
}
#endif /* __MUTIL_MODULES_INCLUDE_H__ */
## 参与贡献
TODO: