首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏腾讯IMWeb前端团队

    视频中的 I ,P B

    由于压缩处理的方式不同,视频中的画面就分为了不同的类别,其中包括:I 、P B 。I 是内部编码(也称为关键),P 是前向预测(前向参考),B 是双向内插(双向参考)。 简单地讲,I 是一个完整的画面,而 P B 记录的是相对于 I 的变化。如果没有 I ,P B 就无法解码。 B B (Bi-directional predicted frames),B 图像采用双向时间预测,可以大大提高压缩倍数。 值得注意的是,由于 B 图像采用了未来作为参考,因此 MPEG-2 编码码流中图像的传输顺序和显示顺序是不同的。 解码也是按接收到的视频流去解,接收一解码一,解码顺序: IPBBB 而解码顺序和显示顺序不同,我们需要按 PTS 重新调整解码后的,即: I B B B P PTS:     12345 DTS:

    5.2K20编辑于 2022-06-29
  • 来自专栏音视频技术修炼手册

    视频里的I、PB是什么?

    5)视频流中的PTS和DTS又是什么?什么是I、PB?I:intra picture,内编码。 I特点:1)I是一个全压缩编码;2)解码时仅用I的数据就可重构完整图像;3)I描述了图像背景和运动主体的详情;4)I不需要参考其他画面而生成;5)I是PB的参考(其质量直接影响到同组中以后各的质量 P:predictive-frame,前向预测编码。通过将图像序列中前面已编码的时间冗余信息充分去除来压缩传输数据量的编码图像,也称为预测。 I或P;4)P可以是其后面P的参考,也可以是其前后的B的参考5)由于是差值传送,P的压缩比较高。 ,预测比较准确;5B不是参考,不会造成解码错误的扩散。

    2.8K11编辑于 2024-11-14
  • 来自专栏Visual Codex

    视频编码的三种:IB,P

    在视频压缩编码中,所有的被分成了三个种类,IB和P,其实就是Intra-Prediction,Bi-prediction和Prediction。 顾名思义,就是内预测,双向预测以及(单向)预测。 (inter prediction),内预测的话就是在找参照块的时候,只在当前内寻找;而间预测的话,找参照块的时候会在相邻的之间去找相似块。 因此,基于上述所说, 如果说当前是只在当前内寻找参照块的话,那么该就是I 如果在已经编码的里面寻找参照块的话,那么它是P 如果既在已编码的里去寻找参照块,又在未来将要被编码的里去寻找参照块的话 ,那么该就是B

    2.9K20发布于 2021-02-24
  • 来自专栏音视频技术

    Easy Tech:什么是I、PB

    B中的B就代表双向(Bi-Directional)。 参考B和非参考B 我们在上文中学过,B可以参考两或者多,通常,(根据其位置)一在前,一在后。我们也已知道,I不参考任何,P只参考前面的。 那么问题来了——任何都能使用B作为它的参考吗? 答案是肯定的。 如果B可以作为参考,它就被称为参考B。 如果B不用作参考,它便被称为非参考B。 与非参考B相比,大部分解码器在量化参考B时会获得更好的质量,从而减少传播损失。 在视频压缩/流化中使用I、P和B 在理解了I、PB的工作原理之后,我们来解决一个重要问题:为什么要使用它们? 在下面内容中,我们会学习I、PB在视频压缩中最重要的用例。

    4.2K20发布于 2021-09-23
  • 来自专栏Savalone's Blog

    去除 u200B

    前两天检测网站,发现有条连接的前边出现了一个空格,还删不掉,用 F12 看了下出现了一个 u200B 的字符,非常古怪。 没怎么仔细研究,直接替换了事。 ($(".XX").text()).replace(/u200B/g,'')

    85030发布于 2020-02-11
  • 来自专栏TSINGSEE青犀视频

    EasyDSS采用OBS推流传输文件包含B的情况下推送失败问题解决

    OBS推流平台是我们做桌面推流直播经常会用到的推流工具,也有用户将OBS平台和EasyDSS平台结合起来,搭建线上课堂方案,关于如何使用OBS,大家可以通过下文参考一下:如何使用OBS推流平台进行转推。 分析现场后,得知客户是使用 OBS 推送文件到系统中,该文件中包含 B ,因此需要在推流端设置不包含B,即可解决该问题。 OBS默认的输出模式如下: 默认的输出模式为简单模式,首先修改输出模式为高级。 如下图: 然后在配置(Profile)中选择“baseline”,位置如下图: 点击确定后,即可成功设置,推送的 rtmp 流即可不包含B,客户端播放也不再卡顿。

    67420发布于 2021-08-03
  • 来自专栏txp玩Linux

    音视频基础知识(4):I、PB、GOP

    P:P指的是前向参考,它需要参考前一的图片才能够正确把数据解码出来。 BB指的是双向参考,它需要参考前一数据和后一数据才能够正常把数据解码出来。 P:P又称之为前向参考,此的特点是需要参考前一的图像信息才可以正确把图像解码出来。P指的是这一和前一的差别,并通过将图像序列中已经编码后的冗余信息充分去除来压缩传输数据量的编码图像。 BB也称之为双向参考B的特点是以前面的(I或者P)或者后面的(也是I、P)作为参考找出B的预测值,并且取预测差值和预测矢量进行传送。 所以在拉流端解码B的时候不仅需要获得前面的缓存视频,还需要获得后面的缓存视频才能够正常解码B。所以,B虽然压缩率更高,但是更消耗CPU资源。 通常来说,I所占用的字节和体积大于P、而P所占用的字节大于B。所以在码率不变的情况下,可以调整GOP的长度去改善画质,GOP的长度越长,所得到的PB更多,画面的质量和细节就会更好。

    8.9K32编辑于 2022-11-28
  • 来自专栏效率工具

    如何使用 OBSB 站中进行推流

    必备软件及网站我们这次的教程是以 teams,B 站(哔哩哔哩)还有 OBS 为主的,所以在开始之前希望大家可以安装好 teams 还有 OBS 并注册一个 B 站的直播账号。 站: https://www.bilibili.com/软件和 B 站的注册我就不在这里写了,大家可以自行摸索一下,很简单的。 基础设置打开 B 站的,把鼠标放在右侧的头像上,应该可以看到如下画面点击直播中心然后点击我的直播间将直播分类还有房间标题选择好就可以点击开始直播了。 OBS 配置打开 OBS 你应该看到如上图界面。我们点击设置按钮,会看到如下画面最为初学者,不建议大家过多修改这些内容,我们关系的是推流那个选项。 我们点击推流选项会看到如下画面服务:选择自定义服务器: 将 B 站的 rtmp 地址粘贴进来串流密码:将 B 站的直播码粘贴进去完成以上操作后,恭喜你已经完成了开播的 80%的任务了。

    3.8K00编辑于 2024-01-25
  • 来自专栏VNF

    MPEG4视频中,I、pB的判定(转载) By HKL,

    mpeg4的每一开头是固定的:00 00 01 b6,那么我们如何判断当前属于什么呢?在接下来的2bit,将会告诉我们答案。 注意:是2bit,不是byte,下面是各类型与2bit的对应关系:   00: I Frame   01: P Frame   10: B Frame  为了更好地说明,我们举几个例子,以下是16 进制显示的视频编码:   00 00 01 b6 10 34 78 97 09 87 06 57 87 …… I   00 00 01 b6 50 78 34 20 cc 66 b3 89 …… P   00 00 01 b6 96 88 99 06 54 34 78 90 98 …… B 下面我们来分析一下为什么他们分别是I、P、B   0x10 = 0001 0000   0x50 = 0101 0000

    2K10发布于 2020-07-22
  • 来自专栏韩曙亮的移动开发专栏

    【音视频原理】视频的 I P B 概念 ① ( 码率 帧率 分辨率 视频信息 | I - 内部编码 | I - 关键压缩法 | P - 前向预测 )

    : 212kb/s , 这是 视频文件 的 视频信息 在 单位时间内的 数据流量 , 码率越大 , 单位时间内采样率越大 , 数据流精度越高 , 视频质量越高 ; 视频帧率 : 5fps , 1 秒中有 5 的信息 , 帧率越高 , 视频越流畅 ; 视频分辨率 : 1364*788 , 该视频 宽度 1364 像素 , 高度 788 像素 , 分辨率越高显示效果越好 , 占用的码率也就越高 ; 二、 ( Group of Pictures ) 的 第一 , 画面组 内 还有 P B ; I 是 P B 的 参考 ; I 的 质量 决定了 同组 P B ; 如 : 压缩效果达到 6:1 ; " 关键压缩法 " 可以有效地去除 视频的 " 空间冗余信息 " ; 三、 P - 前向预测 1、P 简介 P 全称 " 前向预测 ( Predicted , 不能参考 B ; 只记录 不同点 , 这样可以 充分去除 图像序列 中 前面已编码 的 时间冗余信息 来压缩传输数据量的编码图像 P 又被称为 " 预测 " ; P 中的 图像数据并不是完整的

    3K12编辑于 2024-01-24
  • 来自专栏Android点滴分享

    汇编学习(5),函数,栈

    本篇介绍 本篇介绍下汇编中的函数,栈内容。 栈 对于intel处理器,在调用函数的时候需要保证rsp是16字节对齐的,这样设计是为了更好的支持SIMD。那体现到代码上是怎样呢?

    69910编辑于 2022-12-07
  • 来自专栏韩曙亮的移动开发专栏

    【音视频原理】视频的 I P B 概念 ② ( B - 双向内插 | 画面组 Group of Pictures 概念 | 各类型解码错误影响 | 画面组编解码顺序 | 常用视频压缩算 )

    一、B - 双向内插 1、B 简介 B 全称 " 双向内插 ( Bi-directional Predicted Frames ) " , 采用 双向预测编码方式 , 也就是 B 记录的是 本 B 与 前后 I 或 P 的差别 ; 注意 : B 需要依赖于其前的最近的一个 I 或者 P 及其后的最近的一个 P 进行解码 , B 不能 依赖与 B ; B 依赖的 前一 可以是 I 或者 P ; B 依赖的 后一 肯定是 P , 不可能 是 I ; 要解码B , 不仅要取得之前的缓存画面 , 还要解码之后的画面 , 通过 前后画面 与 本 共 3 的 数据叠加 取得最终的画面 ; B 压缩率高 , B 的 压缩 与 解码 对计算机的性能要求较高 ; 2、B 解码案例 B 解码时 , 需要参考 前后 两 数据 ; 下面的 三 数据进行解码时 , 首先 , 解码 I 关键 , 然后 , 解码 P , 根据 I 解码 P , 最后 , 解码 B , 根据 I 和 P 解码 B

    2.2K10编辑于 2024-01-24
  • 来自专栏鲜枣课堂

    图解5G NR结构

    图4.1 OFDM符号长度计算 无线结构 虽然5GNR支持多种子载波间隔,但是不同子载波间隔配置下,无线和子的长度是相同的。无线长度为10ms,子长度为1ms。 那么不同子载波间隔配置下,无线的结构有哪些不同呢?答案是每个子中包含的时隙数不同。在正常CP情况下,每个时隙包含的符号数相同,且都为14个。 子载波间隔=15Khz(正常CP) 在这个配置中,一个子仅有1个时隙,所以无线包含10个时隙。一个时隙包 含的OFDM符号数为14。 ? 图5.1 子载波间隔=15Khz(正常CP) 子载波间隔=30Khz(正常CP) 在这个配置中,一个子有2个时隙,所以无线包含20个时隙。1个时隙包 含的OFDM符号数为14。 ? 这种概念与传统的LTE TDD子配置相类似,但是又有很多不同点: 1、在NR时隙格式中,上下行业务是以符号作为转换点(在LTE TDD中,上下行业务是以子作为转换点) 2、与LTE TDD上下行子配置相比

    2.9K11发布于 2019-07-19
  • 来自专栏进击的多媒体开发

    Seek 策略以及在有 B 情况下的处理

    而正是这个优化出现了一点问题,现象如下: 已经判断播放点 A 和 Seek 点 B 不在一个 GOP 内,然后执行 av_seek_frame 方法还是把时间点 A 所在 GOP 全部解码了,导致播放上出现了卡顿 这里就很奇怪了,明明判断不在一个 GOP ,那 Seek 时就应该从时间点 B 所在 GOP 的 I 开始解码, 但执行时还是解码了上一个 GOP 的内容。 在没有 B 的情况下,I 的 PTS 等于 DTS ,所以判断不会出问题。 然而正是有了 B ,如果 I 的 PTS 和 DTS 不相等的话,那么上面的判断相当于是拿一个 PTS 值和 I 的 DTS 比较是否同一个 GOP 了。 ,DTS 值为 0 ,有 B ,那么首的 DTS 值就可以用来做偏差值进行计算了。

    66310编辑于 2022-04-08
  • 来自专栏杨飞@益术

    B2B5种经营模式

      这是一种以买家为中心,专门为某一家公司所设计的采购型网站,它是由买方自己投资建设的。例如像英特尔、沃玛特、IBM、通用汽车、戴尔电脑等。

    1.7K10发布于 2019-02-22
  • 来自专栏YoungGy

    MMD_5b_ComputationalAdvertising

    OnlineAlgorithms 与Offline算法的对比 BipartiteMatching 例子 问题描述 一般用于Online场合 贪心算法 描述 算法表现 WorstCases Perfor

    60490发布于 2018-01-02
  • 来自专栏音视频咖

    产品动态|支持 RTMP 协议推流至 TRTC

    - RTMP 协议推流使用手册 - OBS 推流设置 准备工作 安装并打开 OBS(https://obsproject.com/download? sdkappid=140*****66&userid=******rtmp2&usersig=eJw1jdE***************ZLgi5UAgOzoMhrayt*cjbmiCJ699T09juc833IMT94Ld7I0iHZqVDzvVAqkZsG-IKlzLiXOnEhswHu1iUyTc9pv *****D8MQwoA496Ke6U1ip4EAH4UMc5H9pSmv6MeTBWLamhwFnWRBZ8qKGRj8Yp-wVbv*mGMVZqS7w-mMDQL 为简化参数,只支持字符串房间号, 设置输出 RTMP 后台不支持传输 B ,用户可以通过如下设置调整推流端软件的视频编码参数来去除 B 。 FPS 是视频帧率,它控制观看视频的流畅,普通视频帧率有24 - 30,低于16画面看起来有卡顿感,而游戏对帧率要求比较高,一般小于30游戏会显得不连贯。

    2.8K31编辑于 2022-01-10
  • 来自专栏音视频通信产品专栏

    RTMP推TRTC画面抖动问题的解决

    TRTC产品有多种音视频流上行的方式,其中,可以通过OBS等推流设备,使用RTMP协议给TRTC后台上行音视频数据。 2)推上来的流含有B场景:这里不再科普IB、P的概念。B作为双向预测,会在编解码中引入额外的延迟,因此在直播活动中,通常建议不要携带B。 当推流到TRTC含有B,有可能造成画面抖动。 排查建议:最简单的直接查看OBS中的推流配置即可。确保profile选择的是baseline。图片P.S. 为什么选baseline就没有B了H264有4种常见编码画质级别,分别为Baseline profile、Extended profile、Main profile、High profile,依次提高 其中Baseline是基本画质,近支持I、P,天生不含B,所以OBS中配置baseline就不会编码B。这里仅列举推流端的两种常见异常情况,其他原因建议腾讯云工程师协助排查。

    1.2K10编辑于 2022-10-10
  • 来自专栏Java技术栈

    List 去除重复数据的 5 种正确姿势!

    关注阅读更多优质文章 以下介绍五种不同的方法去除 Java 中ArrayList中的重复数据。 例如1,3和5.我们将列表添加到LinkedHashSet,然后将内容返回到列表中。结果arraylist没有重复的整数。 args) { ArrayList<Integer> numbersList = new ArrayList<>(Arrays.asList(1, 1, 2, 3, 3, 3, 4, 5, (hashSet); System.out.println(listWithoutDuplicates); } } 输出结果 [1, 1, 2, 3, 3, 3, 4, 5, 6, 6, 6, 7, 8] [1, 2, 3, 4, 5, 6, 7, 8] 2.使用java8新特性stream进行List去重 要从arraylist中删除重复项,我们也可以使用java

    2.8K20发布于 2020-11-23
  • 来自专栏直播+

    简单red5+obs推流实现直播系统开发,具体设置介绍

    前言:随便搞搞,先放一张效果图, ​浏览器是客户端,obs是本屏幕,来源可以添加摄像头,这里我没有就不说了, 工具:windows7上面装的是obs + red5实在我的企鹅云学生机上面 obs安装这里就不一一描述了 red5装linux安装步骤, 1,这个需要java的jdk,我是直接通过yum命令装的 2,去github下载了red5 https://github.com/Red5/red5-server/releases 楼下图 4,设置为可执行 cd /usr/local/red5 chmod +x *.sh 5,安装 red5.sh 6,编辑启动脚本 vi /etc/init.d/red5 7,把下面写进去, 8 PROG=red5 9 RED5_HOME=/usr/local/red5 10 DAEMON=$RED5_HOME/$PROG.sh 11 PIDFILE=/var/run/$PROG.pid chkconfig --add red5 chkconfig red5 on 9,red5用的端口是5080下行,1935上行,确认打开 10,启动red5 /etc/init.d/red5 start

    5.9K10发布于 2020-09-25
领券