ffmpeg推送RTSP直播流到EasyDarwin报错问题的修复
在之前的博客《ffmpeg推送,EasyDarwin转发,vlc播放 实现整个RTSP直播》中,我们介绍了如何采用ffmpeg进行RTSP推送,实现EasyDarwin直播分发的功能,近期开源社区的开发者反馈,在华为云这样的虚拟云网络中,出现ffmpeg推送报错的问题:
具体问题的原因:
在EasyDarwin中,有IP过滤功能,只有在监听列表中的IP地址才会被放行:
bool SourceInfo::IsReflectableIPAddr(UInt32 inIPAddr)
{
if (SocketUtils::IsMulticastIPAddr(inIPAddr) || SocketUtils::IsLocalIPAddr(inIPAddr))
return true;
return false;
}
实际中,我们大量的服务器是类似于华为云这样的通过端口映射发布到公网的服务器主机,在监听的IP地址中,没有服务器发布在公网的地址,实际这里的过滤可以不用,不影响程序的功能性和稳定性,可以去掉,使得程序更加兼容和灵活:
bool SourceInfo::IsReflectableIPAddr(UInt32 inIPAddr)
{
//fix ffmpeg push rtsp stream setup error
return true;
if (SocketUtils::IsMulticastIPAddr(inIPAddr) || SocketUtils::IsLocalIPAddr(inIPAddr))
return true;
return false;
}
关注EasyDarwin项目
EasyDarwin开源项目:https://github.com/EasyDarwin
获取更多信息
Copyright © EasyDarwin.org 2012-2017

ffmpeg推送RTSP直播流到EasyDarwin报错问题的修复的更多相关文章
- Git - Git推送本地分支到远程分支报错(! [rejected] non-fast-forward)的解决办法
一般都是冲突造成的,解决方案执行如下命令(dev为分支名称): git fetch origin dev #获取远程 dev 分支的修改 git merge origin dev #合并 ...
- Android使用FFMpeg实现推送视频直播流到服务器
背景 在过去的2015年中,视频直播页的新宠无疑是户外直播.随着4G网络的普及和覆盖率的提升,主播可以在户外通过手机进行直播.而观众也愿意为这种可以足不出户而观天下事的服务买单.基于这样的背景,本文主 ...
- docker推送镜像到docker本地仓库报错:http: server gave HTTP response to HTTPS client
因为Docker从1.3.X之后,与docker registry交互默认使用的是https,然而此处搭建的私有仓库只提供http服务,所以当与私有仓库交互时就会报上面的错误. 解决办法: vim / ...
- ffmpeg推送,EasyDarwin转发,vlc播放 实现整个RTSP直播
部署EasyDarwin流媒体服务器 ffmpeg推送摄像机视频到EasyDarwin VLC播放 第一步:部署EasyDarwin流媒体服务器 EasyDarwin的部署过程我们就不再赘述了,在Ea ...
- ffmpeg推送直播流的技术进展
首先安装好NGINX并打开服务 然后安装好ffmpeg 然后参考:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=2879051 ...
- 调用Live555接收RTSP直播流,转换为Http Live Streaming(iOS直播)协议
Live555接收RTSP直播流,转换Http Live Streaming(iOS直播)协议 RTSP协议也是广泛使用的直播/点播流媒体协议,之前实现过一个通过live555接收RTSP协议,然后转 ...
- ffmpeg 推送、保存rtmp 流命令
1.将文件当做直播送至live ffmpeg -re -i localFile.mp4 -c copy -f flv rtmp://server/live/streamName 2.将直播媒体保存至本 ...
- nginx开发(四)调用ffmpeg,搭建rtmp直播流。
1: 修改conf文件,配置rtmp直播 打开usr/local/nginx/conf/nginx.conf,添加红色内容: rtmp {#rtmp点播配置 server { li ...
- windows ffmpeg 推送摄像头数据到rtmp服务
文本主要讲述windows系统下如何利用ffmpeg获取摄像机流并推送到rtmp服务,命令的用法前文 中有讲到过,这次是通过代码来实现.实现该项功能的基本流程如下: 图1 ffmpeg推流流程图 较前 ...
随机推荐
- java多线程总结(二)
线程一般有6个状态: 新建状态:NEW 可运行状态:RUNNABLE 休眠状态:TIMED_WAITING 等待状态:WAITING 阻塞状态:BLOCKED 终止状态“TERMINATED 当我们使 ...
- s5_day14作业
import re # 1. 匹配一段文本中的每行的邮箱 # ret=re.findall('\w+@\w+\.com','10000@qq.com,qwe48645313@163.com') # p ...
- 【工具】Notepad++ 上,代码格式化工具
一.概述 Windows 自带的记事本功能太过简单,因此我常常使用 Notepad++ 查看文本.Notepad++ 支持插件功能,最近需要使用 Notepad++ 查看 Html 代码,而这些代码多 ...
- cdoj1341卿学姐与城堡的墙
地址:http://acm.uestc.edu.cn/#/problem/show/1341 题目: 卿学姐与城堡的墙 Time Limit: 2000/1000MS (Java/Others) ...
- C++白盒测试最佳实践课程,3个免费名额火热申请中,31号前截止申请...
C++白盒测试最佳实践课程,3个免费名额火热申请中,31号前截止申请...http://automationqa.com/forum.php?mod=viewthread&tid=2561&a ...
- SpringBoot之Servlet、Filter、Listener配置
在SpringBoot中是不需要配置web.xml的,那么原来在web.xml中配置的Servlet.Filter.Listener现在怎么弄呢? SpringBoot提供了三种Bean Filter ...
- mysql 进阶查询(学习笔记)
学习笔记,来源:实验楼 ,链接: https://www.shiyanlou.com/courses/9 一.日期计算: 1.要想确定每个宠物有多大,可以使用函数TIMESTAMPDIFF()计算 ...
- java中线程状态-死亡
线程死亡: 线程会以如下3种方式结束,结束后就处于死亡状态. 1.run()或call()方法执行完成,线程正常结束. 2.线程抛出一个未捕获的Exception或Error 3.直接调用该线程的st ...
- JavaScript中this关键字的使用比较
JavaScript中this关键字的使用比较 this关键字在JavaScript中,用的不能说比较多,而是非常多.那么熟悉this关键字的各种用法则显得非常关键. this有时候就是我们经常说的上 ...
- 探秘DPDK Virtio的不同路径
什么是Vhost/Virtio Vhost/Virtio是一种半虚拟化的设备抽象接口规范, 在Qemu和KVM中的得到了广泛的应用,在客户机操作系统中实现的前端驱动程序一般直接叫Virtio, 在宿主 ...