DTS值
DTS培训材料20130821

用于生产过程控制。 DTS的尺寸标注考虑测量方法,并在数模上进行校核。
M16外 观 DTS理 论 值 校 核
u位 置 图 示 :
u评 价 依 据 : 产 品 部 门 下 发 的 D TS 理 论 值 、 数 模 测 量 值
u评 价 方 法 : 依 据 产 品 部 门 下 发 的 DT S理 论 值 与 数 模 测 量 值 进 行 对 比 , 确 认 偏 差 值
3. Exterior Operational Quality
7. Jewel Effects 6. Rear Compartment
4. Secondary Surfaces 5. Engine Compartment
• 标杆车研究 • 以往制造能力 • 市场调查
• 振动研究 • 产品GD&T
• 面设计要求 • 造型要求
典型截面与DTS一致性审核
A-Class 第三版DTS会签文件
CASS与DTS一致性审核 A面与DTS一致性审核
铣削模型与DTS一致性审核 产品结构数据与与DTS一致性审核
平台车型定位基准分析
M0
M1
新开发件定位方案
M2发放
M3发放
竟品车定位基准解析 沿用件GD&T图纸分析
MI数据GD&T 发布
M2数据GD&T 发布
Se condary Panel
Dir ec ti on Featur e
I/P Co ck pit Asm
U/ D
Gap
I/ P Coc kp it Asm I/ P Coc kp it Asm
U/ D
Gap
U/ D
Gap
I/ P Coc kp it Asm
计算视频播放的时间(pts)

计算视频播放的时间(pts)在解码视频流的时候对每⼀个视频帧都会有⼀个时间戳pts(显⽰时间戳),得到这个pts的值,并记下最开始的⼀个pts值(pts_00),以后画⾯显⽰的时间就可以⽤当前播放的帧的时间戳(pts_now -pts_00)/90000获得了,单位是秒,⾄于为什么是除以90000,这个问题还不清楚,我会继续跟踪下去,哈哈A: RFC3984 规定采⽤ 90000 Hz 的时钟,因此如果编码帧频是 30,那么时间戳间隔就该是 90000 / 30 = 3000,根据抓包来看,似乎时间戳间隔的确是 3000。
时间戳的间隔不固定,⽐如有的时间戳间隔是 2990 有的是 3002,会导致解析出来的视频快播的效果么参考⽹页:问题是这样的⽤⼀个 VLC(流媒体客户端) 去请求流媒体服务器上的数据,但是获得的数据播放速度明显快于1倍速,⼤概是 timestamp 不对,不知道是服务器的错误,还是客户端解码时出错,总感觉服务器那边有问题,由于服务器端是客户端提供的,客户说是我们的问题,我还不知道如何证明是谁的错。
A:RFC3984 规定采⽤ 90000 Hz 的时钟,因此如果编码帧频是 30,那么时间戳间隔就该是 90000 / 30 = 3000,根据抓包来看,似乎时间戳间隔的确是 3000。
时间戳的间隔不固定,⽐如有的时间戳间隔是 2990 有的是 3002,会导致解析出来的视频快播的效果么Q:各位⼤侠好:我现在正在开发视频实时流播放,简单的过程如下:采集视频流 -> 视频流转换为Sorenson H.263编码格式 -> 把编码的实时流通过RTMP协议发送 -> flash客户端进⾏播放。
现在我的时间戳颗粒是这样⽣成的:第⼀帧的时间戳为0;第⼆帧的时间戳的算法为:第⼀个字符编码的当前时间 - 上⼀帧第⼀个字符编码的当前时间根据这个时间颗粒的算法,我在flash客户端播放就会产⽣延时。
dts报告全称

