Easy-FLV is a Java library that converts RTSP or RTMP video streams into FLV format for playback in web browsers. It provides an efficient, stable, and easily integrable solution for real-time video monitoring, live streaming, and video stream processing.
- Efficient Conversion: Quickly converts video streams to FLV format with no complex configuration required.
- Easy Integration: Used as a Spring Boot Starter, it can be easily integrated into any Java project.
- Modern Browser Support: Supports all major modern browsers without the need for additional plugins.
- Real-time Stream Processing: Suitable for the conversion of real-time video streams, such as security monitoring and live broadcasting.
Below are screenshots of Easy-FLV in action:
Include the following Maven dependency in your Spring Boot project:
<dependency>
<groupId>io.github.javpower</groupId>
<artifactId>rtsp-converter-flv-spring-boot-starter</artifactId>
<version>1.5.9.1</version>
</dependency>
Create a service class that implements the IOpenFLVService
interface to provide the stream address:
@Service
public class RtspDataService implements IOpenFLVService {
@Override
public String getUrl(Integer channel) {
// Retrieve the RTSP stream address based on the channel
return "rtsp://10.11.9.251:554/openUrl/16HV8mA";
}
}
Configure Easy-FLV in your application.yml
:
easy:
flv:
host: http://localhost:8200
To get the converted stream address and play it in a browser:
- Conversion URL:
GET http://ip:port/get/flv/hls/stream_{channel}.flv
- Direct Browser Playback:
GET http://ip:port/flv/hls/stream_{channel}.flv
If you prefer not to implement an interface, you can directly encode the stream address and convert it:
public static void main(String[] args) throws UnsupportedEncodingException {
String url = "rtsp://XXXXXXXX";
String encodedUrl = java.net.URLEncoder.encode(url, "UTF-8");
System.out.println("Encoded Stream URL: " + encodedUrl);
}
- Conversion URL:
GET http://ip:port/get/flv/hls/stream?url=EncodedAddress
- Direct Browser Playback:
GET http://ip:port/flv/hls/stream?url=EncodedAddress
Contributions of any kind are welcome, including but not limited to reporting bugs, submitting fixes, adding new features, and improving documentation.
Easy-FLV is released under the Apache License 2.0.
- Email: [email protected]
- GitHub: https://github.com/javpower/easy-flv
- Gitee: https://gitee.com/giteeClass/easy-flv