zoukankan      html  css  js  c++  java
  • 关于rtsp的时间戳问题

    这里主要关注的rtp包的时间戳,在rtsp中,播放器的1S钟的定义是和媒体的采样率有关的。

    例如视频的采样率是90K,那么最小时间粒度(单位)是1/90000秒,再转换成ms就是 1/90毫秒,这个就是rtsp中的最小时间单位。

    所以设备端采集的视频的时间要经过一个转换,标准的播放器才能播放

    还是以90K的视频为例,设备采集到的单位是按时间tv_sec,tv_usec存储。

    /* timestamp convert
        t(rtsp时间戳,单位ms) =  t(采集时间戳,单位秒)*90000
        */
        unsigned int tv_sec, tv_usec, pts;
        tv_sec = ts / 1000;
        tv_usec = (ts % 1000) * 1000;
        pts = tv_sec * 90000 + tv_usec *9 / 100;

    对应的如果是8K采样率的音频,则转化公式是:

        /* timestamp convert
        t(rtsp时间戳,单位ms) =  t(采集时间戳,单位秒)*8000
        */
        tv_sec = ts / 1000;
        tv_usec = (ts % 1000) * 1000;
        pts = tv_sec * 8000 + tv_usec *8/1000;

  • 相关阅读:
    选择结构
    算法和流程图
    存储信息和信息运算
    计算机组成原理
    计算机硬件组装
    认识计算机硬件
    认识操作系统
    DOS简介
    计算机软件知识
    易企cms截取字段方法
  • 原文地址:https://www.cnblogs.com/mic-chen/p/9141743.html
Copyright © 2011-2022 走看看