帧率

大场景VR的优化总结

别说谁变了你拦得住时间么 提交于 2020-03-29 12:14:46
留坑,续写。 最近在做外景的项目,被相关的帧率优化和灯光布置困扰的不要不要的。下面写下我是怎么优化帧率和对帧率的一些理解。 帧率,游戏的重要影响因素,会对玩家的手感以及视觉产生重大的影响,一般的游戏帧率控制在30帧-60fps,而VR则要求90帧左右,主要关联的硬件参数为CPU,GPU,以及内存。 而且不要忽略VR是双目的,所以同样面数的场景则VR的性能损耗是普通游戏的两到三倍。所以性能优化在VR里可能跟重新制作游戏的工作量一样大,那优化有什么策略呢?最好的解决方案是根据性能查看器来分析性能能损耗的因素,然后根据逐个因素来调优。 相关的性能分析器有: unity自带的:profile,frame debuger intel:GPA 腾讯:Wetest IOS平台-Xcode Instrument 高通-adreno 侑虎科技-wpa 优化策略: 图像层: 减少Drawcacll-方法:减少材质球的使用,静态批处理,动态批处理等,使用meshbaken和sample lod等插件对模型进行优化处理。降低资源-复用物体的材质,贴图,把复用模型打包成prefab重复使用,其他方案:烘培,遮挡剔除,视线剔除等, 相关的插件: 烘培:GI实时灯光很消耗帧率,基本是无灯光下每个模型增加几个DC值,在无特殊的要求下尽量使用烘培后的灯光能很大程度的优化游戏的性能。烘培步骤:进行灯光设置

FFmpeg Basics学习笔记(2)

六眼飞鱼酱① 提交于 2020-03-21 16:39:04
帧率 fps的概念 帧率,单位FPS(frame per second), 用于衡量视频每秒的处理帧数,对于编码器而言说明编码器在1s的编码的速度,通常可以使用一帧的编码时间倒数简单计算;对于解码器而言,帧率表示1秒内解码帧数。 电视节目中比较常用的帧率制式有NTSC、PAL。另外,帧率可能会因为视频是否是交织(interlaved, i )或逐行(progressive, p )的,描述上有所不同。对于交织的视频,一帧数据包含两场:顶场和底场。 NTSC标准使用60i fps,意思是每秒60场,亦即30帧。(60 fields),30帧 PAL标准使用50i fps,意思是每秒50场,亦即25帧。 如何设置转码帧率 ffmpeg提供了-r用于设置转码之后的帧率,命令行如下: ffmpeg -i input.avi -r 30 output.mp4 使用fps filter 这里介绍第一个filter,名字是fps,可用于设置输出视频的帧率,语法如下: fps=fps=number_of_frames 比如下面命令行将input.avi的帧率处理成25帧,输出到output.mp4中 ffmpeg -i input.avi -vf fps=fps=25 output.mp4 预定义的帧率 ffmpeg提供了几种常用的帧率: 缩写 帧率 准确值 ntsc-film 23.97fps

Linux中编辑视频字幕

﹥>﹥吖頭↗ 提交于 2020-03-17 12:11:29
某厂面试归来,发现自己落伍了!>>> 我作为一位世界电影和地区电影爱好者已经几十年了。这期间字幕是一个必不可少的工具,它可以使我享受来自不同国家不同语言的优秀电影。如果你喜欢观看带有字幕的电影,你可能会注意到有时字幕并不同步或者说并不正确。你知道你可以自己编写字幕并使得它们更完美吗?让我们向你展示一些 Linux 中的基本字幕编辑吧。 从闭路字幕数据中提取字幕 大概在 2012、2013 年我开始了解到有一款叫做 CCEextractor 的工具。随着时间的推移,它已经成为我必不可少的工具之一,尤其是当我偶然发现一份内含有字幕的媒体文件。 CCExtractor 负责解析视频文件以及从闭路字幕closed captions数据中产生独立的字幕文件。 CCExtractor 是一个跨平台的、自由开源工具。自它形成的那年起该工具已经成熟了不少而如今已成为 GSOC 和谷歌编码输入的一部分。 简单来说,这个工具基本上是一系列 脚本 ,这些 脚本 以一种顺序方式一个接着一个地给你提供提取到的字幕。 你可以按照本页的 CCExtractor 安装指南进行操作。 若安装后你想从媒体文件中提取字幕,请按以下步骤操作: ccextractor 该 命令 将会输出以下内容: $ ccextractor $something.mkv CCExtractor 0.87, Carlos Fernandez

APP测试工具-Doraemonkit使用

