更新README
This commit is contained in:
parent
37443ef64b
commit
bb297dda31
90
README.md
90
README.md
@ -1,16 +1,31 @@
|
|||||||
|
<!-- Easy-FLV: Java RTSP/RTMP to FLV Converter -->
|
||||||
|
# 📺 Easy-FLV: Java 实现的 RTSP/RTMP 到 FLV 转换器
|
||||||
|
|
||||||
# Easy-FLV
|
[](https://github.com/javpower/easy-flv)
|
||||||
|
[](https://github.com/javpower/easy-flv/issues)
|
||||||
|
[](https://opensource.org/licenses/Apache-2.0)
|
||||||
|
[](https://adoptopenjdk.net/)
|
||||||
|
[](https://spring.io/projects/spring-boot)
|
||||||
|
|
||||||
#### 项目介绍
|
## 🌟 关于 Easy-FLV
|
||||||
rtsp、rtmp流地址转换成flv浏览器播放
|
Easy-FLV 是一个用 Java 实现的库,它能够将 RTSP 或 RTMP 视频流转换为 FLV 格式,以便在浏览器中播放。它为实时视频监控、直播和视频流处理提供了一个高效、稳定且易于集成的解决方案。
|
||||||
|
|
||||||
极速开始
|
### 为什么选择 Easy-FLV?
|
||||||
-------------------------------------
|
- **高效转换**:快速将视频流转换为 FLV 格式,无需复杂配置。
|
||||||
以下例子基于Spring Boot
|
- **易于集成**:作为 Spring Boot Starter 使用,轻松集成到任何 Java 项目。
|
||||||
|
- **现代浏览器支持**:支持所有主流浏览器,无需额外插件。
|
||||||
|
- **实时流处理**:适用于实时视频流的转换,如安防监控和直播。
|
||||||
|
|
||||||
### 第一步:添加Maven依赖
|
## 📄 效果图
|
||||||
|
以下是 Easy-FLV 在行动的效果图:
|
||||||
|
|
||||||
直接添加以下maven依赖即可
|

|
||||||
|

|
||||||
|
|
||||||
|
## 🚀 快速开始
|
||||||
|
|
||||||
|
### 添加 Maven 依赖
|
||||||
|
在你的 Spring Boot 项目中,添加以下 Maven 依赖:
|
||||||
|
|
||||||
```xml
|
```xml
|
||||||
<dependency>
|
<dependency>
|
||||||
@ -19,41 +34,58 @@ rtsp、rtmp流地址转换成flv浏览器播放
|
|||||||
<version>1.5.9.1</version>
|
<version>1.5.9.1</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
```
|
```
|
||||||
### 第二步:实现interface
|
|
||||||
数据库里面存储要播放的rtsp、rtmp流地址和自定义的通道号 实现类中通过通道号查询出地址<br>
|
### 实现接口
|
||||||
|
创建一个服务类来实现 `IOpenFLVService` 接口,并提供流地址:
|
||||||
|
|
||||||
```java
|
```java
|
||||||
@Service
|
@Service
|
||||||
public class RtspDataService implements IOpenFLVService {
|
public class RtspDataService implements IOpenFLVService {
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getUrl(Integer channel) {
|
public String getUrl(Integer channel) {
|
||||||
//todo: 根据自定义的channel获取rtsp视频流地址
|
// 根据 channel 获取 RTSP 视频流地址
|
||||||
return "rtsp://10.11.9.251:554/openUrl/16HV8mA";
|
return "rtsp://10.11.9.251:554/openUrl/16HV8mA";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
### 第三步:配置yml
|
|
||||||
```yml
|
### 配置 YAML
|
||||||
easy.flv.host=http://localhost:8200
|
在 `application.yml` 中配置 Easy-FLV:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
easy:
|
||||||
|
flv:
|
||||||
|
host: http://localhost:8200
|
||||||
```
|
```
|
||||||
### 第四步:实现interface使用
|
|
||||||
|
|
||||||
- 流转换地址:GET http://ip:port/get/flv/hls/stream_{channel}.flv
|
### 使用接口
|
||||||
- 浏览器直接播放测试: GET http://ip:port/flv/hls/stream_{channel}.flv
|
通过以下接口获取转换后的流地址,并在浏览器中播放:
|
||||||
|
|
||||||
### 第五步:不想实现interface使用
|
- 转换地址:`GET http://ip:port/get/flv/hls/stream_{channel}.flv`
|
||||||
原地址:rtsp://XXXXXXXX <br>
|
- 播放地址:`GET http://ip:port/flv/hls/stream_{channel}.flv`
|
||||||
```Java
|
|
||||||
|
### 直接使用
|
||||||
|
如果不使用接口,可以直接编码流地址并转换:
|
||||||
|
|
||||||
|
```java
|
||||||
public static void main(String[] args) throws UnsupportedEncodingException {
|
public static void main(String[] args) throws UnsupportedEncodingException {
|
||||||
|
String url = "rtsp://XXXXXXXX";
|
||||||
String url = "rtsp://XXXXXXXX";
|
String encodedUrl = java.net.URLEncoder.encode(url, "UTF-8");
|
||||||
String encodedUrl = java.net.URLEncoder.encode(url, "UTF-8");
|
System.out.println("Encoded Stream URL: " + encodedUrl);
|
||||||
System.out.println("编码:" + encodedUrl);
|
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
- 流转换地址:GET http://ip:port/get/flv/hls/stream?url=编码后的地址
|
|
||||||
- 浏览器直接播放测试: GET http://ip:port/flv/hls/stream?url=编码后的地址
|
|
||||||
|
|
||||||

|
- 转换地址:`GET http://ip:port/get/flv/hls/stream?url=编码后的地址`
|
||||||

|
- 播放地址:`GET http://ip:port/flv/hls/stream?url=编码后的地址`
|
||||||
|
|
||||||
|
## 🛠️ 贡献
|
||||||
|
我们欢迎任何形式的贡献,包括但不限于报告 bug、提交修复、添加新功能、改进文档等。
|
||||||
|
|
||||||
|
## 📄 许可证
|
||||||
|
Easy-FLV 根据 [Apache License 2.0](LICENSE) 发布。
|
||||||
|
|
||||||
|
## 📧 联系
|
||||||
|
- Email: [javpower@163.com](mailto:your-email@example.com)
|
||||||
|
- GitHub: [https://github.com/javpower/easy-flv](https://github.com/javpower/easy-flv)
|
||||||
|
- Gitee: [https://gitee.com/giteeClass/easy-flv](https://gitee.com/giteeClass/easy-flv)
|
||||||
|
Loading…
Reference in New Issue
Block a user