摘要: 前端时间粗略学习了一下speex,现在把研究的一些成果与结论总结如下: 1、speex的编码算法是自己的特有的编码算法,有一个指的提出的性能是“变比特率编码”,从自己的实验结果来看,对于“静音帧”,每帧只编码6个字节,其余的有声帧大概有40多个字节。 2、在android上测试,这种编解码算法的延迟、清晰度都很不错 3、编码、解码接口比较简单,对于编码器,主要有以下几个接口: speex_encoder_init // 初始化,参数为编码模式,一般用窄带模式speex_nb_mode即可 speex_encoder_ctl // 参数设置,参数为句柄加一个键值对,比如要设置编码质... 阅读全文
posted @ 2013-02-06 10:07 jiaozebo 阅读(2502) 评论(0) 推荐(0) 编辑
摘要: 写一个线程类,个人习惯如下:class MyWorkRunnable implements Runnable { volatile Thread mTheThread = null; @Override public void run() { if (mTheThread != Thread.currentThread()) { throw new RuntimeException();// 防止外部调用Thread.start方法启动该线程 } whi... 阅读全文
posted @ 2013-01-12 18:53 jiaozebo 阅读(4297) 评论(0) 推荐(0) 编辑
摘要: static class 静态类(Java)static class 静态类(Java) 一般情况下是不可以用static修饰类的。如果一定要用static修饰类的话,通常static修饰的是匿名内部类。在一个类中创建另外一个类,叫做成员内部类。这个成员内部类可以静态的(利用static关键字修饰),也可以是非静态的。由于静态的内部类在定义、使用的时候会有种种的限制。所以在实际工作中用到的并不多。在开发过程中,内部类中使用的最多的还是非静态地成员内部类。不过在特定的情况下,静态内部类也能够发挥其独特的作用。 一、静态内部类的使用目的。 在定义内部类的时候,可以在其前面加上一个权限修饰符st.. 阅读全文
posted @ 2012-08-08 10:41 jiaozebo 阅读(260) 评论(0) 推荐(0) 编辑
摘要: Intent是Android中一个非常重要的概念,跟这个词的本意(意图,目的)一样,这个类在Android中的作用就是要调用某个组建去做某一件事,比如通过startActivity启动一个Activity,通过startService启动一个Service,通过sendBroadcast发送一个广播等,它相当于各个组建间的一个桥梁。很重要的一点是这个过程是可以跨进程的,比如在应用中可以启动调用某个播放器组件(系统自身的或者第三方的)来播放一段视频,启动照相机程序拍照等等。 当我们启动视频播放器播放一段视频的时候,首先要告诉播放器播放哪个视频文件,这就涉及到intent的数据传递功能,Inte. 阅读全文
posted @ 2012-06-01 10:57 jiaozebo 阅读(5164) 评论(4) 推荐(0) 编辑
摘要: 有时候会有这样的需求,在assets里放入一些文件,程序运行时能够动态读取。代码如下:AssetManageram=context.getAssets();String[]imgs=am.list("img");for(inti=0;i<imgs.length;i++){StringimgName=imgs[i];InputStreamis=am.open(String.format("img/%s",imgName));//dosomethingwithis.}如果在android2.2下,添加到img目录下的文件超过512个,调用am.list 阅读全文
posted @ 2012-05-14 09:48 jiaozebo 阅读(879) 评论(1) 推荐(0) 编辑
摘要: 前段时间略看了Android 的GPS API,就冒然发布了一片博文,现在再回过头来看看,确实有不少不足甚至错误.这篇算做补充和纠正吧.  1.要想获取位置信息,需要在手机设置中将"位置与安全"设为使能.前篇文章说不用设置,完全是错误的.  2.LocationManager提供了两个Provider(至少目前看来是两个):GPS_PROVIDER & NETWORK_PROVIDER.可... 阅读全文
posted @ 2010-11-19 10:26 jiaozebo 阅读(4880) 评论(1) 推荐(1) 编辑
摘要: 最近在做一个 Android 项目,需要用到GPS获取位置信息,从 API 查了一下,发现获取位置信息仅需极其简单的一句即可:  getLastKnownLocation(LocationManager.GPS_PROVIDER),于是高兴地不得了。可是一写进代码里,返回值(Location 类型)居然一直为null..郁闷的不得了。在网上查了好久,发现好多人都和我一样纠结于这个问题上,有人说是因... 阅读全文
posted @ 2010-10-18 21:08 jiaozebo 阅读(34307) 评论(10) 推荐(4) 编辑
摘要: 一、 变量的定义和缺省初始化c++ 中声明变量的时候大多的进行了定义(即分配了内存),特例有:1) extent int x,仅仅声明了x,没有为x分配内存。2) 函数的声明(即在调用函数之前进行的声明,此时未定义)。3) 类的声明。java中 方法中的变量在声明时没有初始化,有些人以为会被初始化为null,其实不是.不初始化的话,编译器会报错的.直到被赋值或者被调用。成员变量则在声明时候被初始化... 阅读全文
posted @ 2010-07-01 14:11 jiaozebo 阅读(1108) 评论(2) 推荐(0) 编辑
摘要: 模式对话框是用EndDialog销毁的,而非模式对话框则要用到DestroyWindow(个人以为非模式对话框比较类似一般普通的窗口,因此可以用DestroyWindow来销毁,而模式对话框则是“真正的”对话框,要用到对话框特定的EndDialog来销毁)。于是在非模式对话框的销毁,一般用到一下代码:[代码]//因为非模式对话框的创建有时候需要new出来(如果创建临时对象,... 阅读全文
posted @ 2010-05-27 15:25 jiaozebo 阅读(460) 评论(0) 推荐(1) 编辑
摘要: LPSTR:32bit指针指向一个字符串,每个字符占1字节LPCSTR:32-bit指针指向一个常字符串,每个字符占1字节 LPCTSTR:32-bit指针指向一个常字符串,每字符可能占1字节或2字节,取决于Unicode是否定义 LPTSTR:32-bit指针每字符可能占1字节或2字节,取决于Unicode是否定义 阅读全文
posted @ 2010-05-25 14:38 jiaozebo 阅读(283) 评论(0) 推荐(0) 编辑