DTS报告全称1. 引言在本报告中,我们将详细介绍DTS(Dynamic Time Series)的相关概念、应用和步骤。
DTS是一种用于时间序列数据分析和预测的方法,它能够帮助我们发现和理解数据中的模式和趋势。
通过对时间序列数据进行分析和预测,我们可以获得有关未来趋势和行为的有价值的见解。
2. DTS概述DTS是一种基于时间序列数据的分析方法。
它关注的是数据在时间上的变化和演变,通过观察和分析时间序列数据中的模式和趋势,我们可以进行预测和决策。
DTS方法可以应用于各个领域,如金融、天气、股票市场等,以帮助我们理解数据中的规律和趋势。
3. DTS步骤3.1 数据收集和准备在进行DTS分析之前,我们首先需要收集和准备时间序列数据。
这些数据可以来自各种来源,如传感器、数据库、网络等。
收集到的数据需要进行预处理,包括去除异常值、填补缺失值等。
3.2 数据可视化在进行DTS分析之前,我们需要对数据进行可视化,以便更好地理解数据的特征和趋势。
常用的数据可视化方法包括折线图、柱状图、散点图等。
通过可视化数据,我们可以发现数据中的模式和趋势,并为后续的分析做好准备。
3.3 数据预处理在进行DTS分析之前,我们通常需要对数据进行预处理。
这包括平滑处理、差分处理、归一化处理等。
预处理的目的是消除数据中的噪声和不规则性,以便更好地分析数据的趋势和模式。
3.4 模型选择和拟合在进行DTS分析之前,我们需要选择适当的模型来拟合我们的数据。
常用的模型包括ARIMA模型、指数平滑模型等。
选择合适的模型可以更好地解释数据的变化和趋势。
3.5 模型评估和优化在进行DTS分析之后,我们需要对模型进行评估和优化。
评估模型的好坏可以使用各种指标,如均方根误差(RMSE)、平均绝对误差(MAE)等。
通过评估模型的好坏,我们可以选择最佳的模型和参数组合。
3.6 预测和决策在进行DTS分析之后,我们可以使用模型来进行预测和决策。
通过对时间序列数据的分析和预测,我们可以获得有关未来趋势和行为的见解,从而做出相应的决策。
杜比、DTS、PCM、AC3、THX、SDDS音效全接触(转)

