自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(224)
  • 资源 (8)
  • 收藏
  • 关注

原创 gcc编译webrtc x64

此处“absl::optional tempchunk = chunk;”赋值失败,改用memcpy复制内存的方式,前4个字节0x01、0x00、0x00、0x00,第5个字节起拷贝chunk的内存。链接: https://pan.baidu.com/s/1oHVz9bxXlW3Q6uO996c5XA。最后在out\Release-x64\obj路径下生成libwebrtc.a。1、下载离线版webrtc(也可以翻墙下载webrtc)

2023-09-27 09:59:46 707

原创 VS2019编译FFMPEG 5.2.r109878

5、拷贝yasm.props、nasm.props等文件到C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\BuildCustomizations。3、进入E:\working\FFmpegCompile\FFmpegMFC\FFmpeg\SMP,执行SMP下的project_get_dependencies.bat,下载时间有点久,耐心等待一会。其他的都是小问题了。

2023-05-11 18:48:15 826

转载 本地socket unix domain socket

socket API原本是为网络通讯设计的,但后来在socket的框架上发展出一种IPC机制,就是UNIXDomain Socket。虽然网络socket也可用于同一台主机的进程间通讯(通过loopback地址127.0.0.1),但是UNIX Domain Socket用于IPC更有效率:不需要经过网络协议栈,不需要打包拆包、计算校验和、维护序号和应答等,只是将应用层数据从一个进程拷贝到另一个进...

2018-05-30 19:03:28 2717

原创 JavaScript时间函数用法总结(部分)

1、yyyy-mm-dd hh:mm:ss转换成时间戳1522910473000:格式yyyy-MM-dd转为yyyy/MM/dd再转换成时间戳var dDateTime = new Date(strTime.replace(new RegExp("-", "gm"), "/"));//strTime为yyyy-mm-dd hh:mm:ss格式var lDateTime = dDateTime....

2018-04-05 15:11:44 413

原创 安卓开发环境搭建后碰到的疑难问题

1、cvc-complex-type.2.4.d: 发现了以元素 'd:skin' 开头的无效内容。此处不应含有子元素。 D:\Software\android-sdk-windows\tools\lib\devices.xml覆盖D:\Software\android-sdk-windows\system-images\android-27\android-tv\x86\devices.xm

2017-12-01 11:13:05 928

原创 windows和linux下select定时器demo

// TestTime.cpp : Defines the entry point for the console application.//#ifdef WIN32 #include "stdafx.h" #include #include #pragma comment(lib,"Ws2_32.lib")#else #include #include #endi

2017-11-30 11:33:06 965

转载 HTTP文件断点续传的原理

前几天一个同事跑过来找我说,我们在广告素材视频这块想做断点续传,就是这次某个视频缓存到一半,下次不用重头开始,可以在原来停留得位置开始继续下载.以提供更好的用户体验。同时说需要我们支持吐素材地址的业务接口告诉终端最后修改时间/文件签名(md5),用这个用来判断我当前要下的文件有没有变化,同时告诉终端文件的Size大小.我一细想,这个问题压根不需要通过改变现有接口提供更多的数据来做.

2017-11-29 09:10:37 580

原创 linux调试错误原因总结(部分)

1、Segmentation faulta、直接拷贝到ftp上造成,改用tftp上传不会有该问题;b

2017-11-15 14:49:20 292

转载 cab包制作使用

1、如果需要创建cab文件,首先需要Cabarc或者Makecab,它们随着Cabinet SDK的安装就有了,Cabinet SDK的下载地址是http://msdn.microsoft.com/workshop/management/cab/cabdl.asp。Cabarc可以创建、查看或者解出cab里面的文件,而Makecab则只可以用来创建cab文件。2、制作cab文件时需要将所有

2017-11-14 10:31:56 776

原创 小技巧、小经验(6)

1、PostMessage与PostThreadMessage的区别消息队列是属于线程的,Post消息就是把消息放到目标线程的消息队列中。这两者的区别在于:PostMessage 通过指定目标窗口句柄来确定目标线程,通常情况下由窗口过程来处理消息;PostThreadMessage 直接指定目标线程ID来确定目标线程,没有目标窗口,只能在消息循环中直接根据消息类型做相应的处理。在程序设计的选择方面...

