Android FFmepg demo
Demo:录制30秒、480*480、30帧、比特率700+左右、视频编码H264、音频编码ACC、物理大小5M以内的MP4格式的小视频,并上传到优酷个人账号。 手动变焦有一处Bug,请自行修复。 由于Demo,代码未作任何优化。
android ffmpeg demo2
此代码是在android ffmpeg de的基础上增加新的功能模块(参考csdn雷霄骅大神的博客写的)
实现ffmpeg
public native String urlprotocolinfo();
public native String avformatinfo();
public native String avcodecinfo();
public native String avfilterinfo();
public native String configurationinfo();
//视频数据解码成YUV像素数据 测试通过
public native int decode(String inputurl, String outputurl);
//将视频文件以流媒体的形式推送到服务器 未测试
public native int stream(String inputurl, String outputurl);
//转码 MP4转wmv命令行格式 未实现
public native int ffmpegcore(int argc,String[] argv);
public native int H264DecoderInit(int width, int height);
public native int H264DecoderRelease();
public native int H264Decode(byte[] in, int insize, byte[] out);
//获取版本
public native int GetFFmpegVersion();
本人使用win8下安装vmware workstation Ubuntu kylin 14.04 android-ndk64-r10-linux-x86_64.tar.bz2 ffmpeg-2.8.tar.bz2
androidFFmpegRrecordVideo
android使用ffmpeg录制视频合并视频,亲测可用,未实现自动对焦,视频模糊
ffmpeg开发手册
ffmpeg技术开发手册,源码简单讲解,本人尚未研究
android 蓝牙 音频
android 蓝牙通信 surfaceview绘制 表格 wav格式解析 音频转化 异常处理 数据库等
android ffmpeg使用
android ffmpeg使用 有源码和生成的库,懒人使用处理的视频不是很清晰
放风机逻辑图
放风机逻辑图,仅供参考,正对老赵放风机和小白设计
android谷歌文档翻译
http://developer.android.com/training/index.html 翻译
android webview richeditor
android webview richeditor webview实现RichEditor
android手机管理
andriod内存管管理 清楚缓存垃圾 自启动授权管理 程序卸载等
Android语音信息相关技术
播放声音可以用MediaPlayer和AudioTrack,两者都提供了java API供应用开发者使用。虽然都可以播放声音,但两者还是有很大的区别的。
其中最大的区别是MediaPlayer可以播放多种格式的声音文件,例如MP3,AAC,WAV,OGG,MIDI等。MediaPlayer会在framework层创建对应的音频解码器。
android音频口通信完整代码
android音频口通信 socket 多线程 (静默安装卸载 增量升级 系统重启 适用于android原生系统) app开机自启动
android示波器
主要用于显示音频波形,算法与波形无关,参考博客http://blog.csdn.net/h291850336/article/details/48295985
android app增量升级
网上找的可用,实现原理参考http://blog.csdn.net/hmg25/article/details/8100896
android 静默安装与卸载
实现app静默安装与卸载 自适用于android原生系统 参考博客 http://blog.csdn.net/xiaoyaovsxin/article/details/8490567
http://my.oschina.net/blackylin/blog/147371
仿微信小视频观看
仿微信播放小视频,存在一些小问题,不影响学习
Android_扒衣服
android把衣服简单小demo,仅供参考学习
Android_ImageCache
android图片缓存 一级缓存Lrucache softPreference 文件缓存 网络下载
android API
android API 英文版 详尽 货真价实
C#_Socket网络编程
C#_Socket网络编程,文件传输,适合对Socket有一定基础的人
js实现拖拽编辑控件
依赖第三方控件实现js拖动编辑效果
伪input实现多行输入效果
sortable.js
原生js实现demo
纯第三方控件demo
实现思路:
(1)点击基本设置拖动后如何改变拖动的内容
(2)如何关联拖动后的内容 与 选项设置关联
(3)textarea伪装成input支持多行输入
精通并发与Netty 涉及到的代码
精通并发与Netty视频教程所涉及到的代码 ,不包含Thrift和nodejs
此外添加了单台服务器如何支撑百万级别的连接与基础处理
nsq、lombok基本使用
grpchellowordstram.zip
java helloword demo https://grpc.io/docs/quickstart/
git https://github.com/grpc/grpc-java
官方示例已经相当完整,直接复制使用即可
一下以examples中的helloword为例
首先:
本地新建项目grpc,然后导入examples pom下的依赖包然后导入helloword.proto,编译项目即可,得到项目目录
Web表现层性能优化.pdf
1:Web表现层调用过程分析
2: Web表现层性能优化概述
3:分阶段讲述Web表现层的优化思路和具体的优化手段
(1)连接网络并发送请求部分
(2)网络来回传输内容部分
(3)服务器处理请求部分
(4)浏览器渲染绘制部分
4:优化实践,对Front应用进行优化,并对比测试优化前后的性能
Keepalived快速上手.pdf
1:Keepalived介绍和基本实现思路
2:VRRP协议:概念、理解、工作机制、负载分担等
3:Keepalived安装
4:Keepalived体系结构
5:Keepalived配置
6:Keepalived+Nginx的HA
7:Keepalived的HA,比如和:Varnish、Tomcat、Redis、MySql等
8:LVS基础知识
9:Keepalived+LVS实现高可用的负载均衡
MongoDB快速上手.pdf
MongoDB
n 一:MongoDB简介
包括:MongoDB是什么、能干什么、特点、NoSQL简介、为什么需要NoSQL、CAP原
理、BASE原则、NoSql优缺点等
n 二:MongoDB安装和基本使用
包括:安装和基本使用、启动参数说明、MongoDB基本概念、基本数据类型等
n 三:MongoDB增删改操作
包括:多种操作命令、多种修改器的使用
n 四:MongoDB查询操作
包括:指定要返回的键、按条件查询、多种比较符和比较命令、数组查询、内嵌
文档查询、$where查询、聚合命令、分页查询、游标、存储过程等
n 五:聚合框架
包括:概念、使用方式、各种管道操作符的应用、MapReduce的开发和应用等
六:理解MongoDB的文档存储
包括:理解MongoDB的文档存储的机制和原理,并示范优化文档增长的方法
n 七:MongoDB的索引
包括:对索引的各种操作命令、索引的使用分析、索引的类型等
n 八:Capped集合和GridFS
包括:Capped集合的概念和使用、GridFS的使用
n 九:MongoDB的副本集
包括:副本集的创建、初始化、使用维护、和多种成员配置选项等
n 十:副本集的基本原理
包括:理解Oplog、理解复制的过程、理解初始化同步、处理陈旧数据、理解心
跳、理解回滚机制等
n 十一:副本集的管理
包括:单机模式启动成员,维护副本集,强制重新配置,把主节点变为备份节
点,阻止选举,不作为复制源、MongoDB的主从复制等
十二:MongoDB的分片
包括:理解MongoDB的分片、各部分的组成和功能、分片的具体做法、理解分片
的原理、块、数据拆分、均衡器、限制分片大小、理解数据分配方式等
n 十三:MongoDB分片片键的选择
包括:重要性、基本规则、常见片键类型分析、好的片键建议等
n 十四:分片的管理
包括:查看很多关于分片的信息,检查配置,添加和删除分片等
n 十五:杂项技术
包括:监控应用状态、用户身份验证、备份和恢复、数据导入导出等
n 十六:Java操作MongoDB
包括:获取驱动,构建环境,CRUD实现等
n 十七:MondoDB和Spring集成开发
包括:构建环境、Spring配置、MongoTemplate开发使用等
n 十八: MongoDB应用建议及最佳实践
Memcached快速上手.pdf
一: Memcached简介、安装和基本使用
包括:是什么、能干什么、特点;通过源码安装、基本的启动、运行、关闭等
n 二:Memcached的基本原理和操作命令
包括:基本原理、操作命令set、add、replace、append、prepend、cas 、
get、gets、delete、incr、decr、stats、stats sizes、stats settings、
stats items、stats slabs、flush all、version等的功能和使用
n 三:理解Memcached的数据存储方式和数据过期方式
包括:Slab Allocator内存管理方式、新建Item分配内存的过程、这种存储方式
的缺点、理解Memcached的数据过期方式
n 四: Memcached的Java客户端编程
包括:了解常见的Java客户端、理解和掌握官方的Memcached的Java客户端API、
把jar包添加到本地Maven仓库、Java客户端基本写法、Memcached和Spring集成
n 五: Memcached的分布式
包括:Memcached的分布式方式、根据余数计算分散的方式、一致性Hash算法
n 六: Memcached的内存调优以及使用的限制和建议
包括:内存调优建议、使用Memcached-tool来辅助调优、使用Memcached的一些
限制、使用Memcached的一些建议
ActiveMQ.rar
一: ActiveMQ简介
包括:是什么、能干什么、特点;消息中间件的功能、特点、应用场景等
n 二: ActiveMQ安装和基本使用
包括:通过源码安装、基本的配置示例、启动、测试运行、关闭等
n 三:理解和掌握JMS
包括:基本概念、消息结构、可靠性机制、PTP、Pub/Sub、API结构、JMS应用开
发的基本步骤、持久和非持久的Topic等
n 四:用ActiveMQ构建应用
包括:多种启动Broker的方法、单独应用的开发、结合Spring的开发等
n 五:ActiveMQ的Transport
包括:多种传输协议的功能、配置和使用
六: ActiveMQ的消息存储
包括:队列和topic、KahaDB、AMQ、JDBC、MMS等
n 七: ActiveMQ的Network
包括:在一台服务器启动多个Broker;静态网络连接的功能、配置等;“丢失”
消息的处理;容错或可负载均衡的连接;动态网络连接等
n 八:ActiveMQ的集群
包括: 队列消费者集群、Broker的集群、 Master Slave等
n 九: Destination高级特性
包括: 通配符、组合队列、配置启动的Destinations、 删除不活动的
Destinations、 Destination选项、虚拟Destinations、镜像队列、每个
Destination单独策略配置等
n 十: Message Dispatch高级特性
包括: 消息游标、异步发送、严格分发策略、轮询分发策略、优化批量确认、
生产者流量控制等
十一: Message高级特性
包括:消息属性、 Advisory Message、延迟和定时消息投递、Blob消息、消息
转换等
n 十二: Consumer高级特性
包括:独有消费者、消息异步分发、消息优先级、管理持久化消息、消息分组、
消息选择器、消息重递策略、慢消费者处理等
n 十三:杂项技术
包括:监控和管理Broker、集成ActiveMQ和Tomcat、什么时候使用ActiveMQ等
n 十四: ActiveMQ优化
包括:影响ActiveMQ性能的因素、常见的优化方式和配置等
android hot fix
安卓App热补丁动态修复技术
android react native
基于react native0.37版本
listview下拉刷新上拉加载, 界面跳转并传值,react与android传值,js界面与android back键结合, android调用js, js调用android方法和原生UI
android FFmpeg
//1执行命令行
//2 获取视频旋转角度
//3 获取元数据
//4视频解码器
AndroidNDKSimple
//--------Exception----------------
private native void ExceptionDemo();
private native void FatalErrorDemo();//一般调试时使用
//-----c调用java成员函数---------
private native void AccessStaticMethodDemo(Dummy p);
private native void AccessInstaceMethodDemo(Dummy p);
//------c调用java数据成员------------
private int intF;
private String strF;
private int[] intArrF;
private Dummy dummyF;
private static int sintF = 111;
private static String sstrF = "static str";
private static int[] sintArrF = {1,2,3};
private static Dummy sdummyF = new Dummy(333);
private native void AccessStaticFiledDemo();
private native void AccessInstanceFiledDemo();
//------------数组-------------
private native void GetArrayLengthDemo(double[] p1,Dummy[] p2,int[][] p3);
//此代码有问题,错误写法仅供参考
private native void IllegalDirectAccessDemo(int[] p);
private native Dummy[] NewObjectArrayDemo(Dummy p);
private native int[] NewIntArrayDemo();
private native Dummy GetSetObjectArrayDemo(Dummy[] p1,Dummy p2);
private native void GetReleaseIntArrayDemo(int[] p);
private native void GetSetIntArrayRegionDemo(int[] p1);
//-----类实例------
private native Contact GetObjectClassDemo(Contact p);
private native void IsInstanceOfDemo();
private native Contact AllocObjectDemo();
private native Contact NewObjectDemo(String name,int age);
private native Contact NewObjectADemo(String name,int age);
private native Contact NewObjectVDemo(String name,int age);
//-----类jclass-----
private native void findClassDemo();
private native void GetSuperClassDemo();
//---继承关系判断--
private native void IsAssignableFromDemo();
//-----全局 弱引用 局部-----
private native void referenceAssignmentAndNew(String p);
private native void localReference(String p, boolean b);
private native void globalReference(String p, boolean b);
private native void weakReference(String p, boolean b);
//----字符串处理 (java中编码为utf-16,android为utf-8),jni不能直接使用string----
private native String passStringReturnString(String string);
//--基本类型---
private native int add(int a, int b);
private native boolean passBooleanReturnBoolean(boolean b);
private native byte passByteReturnByte(byte b);
private native char passCharReturnChar(char c);
private native short passShortReturnShort(short s);
private native int passIntReturnInt(int i);
private native long passLongReturnLong(long l);
private native float passFloatReturnFloat(float f);
private native double passDoubleReturnDouble(double d);
java openfire smack
环境 openfire4.1.6 myeclipse jdk7 smack4.1.6
openfire服务器(安装流程http://blog.csdn.net/shimiso/article/details/8816558)
包含所有使用到的包
开发参考文档(smack下载包中)file:///E:/down_demo/smack_4_1_6/releasedocs/documentation/index.html
android正六边形按钮
android正六边形按钮 SexangleView
Android 模仿QQ/微信 未读消息显示
Android模仿QQ未读消息拖拽删除显示
https://github.com/dkmeteor/Bubble-Notification此效果有bug不建议使用
ObservableScrollView
本资源对Android-ObservableScrollView进行修改实现header先逐渐减小到一半再整体平移
android自定义数字键盘
android自定义数字键盘 实现键盘的自定义、点击edittext光变移动、数字随机生成等,目前只支持单行文本
Android类似Periscope点赞效果
一个类似Periscope点赞效果的Layout效果(心形点赞动画),改进心形跟随手指移动.
android Parcelable
在Android开发过程中,经常要在Activity之间传递参数,使用Android系统提供的方法可以传递基本数据类型的变量,但有时候我们经常要传递一些复杂的数据类型或自定义的类,这种情况的参数无法直接传递,我们可以通过序列化实现</span>
public abstract class A implements Parcelable {
private int a;
}
B 继承 A
public class B extends A {
private int b;
}
ParceList implements Parcelable {
public int myInt = 0;
public String str = null;
public float[] flot;
punlic stringList = new ArrayList<>();
public B b;
public List<B> arrList = new ArrayList<B>();
}
jar反编译工具
反编译JAVA class文件的实用工具,可以查看源代码,可以访问方法和字段,并将文件保存到本地