杜比、DTS、PCM、AC3、THX、SDDS音效全接触(转)/%CE%DE%D0%C4%CF%F2%BA%F3/blo g/item/bb0c9332d1347693a9018e36.html在一般人的印象中, 总觉得Dolby Digital(杜比数码音效)应该就是多声道, 或者说,应该是包含主声道、中央声道、后声道与超低音声道的5.1声道环绕音效, 但事实却非如此.录制在DVD影片中的DolbyDigital音效, 存在许多可能. 它可以是最简化的单声道, 也可以是众所周知的5.1声道, 当然也有介于两者之间的DolbyDigital Stereo、Dolby Digital 4.0BDolby Digital 5.0……等方式. 在此必须补充一提的,是DVD中的声音储存方式, 除了Dolby Digital外, 也可以是DTS 数码环绕音效、欧洲的MPEG2、?SONY发展的SDDS, 或以高音质立体声为诉求的PCM数码格式等, 但目前DVD主要还是利用DolbyDigital来记录声音, 营造丰富的环绕效果.下面就是几种可能在DVD上出现的Dolby Digital格式, 让我们一一解说:1. Dolby Digital Mono: 杜比数码单声道音效只有单声道的效果, 并不足以构成立体声,多半出现在较为古老的影片中. 在影片制作时, 会将单声道的声音储存为AC-3格式, 因此当以杜比数码系统译码播放时, 只有中间声道发声.这样的音质表现, 无疑是比较单调乏味的, 因为连基本的立体感都十分欠缺, 更遑论环绕效果.2. Dolby Digital Stereo : 杜比数码双声道音效将双声道的立体讯号储存为AC-3格式,因此当以杜比数码系统译码播放时, 可以从主声道的左右声道喇叭发声. 这其实与我们常见的两声道系统(一般音响都是如此)有相当程度的趋近,可以建构立体的音场感, 只不过Dolby Digital的声音是经过压缩处理的, 多少对音质有些影响, 而CD唱片则未经过压缩,拥有高音质的潜力.3. Dobly Digital Surround : 杜比数码环绕音效利用矩阵编码的技术,将主声道、中央声道与后方的环绕声道挤压到两个声道中, 并以AC-3格式储存. 当以杜比数码系统译码播放时, 可以聆听到完整的五声道,不过环绕声道为单声音效, 而非立体声. 不是只有四个喇叭, 怎么会是五个声道发声呢?那是因为一般家庭剧院系统后方的环绕声道都是双声道,这里就是以双声道来呈现单声到, 也就是让两个喇叭发出一模一样的声音.4. Dolby Digital 4.0 : 杜比数码环绕音效4.0把独立的四个声道,包括主声道、中央声道与环绕声道编码成AC-3格式储存至DVD 影片中, 因此透过杜比数码系统译码播放时, 可以听到完整的五声道.此时环绕声道为独立的单声道录音. 乍看之下, Dolby Digital Surround与Dolby Digital4.0似乎是一样的, 其实不然. 严格说来, Dolby Digital Surround 是利用两个声道来储存数据,中间声道与环绕声道都是从这两个声道推演、计算出来的﹔不过Dolby Digital4.0却是扎扎实实的使用四个声道来储存主声道、中央声道与环绕声道, 还是有些不同.5. Dolby Digital 5.0 : 杜比数码环绕音效5.0把独立的五个声道,包括主声道、中央声道与后声道编码成AC-3格式储存到DVD影片中, 当透过杜比数码系统译码播放时, 可以还原完整的五声道.此时后方的环绕声道开始走独立双声道路线, 提供更精确的定位感与音场包围感.6. Dolby Digital 5.1 : 杜比数码环绕音效5.1除了主声道、中央声道与后声道外, 另外加上一个超低音声道,然后将这个六个声道编码成AC-3格式储存. 因此以杜比数码系统译码播放时, 可以聆听到五个声道再加上一个超低音声道.由于这个低音声道只涵盖低频范围, 并不是完整的频率范围, 所以以0.1视之. 提醒读者一点, 并不是所有的DVD影片都提供低音声道音效,因此, 如果您的主声道喇叭的低频够沈, 其实也可以发挥延伸低频的效果, 不见得非要加上这个超低音不可. 虽然DolbyDigital有多种可能性, 也包含多寡不同的输出声道, 但一般而言, 我们都简单的以Dolby Digital来表示DolbyDigital 5.1, 也就是5.1声道的Dolby Digital或AC-3. 至于两声道的Dolby Digital 2.0,多半会以2 Channel Dolby Digital来称呼.7. PCM 高音质数码音效: 相较于前述几种利用AC-3编码技术来压缩数据量的作法,DVD也可以利用PCM格式储存未经压缩的双声道讯号, 由于没有经过任何压缩损失的处理程序, 因此可以获得最佳的音质表现.其实这种PCM录音格式跟CD唱片是一样的, 但由于DVD具有庞大的空间与速度优势, 可以大胆使用更高的取样率与分辨率, 因此可以提供远高于传统CD的表现.8. DTS 数码环绕音效 : 同样属于5.1声道的环绕效果, DTS采用与AC-3不同的压缩技术将环绕音效储存至DVD.播放时必须采用具有dts译码能力的系统, 才能将隐藏在DVD中的5.1声道释放出来. 同样是5.1声道, DTS跟DolbyDigital 5.1有何差异?最大的差别, 在于两者使用不同的‘算法’, 也就是使用不同的方式来压缩5.1个声道的声音.Dolby Digital 5.1可以将相同的数据压得更少, 占用最小的空间. 反过来讲, 由于DTS不刻意追求最强悍的压缩能力,因此也有机会保存更多的信息, 如果处理得当, 确实可以提供很优越的表现.编码方式 Dolby Digital (Dolby AC-3) Dolby Pro Logic DTS处理方式各声道独立数码编码模拟矩阵运算各声道独立数码编码录制声道数* 5.1 声道 2 声道 5.1 声道播放声道数 5.1 声道 4 声道 5.1 声道环绕声道是否立体立体单音立体环绕声道频宽 20Hz~20KHz 100Hz~7KHz 20Hz~20KHz独立的超低音声道有无有传输率 448kbps** N/A 1536kbps注:*表示录制时, 需要占用的声道数(Channel). 譬如说, Dolby Prologic虽然属于四声道的环绕系统,但实际上却可以利用矩阵演算(Matrix)的方式将中央声道与环绕声道隐藏在两个声道中, 所以只占用两个声道来储存.**这是一般DVD上的平均值, 但实际的传输率是可能变动的.AC3AC-3发展当初是为了应用在电影院上的,AC-3音效因为胶卷的空间实在有限,所以AC-3音效的数据是存放在胶卷上,齿孔与齿孔的中间,这部分的空间实在太小了,所以杜比的工程师只好将他们认为人耳听不到的地方加以删除,藉以节省空间,这种破坏性的压缩还是会造成失真的,但是为了迁就原有器材上的限制,这也是逼不得已的做法AC-3采用6只喇叭模式,除了超重低音部分外,其余皆是全频段Stereo声道,48KHz,16bit,且现场拍摄时每个声道皆是独立麦克风来录制,所以AC-3的后环绕声道拥有完整的定位能力AC-3数据的流量,两声道是192Kbps,大约是未压缩数据的8分之一大小,5.1声道的流量是384Kbps~448Kbps,最高可提升到640Kbps,越大的数据流量代表越小的压缩比例,音质相对的会更好,可听到的细节也会多,但DolbyAC-3将S/N比控制的很好,所以影响的重点就是可听到的细节多寡与否了.DTS话说Dolby Digital是将音效数据储存在胶卷上齿孔的中间,因为空间的限制而必须采用大量压缩的模式,所以也牺牲了部分的音质, 但是这种限制却被原本默默无名的小公司DTS用简单的方法解决了,方法就是将这些音效数据放到另一台CD-ROM上面,再使它与影像同步就好了,这样一来不但空间增加,数据流量也可以相对的变大,更可以将放音效数据的CD片换掉,即可拨放其它的语言版本,对电影院来说真是相当的方便,也因为这样DTS在专业剧院上胜过了Dolby AC-3.到了LD时代,因为LD先天上规格的限制,无法兼容5.1声道的DolbyAC-3及DTS,正可谓鱼与熊掌无法兼得,这也造成DTS在家庭剧院市场的失败,到了现在的DVD时代,因为DVD的超大容量可以兼容AC-3与DTS 于一张影碟上,但是因为某些非技术层面上的问题,DTS必须采用与以往PCM格式不兼容的PES格式,虽然数字输出的接头是一样的,但是旧有的DVDPLAYER无法辨识PES格式,所以逼的想采用DTS音效的使用者必须更换新一代的机种才能使用DTS,这无疑的又阻碍了DTS的路线。
简析汽车白车身尺寸开发与控制

