`
iame
  • 浏览: 132069 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Android中多媒体处理

阅读更多

1.概述
Android平台内置了常用类型媒体的编解码,可以在应用中方便地集成他们。访问平台的媒体能力是很直观简单的—可以使用相同的Intent和Activity机制。
Android能够从多个数据来源播放音视频:存在应用的资源目录中(raw resources)、文件系统中或者来自网络。通过android.media.MediaPlayer来播放。

平台同时也允许通过android.media.MediaRecorder录音视频,当然要硬件支持(模拟器可不行~要在真机上)。
Android1.5支持如下的媒体类型:

类型

格式

编码

解码

详情

文件类型

Audio

AAC LC/LTP

 

Y

/ 双声道160Kpbs 的码率,采样4-48KHz

 

3GPP(.3gp)

MPEG-4(.mp4,.m4a)

不支持raw AAC(.aac)

HE-AACv1

(AAC+)

 

Y

HE-AACv2

( 增强AAC+)

 

Y

AMR-NB

Y

Y

4.75 to 12.2 kbps sampled @ 8kHz

3GPP (.3gp)

AMR-WB

 

Y

9 rates from 6.60 kbit/s to 23.85 kbit/s sampled @ 16kHz

3GPP (.3gp)

MP3

 

Y

Mono/Stereo 8-320Kbps constant (CBR) or variable bit-rate (VBR)

MP3 (.mp3)

MIDI

 

Y

MIDI Type 0 and 1. DLS Version 1 and 2. XMF and Mobile XMF. Support for ringtone formats RTTTL/RTX, OTA, and iMelody

Type 0 and 1 (.mid, .xmf, .mxmf). Also RTTTL/RTX (.rtttl, .rtx), OTA (.ota), and iMelody (.imy)

Ogg Vorbis

 

Y

 

Ogg (.ogg)

PCM/WAVE

 

Y

8- and 16-bit linear PCM (rates up to limit of hardware)

WAVE (.wav)

Image

JPEG

Y

Y

Base+progressive

JPEG(.jpg)

GIF

 

Y

 

GIF(.gif)

PNG

 

Y

 

PNG(.png)

BMP

 

Y

 

BMP(.bmp)

Video

H.263

Y

Y

 

3GPP (.3gp)

 

H.264 AVC

 

Y

 

3GPP (.3gp) and MPEG-4 (.mp4)

 

MPEG-4 SP

 

Y

 

3GPP (.3gp)

T1还 额外支持了:AudioWMAVideoWMV类型。

2.播放

播放很简单,但从资源中播放和从文件/网络中播放还是有些区别,先说从资源中播放:

开始播放:MediaPlayer mp=MediaPlayer.create(context,R.raw.xxx);-->mp.start();
停止/播放:mp.stop()-->mp.reset();mp.prepare()-->mp.start();
暂停/播放:mp.pause()-->mp.start();

从文件/网络中播放:

开始播放:
MediaPlayer mp=new MediaPlayer.create();
mp.setDataSource(PATH_TO_FILE);
mp.prepare();
mp.start();
停止/播放和暂停/播放和上面一样。

3.录制
录制要稍微复杂一些,按照步骤:

  • 实例化MediaRecorder:mr=new MediaRecorder();
  • 初始化mr:mr.setAudioSource(MIC)/setVideoSource(CAMERA);必须在配置DataSource之前调用。
  • 配置DataSource:设置输出文件格式(参见上表)/路径,编码器(参见上表)等
  • 准备录制:mr.prepare();
  • 开始录制:mr.start();
  • 停止录制:mr.stop();
  • 释放资源:mr.release();

学习这部分内容的时候,就想到对电话录音是个不错的主意。一google,发现早就有这个软件了,但有一个问题就是声音只能从MIC中录入(录音的效果不是很好),受限于基带处理器,不能直接获取通话的声音记录,以后会不会开放这个功能接口?
http://groups.google.com/group/android-developers/browse_thread/thread/355254941f17aa17

分享到:
评论

相关推荐

    android多媒体框架详细分析

    ### Android多媒体框架详细分析 #### 一、摘要 ...通过以上分析可以看出,Android多媒体框架是一个非常复杂且功能强大的系统,它集成了多媒体处理的各个方面,为开发高质量的多媒体应用提供了坚实的基础。

    Android的多媒体框架OpenCore介绍.zip

    OpenCore不仅在Android早期版本中扮演着重要角色,而且在后续版本中与MediaCodec、MediaPlayer等组件一起构建了完整的多媒体处理体系。 OpenCore主要由以下几个模块组成: 1. **PVMF(Platform Video Middleware ...

    Android的多媒体框架

    MediaPlayer是Android多媒体框架中的核心类,用于播放音频和视频。它支持本地文件、网络流、甚至是其他应用程序提供的URI。MediaPlayer提供了控制播放进度、调整音量、设置播放模式(单曲循环、随机播放等)的能力。...

    Android的多媒体系统

    2. **MediaPlayer类**: 这是Android SDK中最常见的多媒体处理类,用于播放音频和视频文件。它可以处理多种格式的本地和网络媒体资源,并提供了控制播放、暂停、停止、快进、倒退等操作的接口。 3. **AudioManager**...

    android多媒体框架分析

    在Android系统中,多媒体框架是实现音频、视频播放和处理的核心组成部分。这篇博客"android多媒体框架分析"将深入探讨这一领域,旨在...对于想要深入理解Android多媒体处理的开发者来说,这将是一份宝贵的学习资料。

    Android多媒体构架分析

    在深入分析Android多媒体构架之前,我们必须先了解Android系统作为一个整体是如何处理多媒体信息的。Android多媒体构架是一套复杂的系统,它涵盖了音频、视频、图形和图像的捕获、处理和播放。本分析报告将侧重于Ice...

    Android的多媒体框架OpenCore介绍

    OpenCore作为Android多媒体处理的核心,与其他组件紧密集成。例如,与硬件抽象层(HAL)配合,实现对硬件音视频设备的访问;与SurfaceFlinger协作,完成画面的合成和显示;与Android的多媒体服务(如MediaPlayer服务...

    android的多媒体系统.pdf

    - **外部OpenCore项目**: 包含多种编解码器和多媒体处理组件,例如PVPlayer和PVAuthor。 - **PVPlayer**: 用于播放多媒体内容。 - **PVAuthor**: 用于创建或编辑多媒体内容。 #### 三、多媒体框架的关键库 **3.1 ...

    Android多媒体开发高级编程

    本节将深入探讨Android多媒体开发的高级编程技巧,帮助开发者实现更高效、更丰富的多媒体应用。 1. **多媒体框架概述** Android的多媒体框架基于开放移动联盟(OMA)的开放移动 Alliance Digital Media ...

    Android代码-安卓多媒体测试集合

    在Android平台上,多媒体处理是应用程序开发中的重要组成部分。"Android代码-安卓多媒体测试集合" 提供了一组专门用于测试和探索Android系统多媒体功能的代码样本。这个资源可以帮助开发者更好地理解和运用Android...

    基于android的多媒体播放器(服务端+客户端+数据库).zip

    5. **Android多媒体框架**:Android提供了强大的多媒体框架,包括AudioTrack、MediaPlayer、VideoView等,使得开发者可以方便地处理各种媒体文件的播放和回放。 6. **网络通信**:为了实现服务端和客户端的通信,...

    Android多媒体编程代码实例

    在Android平台上进行多媒体编程是一...通过理解和掌握以上知识点,开发者可以构建出功能丰富的Android多媒体应用,为用户提供丰富的视听体验。在实际开发中,应结合具体需求灵活运用,同时注意性能优化和用户体验设计。

    Android多媒体框架分析.pdf

    Android 多媒体框架是 Android 系统中负责处理多媒体任务的核心组件,包括音频、视频、图像等多媒体数据的处理和播放。基于 PacketVideo 公司的 OpenCORE 平台,多媒体框架提供了一套通用的可扩展接口,支持所有通用...

    Android开发 多媒体开发之MediaPlayer源码

    在Android开发中,多媒体处理是应用开发不可或缺的一部分,尤其是对于音乐播放器、视频播放器等类型的应用。MediaPlayer类是Android SDK提供的一种核心组件,用于播放音频和视频文件。本篇文章将深入探讨Android...

    Android多媒体框架初步分析

    总的来说,Android多媒体框架是一个强大且灵活的系统,它利用Open Core提供了丰富的多媒体处理能力,同时通过上层的Media API使得开发者能够轻松集成多媒体功能到自己的应用中。无论是播放本地媒体、流媒体还是进行...

    android多媒体

    OpenCORE是Android多媒体框架中的关键组件,它是一个开源的多媒体框架,提供了音频、视频的编解码能力,支持多种媒体格式。OpenCORE包含了PVMF(Packet Video Multimedia Framework)和其他组件,使得Android设备...

    Android多媒体开发高级编程电子书

    AMF包括多个层次,从低级别的硬件抽象层到高层的应用程序接口,使得开发者能够灵活地控制多媒体处理过程。 在图形开发部分,书中会详细介绍OpenGL ES,这是Android支持的3D图形库,广泛用于游戏开发和复杂的视觉...

    Android多媒体应用开发范例.pdf

    Android多媒体应用开发是移动应用开发中的重要组成部分,涉及音频、视频、图像等多种媒体格式的处理与展现。Android平台提供了丰富的多媒体API,使得开发者能够轻松地集成多媒体功能到应用程序中,为用户带来更丰富...

Global site tag (gtag.js) - Google Analytics