首页
学习
活动
专区
圈层
工具
发布

排查rtmp协议推流时握手bug

概况 转推流程序的过程:从一个观看地址拉流,然后推流到另一个推流地址。主要用于cdn之间转推,目前市面上大多数cdn厂商都愿意不支持动态转推,因此只能通过转推流程序进行转推。...,第二个链接handshake.h中的代码是推流地址中有加密串的情况下的握手过程代码。...因此obs studio还是能推流成功。相对应的在我们的转推流程序中,需要针对这个情况不进行强认证,删除掉匹配的操作即可。...抓包分析 以微赞和网宿为例 obs推流网宿握手成功的包点此下载 obs推流微赞握手成功的包点此下载 网宿推流没有走加密流程,S2和C1匹配,具体数据包截图如下: ?...至此,转推流成功,示例图如下: ? 结论 虽然Adobe公司自己出的rtmp协议不是iso标准的,但是你们这些公司好歹也尽量按照规定来啊,贼坑。

2.3K21
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【Android RTMP】RTMPDump 推流过程 ( 独立线程推流 | 创建推流器 | 初始化操作 | 设置推流地址 | 启用写出 | 连接 RTMP 服务器 | 发送 RTMP 数据包 )

    文章目录 一、 Java 层传入的 RTMP 推流地址处理 二、 RTMPDump 推流线程 三、 创建 RTMP 对象 四、 初始化 RTMP 对象 五、 设置 RTMP 推流地址 六、 启用 RTMP...Java 传递字符串数据到 JNI : 启动推流时 , Java 层会将 RTMP 推流地址传递给 JNI ; 2 . jstring 类型转为 char* 类型 : 将 Java 字符串转为 C 字符串...独立线程推流 : RTMP 推流操作需要在一个独立的线程中完成 , 涉及到网络的操作都是耗时操作 , 在 Android 中都要在线程中执行 ; 2 ....初始化 RTMP RTMP_Init(rtmp); // 设置超时时间 5 秒 rtmp->Link.timeout = 5; 五、 设置 RTMP 推流地址 ---- 设置 RTMP 推流地址 , 如果设置失败..., 直接退出推流操作 ; 该地址就是 Java 层传给 JNI 的字符串 , 刚获取时是局部引用变量 , 将其拷贝到了堆内存中 , 才可以在推流线程中使用 ; // 3.

    3.7K20

    EasyCVR使用RTMP推流时不显示界面如何解决?

    对外可分发多格式的视频流,包括RTSP、FLV、HLS、WebRTC等。...有用户反馈在现场使用RTMP协议进行推流时不能正常显示设备画面,为提高客户使用体验感,优化平台功能,工作人员立即开展协助排查。...首先在平台中新建推流通道,获取到推流地址后将地址配置的设备的RTMP推流至界面中,一般情况下如此处理即可看到设备视频。然而现场部署完成后发现并没有视频推流到平台中,画面仍然显示白屏页面。...通过排查发现现场使用的为公网地址,但在配置中心没有配置公网ip,导致在使用推流的过程中设备一直是往内网ip进行推流,所以平台一直没有接收到视频流。需要在配置中心进行更改。...随着AI智能分析技术的广泛应用,我们也积极研发了相关技术与视频平台的融合。

    90130

    使用腾讯云云直播推流到抖音,如何获取抖音的推流地址和推流码

    方案1、获取抖音的推流地址和推流码,云直播官网是没有对应的文档的。可以在抖音平台搜索获取抖音推流地址推流码等关键词。即可搜索相关视频学习如何获取。...方案2、下载火绒应用商店,搜索推拉流小助手,安装应用,打开直播伴侣开启直播,通过改工具即可获取抖音的推流地址和推流码。注意:安装使用该应用需要填写用户账号和密码,自己填写记住即可。...如何使用云直播推流到抖音,看我的其他的文档。...注意:本文的操作方案和步骤,均参考公网,该推拉流助手应用的使用方式也是本文作者从公网处了解到的,特此记录分享,使用该推拉流助手应用产生的一切问题本文作者概不负责。...另外:使用腾讯云云直播的相关服务可能会产生对应的计费,请根据自己的实际业务需求,进行相关的评估,使用产生的计费自行承担,本文作者概不负责。

    2K00

    Web网页直播点播RTMP推流平台EasyDSS推流直播失败的原因分析

    Web网页直播点播RTMP推流平台EasyDSS互联网视频云服务提供一站式的转码、点播、直播、录像、检索、时移回放服务,极大地简化了开发和集成的工作,配合OBS、EasyRTMP等直播推流工具以及EasyPlayer...近期有客户向我们咨询,在设备中设置了推流地址,但是页面却没有播放成功。TSINGSEE青犀视频技术团队第一时间进行了排查。...image.png 我们进入客户的EasyDSS平台后,发现没有显示直播的地方,这也就表明推流并没有成功。...客户的推流地址是:rtmp://rtmp.ccmapp.cn:10035/hls/GGZcTcXMR?...sign=GGZ5ocuGgz 我们仔细一看,猜测推流失败的主要原因,是客户的TCP 10035端口没有对外开通。只需要将该端口对外开通,就可以成功推流直播了。

    5.3K20

    视频协议学习:推流拉流都擅长的 RTMP

    创建的每个块都有一个唯一 ID 对其进行关联,这个 ID 叫做 chunk stream ID (块流 ID)。这些块通过网络进行传输。传递时,每个块必须被完全发送才可以发送下一块。...此字段根据块流ID的不同,长度可能为1,2或3字节。在实现协议时,此字段应该使用可以容纳ID的最小长度。此协议支持最多65597个流,ID从3到65599。0,1,2这三个为保留ID。...当块的基本头长度为2字节时,第3-8比特取值为0。当长度为3字节时,第3-8比特取值为1。块流ID为2时保留作为低级协议的控制消息和命令消息。...以下是基本头的每个占位介绍: 3.3分块例子 四、交互过程 4.1推流 !...4.2拉流 五、实践观察 5.1rtmp推拉流环境搭建 参考视频协议学习--HLS的环境部署 5.2rtmp推拉流抓包 5.2.1主要的推流包介绍 5.2.2主要的拉流包介绍 拉流的其他流程与推流类似

    11K32

    简单red5+obs推流实现直播系统开发,具体设置介绍

    前言:随便搞搞,先放一张效果图, ​浏览器是客户端,obs是本屏幕,来源可以添加摄像头,这里我没有就不说了, 工具:windows7上面装的是obs + red5实在我的企鹅云学生机上面 obs安装这里就不一一描述了...,很多,还有类似插件盒子,不过一般是主播门使用的 咱们只会推流就可以了 也就是设定,里面的广播设定,然后就是 ​ 其中url如果red5部署在本地的同学就写本地127.0.0.1,串码暂且abc后面要用到...讲道理下载最新版的吧,我的jdk也是1.8的。.../楼下图 4,设置为可执行 cd /usr/local/red5 chmod +x *.sh 5,安装 red5.sh 6,编辑启动脚本 vi /etc/init.d/red5 7,把下面写进去...echo $"Usage: $0 {start|stop|restart|status}" 50 RETVAL=1 51 esac 52 53 exit $RETVAL ​ 8,设置为本地服务启动

    5.9K10

    基于Kotlin的开源Android推流器StreamPack

    《FFmpeg开发实战:从零基础到短视频上线》一书的“10.2 FFmpeg推流和拉流”提到直播行业存在RTSP和RTMP两种常见的流媒体协议。...因为SRT是个较新的直播协议,所以手机端支持SRT的开源框架比较稀有,比如本文介绍的StreamPack就是屈指可数的SRT开源推流APP。...服务器信息,点击界面左上角的三点设置按钮,打开服务器设置页面如下所示。...由于视频推流服务服务端配合,因此按照《FFmpeg开发实战:从零基础到短视频上线》一书的“10.2.2 FFmpeg向网络推流”说明,在电脑上启动MediaMTX,并通过命令“ipconfig /all...确保手机和电脑连接了同一个WiFi,再点击StreamPack界面下方的START LIVE按钮,StreamPack就把摄像头采集到的视频数据向MediaMTX推流,开始推流的预览界面如下图所示。

    36210

    如何通过ffmpeg 实现实时推流和拉流保存的功能

    原则上,每个输入/输出“文件”都可以包含任意数量的不同类型的视频流(视频/音频/字幕/附件/数据)。 流的数量和/或类型是由容器格式来限制。...要引用选项中的输入文件,您必须使用它们的索引(从 0 开始)。 例如。 第一个输入文件是 0,第二个输入文件是 1,等等。类似地,文件内的流被它们的索引引用。...例如 2:3 是指第三个输入文件中的第四个流。...rtmp://server/live/streamName视频流保存为dump.flv文件 实时推流命令 ffmpeg -framerate 15 -f avfoundation -i “1” -s 1280x720...在部分常见的应用场景中,由于ffmpeg的领先性、包容性,并且还具有高度的便携性,很多客户都会使用ffmpeg来进行视频的处理,通过ffmpeg推流到视频服务器,如果大家对ffmpeg推流比较感兴趣,也可以和我们交流

    7.5K20

    JavaCV的摄像头实战之五:推流

    这就涉及到了推流,如下图,基于JavaCV的应用将摄像头的视频帧推送到媒体服务器,观看者用播放器软件远程连接媒体服务器,就能观看摄像头的内容了: 今天的主要工作就是开发上图的JavaCV应用,然后验证功能是否正常...,这是AbstractCameraApplication的子类,其代码很简单,接下来按上图顺序依次说明 《JavaCV的摄像头实战之一:基础》中已部署好了媒体服务器,这里定义一个成员变量保存媒体服务器的推流地址...int getInterval() { // 相比本地预览,推流时两帧间隔时间更短 return super.getInterval()/4; } 至此,推流功能已开发完成...().action(600); } 运行main方法,等到控制台输出下图红框的内容时,表示已经开始推流: 用本机或局域网内另一台电脑,用VLC软件打开刚才推流的地址rtmp://192.168.50.43...:21935/hls/camera,稍等几秒钟后开始正常播放: 还可用VLC的工具查看编码信息: 至此,咱们已完成了推流功能,验证远程播放也正常,得益于JavaCV的强大,整个过程是如此的轻松愉快,

    1.9K70

    如何将推流设备的视频通过RTMP协议成功推流到EasyCVR平台?

    EasyCVR平台支持设备通过国标GB28181、RTMP、RTSP/Onvif、海康SDK、大华SDK、Ehome等协议接入,对外可分RTSP、RTMP、FLV、HLS、WebRTC等格式的视频流。...今天和大家分享一下如何将推流设备通过RTMP推流,将视频流推送到EasyCVR平台。...操作步骤及过程中遇到的问题解决方法如下:1)将OBS的推流地址设置为EasyCVR平台的推流地址:2)推流成功后,播放正常:3)若通道禁用导致推流中断,再次重新启用通道重新推流,这时出现通道无法上线的情况...:4)此时需要修改配置文件tsingsee.ini,将端口改为29350,http_notify的enable=true,如图:5)重新启动服务,此时通道上线,推流播放正常。...关于RTMP推流的相关技术性文章,我们在博客中也分享过,感兴趣的用户可以翻阅往期文章进行了解。若有用户遇到无法解决的问题,也可以联系我们协助排查。

    1.5K10

    liteavsdk的推流事件和播放事件的事件码

    推流和播放的事件码我们通常通过这个来判断当前的流的状态 推流事件列表 code TXLiveSDKEventDef常量 含义说明 1001 PUSH_EVT_CONNECT_SUCC 已经连接推流服务器...编码器启动 1018 PUSH_EVT_ROOM_IN 已经在webrtc房间里面,进房成功后通知 1019 PUSH_EVT_ROOM_OUT 不在webrtc房间里面,进房失败或者中途退出房间时通知...,更多重试请自行重启推流 -1308 PUSH_ERR_AUDIO_SYSTEM_NOT_WORK 系统异常,录音失败 1101 PUSH_WARNING_NET_BUSY 网络状况不佳:上行带宽太小,...服务器连接失败 3003 PUSH_WARNING_SHAKE_FAIL RTMP服务器握手失败 3004 PUSH_WARNING_SERVER_DISCONNECT RTMP服务器主动断开,请检查推流地址的合法性或防盗链有效期...3005 PUSH_WARNING_READ_WRITE_FAIL RTMP 读/写失败,将会断开连接 100001 INNER_EVT_SET_BITRATE_4_SCREEN_CAPTURE 动态设置录屏编码码率

    2.7K40

    小程序旋转手机推流,远端拉流画面被裁剪的问题

    由于重力感应的影响,Android小程序推流旋转手机,远端拉到的画面被裁剪;小程序没有开放重力感应的API,只能通过如下方式规避: 目前现象: 1、Android手机横屏拍摄,如果不设置横屏推流,PC...拉流画面则不完整;竖屏拍摄则需要设置竖屏推流; 2、iOS横屏拍摄,不设置横屏分辨率,PC拉流画面完整。...设置横屏分辨率,画面不完整; 总结:小程序横屏拍摄,如果需要拉流端观看画面完整,Android需要设置横屏分辨率,iOS不用设置;小程序竖屏排查则需要设置竖屏推流; Android手机横屏,远端拉到的画面...videoOrientation设置为horizontal推流; 手机竖屏时就设置videoOrientation设置为vertica推流; ②如果当前是ios设备,就设置videoOrientation...设置为vertica推流; 这样可以保证远端拉流画面不被裁剪 代码段如下 const that = this wx.getSystemInfo({ success (res

    1.4K20

    FFmpeg开发笔记(三十八)APP如何访问SRS推流的RTMP直播地址

    有关SRS的编译、安装与启动过程参见之前的文章《Linux环境安装SRS实现视频推流》。...注意,使用ffmpeg命令把视频文件推流给SRS时,要注意区分FFmpeg的版本,因为FFmpeg从6.1开始才给RTMP协议支持HEVC、VP9、AV1这三种视频编码器,所以FFmpeg 6.0和更早的版本只能以...三、调整SRS的配置文件通过小程序或者ExoPlayer播放RTMP直播流时,可能出现播放界面黑屏,但有声音传出的情况。这是因为SRS默认没有缓存关键帧,使得拉流一开始没找到关键帧就黑屏了。...解决办法是修改SRS配置,指定开启缓存GOP,这样客户端在拉流时总能找到已缓存的关键帧。...打开srs安装目录下的conf/srs.conf,在“vhost __defaultVhost__”节点内部添加下面一行:gop_cache   on;该行配置的作用是开启缓存关键帧,实际应用记得设置为

    1.3K10

    开发Rtmp推流端开发库的几种选择方案

    本文转载自博客园博主rtc8_com的博文:开发Rtmp推流端开发库的几种选择方案 要开发一个Rtmp协议的推流工具,目前用以下几种实现方案: 1、使用ffmpeg方案,ffmpeg本身功能非常丰富,...要使用ffmpeg推流,编译时一定要把x264,libfaac,rtmp协议打进去,编译出来的so,dll大概2M多一点。...ffmpeg推流方案实现起来开发速度比较快,缺点就是好多地方都是黑盒,细节不好控制。 2、使用x264+libfaac+librtmp方案,使用这个方案,自己要实现的的地方比较多。...x264,faac编码参数都可以自己定制,时间戳,推流缓冲区控制等细节都要完全自己实现。难度比上一种要大一点,但是自己可以控制的细节比较多,比较灵活。...我们在使用过程中发现srs-rtmp比librtmp接口封装的更合理点,而且srs-rtmp库只是一个单文件,完全可以放到自己的工种中去,不用单独把rtmp库编译成一个静态库或者动态库。

    1.3K40

    关于直播卖货小程序源码推流功能的实现

    在直播卖货小程序源码中,含有直播功能的。因此,是需要通过微信小程序后台配置推流接口的,那么具体该如何实现呢?下面小编将结合代码,为大家具体讲解下。...1、首先需要登录微信小程序后台,点击“开发-》接口设置”,开启实时录制音视频流权限。...2、在小程序wxml页面使用live-pusher标签进行推流,目前小程序推流地址只支持rtmp格式,点击推流按钮之后进行推流。... 3、js里面现在onready里面实例化推流,并且进行推流预览,然后点击推流按钮进行推流,监听页面卸载,在页面卸载时停止推流。...e.detail.code == 1007){ //首帧画面采集完成 }else if(e.detail.code == 1008){ //编码器启动 }   }, }) 以上就是直播卖货小程序源码中,关于推流的实现方法

    1.5K31

    简单的 H5 视频推流解决方案

    作者:周超 导语 随着直播平台爆发式增长,直播平台从 PC 端转战移动端,紧跟着直播的潮流,自己学习实现了一套简单的 H5 视频推流的解决方案,下面就给小伙伴们分享一下自己学习过程中的经验。...hls_playlist_length 60s; #总共可以回看的事件,这里设置的是1分钟。 #hls_continuous on; #连续模式。...详细介绍可以参考:《【经验分享】音频、视频利器——FFmpeg》 模拟推流 先来看一个简单的直播推流流程图 : [1497340227199_939_1497340227139.png] 用 flv 视频文件模拟...RTMP 视频流: # ffmpeg -re -i test.flv -vcodec copy -acodec copy -f flv rtmp://ip:1935/myapp/mystream...    总结 根据以上的流程,简单的实现了一个视频直播的流服务器来推送直播流,并且可以在 H5 页面上播放视频流。有兴趣的小伙伴们也可以尝试一下~

    10.3K124
    领券