请教-如何用UDP发送TS流并且用PCR值控制速率

zcy828 2011-09-27 03:55:26
最近在做一个视频服务器的项目,之前已经用ASI卡成功的推送TS流了。
现在导师要我用UDP的方式发TS流,并且要用PCR值来控制速率,并提示我说PCR值控制速率是难点。

目前我的现状是
1.知道如何用UDP发送和接收数据
2.知道PCR值这个东西

对于这个项目还是比较迷茫啊,期望高人指点
...全文
363 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zcy828 2011-12-06
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 ttxk 的回复:]
会用socket,就会用udp
所以第一个问题,需要先了解socket是个什么东西。

pcr是ts数据流中包含的时钟数据,专门用于时钟同步
第二个问题,具体关于pcr这个东西,可以参见mpeg2 ts数据封装的一些相关协议。

我泛泛讲点其他的东西,为什么要用pcr来控制发送速度:

通常硬件ASI卡传送ts数据,是依靠码率来控制速度。假设ts是2Mb的码率,那么ASI卡的发送速……
[/Quote]

这位大大的解释太受用了,太久没来看了,不好意思这么晚回。谢谢你的指点
rxf_mpg 2011-10-08
  • 打赏
  • 举报
回复
我有这个源码,并且使用IPQAM测过,效果不错,交流请加QQ5043043
zcy828 2011-09-29
  • 打赏
  • 举报
回复
哇,不好意思各位大大,我发了帖现在才回来看,因为初涉这个东西,还不太懂哈,实验室导师也叫我自己搞,有点头大。

在这里先谢过楼上的大大了。
zcy828 2011-09-29
  • 打赏
  • 举报
回复
一楼的朋友如果要交流的话加我QQ66391,我水平不高哈,更多的还要请教你哦
Ryan裤子 2011-09-28
  • 打赏
  • 举报
回复
会用socket,就会用udp
所以第一个问题,需要先了解socket是个什么东西。

pcr是ts数据流中包含的时钟数据,专门用于时钟同步
第二个问题,具体关于pcr这个东西,可以参见mpeg2 ts数据封装的一些相关协议。

我泛泛讲点其他的东西,为什么要用pcr来控制发送速度:

通常硬件ASI卡传送ts数据,是依靠码率来控制速度。假设ts是2Mb的码率,那么ASI卡的发送速度就固定控制在2Mb。如果ts的码率有波动变化,就在ts中插入空白数据包,强行将ts的码率提高到一个固定的码率值。这是硬件ASI卡传送ts通常使用的方式。

在以太网上传送ts数据,考虑到以太网传输速度的不稳定性,udp的丢包性质,和socket的发送接收缓冲区,插入空包将ts码率提高到一个固定码率的做法已经没有了意义,因为上面那些因素,以太网的发送速度不能像ASI卡那样固定。插入空白数据包,把码率提高到一个固定值的做法也比较多此一举。

所以,根据ts流自己携带的pcr时钟信息,来进行同步控制发送速度,比根据码率来控制发送速度,更准确,也更有适应性。在ts码率有波动,并且波动比较大的情况下,根据码率来控制发送速度无疑是不准确的。

lang0728 2011-09-27
  • 打赏
  • 举报
回复
楼主,你那TS流用UDP发送,成功了吗?是实时发送吗?有用到RTSP服务器吗?我现在也在研究RTSP服务器实时发送TS流,能交流下吗?

2,543

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
  • 多媒体/流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