ffmpeg---vlc-------- PCR(program clock reference)节目时钟基准

2024-01-16 04:38

本文主要是介绍ffmpeg---vlc-------- PCR(program clock reference)节目时钟基准,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

zhuanzi : http://xcshen.blog.51cto.com/2835389/512890
PCR(program clock reference)节目时钟基准
2011-03-12 00:01:30
标签: PCR  休闲  STC  职场  PTS

在电视技术中要求同步扫描,即保证收、发两端的电子扫描规律严格相同。它包含两个要求:一是收、发两端的扫描速度必须相同,这叫同频;二是收、发两端每行、每场的扫描起始时刻必须相同,这叫同相。只有同频同相才能实现同步扫描,接收端才能重现既稳定又准确的图像。为了确保同步扫描,在模拟电视信号中有行同步信号、场同步信号与色同步信号。模拟电视机利用同步分离电路直接从模拟电视信号中解调得到同步头,获得场、行、色同步信息,从而保证彩色图像不失真。而且音频和视频是同时送出的,不存在音频和视频的同步问题。

在数字电视传输码流中。节目时钟基准 (PCR) 也是一种重要的包头信息,它由 33bit 基值 (Base) 和 9bit 扩展值 (Extension) 组成。 PCR 值以系统参考时钟周期为单位记录了源端的时间信息.对于整个数字电视系统的同步起着关键作用。

数字电视与模拟电视的不同之处:一是视频图像由 I 、 B 、 P 三种类型的帧经压缩后的字节数各不相同:二是解码器输入图像的次序和显示次序并不一致.需要重新排序;三是音频的基本码流和视频的基本码流是交错传送的。因此在数字电视的编码端 ( 发射端 ) 和解码端 ( 接收端 ) 不再像模拟电视信号那样直接从解调信号中得到同步信息等。

数字电视的时间信号由码流中的专门信息来传递,接收端应该从码流的这些信息中恢复时钟。但这一时钟不是由物理方式直接传送的,因此。发射端与接收端的实际时钟不可能完全一致。如果处理不好,两者之间很容易在长期积累后有较大的差别,这将导致解码器所 1 灰复的图像容易掉彩色,还会出现周期性的黑屏现象,同时图像会伴有马赛克,严重时会出现死机。

为了实现各种不同应用状态下的编码器,解码器之间的同步,在 MPEG 系统中引入了系统时钟 (STC) 、节目时钟基准 (PCR) 、显示时间标记 (PTS) 的概念。

在数字音、视频编码器中,信号的抽样、处理都是以一个 27MHz 的参考时钟为基础来进行的。对一个显示单元 ( 如一帧图像 ) ,打上用系统时钟对应的参考显示时间,叫显示时间标记,该信息随同码流一起传输。同时.时钟信息也被抽样加入到码流中一起传输。

在解码器中,将时钟信息从码流中取出,用于恢复 STC ,使解码器产生一个与前端同步的 27MHz 系统时钟。在获得显示单元的数据后,将该单元的 PTS 与恢复出的 STC 进行比较,并在相应时间点输出显示数据,这样就可以实现系统编码和解码的同步。视频编/解码系统时钟示意图如附图所示。

在数字电视系统中.系统时钟 (STC) 在传输中由节目时钟基准 (PCR) 和显示时间标记 (PTS) 携带,在接收端解码器中恢复。由此可见 PCR 的作用是使 MPEG 解码器与编码器保持同步。系统时钟 (STC) 即主时钟锁定于码流 PCR 。在编码器中, PCR 是系统时钟正弦波的 42bit 采样值,在解复用器中,它是恢复系统时钟的参考。 PCR 指示解码器接收每一时钟参考时的 STC 时间。如果复用器产生的 PCR 值不准确,或者因抖动造成的网络延时而使接收延迟,就会出现解码与编码之间的同步错误。系统时钟 (STC) 用于产生彩色色同步和同步信号,它是音/视频解码和显示时间标记的参考。抖动和不准确性错误均会导致解码器出错。

为了保证解码器的正确解码,确认一个传输码流的合法性。 DVB 开发了一个标准 ESTI ERT-290 及后来的 TR101 — 290 。在这个标准中,对码流的错误指示分为 3 个等级:第 l 等级是正确解码所必需的几个参数,其中包括同步丢失错误、同步字节错误、 PID 传输错误 ( 包识别丢失 ) 、 PAT 错误 (PAT 丢失 ) 、连续计数错误及 PMT 错误等。

同步丢失是衡量传输码流质量的最重要的指标。传输码流失去同步表明数据已经丢失;连续的同步丢失说明信号丢失。码流分析仪检测到连续 5 个同步字节视为同步,连续检测不到两个以上同步字节则为同步丢失错误。同步丢失错误将直接影响解码后画面的质量.严重的同步错误将造成接收中断。在接收端出现黑屏、静帧和马赛克、画面不流畅等现象。

同步字头的标准值为 Ox47 。当出现同步字节错误时,同步字头的值为其他数值,表明在传输过程中部分数据出现错误,严重时导致解码器解不出信号。

同步字节错误和同步丢失错误的区别在于同步字节错误传输数据仍是 188 或 204 包长,但同步字头不是标准的 Ox47 。在接收端也会出现黑屏、静帧和马赛克画面不流畅现象。

这篇关于ffmpeg---vlc-------- PCR(program clock reference)节目时钟基准的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/611360

