MPEG2-TS:PCR 和 PTS

问题描述 投票:0回答:2

在mpegts中,PCR和PTS有什么关系吗?我的意思是,我们为什么要提供 PCR 以及应该为 PCR 分配什么值?
在一些帖子中我看到PCR可以从PTS计算出来,如何计算?
嗯,很明显,PTS 一定是增量的,但是 PCR 呢?也应该是增量的吗?

video-streaming video-processing mpeg2-ts
2个回答
4
投票

PCR 用于无线和卫星传输。如您所知,PTS 是每秒 90000 个刻度。但首先编码器和解码器需要决定第二个的定义。解码器时钟可能运行得有点快(导致缓冲)或有点慢(导致内存耗尽)。 PCR 是一种非常频繁发送的信号,用于在单向信号传输中保持这些时钟同步。如今,这不再是一个问题,因为设备连接到互联网并通过单独的方法定期同步时钟。就您的目的而言,是的,只需使用另一个流中的 PTS 就可以很好地工作,因为除非您正在为摩托罗拉制作广播编码器,否则这并不重要。


0
投票
  • PCR=节目时钟参考,它是运行在编码器上的主时钟,解码器在解码时使用它与编码器同步。 MPEG 中的每个节目流都可能有自己的主时钟,称为 STC。现在 PCR 在 27MHz 时钟上运行并出现在传输流中。 PTS 在 90KHz 时钟上进行标记(即 33 位值)。
  • STC 首先将 27MHz 除以 300,给出 90kHz 时钟,由 33 位计数器计数,得到基本 STC 值。 余数被视为 9 位值,可用作 STC 扩展。

  • PTS - 呈现时间戳指示应从接收器缓冲区中删除访问单元、立即解码并呈现以进行显示的时刻

通俗地说,PCR 是一个以 27 MHz 不断滴答的主时钟,从 90KHz 时钟采样的 PTS 值(如上所述),在将该访问单元呈现给观看者时显示。该点始终领先于当前 PCR 值。即,如果 PCR 的值为 x(90 KHz 降低值),则 PTS 将为(x+一些延迟),当 STC 到达 PTS 值时,解码器缓冲区有足够的时间来解码并生成观看图片

© www.soinside.com 2019 - 2024. All rights reserved.