2017-11-03 14:48:19 210

原创 ubuntu linux虚拟机配置多个IP地址

1、设置里允许启用多个网络连接2、修改interfaces配置文件vim /etc/network/interfacesvim /etc/network/interfacesauto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp auto eth0:0 iface

2017-09-28 18:10:06 4019

原创 YUV格式数据存储方式总结(常见的)

YUV格式有两大类:平面(planar)和紧凑(packed)。对于planar的YUV格式,先连续存储所有像素点的Y,紧接着存储所有像素点的U,随后是所有像素点的V。对于packed的YUV格式,每个像素点的Y,U,V是连续交*存储的。以下缩写p表示“紧凑”,sp表示“半紧凑”。以分辨率8*4为例,数据存储方式如下。1、yuyv(yuv422)【YUY2】:

2017-09-15 11:36:02 3015

转载 图文详解YUV420数据格式

YUV格式有两大类:planar和packed。对于planar的YUV格式,先连续存储所有像素点的Y,紧接着存储所有像素点的U,随后是所有像素点的V。对于packed的YUV格式,每个像素点的Y,U,V是连续交*存储的。 YUV,分为三个分量,“Y”表示明亮度(Luminance或Luma),也就是灰度值;而“U”和“V” 表示的则是色度(Chrominance或Chro

2017-09-15 09:28:30 328

原创 Ubuntu14.04安装及问题解决

注意安装版本不能过老,否则没有安装包镜像、网上找安装包资源很麻烦。1、设置root密码sudo passwd输入2次密码即可2、ssh安装sudo apt-get install openssh-server3、Ubuntu14.04解决ssh登录不上http://blog.sina.com.cn/s/blog_5f435c130102v6p

2017-08-18 16:10:04 337

转载 项目实用makefile

在上一篇文章“小项目实用makefile”中,已经说明了单个makefile管理层次目录的局限性。本文,主要总结一下项目中的一种实用makefile树写法,为10来个人协作的中小型项目makefile编写,提供参考。                1. 需求        从实用角度,makefile树应该达到以下需求:        1)自动加入编译系统。新增目录、文件后,能够自

2017-08-09 17:32:57 274

转载 H.264编码原理以及I帧B帧P帧

前言-----------------------       H264是新一代的编码标准,以高压缩高质量和支持多种网络的流媒体传输著称,在编码方面,我理解的他的理论依据是:参照一段时间内图像的统计结果表明,在相邻几幅图像画面中, 一般有差别的像素只有10%以内的点,亮度差值变化不超过2%,而色度差值的变化只有1%以内。所以对于一段变化不大图像画面,我们可以先编码出一个完整 的图像

2017-08-04 10:50:01 481 1

转载 《VC网络通讯编程实例》目录

(1)基本网络编程实例Winsock实现网络聊天室【\chap1\ChatRoom(Winsock)】CSocket实现聊天室【\chap1\ChatRoom(Csocket)】(2)本地计算机网络编程实例获取计算机的名称和IP地址【\chap2\Local】获取计算机的子网掩码【\chap2\ Local】获取计算机的DNS设置【\chap2\ Local】获

2017-06-14 22:26:00 742

原创 VS错误总结(部分)

1、问题1 1>fatal error C1900: “P1”(第“20080116”版)和“P2”(第“20070207”版)之间 Il 不匹配1>LINK : fatal error LNK1257: 代码生成失败 解决:安装VS2008 SP1.

2017-05-29 14:16:34 2413

转载 初探nginx架构(100%)

众所周知,nginx性能高,而nginx的高性能与其架构是分不开的。那么nginx究竟是怎么样的呢?这一节我们先来初识一下nginx框架吧。nginx在启动后,在unix系统中会以daemon的方式在后台运行,后台进程包含一个master进程和多个worker进程。我们也可以手动地关掉后台模式,让nginx在前台运行,并且通过配置让nginx取消master进程,从而可以使nginx以单进程方

