javaCV推rtsp到rtmp资料整理

版权声明:eguid新博客地址:https://blog.eguid.cc;温馨提示:本博客所有原创文章均采用知识共享署名-相同方式共享 3.0 中国大陆许可协议进行许可。如有转载请注明出处和作者名! https://blog.csdn.net/eguid_1/article/details/51725970

 

  • 欢迎大家积极开心的加入讨论群

群号:371249677 (点击这里进群)

一、本地推送端

1、本地:采用javaCV(安卓和java平台推荐javaCV)、ffmpeg、openCV或者jmf可以很方便的获取到本地摄像头流媒体

 

 

 

javaCV系列文章:

 

javacv开发详解之1:调用本机摄像头视频

 

javaCV开发详解之2:推流器实现,推本地摄像头视频到流媒体服务器以及摄像头录制视频功能实现(基于javaCV-FFMPEG、javaCV-openCV)

 

javaCV开发详解之3:收流器实现,录制流媒体服务器的rtsp/rtmp视频文件(基于javaCV-FFMPEG)

 

javaCV开发详解之4:转流器实现(也可作为本地收流器、推流器,新增添加图片及文字水印,视频图像帧保存),实现rtsp/rtmp/本地文件转发到rtmp流媒体服务器(基于javaCV-FFMPEG)

 

javaCV开发详解之5:录制音频(录制麦克风)到本地文件/流媒体服务器(基于javax.sound、javaCV-FFMPEG)

 

javaCV开发详解之6:本地音频(话筒设备)和视频(摄像头)抓取、混合并推送(录制)到服务器(本地)

 

javaCV开发详解之7:让音频转换更加简单,实现通用音频编码格式转换、重采样等音频参数的转换功能(以pcm16le编码的wav转mp3为例)

 

补充篇:

 

音视频编解码问题:javaCV如何快速进行音频预处理和解复用编解码(基于javaCV-FFMPEG)

 

音视频编解码问题:16/24/32位位音频byte[]转换为小端序short[],int[],以byte[]转short[]为例

 

实现给图片增加图片水印或者文字水印(也支持视频图像帧添加水印)

 

2、监控(第三方摄像头):通过设备sdk或者rtsp直播流获取流媒体源

 

二、转流端

直播:通过ffmpeg(推荐),live555将接收rtsp或者字节码流并转为flv格式发布到rtmp流媒体服务器(流媒体服务器必须先建好)

hls原理同上

注意:rtmp只支持flv格式封装的视频流

ffmpeg服务实现方式实例请参考:

http://blog.csdn.net/eguid_1/article/details/51777716

http://blog.csdn.net/eguid_1/article/details/51787646

 

也可以参考javaCV的转流器实现:javaCV开发详解之4:转流器实现,实现rtsp/rtmp/本地文件转发到rtmp服务器  

java封装FFmpeg命令,支持原生ffmpeg全部命令,实现FFmpeg多进程处理与多线程输出控制(开启、关闭、查询),rtsp/rtmp推流、拉流

三、流媒体服务器

目前主流的流媒体服务器有:fms,nginx-rtmp,red5(java),flazr

本地视频:直接通过流媒体服务器解码并推送视频流

直播流:通过开启udp/rtp/rtsp/rtmp/hls等等流媒体服务,从ffmpeg/live555获取推送过来的实时视频流并发布到rtmp/hls直播流并推送(可以边直播边保存)

rtmp和hls这两种是web领域主流的流媒体协议。使用rtp或rtsp协议的一般都是监控。

流媒体协议选择:rtmp基于tcp协议,rtmp能够保持3秒左右延迟。hls是基于http协议,所以实时性特别差,想要用hls保持实时性的就别想了,hls延迟基本超过10秒。

实时性要求特高的,建议使用基于udp协议的一些流媒体协议。

基于tcp和udp两种流媒体协议区别就是tcp会强制同步,udp是数据发出去就不管了。

所以最终的方案就是:强同步但是实时性要求不高用基于tcp协议的,强实时性弱同步就udp。

补充:nginx-rtmp流媒体服务器搭建实例:http://blog.csdn.net/eguid_1/article/details/51749830<

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值