自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

CodeFoxTiger的专栏

唯有格物 方能致知

  • 博客(27)
  • 收藏
  • 关注

原创 Kurento-room-demo 模块图

2016-12-19 17:50:26 2323 1

转载 ANSI UNICODE UTF-8

UTF-8是Unicode的一种实现方式,也就是它的字节结构有特殊要求,所以我们说一个汉字的范围是0X4E00到0x9FA5,是指unicode值,至于放在utf-8的编码里去就是由三个字节来组织,所以可以看出unicode是给出一个字符的范围,定义了这个字是码值是多少,至于具体的实现方式可以有多种多样来实现。UTF-8是一种变长字节编码方式。对于某一个字符的UTF-8编码,如

2015-03-14 11:25:04 665

转载 DVD PullDown 详解

3:2/2:2 Pull down模式基于逐行扫描技术上进行的,针对以电影胶片为最初拍摄素材媒介的NTSC视频软件的一种视频信号再生技术。大部分的DVD电影和其他以视频信号媒体记载的电影的播放都是先经过胶片影像到视频信号的转换。原来的使用电影胶片拍摄的过程中拍摄速度是24帧/秒。在电影院播放时按每格放2次的原理实现48帧/秒的速率,这就是实现2:2Pull Down对应模式。另外,由于液晶电视常规

2014-12-05 16:50:21 2483

原创 由一道面试题目想到的

