随笔分类 - android提高篇
摘要:JNI初步入门后,在传递数据的时候,遇到一个需求:有多个数据需要在Java与C代码之间进行传递。如果都做为函数参数传入,则函数很长很难看,并且多个数据的返回也不好实现。所以想到了把数据打包后传递。这在C语言中就是结构体,在Java中就是类了。我们要做的工作就是,先确定要传递的数据,然后相应在C与Ja
阅读全文
摘要:本系列文章如下: Android JNI(一)——NDK与JNI基础 Android JNI学习(二)——实战JNI之“hello world” Android JNI学习(三)——Java与Native相互调用 Android JNI学习(四)——JNI的常用方法的中文API Android JN
阅读全文
摘要:本系列文章如下: Android JNI(一)——NDK与JNI基础 Android JNI学习(二)——实战JNI之“hello world” Android JNI学习(三)——Java与Native相互调用 Android JNI学习(四)——JNI的常用方法的中文API Android JN
阅读全文
摘要:本系列文章如下: Android JNI(一)——NDK与JNI基础 Android JNI学习(二)——实战JNI之“hello world” Android JNI学习(三)——Java与Native相互调用 Android JNI学习(四)——JNI的常用方法的中文API Android JN
阅读全文
摘要:本系列文章如下: Android JNI(一)——NDK与JNI基础 Android JNI学习(二)——实战JNI之“hello world” Android JNI学习(三)——Java与Native相互调用 Android JNI学习(四)——JNI的常用方法的中文API Android JN
阅读全文
摘要:本系列文章如下: Android JNI(一)——NDK与JNI基础 Android JNI学习(二)——实战JNI之“hello world” Android JNI学习(三)——Java与Native相互调用 Android JNI学习(四)——JNI的常用方法的中文API Android JN
阅读全文
摘要:source .bash_profile //更新环境变量配置,使新设置的环境变量生效 vi .bash_profile //命令窗口输入 vi .bash_profile 打开环境变量配置文件,然后点i,回车可编辑,按esc,然后输入 :wq! 四个字符则退出并保存,最后输入source .bas
阅读全文
摘要:目录 文章 一开始 HOWTO文档 网站/博客 高级 视频 组件 演示 UI 材料设计 图片 地图 图表 导航 验证 文字和富文本 分析、流量统计 自动构建 风格样式 媒体 音频 视频 语音 存储 获利 模板 插件 服务 扫码器 蓝牙 / NFC / 信号灯 框架 Redux / ELM / 依赖注
阅读全文
摘要:RIFF file format RIFF全称为资源互换文件格式(Resources Interchange File Format),是Windows下大部分多媒体文件遵循的一种文件结构。RIFF文件所包含的数据类型由该文件的扩展名来标识 Chunk RIFF文件结构可以看作是树状结构,其基本构成
阅读全文
摘要:音视频系列 什么是MediaCodec MediaCodec是安卓官方提供的一套用于音视频编码和解码的API,该API是在安卓4.1(API 16)引入的,因此只能用于4.1以上的手机 MediaCodec工作原理 先上一幅图 MediaCodec工作原理.png 从图中可以看出MediaCodec
阅读全文
摘要:音视频系列 什么是音视频的分离和合成 分离就是将视频1的声音和图像分别取出来 合成就是将视频1的图像和非视频1的声音组合成一个新的视频 如何进行音视频的分离和合成 安卓提供了两个API来帮助我们完成这个操作 MediaExtractor用于分离视频 MediaMuxer用于合成视频 下面我就来介绍一
阅读全文
摘要:音视频系列 如何进行视频的采集和预览 视频的采集需要用到Camera这个API,谷歌在5.0引入了camrea2,为了适配所有的机型,我将分别介绍camera和camera2 预览可以使用SurfaceView和TextureView <uses-permission android:name="a
阅读全文
摘要:音视频系列 什么是MediaRecorder MediaRecorder是安卓提供的一个用于音视频采集的类 在前几篇文章中,我们已经介绍了如何进行音频和视频的采集,即通过AudioRecord采集音频,通过Camera来采集视频 那么我们还为什么要介绍MediaRecorder了 前几篇文章介绍的音
阅读全文
摘要:音视频系列 什么是wav wav是一种无损的音频文件格式,wav文件有两部分,第一部分是文件头,记录一些重要的参数信息,如音频的采样率,通道数,数据位宽,第二部分是数据部分,数据部分可以是PCM,也可以是其它的编码格式的数据 为什么要将音频存储wav格式 存储为该格式,音乐播放器可以通过读取wav头
阅读全文
摘要:音视频系列 音频采集AudioRecord AudioRecord与MediaRecorder区别 前者采集的是原始的音频数据,后者会对音频数据进行编码压缩并存储成文件 AudioRecord的使用 1.AudioRecord参数配置 public AudioRecord(int audioSour
阅读全文
摘要:音视频系列 什么是音/视频 音频 声音的集合 视频 图片的集合,当一段连续的图片不断的出现在人眼前(至少要求1秒24帧,即一秒内连续出现24张图片),肉眼就会欺骗性的告诉大脑我们在看一个视频,而不是幻灯片。 编码和解码 编码,对原始音视频文件进行压缩。 解码,对压缩过的音视频文件解压缩,从而完成播放
阅读全文
摘要:为什么要学习音视频 该技术比较火,如抖音,快手等APP 系统提供的MediaPlayer已经无法满足我们的需求,因为它不能支持所有的格式 对音视频比较感兴趣,最近开发了一款音乐App,但用的只是MediaPlayer,逼格不够高 想学习更多的技术 音乐播放器SofarMusic 该系列会持续更新,因
阅读全文
摘要:在学习Spring的时候,我们知道Spring主要有两大思想,一个是IoC,另一个就是AOP,对于IoC,依赖注入就不用多说了,而对于Spring的核心AOP来说,我们不但要知道怎么通过AOP来满足的我们的功能,我们更需要学习的是其底层是怎么样的一个原理,而AOP的原理就是java的动态代理机制,所
阅读全文
摘要:一、概述 代理是一种设计模式,其目的是为其他对象提供一个代理以控制对某个对象的访问,代理类负责为委托类预处理消息,过滤消息并转发消息以及进行消息被委托类执行后的后续处理。为了保持行为的一致性,代理类和委托类通常会实现相同的接口。 按照代理的创建时期,代理类可分为两种: 静态代理:由程序员创建代理类或特定工具自动生成源代码再对其编译,也就是说在程序运行前代理类的.class文件就已经...
阅读全文
摘要:Java的三种代理模式 1.代理模式 代理(Proxy)是一种设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能. 这里使用到编程中的一个思想:不要随意去修改别人已经写好的代码或者方法,如果需改修
阅读全文

浙公网安备 33010602011771号