2017-04-19 14:31:25 847

转载 不太会说话,怎样提高说话的技巧?

我觉得不太会说话,可能很多时候就是明明没话说,却偏要找话说,结果说的全是废话,自然不受待见。所以,废话不多说,直接上干货,一共九条,就称为“独孤九言”吧。1. 发言、讲话、研讨之类分享型的说话场合,最好抢在前面来说,这是因为人的注意力差不多也就能集中一两个小时的样子,越靠后,大家越没有精力去听你讲了什么,前面的人偶尔超时发言大家还能接受,但后面的人可能都没时间说什么了,所以只要你认真准

2017-04-11 19:05:51 1115

原创 小技巧、小经验(5)

1、VC控制EXCEL的基本操作之选择范围篇 http://blog.csdn.net/shuilan0066/article/details/79363762、VC控制EXCEL的基本操作之设置篇 http://blog.csdn.net/shuilan0066/article/details/7936383

2017-03-30 20:55:19 460

转载 解决TCP网络传输“粘包”问题

当前在网络传输应用中,广泛采用的是TCP/IP通信协议及其标准的socket应用开发编程接口(API)。TCP/IP传输层有两个并列的协议:TCP和UDP。其中TCP(transport control protocol,传输控制协议)是面向连接的,提供高可靠性服务。UDP(user datagram protocol,用户数据报协议)是无连接的,提供高效率服务。在实际工程应用中,对可靠性和效率的

2017-01-16 16:13:20 365

转载 C++ sscanf()用法总结

    1. 常见用法[cpp] view plain copy  print?sscanf("123456 ", "%s", str);       2. 取指定长度的字符串。如在下例中,取最大长度为4字节的字符串。[cpp] view plain copy  print?sscanf("123456 ", "%4s", str);       3. 取到指定字符为止...

2016-11-18 14:56:06 2281

原创 C++时间函数用法总结(部分)

1、获取1970以来的时间戳#include "stdafx.h"#include #include #include using namespace std; int main() { long long time_last; time_last = time(NULL); cout<<time_last<<endl; //1970时间戳秒数方法

2016-11-02 21:48:27 4004

原创 小技巧、小经验(4)

1、InterlockedIncrement和InterlockedDecrement的妙用一般来说,在多用户线程环境中,我们使用临界区、事件对象甚至互斥量来进行同步,尤其是临界区,可以很方便地对某些变量甚至代码块进行锁定执行,防止多线程之间资源恶性抢夺。既然如此,为啥微软又单独提供了专用于一个数值锁定计算的API函数InterlockedIncrement和InterlockedDecrem

2016-10-19 21:40:55 924

原创 C++ RegSetValueEx返回值始终为5

5即ERROR_ACCESS_DENIED,意思是访问被拒绝。网上看到的说法是Win7权限不足。但是我这边的UAC早就设置为“从不”了。后来想着有时候360每次会提示是否允许注册表修改,而我今天允许都没提示,就想到是否被360禁了,果然,只要把exe程序添加为信任程序,RegSetValueEx返回值就正常了。

2016-10-19 19:48:01 6748

转载 C++中的容器类详解

C++中的容器类包括“顺序存储结构”和“关联存储结构”,前者包括vector,list,deque等;后者包括set,map,multiset,multimap等。若需要存储的元素数在编译器间就可以确定,可以使用数组来存储,否则,就需要用到容器类了。1、vector    连续存储结构,每个元素在内存上是连续的;    支持高效的随机访问和在尾端插入/删除操作,但其他位置的插入/删除操

2016-09-21 13:47:40 285

转载 字符编码通俗讲解

先从字符编码讲起。1、美国人首先对其英文字符进行了编码,也就是最早的ascii码,用一个字节的低7位来表示英文的128个字符,高1位统一为0;2、后来欧洲人发现尼玛你这128位哪够用,比如我高贵的法国人字母上面的还有注音符,这个怎么区分,得,把高1位编进来吧,这样欧洲普遍使用一个全字节进行编码,最多可表示256位。欧美人就是喜欢直来直去,字符少,编码用得位数少; 3、但是即使位数少,不