相关文章

第10章 中断和动态时钟显示

第10章 中断和动态时钟显示 从本章开始,按照书籍的划分,第10章开始就进入保护模式(Protected Mode)部分了,感觉从这里开始难度突然就增加了。 书中介绍了为什么有中断(Interrupt)的设计,中断的几种方式:外部硬件中断、内部中断和软中断。通过中断做了一个会走的时钟和屏幕上输入字符的程序。 我自己理解中断的一些作用: 为了更好的利用处理器的性能。协同快速和慢速设备一起工作

Android平台播放RTSP流的几种方案探究(VLC VS ExoPlayer VS SmartPlayer)

技术背景 好多开发者需要遴选Android平台RTSP直播播放器的时候,不知道如何选的好,本文针对常用的方案,做个大概的说明: 1. 使用VLC for Android VLC Media Player(VLC多媒体播放器),最初命名为VideoLAN客户端,是VideoLAN品牌产品,是VideoLAN计划的多媒体播放器。它支持众多音频与视频解码器及文件格式,并支持DVD影音光盘,VCD影

音视频入门基础:WAV专题(10)——FFmpeg源码中计算WAV音频文件每个packet的pts、dts的实现

一、引言 从文章《音视频入门基础:WAV专题(6)——通过FFprobe显示WAV音频文件每个数据包的信息》中我们可以知道,通过FFprobe命令可以打印WAV音频文件每个packet(也称为数据包或多媒体包)的信息,这些信息包含该packet的pts、dts: 打印出来的“pts”实际是AVPacket结构体中的成员变量pts,是以AVStream->time_base为单位的显

深入理解PHP7之REFERENCE

REFERENCE 上一章说过引用(REFERENCE)在PHP5的时候是一个标志位, 而在PHP7以后我们把它变成了一种新的类型:IS_REFERNCE. 然而引用是一种很常见的应用, 所以这个变化带来了很多的变化, 也给我们在做PHP7开发的时候, 因为有的时候疏忽忘了处理这个类型, 而带来不少的bug. 最简单的情况, 就是在处理各种类型的时候, 从此以后我们要多考虑这种新的类型, 比如

ffmpeg面向对象-待定

1.常用对象 rtsp拉流第一步都是avformat_open_input,其入参可以看下怎么用: AVFormatContext *fmt_ctx = NULL;result = avformat_open_input(&fmt_ctx, input_filename, NULL, NULL); 其中fmt_ctx 如何分配内存的?如下 int avformat_open_input(

FFmpeg系列-视频解码后保存帧图片为ppm

在正常开发中遇到花屏时怎么处理呢?可以把解码后的数据直接保存成帧图片保存起来,然后直接看图片有没有花屏来排除是否是显示的问题,如果花屏,则代表显示无问题,如果图片中没有花屏,则可以往显示的方向去排查了。 void saveFrame(AVFrame* pFrame, int width, int height, int iFrame){FILE *pFile;char szFilename[

【IPV6从入门到起飞】4-RTMP推流,ffmpeg拉流,纯HTML网页HLS实时直播

【IPV6从入门到起飞】4-RTMP推流,ffmpeg拉流,纯HTML网页HLS实时直播 1 背景2 搭建rtmp服务器2.1 nginx方案搭建2.1.1 windows 配置2.1.2 linux 配置 2.2 Docker方案搭建2.2.1 docker 下载2.2.2 宝塔软件商店下载 3 rtmp推流3.1 EV录屏推流3.2 OBS Studio推流 4 ffmpeg拉流转格式

油表加速器时钟屏保 就是这么酷酷的

太酷了!这个时钟屏保太有个性了!油表加速器时钟屏保,模拟汽车加速表盘,非常有质感,用它做屏保,简直就是酷毙了~!今天小编给大家分享一个非常实用好看的时钟屏保(芝麻时钟),官网地址(https://clock.zhimasoft.cn/?bili) 芝麻时钟-油表加速器时钟屏保 我们一起来看下,油表加速器表盘时钟屏保是怎么设置的? 1、打开芝麻时钟软件,找到"时钟屏保"菜单,点击后打开;(

彩虹数字屏保时钟 芝麻时钟开启个性化的时代 屏保怎么能少它

彩虹数字屏保时钟 芝麻时钟开启个性化的时代 屏保怎么能少它?电脑屏保多样化,让大家有了更多的选择,让更多人有机会把自己的电脑打扮得漂漂亮亮,今天小编给大家推荐:芝麻时钟(官网下载地址:http://clock.zhimasoft.cn/?bili),一起看下怎么开启彩虹数字时钟屏保吧! 彩虹数字屏保时钟 1、先下载芝麻时钟到电脑,可以百度,或者微软应用商城搜索“芝麻时钟”下载;

STM32CubeMX 1 创建一个新工程 利用时钟点亮LED KEIL5 Jlink配置

直接上ST的官网下载STM32CubeMX安装 地址: 单片机:STM32F103C8T6 带外部8MHz晶振 目的:利用Timer和使LED按照1Hz的频率闪烁。 在此方面学霸级人物的指引下学习了,并写此文章记录,以防忘记。 新建工程 出现如下界面,中央就是这个封装的引脚图: 接下来开始配置 1. 设置外部晶振接口在PD0和PD1 单机想要配置的引脚,出现选择菜单。