# tylive-srs-sdk **Repository Path**: gdty/tylive-srs-sdk ## Basic Information - **Project Name**: tylive-srs-sdk - **Description**: 流媒体 Java SRS SDK,用于支持实时流媒体服务(SRS)的集成和管理。 - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-09-27 - **Last Updated**: 2026-01-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: Gitea ## README # tylive-srs-sdk ## 介绍 这是一个流媒体 Java SRS SDK,用于支持实时流媒体服务(SRS)的集成和管理。 ## SRS 服务端口说明 - **RTMP 直播流服务器:** `tcp://1935` - **HTTP API 服务器:** `tcp://1985`(支持 HTTP API、WebRTC 等) - **HTTP 流媒体服务器:** `tcp://8099`(HTTP-FLV、HLS 等) - **WebRTC 媒体服务器:** `udp://8000` - **流转换器(推 SRT 媒体服务器):** `udp://10080` - **GB28181 协议支持:** `tcp://9000`, `tcp://5060`(需将配置文件中的 `$CANDIDATE` 改为外网 IP) - **WS-HLV 服务:** `tcp://8100` ## GO 服务 - 提供 **HTTP-FLV 转 WS-HLV** 的功能。 ## 配置方式 在你的 `pom.xml` 文件中添加以下配置以引入 SDK: ### Maven 仓库配置 ```xml gdteyu-maven public https://maven.cnb.cool/gdty/maven/-/packages/ true true ``` ### SDK 依赖配置 ```xml org.gdty.srs tylive-srs-sdk xxx ``` 请将 `xxx` 替换为你需要的具体版本号。 ## 使用说明 ### 初始化 SRS SDK 提供了 `Application` 类用于初始化和启动 SRS 服务: ```java Application.initSRS(); ``` ### 启动 SRS 你可以通过以下方式启动 SRS: ```java Application.startSRS(); ``` 或者指定配置文件路径启动: ```java Application.startSRS("your_config_path"); ``` ### 停止 SRS 停止 SRS 服务: ```java Application.stopSRS(); ``` ## 工具类说明 ### CmdUtils 用于执行命令行操作,支持同步和异步执行: - `exec(CommandLine commandLine, String cmdpath)` - `execAsync(File executable, String[] addArguments, String cmdpath)` - `execAsync(String cmd, String cmdpath)` ### CopyUtils 用于文件和目录的复制操作: - `init(String SOURCESTRING, String TARGETSTRING, String sourceDir)` - `chmod(File file)` - `copyFile(File sourceFile, File targetFile)` - `copyDirectory(String sourcePathString, String targetPathString)` - `copyJarResourcesFileToTemp(URI path, String tempPath, String filePrefix)` - `readJarFile(JarFile jarFile, String prefix)` ### FileUtils 提供文件路径和类型相关的工具方法: - `getTypeByFilename(String fileName)` - `getClasspath()` - `getPath(String path)` - `getStream(String path)` - `getRootPath()` - `getArch()` ## 资源文件说明 SDK 包含了 SRS 的相关资源文件,如配置文件、HTML 页面、CSS 样式、JavaScript 脚本等,用于支持 Web 控制台、播放器、发布器等功能。 ## 开源许可 本项目遵循开源许可协议,请参考项目中的 `LICENSE` 文件获取详细信息。