longage

longage

0个粉丝

4

问答

0

专栏

0

资料

longage  发布于  2017-03-21 14:47:46
采纳率 0%
4个问答
3387

rstp 做实时视频传输延时很大

 
本帖最后由 longage 于 2017-3-22 09:40 编辑

使用SDK自带的sample_venc 程序获取.264 流后不存储在文件中,而是直接放到管道里,然后将利用live555 testOnDemandRTSPServer的例子作为服务器获取管道的中的流。然后使用客户端 vlc 获取视频。
问题:
用vlc 查看解码情况没有丢帧,但是延时很大有5s。
刚刚接触视频处理,望指教

这是VLC 编码信息截图
我来回答
回答15个
时间排序
认可量排序

pb1005

1个粉丝

7

问答

0

专栏

0

资料

pb1005 2017-03-22 04:05:57
认可0
vlc里把延时设置为零。

yenfuliu

0个粉丝

16

问答

0

专栏

0

资料

yenfuliu 2017-03-22 09:35:39
认可0
  我也跟你一样用testOnDemandRTSPServer传输,延时很大但慢慢会追上来,然后就模糊然后又重联,但使用kmplayer去联就很正常,延时不超过一秒

longage

0个粉丝

4

问答

0

专栏

0

资料

longage 2017-03-22 09:39:41
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=46940&ptid=14600]yenfuliu 发表于 2017-3-22 09:35[/url]
我也跟你一样用testOnDemandRTSPServer传输,延时很大但慢慢会追上来,然后就模糊然后又重联,但使用kmpl ...[/quote]

:'( 我是延时会加大,后再就不再增加了。请问你是用管道的方式获取海思的视频流吗?

JACK_ZHANG

0个粉丝

5

问答

0

专栏

0

资料

JACK_ZHANG 2017-03-22 09:58:52
认可0
你是两个进程?两个进程启动时间不一样,管道里面缓存的数据就不一样,这怎么能保证实时性,
既然确认没问题后,想办法整合到一个进程里面吧

yenfuliu

0个粉丝

16

问答

0

专栏

0

资料

yenfuliu 2017-03-22 10:12:59
认可0
我也是用管道对test.264设fifo,vlc联时会先出现约10秒的延时,然后画面就像快转一样跳动慢慢追上,追上后就卡住约10秒钟又重复之前状况

domenor

0个粉丝

17

问答

0

专栏

1

资料

domenor 2017-03-22 10:17:19
认可0
先启动live555,再启动Sample_venc,调整VLC网络缓存为300ms,试试看

longage

0个粉丝

4

问答

0

专栏

0

资料

longage 2017-03-22 11:06:52
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=46948&ptid=14600]JACK_ZHANG 发表于 2017-3-22 09:58[/url]
你是两个进程?两个进程启动时间不一样,管道里面缓存的数据就不一样,这怎么能保证实时性,
既然确认没问 ...[/quote]

谢谢你的建议
确实存在这个问题。
之前在管道写入的那个程序使用了阻塞模式,知道另一个程序打开写入后才进行视频流写入到管道;但是在VLC显示的时候效果就跟打了马赛克一样,连拍摄的景物静止时也清晰不了。(这个设计下延时倒不是很大)
所以后来才使用管道不阻塞的方式,本想着当管道的缓存被读取完了,就会追上来,可是一直到追不上。
现在的情况是一个程序是C++写的一个是C写的而且我对C++也不是很了解所以整合有困难。

longage

0个粉丝

4

问答

0

专栏

0

资料

longage 2017-03-22 11:09:37
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=46951&ptid=14600]yenfuliu 发表于 2017-3-22 10:12[/url]
我也是用管道对test.264设fifo,vlc联时会先出现约10秒的延时,然后画面就像快转一样跳动慢慢追上,追上后 ...[/quote]

请问你对管道的操作是阻塞模式吗?直到有客户端打开了视频之后才将视频流写入管道

longage

0个粉丝

4

问答

0

专栏

0

资料

longage 2017-03-22 11:10:48
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=46952&ptid=14600]domenor 发表于 2017-3-22 10:17[/url]
先启动live555,再启动Sample_venc,调整VLC网络缓存为300ms,试试看[/quote]

谢谢你的建议
是这么操作的

yenfuliu

0个粉丝

16

问答

0

专栏

0

资料

yenfuliu 2017-03-22 12:12:26
认可0
  我是用阻塞模式,不过Live555好像有缓存,客户端没连线也会先收几帧

longage

0个粉丝

4

问答

0

专栏

0

资料

longage 2017-03-22 17:40:22
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=46969&ptid=14600]yenfuliu 发表于 2017-3-22 12:12[/url]
我是用阻塞模式,不过Live555好像有缓存,客户端没连线也会先收几帧[/quote]

如果live555 在没开管道写端程序时去打开管道是会阻塞或者打开失败的,而且要客户端发起连接选择播放那个文件live555 才开始读取该文件。

longage

0个粉丝

4

问答

0

专栏

0

资料

longage 2017-03-22 17:42:11
认可0
本帖最后由 longage 于 2017-3-23 09:01 编辑

[quote][url=forum.php?mod=redirect&goto=findpost&pid=46932&ptid=14600]pb1005 发表于 2017-3-22 04:05[/url]
vlc里把延时设置为零。[/quote]

设为零后丢包率太高了,根本显示不出影像

JACK_ZHANG

0个粉丝

5

问答

0

专栏

0

资料

JACK_ZHANG 2017-03-28 10:58:39
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=46957&ptid=14600]longage 发表于 2017-3-22 11:06[/url]
谢谢你的建议
确实存在这个问题。
之前在管道写入的那个程序使用了阻塞模式,知道另一个程序打开写入后 ...[/quote]

C和C++混合编译没什么问题的,网上找个例子学习下,先混合编下简单的代码,live555直接整成一个库给其他的代码调用

longage

0个粉丝

4

问答

0

专栏

0

资料

longage 2017-03-30 09:35:15
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=47315&ptid=14600]JACK_ZHANG 发表于 2017-3-28 10:58[/url]
C和C++混合编译没什么问题的,网上找个例子学习下,先混合编下简单的代码,live555直接整成一个库给其他 ...[/quote]

:handshake
多谢指教,我怎么就没想到编译成库。

lsn2000

0个粉丝

0

问答

0

专栏

0

资料

lsn2000 2017-04-06 15:56:17
认可0
VLC 不是测试 IPC 的最佳工具,它默认是采用较大缓冲的,所以延迟会比较大。如果把VLC缓冲设的太小,小于关键帧大小,解码又会出问题。
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区