9 dancing_night

尚未进行身份认证

我要认证

不积跬步无以至千里,qq联系方式:821486004

等级
TA的排名 1w+

osg之源码跟踪-----Viewer::eventTraversal

1、概述此函数是事件遍历函数,主要做以下几件事:a、把设备+窗口的事件收集起来b、从SceneData开始遍历,给每个节点事件回调。getSceneData()->accept(*_eventVisitor);c、以每个从属相机为根遍历事件回调。d、调用主相机以及从属相机事件回调(不递归)e、遍历调用Viewer加的事件回调f、调用相机操作器回调g、设置相应状...

2020-04-30 10:46:42

osg之源码跟踪-----ViewerBase::frame

1、概述此函数是渲染一帧的主函数,主要做的有以下几点:a、判断是否为第一帧,如果是则初始化。b、advance函数,主要做一些时间计算,设置诸如rate之类的状态值,其中Viewer::advance最后还会做对象注销工作,而CompositeViewer::advance不会做这个工作。c、eventTraversal时间遍历d、更新遍历e、渲染遍历2、示意流程图如下...

2020-04-28 15:58:21

osg之源码跟踪-----Viewer::realize

1、概述 搞osg也有几年了,从来没系统的跟过代码,最近打算把代码好好跟一下。 今天跟踪的是Viewer::realize函数,此函数只初始化一次,过后不再初始化,主要干啥呢。 a、初始化窗口 b、初始化纹理最大尺寸和缓冲最大大小 c、设置开始时间 d、开启线程。 下面是流程图(不规范,看得懂意思就好...

2020-04-27 17:24:44

osg+ffmpeg播放视频

1、概述原理很简单,ffmpeg负责解码,然后把解码的图像当做纹理贴到osg创建的场景中去,看代码。2、代码#include <osg/Billboard>#include <osg/Texture2D>#include <osgDB/ReadFile>#include <osgViewer/Viewer>#include &l...

2020-04-03 17:06:08

Android Studio 搭建 + 第一个helloworld过程中遇到的问题记录

第一:搭建完成后,第一个程序死活编译不过报错:Could not find any version that matches com.android.support:appcompat-v7:29+. Could not find any version that matches com.android.support:appcompat-v7:29+. ...

2019-07-05 13:54:45

ffmpeg4.x版本录音

1、最近一网友找到我,说我博客上的录音程序用不起了,研究一番发现是他用我代码然后链接ffmpeg库。发现版本改动还挺大,故此从新上传一份依赖最新版本的ffmpeg的录音程序,以便大家参考。2、直接上代码:/**最简单的录音*缪国凯 Mickel*821486004@qq.com*本程序用目前最新ffmpeg录音*2018-11-19*/#include <win...

2018-11-19 16:02:09

AVFrame存储YUV420P对齐分析

1、概述被这个问题困扰很久,由于懒癌晚期,一直都是云里雾里,最近终于把微信聊天记录里的视频分析了一下,记录于此已做备忘。2、分析过程用ffmpeg写了个解码程序,遍历微信聊天视频目录找出所有视频文件,一个600多个,挨个解码,并把其长宽,AVFrame.linesize[0],AVFrame.linesize[1],AVFrame.linesize[2]打印出来,做对比,终于发现一些规律。下面是打...

2018-06-27 16:37:16

ffmpeg用filter添加水印

1、利用filter添加水印,流程不过多介绍2、代码/** * 最简单的基于FFmpeg的AVFilter例子 * * 缪国凯(MK) * 821486004@qq.com * * http://blog.csdn.net/dancing_night * * 本程序使用FFmpeg的AVfilter实现了水印添加功能。 * * */#include "stdafx...

2018-06-26 17:34:47

处理AVFrame使存储的YUV旋转(YUV420P,旋转90的倍数)

1、原理介绍以YUV420P为例,AVFrame结构体存储YUV为data[0]存储Y,data[1]存储U,data[2]存储V,按一行一行的顺序存储,知道如何存储后,要旋转90的倍数就简单了。2、代码旋转90:for (int i = 0; i < m_srcW; i++) { for (int j = 0; j < m_srcH; j++) { m_Fra...

2018-06-26 16:00:49

ffmpeg不用filter添加水印

1、流程介绍openInput->openPic->InitOutput->readFrame->decode->operateAvframe->encode->writeFile->end2、核心代码核心代码为处理AVFrame如下:for(int j = 0; j < m_markH; j++) { if ((m_y + j) &...

2018-06-26 15:48:06

ffmpeg用drawtext filter 给视频加字幕,代码实现

简介:利用drawtext filter给视频加字幕,忽略音频,只处理一个视频。流程:openinput->openout->readpacket->decode->push into filter->pull out ->encode->writefile重点看下CPenWordIntoPic里面如何初始化filter的,工程在底部的链接里。贴一下初始化...

2018-06-01 13:46:51

QGC杂记

关于QGC一些杂乱的笔记,记录于此备忘。MainWindow在QGCApplication::_initForNormalAppBoot中构造QGCQmlWidgetHolder 主wiget在MainWindow中初始化QGCQmlWidgetHolder包含QGCQuickWidgetMainWindow构造函数加载MainWindowHybrid.qmlMainWindowHybrid.qm...

2018-04-08 11:00:16

视频监控安防平台-国标28181 2016-GB28181 2016版检测经历 (平台上联和下联检测)

最近和朋友一起做GB28181检测,特此纪念下:国标28181 2016-GB28181 2016版本的检测,检测项目大体分为:上联和下联  人员:控件开发人员1个、后台服务器开发人员1个检测时间:2天 (第一天前半天基本在调试前端设备)国标28181-2016版本相对于GB28181-2011版本大体修改内容如下:(目前只列出检测主要的修改功能)

2017-11-08 17:43:50

关于用ffmpeg转手机视频发现视频长宽倒了的问题

1、概述最近用代码转手机视频,发现一个很奇怪的现象,明明源视频物体是竖着的,转了就不对,找了半天发现是以前一直没在乎的视频流rotate值。特此做个笔记。2、解决方案我们可以在输入的流里通过av_dict_get读出rotate值,并把这个值写到输出流里。代码如下: if (inPutStream) { AVDictionaryEntry *tag = NULL;

2017-11-03 20:42:04

Win7(Windows 7)下用VS2013(Visual Studio 2013)编译live555

转自:http://blog.csdn.net/caoshangpa/article/details/53200527一.live555简介live555是一个为流媒体提供解决方案的跨平台C++开源项目,它实现了对标准流媒体传输协议如RTP/RTCP、RTSP、SIP等的支持。live555能在Linux,Mac OS X,Windows和QNX等多个平台编译和运行。目前,它被用于

2017-06-08 11:00:56

RTP 时间戳

最近被RTP的负载类型和时间戳搞郁闷了,一个问题调试了近一周,终于圆满解决,回头看看,发现其实主要原因还是自己没有真正地搞清楚RTP协议中负载类型和时间戳的含义。虽然做RTP传输,有着Jrtplib和Ortp这两个强大的库支持,一个是c++接口,一个是c语言接口,各有各的特点,各有各的应用环境,但是仅仅有库就能解决一切问题吗?可能仿照着一些例子程序,你能够完成主要的功能,但一旦问题发生了,不清楚原

2017-05-15 17:01:18

H264的RTP负载打包的数据包格式,分组,分片

H264的RTP负载打包的数据包格式,分组,分片 转自:http://blog.csdn.net/wudebao5220150/article/details/138130011.    RTP数据包格式RTP报文头格式(见RFC3550 Page12):    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 12 3 4 5 6

2017-04-06 10:54:52

RTP协议全解析(H264码流和PS流)

目录(?)[+]写在前面:RTP的解析,网上找了很多资料,但是都不全,所以我力图整理出一个比较全面的解析,其中借鉴了很多文章,我都列在了文章最后,在此表示感谢。互联网的发展离不开大家的无私奉献,我决定从我做起,希望大家支持。原创不易,转载请附上链接,谢谢http://blog.csdn.net/chen495810242/article/details/

2017-04-06 10:23:07

用ffmpeg提取mp4的h264码流写文件花屏

1、用ffmpeg提取mp4的h264码流写文件的方法网上有很多,不知道的请参考雷神博客:http://blog.csdn.net/leixiaohua1020/article/details/118008772、但是这么写出来的文件是有问题的,首先的确能播放,但是会有很大几率出现花屏a、首先说说解决方案其实很简单,也是利用av_bitstream_filter_filter方法,如下

2017-04-01 17:30:23

关于资源编译时报错RC : fatal error RC1107: invalid usage; use RC /? for Help

1、概要最近编译QGroundControl时遇到这问题,到处找解决方案。2、网上的答案网上关于这问题不少,include目录下,一个是无效路径,另一个是有绝对路径斜杠和反斜杠之内的,关于我的工程,没有这些,于是就懵逼了。3、解决过程首先这个错是rc.exe报错,然后查看我工程的资源编译Command Line,如下图:这些命令啥意思,完全懵逼,查看rc的帮助,如下

2016-12-16 12:48:08

查看更多

勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。