织梦CMS - 轻松建站从此开始!

罗索

音视频时间戳的标记方法---如何正确获得一帧的时间戳

落鹤生 发布于 2012-02-27 11:49 点击:次 
视频时间戳 s64Pts= (s64FrameNumber++) * (1000 / s32FramePreSecond); s64FrameNumber:已编码帧的数量,特别在h264中,不是以NAL为单位 s32FramePreSecond:帧率 libav代码为:tPacket.pts = (s64VideoTimeStamp++) * (ptVdieoContext-time_base.num * 1000 / ptVdieoCon
TAG:

视频时间戳

s64Pts = (s64FrameNumber++)  * (1000 / s32FramePreSecond); 

s64FrameNumber:已编码帧的数量,特别在h264中,不是以NAL为单位

s32FramePreSecond:帧率

libav代码为:tPacket.pts = (s64VideoTimeStamp++) * (ptVdieoContext->time_base.num * 1000 / ptVdieoContext->time_base.den);

 

音频时间戳

s64Pts = (s64FrameNumber++)  * (1000 * s32FrameSize / s32SampleRate); 

s64FrameNumber:已编码帧的数量

s32FrameSize:编码帧的长度

s32SampleRate:采样率,即每秒产生的字节数量(44100)

libav代码为:tPacket.pts = (s64AudioTimeStamp++) * (ptAudioContext->frame_size * 1000 / ptAudioContext->sample_rate);

 

时间戳单位都是ms.

(zorru)
本站文章除注明转载外,均为本站原创或编译欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,同学习共成长。转载请注明:文章转载自:罗索实验室 [http://www.rosoo.net/a/201202/15762.html]
本文出处:百度博客 作者:zorru 原文
顶一下
(4)
66.7%
踩一下
(2)
33.3%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
将本文分享到微信
织梦二维码生成器
推荐内容