2016-08-05 10:50:03 1360 1

转载 CentOS Linux解决Device eth0 does not seem to be present

记录下,eth1网卡的mac地址00:0c:29:50:bd:17接下来,打开/etc/sysconfig/network-scripts/ifcfg-eth0# vi /etc/sysconfig/network-scripts/ifcfg-eth0将 DEVICE="eth0"  改成  DEVICE="eth1"  ,将 HWADDR="00:0c:29:8f:8

2016-07-15 20:05:20 373

原创 Windows XP下static控件文字显示为倾斜或是乱码的原因分析

维护公司一个代码,开发环境在win7下的VS2008,Win7下面好好的,到了winxp下面static控件文字显示为倾斜文字或是乱码。按理来说,windows是会做一些向下兼容的,却出现这么离奇的问题。一开始怀疑是style问题,用了ModifyStyle函数无效;继而怀疑控件的各个属性为TRUE的选项,更改后依然无效;没办法,只能注释掉无关代码,排查出出错范围,最后定位到I

2016-06-07 21:02:34 470

原创 C++递归创建多级目录

需要#include ,并且配置好shlwapi.ibBOOL CreateDirTree( LPCTSTR lpPath ){ if( NULL == lpPath || _tcslen(lpPath)==0 ) { return FALSE; } if( ::PathFileExists( lpPath) || ::PathIsRoot(lpPath) ) retu

2016-04-11 16:59:04 4468

转载 程序员的发展方向

师范数学毕业转行做软件开发已两年,从事.net,做过一些电子商务网站和软件,自已是个女生,2010年24岁,是该考虑下自已的发展方向了。下面摘一些程序员发展方向的相关文章给自已也给同样迷茫的战友们,希望能给你一些帮助:程序员有哪些发展方向提示:本文适合有2年及以上工作经验的程序员,对于刚入职或者即将职的程序程序员职业生涯发展到一定程度都会面临一个选择,是走业务+技术

2016-04-08 19:03:03 953

转载 linux c++ 服务器端开发面试必看书籍

由于很多朋友希望加入到Linux c++服务器端开发的队伍中,本人就结合自己的面试经历并整理了自己阅读的相关书籍,同大家分享,一起进步。人个认为以下是进入这个方向的必看书籍,各系列难度由浅入深的排序。一、算法基础系列数据结构基础(C语言版)》朱仲涛 译《剑指Offer》《编程之美》《编程珠玑》《CareerCup-Top 150 Questions 4th》《[算法导论].(美国)Co

2016-03-26 21:41:07 438

转载 Linux C++ 服务器端这条线怎么走?

既然你是在校学生,而且编程语言和数据结构的基础还不错,我认为应该在《操作系统》和《计算机体系结构》这两门课上下功夫,然后才去读编程方面的 APUE、UNP 等书。下面简单谈谈我对学习这两门课的看法和建议,都是站在服务端程序员的角度,从实用主义(pragmatic)的立场出发而言的。学习操作系统的目的,不是让你去发明自己操作系统内核,打败 Linux;也不是成为内核开发人员;而是理解

2016-03-26 21:39:04 627

原创 QT5学习:窗口布局测试

1、QWidget窗体显示与隐藏: if(detailWidget->isHidden()) detailWidget->show();//QWidget窗体显示 else detailWidget->hide();//QWidget窗体隐藏

2016-03-26 21:02:35 625

原创 QT5学习:字符串测试

#include #include #include #include #include QTextStream cin(stdin, QIODevice::ReadOnly);QTextStream cout(stdout, QIODevice::WriteOnly);QTextStream cerr(stderr, QIODevice::WriteOnly);int mai

2016-03-17 22:35:59 663

原创 QT5学习:分割窗口类的使用

#include "mainwindow.h"#include #include #include #include int main(int argc, char *argv[]){ QApplication a(argc, argv); QFont font("ZYSong18030",12); a.setFont(font); //主分割窗口

2016-03-17 21:40:04 1132

转载 setsockopt的作用和用法

