Android Capture Android System Audio

项目需要获取播放视频的实时音量值,最简捷的方法是监听音频输出端,取得音频输出流,再进行转换。

调查时,首先找到这篇博客:

http://blog.csdn.net/jinzhuojun/article/details/33748031

即利用API 19中新加的MediaRecorder.AudioSource.REMOTE_SUBMIX参数,实时录制输出流数据。

因为使用REMOTE_SUBMIX参数需要系统级权限,尝试更改应用签名为系统签名,

参考: Windows下给Android app进行系统签名

更改签名成功,但是在安装时出现错误,三星和Nexus均安装失败。

继续查找原因,发现更改系统签名仅适用于本身所编译的系统,对于国内各种深度定制的系统而言,应用均不能安装。

获取系统音频输出的方案就此宣告破产!

另外,Google时发现有人建议尝试android.media.audiofx.Virtualizer

Record Android Audio Output

android get device overall audio output in pcm

初步查看好像有利用的可能,下阶段好好调查一下。

时间: 2024-10-13 01:41:16

Android Capture Android System Audio的相关文章

android finish和system.exit(0)的区别

finish是Activity的类,仅仅针对Activity,当调用finish()时,只是将活动推向后台,并没有立即释放内存,活动的资源并没有被清理:当调用System.exit(0)时,杀死了整个进程, 这时候活动所占的资源也会被释放. 在开发android应用时,常常通过按返回键(即keyCode == KeyEvent.KEYCODE_BACK)就能关闭程序,其实大多情况下该应用还在任务里运行着,其实这不是我们想要的结果. 我们可以这样做,当用户点击自定义的退出按钮或返回键时(需要捕获动

Android底层开发之Audio HAL

http://blog.csdn.net/kangear/article/details/44939429 Android底层开发之Audio HAL 在Android音频底层调试-基于tinyalsa中以「抛开Android的天生复杂,回归嵌入式Linux的本质」的方式介绍如何调试Linux内核中的音频驱动. 这里向上再伸展一下进入HAL层,看是如何将tinyalsa封装给Frameworks使用的. 基于4.2.2版本源码进行讨论.Android官方教程是Audio Implementing

Use PrefHUD ES to Do Frame Capture Android Game

Author: http://www.cnblogs.com/open-coder/p/3898224.html This is short tutorial about how to do frame capture with Nvidia PrefHUD. You could find a detail tutorial from here. Before frame capture, some requirement should be fullfilled: 1) OpenGL ES 2

替换Android系统镜像system.img的方法

以前那个是8皇后问题,用的递归写法,然后这个可以求n皇后放置问题,用的纯粹数学方法--神奇! #include <iostream> #include <cstdio> #include <fstream> #include <algorithm> #include <cmath> #include <deque> #include <vector> #include <list> #include <q

Android File Hierarchy : System Structure Architecture Layout

Most of the Android user are using their Android phone just for calls, SMS, browsing and basic apps, But form the development prospective, we should know about  Android internal structure. Android uses several partitions (like boot, system, recovery,

Android --- Zygote和System进程启动过程简要分析

Android --- Zygote和System进程启动过程简要分析 在看过<Android情景源代码>的Zygote启动章节后,作如下简要总结.Zygote进程在init进程启动过程中被以service服务的形式启动: service zygote /system/bin/app_process -Xzygote /system/bin --zygote --start-system-server class main socket zygote stream 660 root syste

How To: Capture Android &amp; iOS Traffic with Fiddler

How To: Capture iOS Traffic with Fiddlerhttps://www.telerik.com/blogs/how-to-capture-ios-traffic-with-fiddler?utm_medium=email&utm_source=eloqua&utm_campaign=fiddler-awareness-nurture&elqTrackId=649AA6BE931C88A025857FB5CA28063F&elq=ace69fc

Android API Guides –System Permissions

系统权限 声明: 本文由Gordon翻译 发布于www.dlvoice.com 欢迎转载,但请保留此声明 原文地址:http://developer.android.com/guide/topics/security/permissions.html Android是一个特权分离的操作系统,运行在其上的应用都有一个特定的系统身份(Linux的用户ID和组ID).系统的部分也会被分为特定的身份,Linux就是通过这个身份来区别各个应用的. 更加详细的安全特性是通过"权限"机制来控制一个进

android开发——Android开发中的47个小知识

1.判断sd卡是否存在  boolean sdCardExist = Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED); 2.TextView部分文字设置颜色 TextView tv = new TextView(this); //添加css样式 tv.setText(Html.fromHtml("<font color="#ff0000">红色&l