简析汽车白车身尺寸开发与控制摘要:随着消费者对汽车质量要求的不断提高,白车身尺寸作为对整车外观品质、性能都有着重要影响的一项因素,也逐渐受到了各个主机厂的重视。
在产品开发过程中,开发者需要根据市场、用户和车辆性能等多方面的需求,制定整车尺寸,再结合尺寸链分析将整车尺寸要求分解到各零部件,制定合理的零部件尺寸及其公差,进而制定白车身工艺、模具工装、检具的开发策略和零件测量计划,对关键的尺寸进行监控和分析,达到稳定控制白车身尺寸的目的。
关键词:汽车白车身;尺寸开发;控制引言随着国内经济的迅速发展,人民生活水平普遍提高,汽车保有量稳步提升。
汽车厂商为吸引广大消费者眼球,都在积极地对汽车进行更新设计,但大多数的情况是对白车身结构进行改变,其余部件没有太大的改变。
白车身制造涉及冲压和焊接工艺,涉及尺寸精度、焊接质量、外观质量控制等,白车身技术水平已经成为衡量车企制造水平的重要标志,车身制造过程复杂,影响因素众多,其中尺寸精度取决于各方面综合因素的共同作用。
1白车身尺寸影响因素1.1零部件尺寸误差车身零部件尺寸精度是车辆质量评价的关键因素,钣金单件冲压成型精度、零件焊接拼装位置精度等直接影响车身尺寸精度;同时,车身质量需求中,除对白车身尺寸精度有较高要求外,还对车身覆盖件的外观质量有着很高要求,外钣金件不能出现擦伤、波纹、拉痕、凹凸等外观缺陷问题,钣金单件冲压成型、零件分总成件焊接、零件取放及运输等过程中极易出现扭曲变形等问题,也会导致零件尺寸误差的产生及累积,影响白车身整体尺寸精度。
所以实际生产中,外观质量及尺寸精度需同时兼顾,对冲压焊接制造工艺水平的要求较高,也很难实现对实物尺寸精度的定量计算,要在理论分析基础上进行规范化在线测量,无形中增加了尺寸误差解决以及控制的难度系数。
在此基础上,白车身门盖件、小附件的零件装配尺寸误差也是影响车身整体尺寸精度一个重要因素,比如车门、翼子板等件装配位置精度误差,会导致白车身各配合件之间的间隙面差也存在较大的偏差。
PTSPCRDTS详解