江枫思渺然 提交于 2020-03-10 16:26:30
Doraemonkit介绍 DoraemonKit(哆啦A梦)一款提供给开发、测试、设计同学的提高工作效率的研发助手类开源产品,目前支持iOS和Android两个平台。每一项功能都解决了我们在研发测试过程中的一个痛点。使用DoraemonKit,您无需使用电脑或者IDE,就可以对App各项指标进行实时的检测,包括App信息、文件系统、Crash日志、网络抓包、CPU、内存、帧率等等。 通过接入DoraemonKit组件,可以方便支持如下所示的多种调试工具: 功能模块 iOS、Android、微信小程序支持。iOS三大专区18项功能,Android三大专区15项功能。包含通用工具、性能工具和视觉工具三大模块。 使用指南,参考官方文档:http://xingyun.xiaojukeji.com/docs/dokit/#/appInfo 一、常用工具 【App 信息查看】 快速查看手机信息,App 信息,权限信息的渠道,避免去手机设置查找或者查看项目源代码的麻烦; 【沙盒浏览】 App 内部文件浏览的功能,支持删除和预览, 并且能通过 AirDrop 或者其他分享方式上传到 PC 中,进行更加细致的操作; 【MockGPS】 App 能定位到全国各地,支持地图地位和手动输入经纬度; 【H5任意门】 开发测试同学可以快速输入 H5 页面地址,查看该页面效果; 【Crash查看】

iOS--App功耗优化

巧了我就是萌 提交于 2020-03-04 08:55:09
良好的用户体验需要如下要素: 电池寿命长。随着能效降低,电池寿命也会降低。但用户想让自己的移动设备全天候待命。 速度快。iOS系统处理复杂操作时仍能提供很好的性能。 响应快。同一时刻消耗太多资源会使UI卡顿,响应用户速度变慢。 温度低。app消耗的硬件资源的越多,系统工作越繁重,设备的温度就会逐渐上升。这时系统会通过一些措施降低设备温度。   iOS运用了很多先进的节能技术确保用户有很好的用户体验,包括软硬件配合优化、先进的App调度机制、网络延时操作、任务优先级管理机制等。   App中很小的低效行为在整个系统中累加后,会对电池寿命、性能、响应速度和温度产生明显的影响。使用苹果推荐的API,以确保系统可以正确地判断如何更好地管理我们的app和app使用的各种资源。分批、减少网络操作。尽可能避免不需要的UI刷新。功耗大的操作应该在用户的控制之中。比如,如果用户正在玩一个视图非常复杂的大型游戏,电量消耗很快用户是可以理解的。不响应用户操作时,app尽量不要执行任何操作。 基本概念   没有一劳永逸地解决能耗问题的方案。很多技术和操作影响着电量的使用:   CPU。 CPU是电能消耗大户,高CPU使用量会迅速消耗掉用户的电池电量。app做的每件事几乎都需要用CPU,所以使用CPU要精打细算,真正有需要时通过分批、定时、有序地执行任务。    设备唤醒 。iOS设备通过睡眠来节能

RTP 时间戳的处理

吃可爱长大的小学妹 提交于 2020-02-28 20:38:19
原文: http://general.blog.51cto.com/927298/328220 RTP 时间戳的处理   时间戳字段是RTP首部中说明数据包时间的同步信息,是数据能以正 确的时间顺序恢复的关键。时间戳的值给出了分组中数据的第一个字节的采样时间(Sampling Instant),要求发送方时间戳的时钟是连续、单调增长的,即使在没有数据输入或发送数据时也 是如此。在静默时,发送方不必发送数据,保持时间戳的增长,在接收端,由于接收到的数据分组的序号没有丢失,就知道没有发生数 据丢失,而且只要比较前后分组的时间戳的差异,就可以确定输出的时间间隔。   RTP规定一次会话的初始时间戳必须随机选择,但协议没有规定时 间戳的单位,也没有规定该值的精确解释,而是由负载类型来确定时钟的颗粒,这样各种应用类型可以根据需要选择合适的输出计时精度。   在RTP传输音频数据时,一般选定逻辑时间戳速率与采样速率相同, 但是在传输视频数据时,必须使时间戳速率大于每帧的一个滴答。如果数据是在同一时刻采样的,协议标准还允许多个分组具有相同的时 间戳值。   RTP协议没有规定RTP分组的长度和发送数据的速度,因而需要根据具体情况调整服务器端发送 媒体数据的速度。对来自设备的实时数据可以采取等时间间隔访问设备缓冲区,在有新数据输入时发送数据的方式,时间戳的设置相对 容易

G6 3.3 性能战斗机

