android 多媒体编程

多媒体编程

1、加载大图片(*

android虚拟机根据所建模拟器版本分配内存对空间(2.3(level10)默认16M),加载图片需要的内存空间不是按图片大小来算的,而是按像素点的多少来算的(图片分辨率*每个像素所占字节)。图片加载到内存中需要把每一个像素加载到内存中,所以堆存的要求非常高,一不小心就会造成OOM(OutOfMemoryError)内存溢出致命错误。
例如:
 当前有一张图片,大小仅为1M,但其规格为3000*2000,现在需要加载此图片总像素数   =3000*2000=6000000,所耗内存大小3000*2000*singleData(单个像素,所占空间大小) 
 一般单个像素单位种类如下:
     ARGB_4444:2b
     ARGB_8888:4b
     RGB_565:4b
 解决方案:
     java代码可以对图片进行比例缩放
    假设:
        图片宽高:3000*2000
        屏幕宽高:300*400

    计算(原图片和手机屏幕)缩放比例: 10/5,选择比例值大于1,且最大。
    缩放后的图片所占空间:300*200*singleData
1.1、实现图片的缩放加载

2、图片加水印

2.1、图片加水印代码

3、图片特效

3.1、缩放
3.2、镜面
3.3、倒影
3.4、旋转
3.5、位移

4、图片颜色处理

4.1、颜色过滤器
4.2、实现图片美化功能

5、案例-随手涂鸦

5.1、实现原理
5.2、代码实现

6、案例-撕衣服游戏

6.1、实现原理
6.2、代码实现

7、音频播放

7.1、MediaPlay
7.2、SoundPool
7.3、使用两种方式播放音乐
7.4、案例-音乐播放器

8、视频播放器

8.1、使用MediaPlayer+SurfaceView播放视频
8.2、使用VideView空间显示视频

9、传感器

9.1、android中常见的传感器
9.2、传感器的使用
9.3、案例-公交防盗

10、摄像头

10.1、调用系统摄像头实现照相和摄像机
10.2、编码实现照相机功能
10.3、编码实现摄像功能

11、获取图库中的图片

12、获取Exif信息

13、结合工作和面试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值