功能描述:        获取或者设置与某个套接字关联的选 项。选项可能存在于多层协议中,它们总会出现在最上面的套接字层。当操作套接字选项时,选项位于的层和选项的名称必须给出。为了操作套接字层的选项,应该 将层的值指定为SOL_SOCKET。为了操作其它层的选项,控制选项的合适协议号必须给出。例如,为了表示一个选项由TCP协议解析,层应该设定为协议 号TCP。用法:

2016-03-15 10:32:55 1642

转载 进程间通信方式(全)

1   文件映射  文件映射(Memory-Mapped Files)能使进程把文件内容当作进程地址区间一块内存那样来对待。因此,进程不必使用文件I/O操作,只需简单的指针操作就可读取和修改文件的内容。  Win32 API允许多个进程访问同一文件映射对象,各个进程在它自己的地址空间里接收内存的指针。通过使用这些指针,不同进程就可以读或修改文件的内容,实现了对文件中数据的共享。  应用

2016-03-14 01:31:26 466

转载 多线程和多进程的区别

http://blog.csdn.net/hairetz/article/details/4281931/一.为何需要多进程(或者多线程),为何需要并发?这个问题或许本身都不是个问题。但是对于没有接触过多进程编程的朋友来说,他们确实无法感受到并发的魅力以及必要性。我想,只要你不是整天都写那种int main()到底的代码的人,那么或多或少你会遇到代码响应不够用的情况,也应该有尝过并

2016-03-14 01:17:06 380

VS2019编译FFMPEG5.2

程序是win32编译。 1、ShiftMediaProject依赖工程打包源码, 2、nasm、yasm配置文件, 3、编译后的include和lib(包含debug、release)文件。

2023-05-11

MFC垂直滚动条demo

MFC垂直滚动条demo, VS2008编译通过, 支持垂直滚动、鼠标滚轮滚动。

2017-11-07

田字格四块简单实现

目前有个需求:主窗体分为田字格四块,每一块里显示相同的几个static text,用作显示数值,4块会根据不同的情况背景变红或者变绿,每块可分别点击进入查看详细信息。 (http://bbs.csdn.net/topics/392215332?page=1#post-402617054) demo是VS2008开发的。做了简单的实现,4块只写了2块,点击主对话框按钮可以改变子对话框背景颜色,点击子对话框按钮可以弹框,static text可以在子对话框添加,可以按照需要添加更多功能。

2017-08-15

gtk+-bundle_2.16.6-20100207_win32.zip

gtk+-bundle_2.16.6-20100207_win32.zip编译Wireshark时自行下载的,网上下载速度较慢。

2017-01-07

C++ zip压缩解压缩源代码

C++ zip压缩解压缩源代码 压缩时调用 #include "zip.h" HZIP hz = CreateZip("c:\\simple1.zip",0); ZipAdd(hz,"znsimple.bmp", "c:\\simple.bmp"); ZipAdd(hz,"znsimple.txt", "c:\\simple.txt"); CloseZip(hz); 解压时调用 #include "unzip.h" // HZIP hz = OpenZip("c:\\stuff.zip",0); ZIPENTRY ze; GetZipItem(hz,-1,&ze); int numitems=ze.index; for (int i=0; i<numitems; i++) { GetZipItem(hz,i,&ze); UnzipItem(hz,i,ze.name); } CloseZip(hz);

2016-11-22

mysql-connector-odbc-5.3.4驱动

包括mysql-connector-odbc-5.3.4-win32、mysql-connector-odbc-5.3.4-win64共2个驱动安装包

2015-07-29

MFC位图定时移动

VS2010下,按ctrl键bmp位图定时移动,按->键齿轮图快速移动。

2015-03-10

VC++创建与读取XML文件

VC创建与读取XML文件demo Win7+VS2010实现,简单易懂,读取内容在程序启动后的“输出”面板显示

2014-10-23

严蔚敏《数据结构》源代码(CPP文件)

全部能够在VC6.0运行通过。代码按函数划分。 如第二章AddPolyn.cpp、CreateList_L.cpp、InitList_Sq.cpp;每个程序都有运行结果,有助于理解课本上的知识点。

2010-04-23

空空如也

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

TA关注的人

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