8148 8168 中移植live55 出现except rtsp 中途莫名的断流
在解码中,接了浙江宇视的ipc相机,解码一般就挂了,vlc 也是中途断流.费解?
vlc异常信息如下:
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
direct3d warning: trying surface pixel format: YV12
main error: Failed to resize display
main error: ES_OUT_SET_(GROUP_)PCR is called too late (pts_delay increased to 600 ms)
main error: ES_OUT_RESET_PCR called
live555 warning: no data received in 10s, eof ?
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
packetizer_h264 warning: waiting for SPS/PPS
direct3d warning: trying surface pixel format: YV12
main error: Failed to resize display
main error: ES_OUT_SET_(GROUP_)PCR is called too late (pts_delay increased to 600 ms)
main error: ES_OUT_RESET_PCR called
live555 warning: no data received in 10s, eof ?
相机类型型号:
http://www.uniview.com/Products/Cameras/Box/#~series0
百度了下,网友中有分析说是两个方面的问题,1pts 解码显示太慢,2是两系统时钟突变时间戳对不上号.我猜,呵呵,有可能是加了私有协议
更新:后面和常熟的顾哥网友聊聊发现他也遇到过类似情况,也还没解决,有两种情况一个是有些相机确实会断流,另外一种情况是live555里面貌似有bug 导致teardown
rtsp的 默认端口地址是:
address = *(addresses.firstAddress());
portNum = 554; // default value
2015-1-7 貌似有网友出现过这种情况:
在基于TI DM8168 平台上移植live555 进行视频直播,DM8168采集的后的图像,经M3_video编码为H264视频流(编码后也是一帧一帧的数据),碰到以下问题:
(1): 问题:
用VLC作为RTSP客户端连接DM8168, 只能播放开始几帧,之后画面变乱,并无法播放;
(2): 原因:
H264编码后的帧只有第一帧是IDR帧,之后没有IDR帧.
(3): 解决办法:
修改DM8168建立encode link时的参数,以便周期的产生IDR帧:
- encPrm.chCreateParams.defaultDynamicParams.intraFrameInterval = 25;
- encPrm.chCreateParams.encodingPreset = XDM_USER_DEFINED;
复制代码
(1): 问题
用科达NVR作为客户端连接DM8168,发现NVR的视频画面和录像会出现停止,并且提示“前端
掉线”的告警,过了1分钟后又开始正常显示和录像.
(2): 原因
在liveMedia/RTSPServer.cpp中将DEBUG宏打开,跟踪NVR整个连接过程,结果发现如下信息:
- RTSP client session (id "555C5F62", stream name "id1") has timed out (due to inactivity)
复制代码
而正常的连接打印为:
- RTSP client session (id "023C11D5", stream name "id1"): Liveness indication
- RTSP client session (id "023C11D5", stream name "id1"): Liveness indication
复制代码
意思就是一旦RTSP的客户端连接成功后,需要周期的想服务端发送心跳包,如果超过某个设定的时间,
RTSP 服务端则会主动关闭这个客户端的连接,因此导致科达的NVR被关闭,之后又重新连接,因此导致
视频显示和画面中断又继续。
(3): 解决办法:
调整RTSP服务端的超时时间值:fReclamationTestSeconds,而这个值在
liveMedia/include/RTSPServer.hh有初始值:
- static RTSPServer* createNew(UsageEnvironment& env, Port ourPort = 554,
- UserAuthenticationDatabase* authDatabase = NULL,
- unsigned reclamationTestSeconds = 65);
复制代码
在构造函数createNew的实现中,在初始化参数列表亦可以进行修改,
- RTSPServer::RTSPServer(UsageEnvironment& env,
- int ourSocket, Port ourPort,
- UserAuthenticationDatabase* authDatabase,
- unsigned reclamationTestSeconds): Medium(env), ............... fReclamationTestSeconds(reclamationTestSeconds)
复制代码
因此,在自己的应用程序创建 RTSPServer的时候,修改这个值:
- // Create the RTSP server:
- RTSPServer* rtspServer = RTSPServer::createNew(*env, 8554, authDB, 100);
复制代码
http://kuafu80.blog.163.com/blog/static/122647180201391193917936/
http://www.asmag.com.cn/test/show/69661.html
http://bbs.csdn.net/topics/390698320
http://www.gzlilin.com.cn/article.aspx?a=839
http://www.asmag.com.cn/test/show/69661.html
问题还没解决!!!
8148 8168 中移植live55 出现except rtsp 中途莫名的断流的更多相关文章
- zju(11)在IAR中移植ucos到msp430
准备材料 1.在TI官网上下载430的固件库,我用的是msp430f5528的板子,下载的是F5xx_F6xx_Core_Lib 地址http://www.ti.com/tool/msp-exp430 ...
- 从MSSQL server 2005中移植数据到Oracle 10g
body, p, th, td, li, ul, ol, h1, h2, h3, h4, h5, h6, pre { font-family: simsun; line-height: 1.4; } ...
- 在嵌入式Linux系统(OK6410)中移植Boa 服务器
OK6410的Boa服务器移植: <一> Boa的编译 1. 从 www.boa.org 下载 Boa 服务器的最新版:boa-0.94.13.tar.gz. 2. 解压:tar xzf ...
- Linux2.6.32内核笔记(5)在应用程序中移植使用内核链表【转】
转自:http://blog.csdn.net/Deep_l_zh/article/details/48392935 版权声明:本文为博主原创文章,未经博主允许不得转载. 摘要:将内核链表移植到应用程 ...
- 在IAR(EWARM)中移植STM32固件库
一.移植环境说明 (1).win10系统 (2).IAR(EWARM)7.7 (3).STM32标准固件库3.5.0 http://www.st.com/content/st_com/en/produ ...
- 向tiny6410中移植中移植linux-4.5.1内核(最新)
下载linux-4.5.1.tar.gz 解压在任意目录下.我解压在/home/tiny6410/ # tar xvzf linux-4.5.1.tar.gz # cd linux-4.5.1/ 修改 ...
- 嵌入式开发之davinci---DM8168 8127 8148 HDVPSS中的一些英文缩写解释
BLEND:Alpha blends input with the graphics.将输入的视频与图形做Alpha融合. CPROC:Color Processing.颜色处理.如动态对比度增强.饱 ...
- 关于DM8168中移植算法速度慢、效率低的新发现
有不少的朋友,特别是刚刚接触DSP的朋友.基于DVRRDK编写C代码发现执行速度特别慢,我在上面简单的对每一个像素的UV分量赋值=0x80,这样就成了灰度图像.对1080P图像进行操作,发现处理每帧要 ...
- 嵌入式开发之davinci---8148/8127/8168 中dsp c674的浮点和定点兼容
c674: 是c67(浮点)+c64(定点) 兼容的 http://processors.wiki.ti.com/index.php/-mv_option_to_use_with_the_C674x ...
随机推荐
- JAVA常见算法题(五)
package com.xiaowu.demo; /** * 利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示. * * * @ ...
- squid 访问日志记录
squid日志记录在squid.conf 也可记录.并且squid日志可以不记录静态项 在squid.conf 加入 (1)access_log /var/log/squid/access.log ...
- EffectiveJava(15)强化对象和域的不可变性
概念: 不可变类是其实例不能被修改的类,不可变类比可变类更加易于设计 实现和使用.它们不容易出错,而且更加安全. 优点 1.不可变对象只有创建时状态. 2.不可变对象本质上是线程安全的,它们不要求同步 ...
- 持久化配置管理 diamond 使用简介
本次为大家介绍diamond的概况和快速使用. 一.概况 diamond是淘宝内部使用的一个管理持久配置的系统,它的特点是简单.可靠.易用,目前淘宝内部绝大多数系统的配置,由diamond来进行统一管 ...
- Python——os.path.dirname(__file__) 与 os.path.join(str,str)
Python os.path.dirname(__file__) Python os.path.join(str,str) (1).当"print os.path.dirname(__f ...
- 效果超赞的基于js的chat组件和图形动画组件
chat组件的地址是:http://ecomfe.github.io/echarts/doc/doc.html 图像动画组件的地址是:http://ecomfe.github.io/zrender/i ...
- Maven 缺省内置变量
1.${project.build.directory} 构建目录,缺省为target 2.${project.build.outputDirectory} 构建过程输出目录,缺省为target/cl ...
- JavaScript匿名函数与托付
<1> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <!-- C#匿名函数--& ...
- MyISAM和InnoDB存储引擎的差别
1.MyISAM不支持事务处理等高级处理,而InnoDB支持. 2.MyISAM强调的是性能,速度更快,而InnoDB提供事务支持以及外键等高级数据库功能. 3.MyISAM读性能比InnoDB强非常 ...
- centos7 安装docker后启动报错
启动docker $ sudo systemctl start docker 报错. 查看状态: $ systemctl status docker.service -l 加 -l 有的行信息很长 ...