Chinaunix首页 | 论坛 | 博客
  • 博客访问: 56353
  • 博文数量: 22
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 232
  • 用 户 组: 普通用户
  • 注册时间: 2020-11-30 14:45
个人简介

专注流媒体、视频物联网、云计算、大数据开发

文章分类

全部博文(22)

文章存档

2021年(18)

2020年(4)

我的朋友

分类: Java

2021-05-17 16:42:58

目前受大众广泛使用的视频流拉转推工具应该是FFMPEG,TSINGEE青犀视频也有自己的拉转推平台,分别为EasyRTMPLive和EasyRTSPLive,两者都可以拉RTSP流转RTMP流。


这几天遇到一个客户反馈说用FFMPEG进行拉IPC的流然后推给EasyDSS流媒体服务器的时候,发现播放画面不完整,有花屏的情况。

带着这个情况,我们做了如下实验:

1、FFMPEG拉RTSP流推RTMP的命令如下: ffmpeg -re -i rtsp://admin:a1234567@192.168.77.223:554/Streaming/Channels/102 -vcodec copy -acodec copy -f flv -y rtmp://demo.easydss.com:10035/hls/Seven-02?sign=BsBncNCMg


2、进入EasyDSS看下播放效果,确实有花屏的情况


根据上诉的现象我们分析花屏可能的情况如下:

1、播放端读取缓冲区不够,有时候遇到高清码流,一帧就好几兆,所以缓冲区要足够长,这块可能是播放器的问题;

2、推流端可能丢帧推流,导致播放端关键帧不够。

为证实我们的预判,我们用EasyRTSPLive再做一个实验,EasyRTSPLive是基于LIVE555改造的一个拉转推工具,配置很简单,拿到程序包解压后有个ini配置文件,直接配置RTSP源和RTMP目的地址,然后就可以启动程序。


然后我们在EasyDSS流媒体服务器上再看看播放效果,明显没有花屏。


下面我们对比下,两种方式播放的效果对比如下:


此问题只需在ffmpeg源码udp.c中#define UDP_MAX_PKT_SIZE 65536,修改扩大10倍就可以解决这个问题。

阅读(771) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~