♀尐吖头ヾ 提交于 2020-02-27 12:16:15
本文作者:十吾 🌈G6 3.3 正式版今日正式发布。 AntV G6 是一款开源的图可视化引擎,专注于图可视化及图分析领域。 欢迎关注和 star 我们的 GitHub: https://github.com/antvis/G6 官网: https://g6.antv.vision/zh/ 图——实体与关系的集合,往往具有庞大的数据量。最常见的图可视化将关系数据绘制为大量节点和边元素,而每一个元素也可能由多种图形复合而成,例如最为常见的带文本节点。图元素的样式变化万千,渲染、交互性能一直是关系数据可视化中最为棘手问题之一。特别是在前端计算资源有限的情况下,如何提升图可视化的性能,成为 G6 一大难题。 2020 年伊始,我们终于向着这一难题跨出了第一步 —— 性能卓越的 G6 3.3 正式发布 。让我们一睹性能战斗机的究竟吧! 战斗机之引擎 G6 本次性能升级主要归功于底层渲染引擎的全面升级。由于用户在对图进行交互时,往往是对局部元素进行操作,例如:更新样式、拖拽…。而频繁的渲染是 G6 性能较低的主要因素。因此,我们使用「 局部渲染 」机制替代了以往的全局渲染。 什么是局部渲染?如上图所示,我们希望更新图 a 中的星形的填充色为绿色: 全局渲染:将会如图 b 所示重新绘制由红色边框标识的整个画布; 局部渲染:首先计算需要更新的图形的最小包围盒,即图 c 所示的红色边框标识区域

论文笔记:SlowFast Networks

帅比萌擦擦* 提交于 2020-02-25 19:58:33
粗读概念 1.论文提出了什么? 论文提出了一种视频分类的新方法, 新方法有两条pathway. 第一条是Slow pathway,主要作用在低帧率的模式下,捕获spatial semantics;另外一条是Fast pathway,主要作用在高帧率的模式下,依靠时间维度上的高分辨率捕获视频的动作信息。这种方法的intuition是现实生活中大多数动作都是比较慢的,例如人,从整体看他可能在空间上没有动作,此时用Slow pathway能更好的捕获他的spatial semantic信息,而同时,他的手可能在以一个比较高的速度挥舞,此时利用Fast pathway可以更好的捕捉手部的动作信息,结合这两条通路信息,则可以更好地表示人物的spatial semantic和motion信息。 2. 方法概述 方法很简洁,就是slow,fast两条通路,最后融合预测 精读 3.SlowFast Networks 3.1 Slow Pathway 可以是任何的CNN网络,例如i3d,Slow主要体现在视频的采样帧率上,这篇论文里面temporal stride是16(也就是每16个frame提1) 论文中使用的backbone是3D ResNet,*论文中提到没有使用temporal downsampling,因为在输入步长很大的时候会造成信息损失(文中步长为16) 此外Slow

显示帧率

橙三吉。 提交于 2020-02-17 16:13:52
#include<opencv2\opencv.hpp> #include <iostream> using namespace cv; using namespace std; int main() { Mat frame; // 可从摄像头输入视频流或直接播放视频文件 VideoCapture capture(0); double fps; char str[10];//用于存放帧率的字符串 double t = 0; while (1) { t = (double)cv::getTickCount();// getTickcount函数:返回从操作系统启动到当前所经过的毫秒数 if (capture.isOpened()) { capture >> frame; // getTickFrequency函数:返回每秒的计时周期数 // t为该处代码执行所耗的时间,单位为秒,fps为其倒数 t = ((double)cv::getTickCount() - t) / cv::getTickFrequency(); fps = 1.0 / t; sprintf(str, "%.2f", fps); // 帧率保留两位小数 string fpsString("FPS:"); fpsString += str; // 在"FPS:"后加入帧率数值字符串 // 将帧率信息写在输出帧上

流媒体相关基础知识

好久不见. 提交于 2020-02-09 14:03:52
流媒体相关基础知识 分辨率、像素、480/720/1080P 帧率 分辨率、像素、480/720/1080P P:表示逐行扫描 (progressive scan) 480P 分辨率:640*480 = 30万像素 720P 分辨率:1280*720 = 921600 92万像素 1080P 分辨率:1920*1080 = 2073600 200万像素 接近2K 4K 分辨率:4096*2160 = 8847360 800万像素 4个2K 帧率 帧率或者称FPS:是指每秒显示的图片数。25以上人眼感觉在视频连续播放。帧率越高越流畅、逼真。30可以接受,60更逼真。超过75一般感觉不到流畅度提升。超过显示器刷新率浪费。 来源: CSDN 作者: weixin_41565133 链接: https://blog.csdn.net/weixin_41565133/article/details/104232869