Android 媒体编解码器(转)】的更多相关文章

媒体编解码器 MediaCodec类是用来为低级别的媒体编码和解码的媒体编解码器提供访问.您可以实例化一个MediaCodec类通过调用createEncoderByType()方法来进行对媒体文件进行编码或者调用createDecoderByType()来对媒体文件进行解码.每一个方法都要采取一个MIME类型为你想要编码或者解码的媒体文件类型,例如“video/3gpp”或者“audio/vorbis”. 在MediaCodec实例创建之后,你可以调用configure()方法来指定例如媒体格…
Android 媒体存储服务 简介: 本文是<深入Android媒体存储服务>系列第二篇,简要介绍媒体存储服务扫描文件的流程.文中介绍的是 Android 4.2. Android 有一套媒体存储服务,进程名是 android.process.media,主要负责把磁盘中的文件信息保存到数据库当中,供其他 APP 使用以及 MTP 模式使用.因此如何保持数据库和磁盘文件保持一致非常关键,这个就是媒体存储服务中 MediaScanner 的工作. 整个流程如下图所示, 监听 Intent 事件…
Android 媒体存储服务 本文介绍如何在 Android 中,开发者的 APP 如何使用媒体存储服务(包含MediaScanner.MediaProvider以及媒体信息解析等部分),包括如何把 APP 新增或修改的文件更新到媒体数据库.如何在多媒体应用中隐藏 APP 产生的文件.如何监听媒体数据库的变化等等.   简介:本文介绍如何在 Android 中,开发者的 APP 如何使用媒体存储服务(包含MediaScanner.MediaProvider以及媒体信息解析等部分),包括如何把 A…
Android 有一套媒体存储服务,进程名是 android.process.media,主要负责把磁盘中的文件信息保存到数据库当中,供其他 APP 使用以及 MTP 模式使用.这里包含了数据库管理.磁盘文件遍历扫描.多媒体文件解析等几个部分,下面文章分别覆盖了这些内容: Android MediaProvider 数据库模式:上图中蓝色部分.详细分析了 Android MediaProvider 多媒体数据库(以 SDK 2.3.3 为例)的模式(schema),从而可深入了解这些数据的含义及…
简介: 本文是<深入Android媒体存储服务>系列第二篇,简要介绍媒体存储服务扫描文件的流程.文中介绍的是 Android 4.2. Android 有一套媒体存储服务,进程名是 android.process.media,主要负责把磁盘中的文件信息保存到数据库当中,供其他 APP 使用以及 MTP 模式使用.因此如何保持数据库和磁盘文件保持一致非常关键,这个就是媒体存储服务中 MediaScanner 的工作. 媒体文件扫描流程 整个流程如下图所示, 监听 Intent 事件 MediaP…
众所周知一个媒体播放器新建的几个步骤: Mediaplayer mp = new MediaPlayer(0 mp.setDatasource(xxx); mp.setDispalyer(xxx); mp.setAudioStreamType(xxx); mp.prepareAsync(); mp.start 这个和activity该如何绑定呢?本文则是通过图库分析,来说明此中明细. 打开图库显得的是一个名字叫MovieActivity的Actiivity,具有activity的的生命周期,而媒…
Android媒体库 http://www.apkbus.com/android-19283-1-1.html Android本地图片选择打开媒体库,选择图片 http://www.apkbus.com/android-1977-1-1.html Android 如何让content provider构建媒体数据库 http://www.apkbus.com/android-16817-1-1.html Android下媒体库的实现 http://www.apkbus.com/android-1…
Android提供了MediaPlayer播放器播放媒体文件,其实MediaPlyer只是对Android Media包下的MediaCodec和MediaExtractor进行了包装,方便使用.但是最好理解下Android媒体文件的解码,编码和渲染流程. 使用android.media包下的MediaCodec和MediaExtractor实现一个简单的视频解码渲染. 使用到了: MediaCodec:负责媒体文件的编码和解码工作,内部方法均为native方法 MediaExtractor:负…
Android提供了MediaPlayer播放器播放媒体文件,其实MediaPlyer只是对Android Media包下的MediaCodec和MediaExtractor进行了包装,方便使用.但是最好理解下Android媒体文件的解码,编码和渲染流程. Shape Of My Heart.mp4 <source src="http://7xoquj.com1.z0.glb.clouddn.com/shape_of_my_heart.mp4" type="video/…
有时我们需要程序模拟按钮或点击,而手机本身又没有,哪么可以采取其它方式 模拟实现,最后再去实际设备去测试(前期一般都拿不到设备): 如上一首,下一首,暂停等,手机上是没有的,但有些设备上是有的,所以我们只能模拟: 模拟按钮一种可以采用adb 命令: 别一种采用程序,这里主要讲采用程序的方法: 通过Runtime实现,模拟媒体上一首代码如下: try { String keyCommand = "input keyevent " + KeyEvent.KEYCODE_MEDIA_NEXT…
近期杂七杂八的忙碌着,前几天看了下这部分主要是stagefright模块的,所以更改下名字 做了挺长时间的android平台的媒体开发,对之前的分析进行一个阶段性的总结. 一.android结构图(上下文关系) 二.android文件夹结构 自从android4.2版本号之后,媒体的相关代码都放到framework/av/的文件夹中,俗称"AV工作者",呵呵(本地代码不是太健全,文件夹我手动敲,公司代码健全,直接导出文件夹树) |----- media | | | |-- libmed…
简介: 本文介绍如何在 Android 中,开发者的 APP 如何使用媒体存储服务(包含MediaScanner.MediaProvider以及媒体信息解析等部分),包括如何把 APP 新增或修改的文件更新到媒体数据库.如何在多媒体应用中隐藏 APP 产生的文件.如何监听媒体数据库的变化等等. Android 原生有一套媒体存储服务,进程名是 android.process.media,主要负责把磁盘中的文件信息保存到数据库当中,供其他 APP 使用以及 MTP 模式使用.因此 APP 可以随时…
转自:http://blog.csdn.net/loovejava/article/details/8971790 最近杂七杂八的忙碌着,前几天看了下这部分主要是stagefright模块的,所以更改下名字 做了挺长时间的Android平台的媒体开发,对之前的分析进行一个阶段性的总结. 一.android结构图(上下文关系) 二.android目录结构 自从android4.2版本之后,媒体的相关代码都放到framework/av/的目录中,俗称"AV工作者",呵呵(本地代码不是太健全…
上篇blog说到了经过对文件夹进行扫描如果后缀符合系统设定的一些格式,那么就会进行文件内容扫描下面我们紧接着STEP 14中的 status_t StagefrightMediaScanner::processFile(         const char *path, const char *mimeType,         MediaScannerClient &client) {     LOGV("processFile '%s'.", path);     cli…
用过Android手机的同学都知道,每次开机的时候系统会先扫描sdcard,sdcard重新插拔(挂载)也会扫描一次sdcard. 为什么要扫描sdcard,其实是为了给系统的其他应用提供便利,比如,Gallary.Music.VideoPlayer等应用,进入Gallary后会显示sdcard中的所有图片, 如果进入Gallary后再去扫描,可想而知,你会厌恶这个应用,因为我们会觉得它反应太慢了.还有Music你看到播放列表的时候实际能看到这首歌曲的时长.演唱者.专辑 等信息,这个也不是你进入…
项目中可能有这样的需求:下载或导入.导出的图片.音乐等媒体文件,需要马上能在图库或本地视屏播放器中显示出来,或者要能在媒体数据库中查询到媒体文件的相关信息,这时我们就得主动通知系统扫描新的媒体文件了.我整理了一个扫描的工具类,分享下. 具体代码: public class MediaScanner { private volatile static MediaScanner instance; private MediaScanner(){ } public static MediaScanne…
在做Android媒体应用程序时(Audio.Image.Video)需要对Android的媒体提供者(MediaProvider)做详细的分析,下面记录一下我的收获: 一.获取MediaProvider: 该工程在系统源码的packages\providers目录下,提出并导入Eclipse,便于阅读: 图中可见都很多报错的,是滴,因为需要一些系统标准sdk之外的接口,不过不影响我们阅读代码. 二.工程结构及内部关系: 可以从上图看出包含4个文件: MediaScannerService.Ja…
*由于工作需要,需要利用MediaCodec实现Playback及Transcode等功能,故在学习过程中翻译了Google官方的MediaCodec API文档,由于作者水平限制,文中难免有错误和不恰当之处,望批评指正. *转载请注明出处:http://www.cnblogs.com/roger-yu/ MediaCodec public final class MediaCodec extends Object Java.lang.Object → android.media.MediaCo…
因近期工作调整,关于Mediacodec部分的翻译会暂停,后续有时间一定补上,非常抱歉. 本文章为根据Android Mediacodec官方英文版的原创翻译,转载请注明出处:http://www.cnblogs.com/xiaoshubao/p/5368183.html 从API 16开始,Android提供了Mediacodec类以便开发者更加灵活的处理音视频的编解码,较MediaPlay提供了更加完善.丰富的操作接口,具体参见API原始地址. 因为原始文章较长且没有找到对应较为完善的中文说…
笔者:Mark Liu 下载样本代码 简单介绍 在Android 中,创建一个可以播放视频剪辑的应用很easy:创建一个採用 3D 图形平面的游戏应用也很easy.可是,创建一个可以在 3D 图形对象上播放视频的应用却不easy. 本文介绍了我为应对该挑战创建的应用. 该应用可在 3D 平面上渲染视频,并支持用户以交互的方式在视频平面上播放. 该应用须要解决三大实施问题: 怎样构建代码以支持用户在播放视频时变更 3D 平面? 尽管 Android 中默认的 MediaPlayer 配备了全面的播…
作者:Mark Liu 下载样本代码 简单介绍 在Android 中,创建一个可以播放视频剪辑的应用很easy:创建一个採用 3D 图形平面的游戏应用也很easy.可是,创建一个可以在 3D 图形对象上播放视频的应用却不easy.本文介绍了我为应对该挑战创建的应用.该应用可在 3D 平面上渲染视频,并支持用户以交互的方式在视频平面上播放. 该应用须要解决三大实施问题: 怎样构建代码以支持用户在播放视频时变更 3D 平面? 尽管 Android 中默认的 MediaPlayer 配备了全面的播放操…
转载请把头部出处链接和尾部二维码一起转载,本文出自逆流的鱼yuiop:http://blog.csdn.net/hejjunlin/article/details/53183718 前言:前面几节都是介绍Camera2相关,对于Camera2预览把图像显示在SurfaceView上,还有录像时,时时刷新当前图像区域.追溯到最早介绍的MediaPlayer播放视频,这些都离不开重要角色MediaCodec,今天介绍MediaCodec,看下Agenda: MediaCodec是什么? codec操…
原文:http://android.eoe.cn/topic/summary 翻译:[eoeAndroid原创团队]kris.流风而逝.贼寇在何方.snowxwyo.lsy4833406 更新日期:2012-06-28 Android 4.1 (Jelly Bean)发布了,这次发布包含了一些性能及用户体验上面的优化.也为用户和开发人员添加了一些新的功能.本文主要介绍了一些对于开发人员来说比较关注或者说有用的api. 对于应用开发人员来说,Android 4.1里面包括了SDK编译包(可以编译你…
目录:     (4)Android 官方网站 对 MediaCodec的介绍 注:编解码器特定数据(Code-specific Data,简写为csd) 部分结合网上资料加入了补充和个人理解.请悉知.   正文:         MediaCodec类可用于访问底层媒体编解码器,例如:编码器/解码器组件.它是Android底层多媒体支持基础架构的一部分(通常与MediaExtractor, MediaSync, MediaMuxer, MediaCrypto, MediaDrm, Image,…
目录: (1)概念解释 : 硬解.软解 (2)Intel关于Android MediaCodec的相关说明 正文: 一.硬解.软解         (1)概念:                 a.硬件解码:硬件解码是图形芯片厂商提出的用GPU资源解码视频流的方案                 b.软件解码:相对于硬件解码,传统的软件解码是用CPU承担解码工作         (2)优点:                 a.硬解:效率高.功耗低.热功耗低                 b.…
一. 序 最新的 Android 版本 Q,已经发布了 Android Q Beta 3,虽然没有正式发布,但是不少用户已经加入了测试计划,抢先体验 Android Q 的新功能. 近期不少体验用户反馈,自己的设备升级到 Beta 3 之后,会出现触不及防的强制重启.谷歌方面已经确认,是运行了 Project Mainline 这个在 Android Q 中新加入的功能导致.谷歌在确认的同时也表示,这些问题会在之后的测试版本中修复,不会出现在正式版中. 那什么是 Project Mainline…
音频格式和编解码器 格式/编解码器 编码器 解码器 细节 支持的文件类型/容器格式 AAC LC • • 支持单声道/立体声/ 5.0 / 5.1内容,标准采样率为8至48 kHz. •3GPP(.3gp)•MPEG-4(.mp4,.m4a)•ADTS原始AAC(.aac,Android 3.1+解码,Android 4.0+编码,不支持ADIF)•MPEG-TS(.ts,不可寻求,Android 3.0+) HE-AACv1(AAC +) • (Android 4.1+) • HE-AACv2…
一.开发环境搭建 (已完成) 负责人:kris 状态:已完成 所整理标签为:搭建 SDK JDK NDK Eclipse ADT 模拟器 AVD 调试器(DEBUG) DDMS 测试 日志 Logcat ADB 复制代码 汇总帖子: 汇总主帖Android开发环境搭建详尽教程实例 :http://www.eoeandroid.com/thread-165622-1-1.html  分帖:  1. [eoeAndroid社区索引]android开发环境搭建篇详尽的教程实例汇http://www.e…
最近博主想做一个app,中间有一个是录音的功能.于是博主想把UI做的好看一些,想仿照微信或者QQ语音输入时,能够随着声音的大小显示声波振幅.于是查找了一些资料,现在把这个功能的Demo分享给大家,以后也会把更多的项目学习到的知识分享给大家. 其实这个功能主要是依靠MediaRecorder的getMaxAmplitude()方法来获得声音的振幅,然后依据计算公式分贝的计算公式K=20lg(Vo/Vi) Vo当前的振幅值,Vi基准值为600来获得分贝数然后在根据分贝来显示ImageView上的不同…
原文:[Xamarin开发 Android 系列 3]循序渐进的学习顺序 指定合理的学习步骤,将各个技术点进行强化.慢慢 的就从点到线 到面的飞跃,一切仅仅是时间问题,开始前,请记住,学习是最佳的投资方式.风险成本极小,但是收货极佳. 用最小的杠杠,撬动爆发力极强的财富,那就是学习和经验的累积的过程! [学习顺序-1 国内篇] [Xamarin Android开发实战基础篇] 第1章 Xamarin开发Anroid应用介绍 11.1 Xamarin基本知识 11.1.1 Xamarin发展 11…