
其他
文章平均质量分 87
cpq37
https://cpq37.github.io/
展开
-
grep 正则表达式
正则表达式元字符:^ 以什么开头$ 以什么结尾, 例: grep '^$' 表示搜索空白符. 匹配一个字符* 匹配若干字符, 例: grep '.*' 表示搜索任意字符[] 匹配集合中的字符[x-y]匹配集合范围内的字符[^ ] 匹配不在集合内的字符\ 转义符合, 例: grep 'love\.'特殊的元字符:\< ...原创 2020-03-03 10:37:58 · 786 阅读 · 0 评论 -
用ICE开发分布式程序
<br />ICE是ZeroC公司开发的一款高效的开源中间件平台,全称是Internet Communications Engine。<br />它的主要设计目标是:<br />• 提供适用于异种环境的面向对象中间件平台。<br />• 提供一组完整的特性,支持广泛的领域中的实际的分布式应用的开发。<br />• 避免不必要的复杂性,使平台更易于学习和使用。<br />• 提供一种在网络带宽、内存使用和 CPU 开销方面都很高效的实现。<br />• 提供一种具有内建安全性的实现,使它适用于不安全的公共网络转载 2010-08-31 17:36:00 · 1110 阅读 · 0 评论 -
FFMpeg框架代码阅读
<br />内容摘要 FFmpeg是一个集录制、转换、音/视频编码解码功能为一体的完整的开源解决方案。FFmpeg的开发是基于Linux操作系统,但是可以在大多数操作系统中编译和使用。FFmpeg支持MPEG、 DivX、MPEG4、AC3、DV、FLV等40多种编码,AVI、MPEG、OGG、Matroska、ASF等90多种解码. TCPMP, VLC, MPlayer等开源播放器都用到了FFmpeg。 FFmpeg主目录下主要有libavcodec、libavformat和libavutil等子目录<转载 2010-09-03 11:45:00 · 654 阅读 · 0 评论 -
DirectShow中用好智能连接
<br />文章出处:http://blog.youkuaiyun.com/cyrys/archive/2009/01/14/3777535.aspx<br /> <br /> 前段时间,在做一个播放器时,内存泄漏很严重。为了达到要求,Filter Graph要按照事先已确定的一种链路来建立,所以刚开始时我在程序中将Filter逐个进行连接,即创建一个,再连接一个,这样虽然能构建出事先确定的链路,但很麻烦,代码冗长,而且在每打开一个媒体文件时,因为上一次得到的接口难以释放彻底,会造成严重的内存泄漏。后来,我将程序改为智转载 2010-09-13 17:36:00 · 557 阅读 · 0 评论 -
DirectShow入门之构建Graph图常用技术
<br />作者:智慧的鱼<br />摘要:本文主要讲述了Graph图构建过程中常用的技巧,主要的内容如下:<br /><br /> ·如何根据CLSID向graph中添加filter <br /> ·如何查找filter空闲的pin <br /> ·如何连接两个Filter <br /> ·如何获得filter或者pin的接口指针 <br /> ·如何查找和某个filter的上下相连的filter <br /> ·如何删除graph中的所有filter <br /> ·如何利用Capture转载 2010-09-14 14:45:00 · 657 阅读 · 0 评论 -
I2C SPI UART和CAN的区别
I2C的数据输入输出用的是一根线,SPI则分为dataIN和dataOUT。由于这个原因,采用I2C时CPU的端口占用少,SPI多一根。但是由于I2C的数据线是双向的,所以隔离比较复杂,SPI则比较容易。所以系统内部通信可用I2C,若要与外部通信则最好用SPI带隔离(可以提高抗干扰能力)。但是I2C和SPI都不适合长距离传输。长距离时就要用485了。第一: SPI(Seria转载 2012-10-31 16:14:47 · 1480 阅读 · 2 评论 -
MPEG Audio Frame Header
MPEG Audio Frame Headerhttp://www.codeproject.com/Articles/8295/MPEG-Audio-Frame-HeaderDownload demo project (binary and source, V2.2) - 225.4 KBDownload source (V2.2) - 21.9 KB转载 2013-09-06 13:25:12 · 1627 阅读 · 0 评论 -
开源那么重要,开源协议你认识吗?
近日,著名开发者论坛XDA专门发表了文章指责小米违反了GPLv2授权要求的做法。Android系统使用的是Linux内核,许可证来自GPLv2,根据后者的授权要求,所有Linux衍生版本修改后的源代码必须公开,但是小米到目前为止依然没有公开自己修改的源代码,这违反了GPLv2的授权要求。在2012年就有人指出小米的MIUI可能违反开源协议GPLv2,但是小米一直没有做出反应,这次有人如此高转载 2015-01-21 17:05:25 · 813 阅读 · 0 评论 -
什么是真正的实时操作系统
做嵌入式系统开发有一段时间了,做过用于手机平台的嵌入式Linux,也接触过用于交换机、媒体网关平台的VxWorks,实际应用后回过头来看理论,才发现自己理解的肤浅,也发现优快云上好多同学们都对实时、嵌入式这些概念似懂非懂,毕竟如果不做类似的产品,平时接触的机会很少,即使做嵌入式产品开发,基本也是只管调用Platformteam封装好的API。所以在此总结一下这些概念,加深自己的理解,同时也给新手转载 2016-05-11 08:58:25 · 717 阅读 · 0 评论 -
水煮TCPMP
<br />TCPMP是一个功能强大开放式的开源多媒体播放器,<br />播放器主要由核心框架模块(common工程)和解码器分离器插件组成。<br />TCPMP的插件非常多,、libmad我们联合几个最常用的插件(ffmpeg、splitter)来说明,其中interface插件实现TCPMP的界面,由于他和媒体播放没有什么关系,这部分可以完全被替换掉,替换成自己的界面。<br />ffmpeg工程是系统主要的音视频解码模块,ffmpeg是一个集录制、转换、音/视频编码解码功能为一体的完整的开源解决方案转载 2010-07-30 15:11:00 · 484 阅读 · 0 评论 -
TCPMP中的Splitter机制
<br />http://blog.youkuaiyun.com/wstarx/archive/2008/05/05/2393603.aspx<br />Splitter在TCPMP中主要是通过InputThread线程和主线程中的Format_FillQueue()函数实现的。<br />InputThread线程中主要通过调用Format_ReadInput()函数,将输入流中的数据读取到内存链表中。<br />过程如下:得到Reader->InputBuffer,如为空,则调用Format_BufferAlloc转载 2010-07-30 15:09:00 · 587 阅读 · 0 评论 -
git代理设置及下载方法
在实验室想git点东东下来,折腾了会,算是基本可用了吧 <br /> man git-config 可以看到git支持的代理是依赖别的程序的 <br /> 这里我使用的是一个别人写的代理小程序,见附件 <br /> 配置步骤如下: <br /> <br /> 1. gcc -o connect connect.c <br /> mv connect ~/bin <br /> 2. 设置一个wrapper <br /> echo "/home/gigi/bin转载 2010-07-02 16:46:00 · 9830 阅读 · 0 评论 -
repo 的用法
<br />(文章出处:http://blog.youkuaiyun.com/free2o/archive/2009/03/11/3981588.aspx)<br />注:repo只是google用Python脚本写的调用git的一个脚本,主要是用来下载、管理Android项目的软件仓库。下载 repo 的地址: http://android.git.kernel.org/repo ,可以用 wget http://android.git.kernel.org/repo 或者 curl http://android.g转载 2010-07-04 10:37:00 · 778 阅读 · 0 评论 -
使用J2ME MMAPI开发移动多媒体应用技术
<br /> 为了使移动装置能够访问这些不同格式的媒体数据,必须为其设计一个规范化的、强大的和可扩充的应用接口。J2ME中就提供了一套为规范的播放和录制音频或视频接口,即Mobile Media API (MMAPI)。本文详细介绍MMAPI的体系结构和用法,供大家参考!<br />一、引言<br />在当前世面上存在着大量的不同媒体格式,并且还有许多新的媒体格式即将被建立。为了存储和传输这些不同的媒体格式,存在着了许多不同格式的存储设备和传输协议,例如大家常使用的媒体存储设备(如CD、VCD以及DVD)转载 2010-07-07 11:46:00 · 619 阅读 · 0 评论 -
水煮TCPMP
TCPMP是一个功能强大开放式的开源多媒体播放器,播放器主要由核心框架模块(common工程)和解码器分离器插件组成。TCPMP的插件非常多,、libmad我们联合几个最常用的插件(ffmpeg、splitter)来说明,其中interface插件实现TCPMP的界面,由于他和媒体播放没有什么关系,这部分可以完全被替换掉,替换成自己的界面。ffmpeg工程是系统主要的音视频解码模块,ffmpeg是一个集录制、转换、音/视频编码解码功能为一体的完整的开源解决方案。FFmpeg的开发是基于Linux操作系统,但转载 2010-07-07 11:57:00 · 610 阅读 · 0 评论 -
流媒体客户端的结构与原理浅析
<br />流媒体是一种在网络上在线播放多媒体的技术。由于其边下载边播放的特性,缩短了用户初始等待的延迟,但其数据也需要采用流式传输,具有较高的实时需求,因此比起一般的本地播放处理更为复杂。客户端是流媒体系统中一个基本的组成部分,一般是一个具有网络通信功能的播放器,比较著名的具有流媒体功能的播放器有realplayer、Windows media player等。这里以在Windows平台上自主开发的一套客户端播放器为实例,介绍流媒体客户端的系统结构和工作原理。 <br /> 一、系统结构 <br /转载 2010-07-22 10:29:00 · 716 阅读 · 1 评论 -
RTSP点播——消息流程实例
<br />RTSP点播消息流程实例(客户端:VLC, RTSP服务器:LIVE555 Media Server) <br /><br />1)C(Client)-> M(Media Server) <br />OPTIONS rtsp://192.168.1.109/1.mpg RTSP/1.0 <br />CSeq: 1 <br />user-Agent: VLC media player(LIVE555 Streaming Media v2007.02.20) <br /><br />1)M -> C转载 2010-07-23 17:26:00 · 724 阅读 · 0 评论 -
ASF文件格式分析
<br />微软的ASF文档其实一共有两个版本。1.0和2.0。此文是asf的文件格式分析1.0版本<br />在微软官方网站上公布的ASF版本是2.0,但是可惜这个版本几乎没人采用。<br />关于微软提供的ASF文档2.0:<br />http://www.microsoft.com/windows/windowsmedia/forpros/format/asfspec.aspx<br />你们现在在网上可以下载的所有.asf .asx .wmv 和 .wma文件几乎都是使用了从未被微软公布过的1.0版转载 2010-07-27 16:45:00 · 1482 阅读 · 0 评论 -
微软高级流格式ASF简介
--Microsoft公司的Windows Media的核心是ASF(Advanced Stream Format)。微软将ASF 定义为同步媒体的统一容器文件格式。ASF是一种数据格式,音频、视频、图像以及控制命令脚本等多媒体信息通过这种格式,以网络数据包的形式传输,实现流式多媒体内容发布。 ASF最大优点就是体积小,因此适合网络传输,使用微软公司的最新媒体播放器(Microsoft Windows Media Player)可以直接播放该格式的文件。用户可以将图形、声音和动画数据组合成一个ASF格式转载 2010-07-27 16:49:00 · 720 阅读 · 0 评论 -
TCPMP编译方法
<br />这是一篇好文章,写得非常详细,基本涵盖了编译TCPMP时会遇到的问题<br />本文主要讲解TCPMP播放器到WINDOWS CE平台的移植编译过程,硬件平台以ARMV4为主,结束部分会讲解到ARMV4I编译中需要注意的问题<br /><br />这几天为公司一个项目做准备,准备编译移植来自linux系统的超级开源媒体播放器TCPMP(商业版名称:The Core Player)到Windwos CE平台,tcpmp是目前支持最多可以用在嵌入式设备中多媒体播放器.除了rm,rmvb等少数几种格式转载 2010-07-30 11:42:00 · 514 阅读 · 0 评论 -
了解Nokia
不是操作系统!!Symbian 6.0等等才是手机的操作系统。 s60/s40指的是操作界面! S40或S60是指诺基亚手机的上层平台。S60都是智能手机,所用底层操作系统是Symbian。 诺基亚128*128屏幕都是S40 1.0。而128*160是S40 2.0 另外S40中,3100支持java MIDP 1.0,所以最大支持64KB的java;6230支持java MIDP 2.0,所以最大支持128KB的java 40和60,包括90,还有以前的30,都是针对与nokia不同的操作系统而言 40原创 2010-06-17 16:13:00 · 1917 阅读 · 0 评论