一飞开源
阅读874

[开源]一款Java 实现的 RTSP/RTMP 到 FLV 转换器,易于集成、高效转换

一飞开源,介绍创意、新奇、有趣、实用的开源应用、系统、软件、硬件及技术,一个探索、发现、分享、使用与互动交流的开源技术社区平台。致力于打造活力开源社区,共建开源新生态!

一、开源项目简介

Easy-FLV: Java 实现的 RTSP/RTMP 到 FLV 转换器

Easy-FLV 是一个用 Java 实现的库,它能够将 RTSP 或 RTMP 视频流转换为 FLV 格式,以便在浏览器中播放。它为实时视频监控、直播和视频流处理提供了一个高效、稳定且易于集成的解决方案。

二、开源协议

使用Apache-2.0开源协议

三、界面展示

效果图

以下是 Easy-FLV 在行动的效果图:

图片

图片

四、功能概述

为什么选择 Easy-FLV?

  • 高效转换:快速将视频流转换为 FLV 格式,无需复杂配置。

  • 易于集成:作为 Spring Boot Starter 使用,轻松集成到任何 Java 项目。

  • 现代浏览器支持:支持所有主流浏览器,无需额外插件。

  • 实时流处理:适用于实时视频流的转换,如安防监控和直播。

五、技术选型

快速开始

添加 Maven 依赖

在你的 Spring Boot 项目中,添加以下 Maven 依赖:

<dependency>
    <groupId>io.github.javpower</groupId>
    <artifactId>rtsp-converter-flv-spring-boot-starter</artifactId>
    <version>1.5.9.1</version>
</dependency>

实现接口

创建一个服务类来实现 IOpenFLVService 接口,并提供流地址:

@Service
public class RtspDataService implements IOpenFLVService {

    @Override
    public String getUrl(Integer channel) {
        // 根据 channel 获取 RTSP 视频流地址
        return "rtsp://10.11.9.251:554/openUrl/16HV8mA";
    }
}

配置 YAML

在 application.yml 中配置 Easy-FLV:

easy:
 flv:
 host: http://localhost:8200

使用接口

通过以下接口获取转换后的流地址,并在浏览器中播放:

  • 转换地址:GET http://ip:port/get/flv/hls/stream_{channel}.flv

  • 播放地址:GET http://ip:port/flv/hls/stream_{channel}.flv

直接使用

如果不使用接口,可以直接编码流地址并转换:

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);
}
  • 转换地址:GET http://ip:port/get/flv/hls/stream?url=编码后的地址

  • 播放地址:GET http://ip:port/flv/hls/stream?url=编码后的地址

六、源码地址

源码下载

关注下面的标签,发现更多相似文章

一飞开源
发布了 篇专栏 · 获取点赞 · 获取阅读

评论

查看更多
相关推荐
关于作者
一飞开源
获得点赞 100
文章被阅读 1000
相关文章