自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (5)
  • 收藏
  • 关注

转载 h264码率设定建议

设置视频码率的必要性        在视频会议应用中,视频质量和网络带宽占用是矛盾的,通常情况下视频流占用的带宽越高则视频质量也越高;如要求高质量的视频效果,那么需要的网络带宽也越大;解决这一矛盾的钥匙当然是视频编解码技术。评判一种视频编解码技术的优劣,是比较在相同的带宽条件下,哪个视频质量更好;在相同的视频质量条件下,哪个占用的网络带宽更少。        是不是视频码率越高,质量越

2016-03-24 20:49:46 4681 1

转载 主流开源编解码器Xvid,x264,ffmpeg 性能对比(转)

Xvid是基于MPEG4协议的编解码器,x264是基于H.264协议的编码器,ffmpeg集合了各种音频,视频编解码协议,通过设置参数可以完成基于MPEG4,H.264等协议的编解码,现在将其对比结果罗列如下:1.软件版本:        Xvid:1.2.1        x264:无        ffmpeg:0.52. 视频样本 foreman.ci

2016-03-24 20:47:22 4027

原创 x264_param_default_preset()源码分析

h264编码原理复杂,参数众多。为了方便使用无论x264还是其他编码的实现框架,都封装了几种现有的编码模型,只需要根据编码速度的要求和视频质量的要求选择模型,并修改部分视频参数即可编码。模型的选择就是通过x264_param_default_preset()实现。int x264_param_default_preset( x264_param_t *param, const ch

2016-03-24 20:40:38 3786 2

原创 x264_param_default()源码分析;

/**************************************************************************** * x264_param_default: ****************************************************************************/void x264_param_d

2016-03-24 20:39:17 841

原创 x264编码示例

码率控制:ffmpeg/x264 码率控制 分析ffmpeg编码:ffmpeg 编码示例x264编码定义三个接口。调用流程图:一 初始化     x264_param_t param; x264_param_default_preset(¶m, "superfast", "zerolatency");//根据prese

2016-03-24 20:37:44 1988

原创 ffmpeg/x264 码率控制 分析

ffmpeg编码h264流参看:ffmpeg编码示例x264编码h264流:x264编码示例有效影响视频码率的参数有:一:间接影响1.关键帧间隔x264ffmpeg说明命令行字段命令行字段max-keyint

2016-03-24 20:30:20 8729

原创 ffmpeg 编码示例

ffmpeg 自身有h264的解码模块。编码却需要打包入其他编码库。具体效率分析参看:主流开源编解码器Xvid,x264,ffmpeg 性能对比(转)实现编码定义了四个函数。一:帧添加结束后flush,将未输出的avpacket写入调用flush原因分析:ffmpeg /x264视频流编解码末尾丢帧问题分析和解决int vflush_encoder(AV

2016-03-24 20:26:08 3148

原创 ffmpeg /x264视频流编解码末尾丢帧问题分析和解决

一:问题int avcodec_encode_video2(AVCodecContext * avctx,AVPacket * avpkt,const AVFrame * frame,int * 

2016-03-24 20:18:14 6407 1

原创 ffmpeg 解码流程

定义三个函数处理解码h2641.编码前初始化,返回视频宽高int* decode_init(char * in_filename){ avcodec_register_all(); av_register_all(); decode_frame = av_frame_alloc(); AVPacket pkt; //获取各种上下文

2016-03-24 20:12:16 1137

原创 soundtouch 变声使用和算法

soundtouch 源码下载地址编译完成之后$soundstretch --helpThis program is subject to (L)GPL license. Run "soundstretch -license" formore information.This application processes WAV audio files b

2016-03-24 19:39:32 15941 2

原创 native c回调 java 中 自带参数 jclass和jobject的区别

做三次测试。(1) jniclass内写成静态变量和公共java方法。修改静态变量后,native层该量也跟着修改,传送参数为jclass。jniinterface packet:class   JniClass{           static int count = 0;            public void print()            {

2016-03-24 19:18:23 2511

原创 java方法签名中参数和返回类型字母含义

java中每个方法都有唯一的签名。在jni利用反射机制调用时候经常用到。以下为方法签名中,参数和返回类型字母含义。

2016-03-24 19:15:21 736

转载 java NIO 和阻塞I/O的区别

1. 阻塞I/O通信模型 假如现在你对阻塞I/O已有了一定了解,我们知道阻塞I/O在调用InputStream.read()方法时是阻塞的,它会一直等到数据到来时(或超时)才会返回;同样,在调用ServerSocket.accept()方法时,也会一直阻塞到有客户端连接才会返回,每个客户端连接过来后,服务端都会启动一个线程去处理该客户端的请求。阻塞I/O的通信模型示意图如下: 

2016-03-24 19:11:06 121

原创 System.currentTimeMillis() 和sleep 存在误差原因与解决方案

System.currentTimeMillis() 与sleep()存在误差。精度跟系统相关,10ms-15ms为常见误差,多媒体操作多用  System.nanoTime()  返回纳秒值。即用  System.nanoTime()  /1000000L 替换  System.currentTimeMillis() 参考jdk文档:在指定的毫

2016-03-24 19:06:29 3435

原创 针对android&ios yuv旋转、镜像、格式转换、裁剪 算法实现

移动端录像在yuv数据上存在如下问题: 1.无论android还是ios都不能直接从摄像头取出颜色空间为i420的数据,所以在编码前需要进行格式转换。2.而且由于所取图像得分辨率必须是摄像头所提供分辨率中得一组,所以有可能需要裁剪。3.另外由于1)想让无论用户哪个方向拿手机所录的视频内容永远“头朝上”,  2)摄像头默认返回图像为横屏图像(宽大于长)所以需要旋转。4.前置摄

2016-03-16 11:47:57 11328 6

原创 atom 快捷键

用了几天atom,感觉功能挺全面,界面也不错,相比vim和subltext更好用点。整理一下快捷键。 ViewCtrl  + \                            打开关闭目录,焦点会集中到目录上F11                                  全屏打开或关闭ctrl +,                             

2016-02-14 14:48:43 1124

原创 ffmpeg 滤镜及其效果

ffmpeg视频滤镜处理及其效果

2015-10-10 13:27:35 31083 7

原创 ffmpeg 使用滤镜

ffmpeg 中滤镜的实现其实并不高明,但是功能强大,先给出过滤镜的代码,再翻译我认为有的玩的滤镜。一帧通过滤镜的函数:int Filter_One_Frame(FilterArgs *filter_args,AVFrame *frame, AVFrame *filt_frame,const char * filter_descr){ int ret; avc

2015-10-09 16:00:36 6525 1

原创 Android & IOS视频录制技术方案

屡次想经营一个技术博客,总因为各种理由推脱。这次下定决心开写,不为自我营销,不为扩大社交,只为了督促自己学习。近几个月定时更新两条线,一个是短视频处理技术,一个是《算法导论》笔记,也借机温故知新。精力有限而且学习也不能贪多,所以每周仅各一篇。警告诸多网站:原创博客,未经本人允许不得转载。移动端视频录制的技术方案,我所能想到并且尝试过的,有如下几种:方案一: 用系统开发sdk

2015-08-30 18:04:45 5227 6

原创 android 图像处理(黑白,模糊,浮雕,圆角,镜像,底片,油画,灰白,加旧,哈哈镜,放大镜)

图片处理,模糊,镜像,底片,哈哈镜,放大镜,灰白,黑白,加旧等

2014-05-06 12:24:20 4450 1

原创 android launcher

第一次做

2014-05-05 16:50:10 1355

原创 android mock location

现在软件市场上有很多可以改变手机地理位置的软件,更改后打开微信就可以随意定位,甚至前几年有依靠这个技术打广告为生的小型公司。一获取地理位置的方法获取地理位置的方法一般分为两种。1)GPS24颗卫星定位全球(图片来自维基百科)给出详解地址:http://zh.wikipedia.org/wiki/GPS;但是向卫星对请求信号强度的要求比较高,很多专门的硬件设备有时都达不到,所

2014-01-25 17:28:44 6131

原创 android listview

android listview 是很常用的组件。如果列表项过于多或者需要从网络上读取内容的话大多app都将其做成动态加载的。下拉刷新或者上拉刷新。如图::原来listview本身提供添加删除footerview和headerview的方法,而且可以添加多个:voidaddFooterView(View v)Add a fixed view to a

2014-01-15 21:50:09 2185

原创 android 实现按键精灵

程序经常需要调试,需要程序自动按键,或者某些繁琐操作,比如游戏外挂,需要按键精灵来完成。android 提供给开发者发送模拟按键的类Instrumentation:public classInstrumentationextends Objectjava.lang.Object   ↳android.app.Instr

2014-01-07 15:51:51 8980 9

原创 android apk版本更新

ios的软件版本更新必须要通过苹果的服务器,而android 却不需要,开发商可以在软件本身嵌套下载安装新版本的功能,对于此是否是个优点暂且不谈(个人感觉还是ios那样更负责人些,用户体验更好点),只将一下实现步骤。android区分软件是通过包名,也就是所如果两个软件的包名完全相同,系统就会认为是同一款软件,如果已经安装了,又要安装,系统则认为是在更新版本而不是安装新软件。为了避免软件之间的

2014-01-07 15:31:34 1646 1

原创 android 控制震动强度

android 控制手机震动的类为Vibrator 他所提供的方法只有四个想要控制手机的震动强度,无疑就只能使用vibrate(long[] parttern,int repeat)方法了,查看这个方法的详解:Vibrate with a given pattern.Pass in an array of ints that are the durations for

2014-01-07 13:40:46 15535 8

原创 android 的推送

先来将一下ios的推送:iOS 在系统级别有一个推送服务程序使用 5223 端口。使用这个端口的协议源于 Jabber 后来发展为 XMPP ,被用于 Gtalk 等 IM 软件中。所以, iOS 的推送,可以不严谨的理解为:苹果服务器朝手机后台挂的一个 IM 服务程序发送的消息。然后,系统根据该 IM 消息识别告诉哪个 Apps 具体发生了什么事。然后,系统分别通知这些

2013-11-09 11:15:02 1059

原创 android DOM 解析 网络上xml文档

解析xml文档在很多时候都要用到,比如像音乐播放器的网络歌曲列表,应用软件的下载列表等等。想要更新时只需要更改服务器上的xml文档即可,然后客户端读取固定的xml来显示相应的列表,先给出xml文档 http://alga7.com/pic/1.jpg 10.3 a1 http://alga7.com/pic/2.jpg

2013-11-09 10:54:52 1234

原创 android google map

做地图导航开发,忽然间发现百度和搜狗的地图不能显示国外。如图:(搜索日本只显示如此的一坨……)google map:除此之外,google还提供3d地图开发,camera间的切换动画,算了,不打广告了。不过申请key的步骤要比国内的地图麻烦一点,大意是,根据你的签名和工程的包名按照SHA-1加密传给google,google再由此生成你所对应的key。给出链接https://d

2013-11-09 09:54:34 1193

原创 android ViewPager 替代 Gallery 实现手势切换

在论坛博客上看到很多人实现3D的切换图片效果大多是用的Gallery,加入倒影,加入倾斜角,而且有很多都是实现的特别好的。但是自己测试时发现This class was deprecated in API level 16.其实还有很多组件可以实现手势切换,或者可以完全自己编写来控制imageview的切换效果,但是当看到android api上推荐的viewpager后发现其的确是个好东西。

2013-10-27 11:32:48 3313

原创 android音频通信

这是前一段时间遇到的问题了, 想用android手机的音频口发送消息,消息内容可以是字符串,可以是命令,甚至可以是文件。由于智能手机的普及,今后在工业领域可能会推广,所以在这里分享一下。现在开始:一(语文是硬伤,标题想不出来):本例只实现了发送字符串的功能(用的是方波标记),而且界面布局很简单,贴图:点击【send】将会发送出一段噪音,噪音的内容是用你所输入的字符串编码过来

2013-09-22 14:10:47 2303 7

soundtouch变声之后效果

y为原视频,其它6个为处理之后效果。 soundtouch使用和解析参考:http://blog.csdn.net/dangxw_/article/category/6150773

2016-03-24

android 系统签名工具

导出未签名apk,进cmd输入命令。 里面txt有操作解释

2014-03-27

android实现按键精灵

这只是个很简单demo程序,实现按键精灵原理,按照这种方法可以跨进程传递点击事件

2014-03-07

android音频发射器,audiotrack方波,音频通信

如果不懂,可以去我的博客看详细讲解。http://blog.csdn.net/dangxw_/article/details/10575285

2013-08-21

android音频发射器,android音频通信

实现用安卓手机耳机口发送消息控制装有接受器的任何硬件,本例实现是发送字符串,修改后可以发送命令或者文件,如果是公司设计生产产品需要用到的话,需要你们自己开发插口的信号转换器和接受器。

2013-08-21

空空如也

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

TA关注的人

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