class CTask{public: CTask() { std::cout << "Construct is called" << std::endl; }public: static int x; int y; void *operator new(size_t nSize) { x = 0; y = 0; return m

2014-09-18 20:22:07 662

转载 计算机负数之表达

原码:将一个整数,转换成二进制,就是其原码。如单字节的5的原码为:0000 0101;-5的原码为1000 0101。反码:正数的反码就是其原码;负数的反码是将原码中,除符号位以外,每一位取反。如单字节的5的反码为:0000 0101;-5的原码为1111 1010。补码:正数的补码就是其原码;负数的反码+1就是补码。如单字节的5的补码为:0000 0101;-5的原码为1111 1011

2014-08-28 11:11:01 776 1

转载 GBK unicode等

字符编码的问题看似很小,经常被技术人员忽视,但是很容易导致一些莫名其妙的问题。这里总结了一下字符编码的一些普及性的知识,希望对大家有所帮助。还是得从ASCII码说起说到字符编码,不得不说ASCII码的简史。计算机一开始发明的时候是用来解决数字计算的问题,后来人们发现,计算机还可以做更多的事,例如文本处理。但由于计算机只识“数”,因此人们必须告诉计算机哪个数字来代表哪个特定字符,例如65代表

2014-08-11 14:54:24 912

转载 DVD subtitle standard

DVD subtitles --------------- 0. Introduction 1. Basics 2. The data structure 3. Reading the control header 4. Decoding the graphics 5. What I do not know yet / What I

2014-07-04 16:28:12 800

原创 DVD标准参考网站

http://stnsoft.com/DVD/

2014-07-01 17:17:50 872

转载 行程长度压缩算法

Run-Length Encoding(RLE)行程长度的原理是将一扫描行中的颜色值相同的相邻像素用一个计数值和那些像素的颜色值来代替。例如:aaabccccccddeee,则可用3a1b6c2d3e来代替。对于拥有大面积,相同颜色区域的图像,用RLE压缩方法非常有效。由RLE原理派生出许多具体行程压缩方法:   1、PCX行程压缩方法:该算法实际上是位映射格式到压缩格式的转换算法,该算法

2014-07-01 17:14:56 2739

转载 RGB转灰度图的几种常用算法

方法一:    对于彩色转灰度,有一个很著名的心理学公式:                          Gray = R*0.299 + G*0.587 + B*0.114     方法二:     而实际应用时,希望避免低速的浮点运算,所以需要整数算法。     注意到系数都是3位精度的没有,我们可以将它们缩放1000倍来实现整数运算算法:     

2014-06-16 10:12:24 704

原创 再谈VTable

最近十分颓废,为了改变这种状态,建议自己zai'yi'ci

2014-04-20 21:56:05 747

原创 YUV420p旋转代码

从网上找的一团乱糟糟 索性自己写个吧 其实

2014-04-12 19:24:29 3134 1

原创 计算结构体成员偏移地址的一种方法

同事说起的 个人想了一下 还真没什么思路 后学习了一下 附代码于下 很简便的一种方式 int _tmain(int argc, _TCHAR* argv[]){ struct MyStruct { int m_age; char *m_name; double m_test; }; MyStruct *st = (MyStruct *)100;

2014-03-21 19:02:42 935

原创 C/c++中移位与负数表达的一点研究

最近在项目开发过程中,遇到一些移位问题和有符号无符号转换时的表达问题,造成了种种的困惑。所以,个人抽出一点时间与之做了个彻底的了断。废话少说。切入正题.    来看一下代码:     int _tmain(int argc, _TCHAR* argv[]){ char ch = 0x13; int value = ch << 8; value = ch << 16;

2014-03-21 13:49:56 1440

转载 H264 NAL单元头结构

NAL全称Network Abstract Layer,即网络抽象层。在H.264/AVC视频编码标准中,整个系统框架被分为了两个层面:视频编码层面(VCL)和网络抽象层面(NAL)。其中,前者负责有效表示视频数据的内容,而后者则负责格式化数据并提供头信息,以保证数据适合各种信道和存储介质上的传输。NAL单元是NAL的基本语法结构,它包含一个字节的头信息和一系列来自VCL的称为原始字节序列载荷(R

2013-10-31 10:21:13 1231

原创 自己封装的PCM写成WAV文件 欢迎指点

#pragma oncetypedef struct{ unsigned short int channels; unsigned long samplespersec; unsigned short int nBitsPerSamples; }WAVPARAMETER;//wav头的结构如下所示: typedef struct{ char fcc

2013-07-19 19:00:58 1183

原创 ffmpeg源码分析之四-----avformat_open_input()下

上篇分析到在Init_input中打开一个媒体文件 本篇将分析剩下的流程。看代码static int init_input(AVFormatContext *s, const char *filename, AVDictionary **options){ int ret; AVProbeData pd = {filename, NULL, 0}; if

2013-06-28 16:18:20 2522

原创 ffmpeg源码分析之三avformat_open_input()上

URLProtocol ff_file_protocol = { .name = "file", .url_open = file_open, .url_read = file_read, .url_write = file_write, .url_seek

2013-06-26 23:24:05 2824

原创 ffmpeg代码分析之2——模拟C++多态之C实现篇章

/*********C++定义多态方式*******/class AVCodecBase{public: virtual int init(AVCodecContext *); virtual int decode(AVCodecContext*); virtual int encode(AVCodecContext *, uint8_t *buf, int buf

2013-06-25 17:50:24 1095

原创 C++三级指针传址调用

//这是技术交流群中一哥们问到的 实际中这么写肯定很2的 属于没事找抽型的class A{public: void OutPut(){ cout<<"保存的数字 = "<<nTest<<endl; } void SetNum( int num ) { nTest = num; }private: int nTest;};void Test(A ***p1,A

2013-06-04 21:42:51 1273

原创 OnInitDialog与OnSize的执行顺序

查了网上好多资料 都说对话框程序的执行顺序为:1.OnSize()  2.OnInitDialog()但是今天在群里一哥们有个Demo 对话框程序的执行顺序为1.OnInitDialog() 2.OnSize()拿到Demo后 经过再三研究 发现:当窗口style = popup 时 执行顺序:1.OnSize()  2.OnInitDialog()当窗口style= overla

2012-11-14 14:30:43 1616

原创 使用QT实现简单艺术字

本来这篇文章在前一段时间就该发表的,无奈最近心情一直不太好,今天稍微好了一点,赶紧补上,以作备忘录.    首先需要明确三点知识:(1)QPen是用来画线条的(2)QBrush是用来填充的 (3)QPainterPath是用来指定绘制路径的。     不想多说,直接给出代码,具体意思自己思考: QPainter pa(mp_image); QPen myPen

2012-09-20 15:57:34 2968

转载 库函数strtok的实现

NetBSD实现: 1: char* strtok_r(char* string_org,const char* demial,char** last) 2: { 3: const char* spanp; //span表示分隔,p表示指针 4: char c, sc; //c表示char字符,sc表示 span char 5: char* tok;

2012-09-10 11:10:07 872

转载 1080i、720p、1080p、N制、P制、帧率、高清电视、全高清

数字电视的发展从1080i到720p再到1080p 1080i和720p同是国际认可的数字高清晰度电视标准。原NTSC国家采用的是1080i/60Hz格式,与NTSC模拟电视场频相同。而欧洲以及中国等一些原PAL制国家则采用了1080i/50Hz模式,场频与PAL模拟电视相同。至于720p,则由于IT厂商更深的渗透到了电视行业而成为了一个可选的标准,目前开始在以光盘为载体的HDTV播放机领域拓

2012-09-05 14:48:21 4923

转载 C++经验之谈

先把C++的语法全面复习一下,建议看看《Thinking inC++》,也就是《C++编程思想》,这本书并不是像有些人说的那么烂,对掌握基本C++语法来说足够了。然后你去买一本清华大学出版社出版的《数据结构(C++版)》,扎扎实实从第一章学到最后一章,把每道习题都做一下,遇到C++编程方面的问题就去回过头翻C++基础书,比如说《C++编程思想》。这时候你遇到的问题应该出不了C++基础语法的

2012-08-30 18:19:04 619

原创 使用钩子技术实现QT中的全局热键

QT中的窗体只有获得焦点的情况下,才会响应按键或鼠标事件(MFC的窗体是否也是如此?)。但是在实际开发过程中,我们常常需要的是即使某些窗体处于失去焦点状态时,也能响应相应的键盘或者鼠标事件。那么,应该如何实现呢?    笔者在遇到这种情况时,首先考虑的还是使用事件监控的方式,但笔者在实际使用中发现,该种方式不是太适合。(主窗体需要监控所有的子窗体并且在监控QAxWidget时情况也很特殊,笔者

2012-08-21 15:49:49 14474 4

原创 QSlider中的快捷键问题

在实际开发过程中,有时我们往往不需要QSlider提供的快捷键功能。那么,究竟如何才能去掉QSlider中的快捷键呢?    笔者当时考虑的方法有两种,现在做下记录,以备以后查询.1.在使用QSlider的父窗体类中,监控QSlider的事件,发现是键盘事件时,直接返回。但该种方式仅仅是通知了父窗体QSlider上有键盘事件发生,并未阻止QSlider对快捷键的响应。暂时还没有完全弄清QT内部的消

2012-08-20 11:23:29 1439

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除