- 博客(15)
- 资源 (8)
- 收藏
- 关注
原创 TS流格式小白入门解读
一、背景介绍之前我做了一个项目,要求写一个TS流解析的模块,因此看了ISOIEC 13818-1文档,外加很多人的博客来帮助理解,来了解TS流格式是个什么东西,收货颇多。因此我觉得是时候发点干货回馈社会了。二,TS流背景介绍在介绍具体字段,参数这些头疼,烦人的东西之前,我觉得有必要先介绍下TS流的应用背景,有了这个概念,再去深入学习,将如虎添翼。TS流最经典的应用就是我们平时生活...
2017-09-29 15:30:14 11009 6
原创 build-essential的作用
我们在ubuntu上编译程序,默认是有gcc的,但是没有g++。如果自己来安装g++也可以,不过它涉及到一些依赖库,有点麻烦。现在有个叫build-essential的包,里面包含了很多开发必要的软件包,很全,很方便。安装方法:apt-get install build-essential,这个包里面有:dpkg-dev fakeroot g++ g++-4.6 libalgo...
2017-09-29 11:26:24 16712
原创 ubuntu如何安装libz库
编译程序时,如果遇到无法找到 -lz,意思就是缺少libz库。libz库是提供数据压缩用的函式库,我们需要安装zlib安装包。(名字没有写错哦,libz库对应的安装包名字就是zlib)。在ubuntu下,运行命令apt-get install zlib1g zlib1g-dev即可。
2017-09-29 10:53:33 22899
原创 ubuntu如何更换源
修改/etc/apt/sources.list,将里面的内容替换为:deb http://mirrors.163.com/ubuntu/ precise main universe restricted multiverse deb-src http://mirrors.163.com/ubuntu/ precise main universe restricted multiverse
2017-09-28 17:22:38 705
原创 ubuntu里如何激活root账户
刚装好ubuntu系统,root账户默认是关闭的,想要激活的话,就运行sudo passwd root命令,然后根据提示先输入自己用户的密码,然后设置root的密码,输入两次。
2017-09-28 16:56:01 461
原创 linux环境变量的有效范围
一、/etc/profile里存放的环境变量对于所有用户都有效。不管你是用什么用户登陆,系统都会默认执行source /etc/profile,得到其环境变量。二、如果想要私人定制,可以修改当前用户目录下的.bashrc文件。三、打开一个shell终端,执行export XXX=$XXX:YYY。该环境变量只在当前shell有效,如果再开一个shell,或者关闭该shell,另开一...
2017-09-28 14:56:32 4984
原创 error: curses.h: No such file or directory
原因是缺少ncurses库,按下列命令安装即可:apt-get install libncurses5-dev libncursesw5-dev
2017-09-28 14:34:51 642
原创 linux shell,sh,bash的含义
1.linux shell是应用程序的接口。2.sh和bash是两种shell,其中bash是sh的加强版。3.编写shell脚本的时候,开头要加上#! /bin/bash或#! /bin/sh,文件后缀名为.sh。3.这两种shell脚本对应的解释程序是/bin/bash和/bin/sh。
2017-09-28 10:50:46 1333
原创 WinSock2.h和windows.h发送冲突的解决方法
发生冲突的原因是windows.h里面包含了winsock.h,而winsock.h和WinSock2.h明显是冲突的。解决办法是把windows.h放在WinSock2.h的后面。为什么这样做可以呢?我们看WinSock2.h里面有这么一段代码:#ifndef _WINSOCK2API_#define _WINSOCK2API_#define _WINSOCKAPI_
2017-09-27 13:51:15 4593 1
原创 ffmpeg的api里av_free和av_freep的区别
1.从概念上说,都是释放指针所指的那块内存,但是av_freep还多个功能,就是把当前指针置为NULL。2.从使用上说,也是有区别的,举例说明如下:uint8_t *buf = av_malloc(16);av_free(buf);uint8_t *buf = av_malloc(16);av_freep(&buf);...
2017-09-27 13:44:00 8092
原创 全局静态变量和局部静态变量的区别
1.全局静态变量只能被当前源文件引用,不能被工程里其它源文件引用。除了这点特殊,其它与普通的全局变量一样。2.局部静态变量,只执行一次初始化,只能被所在函数引用,函数执行完毕,变量仍存在,生存周期贯穿整个程序。
2017-09-27 13:40:17 5422
原创 使用SDL2播放视频,窗口无法移动,处于繁忙状态的解决办法
无论播放视频是在主线程做,还是子线程做都会有这个问题。解决这个问题的办法在于将每播放一帧后Sleep(40)的机制,(假设25f/s),改为通过SDL的event机制,每隔40ms,push一个event从而通知线程绘图。下面是伪代码:#define SDL_START_VIDEO_DECANDSHOW (SDL_USEREVENT+1)sdl_thread(){
2017-09-26 13:36:13 1339
原创 使用SDL库开发,提示error LNK2001:无法解析的外部符号_main
在使用SDL2库进行开发的时候,一开始会遇到标题所示的问题。解决办法是自定义SDL_MAIN_HANDLED宏,如#define SDL_MAIN_HANDLED即可解决问题。产生这个问题的原因是SDL把main函数变成了自己的SDL_main,详见SDL_main.h里,#if defined(SDL_MAIN_NEEDED) || defined(SDL_MAIN_AVAILABL...
2017-09-26 13:13:36 2204 1
原创 vs2010如何加载ffmpeg windows库进行开发
1.在ffmpeg官网上可以下载其在windows平台的库,其中static-只有exe,shared-拥有exe和dll,dev-拥有h和lib。2.我们下载dev和shared,使用h和lib的方式加载ffmpeg库,当然最终运行程序依赖shared里的dll。3.下载mingw安装,在mingw installation manager里安装basic setup。4.将c:\m
2017-09-21 17:11:55 851
转载 ip,tcp,udp的邮局理论
IP:(Internet协议)IP拥有把一个数据包从一个地方发送到另一个地方的能力,通过提供一种”地方“或“设备”一个特定的地址(IP地址),并指定怎样通过地址在设备之间移动数据包来实现这个协议。现在,IP和下一层的协议之间的区别在于,在第2层的设备总是确切知道如何给其它网络设备发送信息。IP除了可以发送单个数据包到单个地址外不能干其它任何事情,当然它可以接收从任何一个网络发过来的
2017-09-21 09:32:19 424
打开windows defender脚本
2017-11-29
移植gdb到i.MX6所需脚本文件
2017-11-06
解析TS流,播放音视频
2017-09-27
解析本地ts文件,分离出音视频
2017-09-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人