-----------------------------------------------------------------------------------------------------------------------------------------

一分钟快速搭建 rtmpd 服务器: https://blog.csdn.net/freeabc/article/details/102880984

软件下载地址: http://www.qiyicc.com/download/rtmpd.zip

github 地址:https://github.com/superconvert/smart_rtmpd

-----------------------------------------------------------------------------------------------------------------------------------------

为什么 RTP 的视频的采样率是 90kHz ?

其实我原来一直也有这个疑问,网上也有些解释,感觉有点太牵强,不完善。今天我就来和大家说一说这个的来历。

那怎么样才更具有说服力呢?当然是引经据典,参看我们的 RFC 了。

其中 rfc3551 中,第 5 小节,是这么介绍的。

5.  Video

The following sections describe the video encodings that are defined
   in this memo and give their abbreviated names used for
   identification.  These video encodings and their payload types are
   listed in Table 5.

All of these video encodings use an RTP timestamp frequency of 90,000
   Hz, the same as the MPEG presentation time stamp frequency.  This
   frequency yields exact integer timestamp increments for the typical
   24 (HDTV), 25 (PAL), and 29.97 (NTSC) and 30 Hz (HDTV) frame rates
   and 50, 59.94 and 60 Hz field rates.  While 90 kHz is the RECOMMENDED
   rate for future video encodings used within this profile, other rates
   MAY be used.  However, it is not sufficient to use the video frame
   rate (typically between 15 and 30 Hz) because that does not provide
   adequate resolution for typical synchronization requirements when
   calculating the RTP timestamp corresponding to the NTP timestamp in
   an RTCP SR packet.  The timestamp resolution MUST also be sufficient
   for the jitter estimate contained in the receiver reports.

For most of these video encodings, the RTP timestamp encodes the
   sampling instant of the video image contained in the RTP data packet.
   If a video image occupies more than one packet, the timestamp is the
   same on all of those packets.  Packets from different video images
   are distinguished by their different timestamps.

Most of these video encodings also specify that the marker bit of the
   RTP header SHOULD be set to one in the last packet of a video frame
   and otherwise set to zero.  Thus, it is not necessary to wait for a
   following packet with a different timestamp to detect that a new
   frame should be displayed.

从上文我们可以看到 90 kHz 等同于 MPEG 呈现时间戳频率。同时 90 kHz 满足
   多种制式以及频段时间戳增长为整数的需要,目的就是减少时间戳偏差。同时 90 kHz
   也满足 RTCP SR 计算 NTP 同步的需要,也满足接收报告中 jitter 的估算。
   简而言之一句话:90 kHz 就是 RTP 视频时间戳的天选之子!

为什么 RTP 的视频的采样率是 90kHz ?相关推荐

  1. 大话音视频时间戳 采样率(3600来由)

    最近公司技服同事问这视频流中时间戳是个啥,有什么用,为啥要3600的递增,单位是什么,我整理了一遍打了好长一段话给他说明了,不想浪打字,后续有人在问也方便解释,故记录一下. 时间戳(pts): 视音频 ...

  2. 一个基于JRTPLIB的轻量级RTSP客户端(myRTSPClient)——实现篇:(八)RTP音视频传输解析层之MPA传输格式...

    一.MPEG RTP音频传输 相较H264的RTP传输格式,MPEGE音频传输格式则简单许多. 每一包MPEG音频RTP包都前缀一个4字节的Header,如下图(RFC2550) "MBZ& ...

  3. RTP协议介绍以及C语言实现具有发送H.264视频功能的RTP服务器

    RTP封装H.264视频规范以及C语言实现 以前上学时间做嵌入式开发板Hi3516A的流媒体项目,现在又突然想起来,不想学过就忘了浪费了,所以又自己实现了一遍读取本地视频文件发送RTP视频流的程序,算 ...

  4. SpringBoot WebSocket RTP 视频实时监控

    一.环境        1.安装 // docker安装kurento docker pull kurento/kurento-media-server:latest// 配置端口, 占用50个端口, ...

  5. wireshark抓rtsp rtp rtcp包手把手教你分析包结构 H264 H265

    系列音视频开发 文章目录 系列音视频开发 前言 一.RTSP是什么? 二.RTP是什么? 三.RTCP是什么? 四.RTSP 源码学习 五.H265 RTSP流 总结 前言 在安防行业中,onvif协 ...

  6. WebRTC音视频同步详解

    WebRTC音视频同步详解 1 WebRTC版本 2 时间戳 2.1 视频时间戳 2.2 音频时间戳 2.3 NTP时间戳 2 延迟 3 同步 3.1 一张图看懂音视频同步 3.2 音视频相对延迟 3 ...

  7. AI根据视频画面自动配音 ,真假难辨 !(附数据集)

    本文经AI新媒体量子位(公众号ID:qbitai)授权转载,转载请联系出处 本文长度为3216字,建议阅读7分钟 本文为你分享实现AI自动为视频配音的流程. 先来做个"真假美猴王" ...

  8. Wireshark 抓包分析 RTSP/RTP/RTCP 基本工作过程

    整体而言,RTSP 通常工作于可靠的传输协议 TCP 之上,就像 HTTP 那样,用于发起/结束流媒体传输,交换流媒体元信息.RTP 通常工作于 UDP 之上,用于传输实际的流媒体数据,其中的载荷格式 ...

  9. 第三季1:ORTP库的移植与局域网视频传输

    以下内容源于朱有鹏课程,如有侵权,请告知删除. 本季课程重点在于使用ORTP库来实现局域网视频实时传输. 一.ORTP的介绍 1.视频网络传输的两种方式 (1)基于下载 比如http(Hyper Te ...

最新文章

  1. php 中文 处理,PHP处理中文字符串截取
  2. 基尼指数——基尼系数是指国际上通用的、用以衡量一个国家或地区居民收入差距的常用指标。基尼系数介于0-1之间,基尼系数越大,表示不平等程度越高。...
  3. opencv求两张图像光流_OpenCV单应性矩阵发现参数估算方法详解
  4. “java程序打成jar包 如何处理第三方jar包”
  5. c语言中void arrout,c语言学习笔记(数组、函数
  6. 中石油在意大利加油站0.5分/升,会不会赔死啊?
  7. python创造订单失败_使用Python API创建新订单,get AttributeError:“str”对象没有属性“iteritems”...
  8. 在手动安装 Kubernetes 的基础上搭建微服务
  9. iOS开发UI篇--仿射变换(CGAffineTransform)使用小结
  10. 第一章 计算机网络概述(计算机网络韩立刚)
  11. .net实现串口通信
  12. 政务终端安全管理的三个视角
  13. 何时需要对时间序列进行Log Transformation
  14. Android 腾讯Bugly的应用升级热更新
  15. 色盲悖论_关于被色盲
  16. graphql_GraphQL简介
  17. 无法在设置线程模式后对其加以更改
  18. 相似度算法之余弦相似度
  19. mp3格式怎么弄?制作mp3格式文件,教您2个有效的方法!
  20. rk3368-Android8.1-默认背光初始值

热门文章

  1. 计算交错序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N项之和
  2. BurpSuite实战十六之BurpSuite插件编写
  3. 20211009gfsj_re_六六六
  4. 今天下午参加了dudu的广州见面会,毫无收获
  5. 黑盒测试和白盒测试的概念和区别你知道吗?
  6. Codeforces Round #291 (Div. 2)
  7. 2021年中式面点师(中级)考试及中式面点师(中级)考试技巧
  8. Codeup墓地-2337
  9. 壁纸|隐藏Dock栏最新的壁纸来了,这几张很不错哦
  10. 求10000以内的所有完全数