PTS PCR DTS 详解MPEG-2 TS/PS同步原理2010-08-11 19:47一、引言MPEG-2系统用于视音频同步以及系统时钟恢复的时间标签分别在ES,PES和TS这3个层次中。
在ES层,与同步有关的主要是视频缓冲验证V BV(VideoBuffer V erifier),用以防止解码器的缓冲器出现上溢或者下溢;在PES层,主要是在PE S头信息里出现的显示时间标签P T S(Presen tatio n Time Stamp)和解码时间标签DTS(Decoding Time Stamp);在TS层中,TS头信息包含了节目时钟参考PC R(Progra m ClockRefere nce),用于恢复出与编码端一致的系统时序时钟STC(System Time Clock)。
在节目流PS包头中加入S CR,它的作用与P C R域相似。
标准规定在原始音频和视频流中,PTS的间隔不能超过0.7s,而出现在TS包头的PC R间隔不能超过0.1s。
我们知道,MPEG-2对视频的压缩产生I帧、P帧、B帧。
把帧顺序I1帧-P4帧-B2帧-B3帧-P7帧-B5帧-B6帧的编码ES,通过打包并在每个帧中插入PTS/DTS标志,变成PES。
在插入PTS/DTS标志时,由于在B帧P T S和DT S是相等的,所以无须在B帧多插入D TS(参见图1)。
而对于I帧和P帧,由于经过复用后数据包的顺序会发生变化,显示前一定要存储于视频解码器的从新排序缓存器中,经过从新排序后再显示,所以一定要同时插入PTS和DTS作为从新排序的依据。
二、同步机制编码器中有一个系统时钟S TC(其频率是27MHz),此时钟用来产生指示音视频的正确显示和解码的时间标签,同时可用来指示在采样过程中系统时钟本身的瞬时值。
谈谈数字电视中的音画不同步问题
谈谈数字电视中的音画不同步问题随着我国数字电视的迅猛发展,以及城市广电网络数字化改造的推进,越来越多的人们开始采用机顶盒来收看数字电视节目。
但在通过机顶盒收看电视节目的过程中,观众有时会发现一些音画不同步的现象.这也引起了我们的注意。
现象及测试贵阳市在2007年底基本完成了广电网络数字化改造,贵州电视台的节目也都进入了数字网络传输。
在进入数字网以后,我们发现,我台的几套节目在有些地区出现了音画不同步的现象,特别是卫视频道和百姓频道在播报新闻时尤其明显。
为了弄清楚问题出现在哪里,我们决定,在我台节目的整个传输路径,作一个唇音同步测试.用来做测试的设备是泰克公司的WFM7120,在做音/视频延时测量时,还需要通过TG700 DVG7产生一串短促的彩条视频信号,在这组视频信号中嵌入音频序列,其间隔为5s,将这样的信号送入被测系统,最后将信号送到WFM7120里以测量音、视频之间的定时差。
播控中心内部测试如图1所示,为了测量在电视台系统内部是否存在音/视频时延差,我们利用检修时间将TG700产生的测试信号录入播出硬盘,通过硬盘播放,以及将测试信号分别输入到延时器和帧同步模块后,在一个频道上播出,然后我们在传送部将信号传到网络公司的编码器之前,对这三路信号进行测量。
测量结果显示,这三路信号的音/视频时延差均不超过12ms,即不够一场,表明信号在播控中心不存在音画不同步问题.不同机顶盒的测试第二个测量点,我们选择了网络公司的前端机房.如图2所示,在这里,我们选取了现在国内使用的主要几个品牌的机顶盒做测试,将TG700的测试信号,通过原来我们在用的编码器编码后,插入我们现在在播的频道,然后在前端机房用机顶盒把电视信号解调出来。
解出来的音/视频信号,再通过一台松下公司的D950录像机,把模拟的信号进行A/D和加嵌处理后,送到WFM7120进行测量.测量结果显示,这几种机顶盒的音/视频时延差表现不一,有的超前了150ms,有的滞后了300ms。
多媒体文件格式(四):TS格式
多媒体⽂件格式(四):TS格式⼀、TS 格式标准介绍TS是⼀种⾳视频封装格式,全称为MPEG2-TS。
其中TS即"Transport Stream"的缩写。
先简要介绍⼀下什么是MPEG2-TS:DVD的⾳视频格式为MPEG2-PS,全称是Program Stream。
⽽TS的全称则是Transport Stream。
MPEG2-PS主要应⽤于存储的具有固定时长的节⽬,如DVD电影,⽽MPEG-TS则主要应⽤于实时传送的节⽬,⽐如实时⼴播的电视节⽬。
这两种格式的主要区别是什么呢?简单地打个⽐喻说,你将DVD上的VOB⽂件的前⾯⼀截cut掉(或者⼲脆就是数据损坏),那么就会导致整个⽂件⽆法解码了,⽽电视节⽬是你任何时候打开电视机都能解码(收看)的。
所以,MPEG2-TS格式的特点就是要求从视频流的任⼀⽚段开始都是可以独⽴解码的。
我们可以看出,TS格式是主要⽤于直播的码流结构,具有很好的容错能⼒。
通常TS流的后缀是.ts、.mpg或者.mpeg,多数播放器直接⽀持这种格式的播放。
TS流中不包含快速seek的机制,只能通过协议层实现seek。
HLS协议基于TS流实现的。
TS格式分析⼯具:链接: 提取码: je5m⼆、TS 格式详解TS⽂件(流)可以分为三层:TS层(Transport Stream)、PES层(Packet Elemental Stream)、ES层(Elementary Stream)。
ES层就是⾳视频数据,PES层是在⾳视频数据上加了时间戳等对数据帧的说明信息,TS层是在PES层上加⼊了数据流识别和传输的必要信息。
TS⽂件(码流)由多个TS Packet组成的。
下图是TS⽂件(码流)的分层结构图:原图可以在:查看。
三、TS层TS包⼤⼩固定为188字节,TS层分为三个部分:TS Header、Adaptation Field、Payload。
TS Header固定4个字节;Adaptation Field可能存在也可能不存在,主要作⽤是给不⾜188字节的数据做填充;Payload是PES数据。
ffmpeg播放器实现详解-视频同步控制
ffmpeg播放器实现详解-视频同步控制ffplay是ffmpeg源码中⼀个⾃带的开源播放器实例,同时⽀持本地视频⽂件的播放以及在线流媒体播放,功能⾮常强⼤。
FFplay: FFplay is a very simple and portable media player using the FFmpeg libraries and the SDL library. It is mostly used as atestbed for the various FFmpeg APIs.ffplay中的代码充分调⽤了ffmpeg中的函数库,因此,想学习ffmpeg的使⽤,或基于ffmpeg开发⼀个⾃⼰的播放器,ffplay都是⼀个很好的切⼊点。
由于ffmpeg本⾝的开发⽂档⽐较少,且ffplay播放器源码的实现相对复杂,除了基础的ffmpeg组件调⽤外,还包含视频帧的渲染、⾳频帧的播放、⾳视频同步策略及线程调度等问题。
因此,这⾥我们以ffmpeg官⽹推荐的⼀个ffplay播放器简化版本的开发例程为基础,在此基础上循序渐进由浅⼊深,最终探讨实现⼀个视频播放器的完整逻辑。
在上篇⽂章中,我们讨论了⼀个播放器的基础架构,梳理了组成播放器的基本组件及后台数据队列,并对代码结构进⾏了调整。
本⽂在上篇⽂章的基础上,讨论⾳视频同步的相关内容,⾸先介绍与⾳视频同步相关的时间戳概念,然后介绍⾳视频同步涉及的原理及策略,最后重点讲述关键代码的实现过程。
公众号:断点实验室⾳视频开发系列⽂章1、时间戳时间戳的概念贯穿⾳视频开发始终,重要性不⾔⽽喻。
时间戳告诉我们在什么时候,⽤多快的速度去播哪⼀帧,其中,DTS(decoding timestamp)告诉我们何时解码,PTS(presentation timestamp)告诉我们何时播放。
那么,为什么要有DTS和PTS?⾸先需要理解编码后的数据是如何存储的。
1.1 帧分组(Group of picture)视频帧(这⾥主要以H.264编码为例)以序列为单位进⾏组织,⼀个序列是⼀段图像编码后的数据流,从关键帧I帧开始,包含了与组内I帧相关联的P 帧和B帧,到下⼀个I帧结束,⼀个序列为⼀个帧组(group of picture),如下图所⽰。
DTS和PTS的解释
DTS和PTS的解释FFmpeg里有两种时间戳:DTS(Decoding Time Stamp)和PTS(Presentation Time Stamp)。
顾名思义,前者是解码的时间,后者是显示的时间。
要仔细理解这两个概念,需要先了解FFmpeg中的packet和frame的概念。
FFmpeg中用AVPacket结构体来描述解码前或编码后的压缩包,用AVFrame 结构体来描述解码后或编码前的信号帧。
对于视频来说,AVFrame就是视频的一帧图像。
这帧图像什么时候显示给用户,就取决于它的PTS。
DTS是AVPacket 里的一个成员,表示这个压缩包应该什么时候被解码。
如果视频里各帧的编码是按输入顺序(也就是显示顺序)依次进行的,那么解码和显示时间应该是一致的。
可事实上,在大多数编解码标准(如H.264或HEVC,当出现B帧的时候)中,编码顺序和输入顺序并不一致。
于是才会需要PTS和DTS这两种不同的时间戳。
视频帧根据帧率,在同一时间基上累加,例如,25帧每秒,则按毫秒计,1000/25=40ms,在首帧pts上进行累加音频根据采样率及样本个数,在同一时间基上累加,例如,1024个样本,44100采样率,毫秒计,1000*1024/44100=23.21995464852607709750566893424ms基本理论是这样,但实际的同步远没有这么简单,掉线,断网,弱网,丢帧,跳帧,等一系列均对你的同步进行阻挠,需要根据具体情况做同步,坐等高手给出较为鲁棒的同步措施。
一固定帧率1. 视频时间戳pts = inc++ *(1000/fps);其中inc是一个静态的,初始值为0,每次打完时间戳inc加1.在ffmpeg,中的代码为pkt.pts= m_nVideoTimeStamp++ * (m_VCtx->time_base.num * 1000 / m_VCtx->time_base.den);2. 音频时间戳pts = inc++ * (frame_size * 1000 / sample_rate)在ffmpeg中的代码为pkt.pts= m_nAudioTimeStamp++ * (m_ACtx->frame_size * 1000 / m_ACtx->sample_rate);采样频率是指将模拟声音波形进行数字化时,每秒钟抽取声波幅度样本的次数。