精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Android中實現系統聲音錄制-RK3399開發板源碼修改

移動開發 Android
Android中可以通過使用MediaRecorder.AudioSource.REMOTE_SUBMIX來實現系統聲音的錄制,這個屬性只有系統應用能夠使用。

前言

這幾天做系統聲音錄制,通過改源碼編譯后成功的;那就詳細介紹下內置聲源的錄制方案。

Android中可以通過使用MediaRecorder.AudioSource.REMOTE_SUBMIX來實現系統聲音的錄制,這個屬性只有系統應用能夠使用。

而且這個屬性會截掉耳機和揚聲器的聲音,聽不到手機中播放音樂或者視頻時的聲音。

這個時候我們就要來改系統源碼。

一、錄音的簡單實現

AudioRecord  audioRecord = new AudioRecord(MediaRecorder.AudioSource.REMOTE_SUBMIX
, captureSampleRate
, captureChannel
, AudioFormat.ENCODING_PCM_16BIT
, recordBufferSize);
new Thread(new Runnable() {
@Override
public void run() {
final byte[] bytes = new byte[recordBufferSize];
audioRecord.read(bytes, 0, bytes.length);
audioRecord.setPositionNotificationPeriod(captureSampleRate / 25);
audioRecord.setRecordPositionUpdateListener(new AudioRecord.OnRecordPositionUpdateListener() {
@Override
public void onMarkerReached(AudioRecord recorder) {
}
@Override
public void onPeriodicNotification(AudioRecord recorder) {
singleThreadPool.execute(new Runnable() {
@Override
public void run() {
try {
if(audioRecord!=null){
audioRecord.read(bytes, 0, bytes.length);
PcmBuffer.clear();
PcmBuffer.put(bytes, 0, recordBufferSize);
audioFrameParam.sampleRate = ZEGO_AUDIO_SAMPLE_RATE_44K;
//聲音的處理
}
}catch (Exception e){
e.printStackTrace();
}
}
});
}
});
audioRecord.startRecording();
}
}).start();

二、AudioSource輸入源介紹?

public final class AudioSource {
private AudioSource() {}
/** Default audio source **/
public static final int DEFAULT = 0;
/** Microphone audio source */
public static final int MIC = 1;
/** Voice call uplink (Tx) audio source */
public static final int VOICE_UPLINK = 2;
/** Voice call downlink (Rx) audio source */
public static final int VOICE_DOWNLINK = 3;
/** Voice call uplink + downlink audio source */
public static final int VOICE_CALL = 4;
/** Microphone audio source with same orientation as camera if available, the main
* device microphone otherwise */
public static final int CAMCORDER = 5;
public static final int VOICE_RECOGNITION = 6;
public static final int VOICE_COMMUNICATION = 7;
public static final int REMOTE_SUBMIX = 8;
}
  • DEFAULT:默認為MIC,android.permission.RECORD_AUDIO。
  •  MIC:麥克風,android.permission.RECORD_AUDIO。
  • VOICE_UPLINK:電話錄音上行線路,android.permission.CAPTURE_AUDIO_OUTPUT,系統權限不允許第三方app使用 。
  • VOICE_DOWNLINK:電話錄音下行線路,android.permission.CAPTURE_AUDIO_OUTPUT,系統權限不允許第三方app使用。
  •  VOICE_CALL:電話錄音上下線路,android.permission.CAPTURE_AUDIO_OUTPUT,系統權限不允許第三方app使用 。
  • CAMCORDER:攝像頭的麥克風,android.permission.RECORD_AUDIO。
  • VOICE_RECOGNITION:語音識別,android.permission.RECORD_AUDIO。
  • VOICE_COMMUNICATION:網絡電話,android.permission.RECORD_AUDIO。
  • REMOTE_SUBMIX:傳輸到遠程的音頻混合流,默認情況下如果用該項錄音,本地揚聲器或者耳機的聲音將會被截走,android.permission.CAPTURE_AUDIO_OUTPUT,系統權限不允許第三方app使用。

REMOTE_SUBMIX使用的注意事項

(1)需要系統權限 。

(2)會截走揚聲器和耳機的聲音,也就是說再錄音時本地無法播放聲音。

對于系統權限,需要在在AndroidManifest.xml添加 android:sharedUserId="android.uid.system",然后使用系統簽名來打包應用,這樣就第三方應用打包為系統應用,就可以使用系統權限了。

三、源碼修改

1、Android 10及以下的錄屏

frameworks\av\services\audiopolicy\enginedefault\src\Engine.cpp
if(mAvailableOutputDevices.getDevice(AUDIO_DEVICE_OUT_REMOTE_SUBMIX, String8("0")) != 0) {
device2 = availableOutputDeviceTypes & AUDIO_DEVICE_OUT_REMOTE_SUBMIX;
}

修改為:

if (mAvailableOutputDevices.getDevice(AUDIO_DEVICE_OUT_REMOTE_SUBMIX, String8("0")) != 0) {
device2 = availableOutputDeviceTypes & AUDIO_DEVICE_OUT_REMOTE_SUBMIX;
device2 |= (availableOutputDeviceTypes & AUDIO_DEVICE_OUT_WIRED_HEADPHONE);
device2 |= (availableOutputDeviceTypes & AUDIO_DEVICE_OUT_SPEAKER);
}

2、Android 11

目標frameworks\av\services\audiopolicy\enginedefault\src\Engine.cpp
if ((remoteSubmix = availableOutputDevices.getDevice(
AUDIO_DEVICE_OUT_REMOTE_SUBMIX, String8("0"),
AUDIO_FORMAT_DEFAULT)) != nullptr) {
devices2.add(remoteSubmix);
}

修改為?:

if ((remoteSubmix = availableOutputDevices.getDevice(
AUDIO_DEVICE_OUT_REMOTE_SUBMIX, String8("0"),
AUDIO_FORMAT_DEFAULT)) != nullptr) {
devices2 = availableOutputDevices.getDevicesFromTypes({
AUDIO_DEVICE_OUT_REMOTE_SUBMIX, AUDIO_DEVICE_OUT_WIRED_HEADPHONE, AUDIO_DEVICE_OUT_SPEAKER});
}

總結?

要實現安卓錄制系統聲音,正常情況下是獲取不到的,這個方案是修改源碼的方式來實現。

后面可以介紹下系統是怎么實現的,可以把源碼貼出來,大家一起學習。

圖片

責任編輯:姜華 來源: Android開發編程
相關推薦

2022-03-03 19:21:50

Harmony鴻蒙操作系統

2021-09-08 15:23:51

鴻蒙HarmonyOS應用

2023-03-07 15:54:45

鴻蒙Mesa庫

2020-12-29 09:59:01

鴻蒙HarmonyOS智能家居

2020-12-16 10:05:48

鴻蒙開發板Onenet平臺

2017-01-06 14:39:43

芯片

2020-12-02 11:55:40

OLED

2023-08-18 14:34:09

HDF驅動框架

2020-10-20 09:32:43

HiSparkWi-FiIoT

2022-04-01 15:54:01

DHCP網絡協議開發板

2022-05-31 16:06:24

udp通信wifi鴻蒙

2022-04-14 11:44:25

LiteOS線程鴻蒙

2022-10-14 15:55:24

環境搭建鴻蒙

2022-01-07 21:11:27

鴻蒙HarmonyOS應用

2021-05-25 14:47:43

鴻蒙HarmonyOS應用

2021-12-29 16:13:03

鴻蒙HarmonyOS應用

2020-11-17 12:15:36

MQTT開發

2022-02-24 16:39:41

OpenHarmonNiobe開發鴻蒙

2022-09-19 13:49:55

操作系統鴻蒙
點贊
收藏

51CTO技術棧公眾號

51国产成人精品午夜福中文下载| 欧美精品国产精品| 官网99热精品| 日韩特级黄色片| 国产一区二区三区91| 91成人免费在线| 青青草原国产免费| 免费观看毛片网站| 日韩精品一二三| 另类视频在线观看| 黄色在线免费播放| 欧美日一区二区三区| 亚洲黄色在线视频| 欧美日韩在线一二三| 亚洲在线免费观看视频| 在线观看的日韩av| 日韩在线视频网站| 亚洲激情 欧美| 999精品嫩草久久久久久99| 亚洲成人av在线电影| 亚洲欧洲中文| 亚州男人的天堂| 久久 天天综合| 欧美亚洲另类在线| 日本妇女毛茸茸| 欧美先锋资源| 日韩精品黄色网| 黄色片免费网址| 欧亚一区二区| 婷婷国产v国产偷v亚洲高清| 中文字幕中文字幕一区三区| 青青草视频免费在线观看| 韩国精品久久久| 国产91精品久久久久久久| 亚洲欧美一区二区三区四区五区| 日本久久一二三四| 亚洲精品丝袜日韩| 亚洲天堂av网站| 日韩激情精品| 欧美日韩在线一区二区| 久久国产色av免费观看| 97超碰在线免费| 亚洲女同女同女同女同女同69| 日本日本精品二区免费| 天堂成人在线| 精品国产亚洲一区二区在线观看| 欧美日在线观看| 欧美精品久久久久久久久久久| 国产原厂视频在线观看| 国产精品免费久久久久| 色综合666| 黄网在线免费| 国产三级欧美三级| 蜜桃av久久久亚洲精品| 五月婷婷在线播放| 成年人午夜久久久| 国语精品中文字幕| 欧美激情喷水视频| 国产十八熟妇av成人一区| 亚洲精品福利| 精品国产免费一区二区三区香蕉| 丰满人妻一区二区三区53视频| av在线国产精品| 91精品国产综合久久久蜜臀图片| 三上悠亚在线一区| 欧美日韩免费电影| 777午夜精品视频在线播放| 人人爽人人av| 巨大黑人极品videos精品| 欧美视频一二三区| 欧美精品 - 色网| 国产乱码精品一区二区三区亚洲人| 678五月天丁香亚洲综合网| 欧美一级特黄aaa| 久久在线观看| 精品不卡在线视频| 国产又爽又黄无码无遮挡在线观看| 久久精品论坛| 亚洲欧美制服另类日韩| 极品久久久久久久| 一区二区三区四区电影| 欧美高清视频在线| 国产精品第5页| 美洲天堂一区二卡三卡四卡视频 | 99在线首页视频| 黄色片一区二区| 久久先锋影音av| 亚洲精品在线免费| 四虎影视国产在线视频| 精品日韩美女的视频高清| 超碰影院在线观看| 91精品国产色综合久久不卡粉嫩| 精品99999| 成人激情五月天| 欧美伊人久久| 日韩美女激情视频| av高清一区二区| 91小视频在线免费看| 日韩一级黄色av| 444亚洲人体| 亚洲自拍第二页| 粉嫩av一区二区三区| 欧美连裤袜在线视频| 午夜在线播放| 天天射综合影视| 亚洲精品久久久中文字幕| 伊人久久影院| 在线视频亚洲欧美| 亚洲综合一二三| 精品一区二区三区在线观看国产| 国产一区自拍视频| 午夜激情视频在线观看| 午夜精品国产更新| 天天操天天干天天做| 日韩av字幕| 精品国产拍在线观看| 日韩成人在线免费视频| 久久66热偷产精品| 欧美日韩免费观看一区| 久久久久黄久久免费漫画| 欧美视频一区二区三区在线观看 | 91精品国产一区二区在线观看| 亚洲电影在线观看| 中国毛片直接看| 丝袜美腿亚洲综合| 国产精品99久| 日日骚一区二区网站| 成人免费图片免费观看| 欧美日韩亚洲丝袜制服| 黄瓜视频污在线观看| 欧美三区在线| 成人黄色在线观看| 福利在线播放| 色狠狠综合天天综合综合| 日本一区二区在线观看视频| 97精品在线| 国产精品久久久久久亚洲调教| 午夜国产在线视频| 亚洲午夜一区二区三区| 中文字幕一区二区三区四| 国产欧美日韩视频在线| 538国产精品视频一区二区| 亚洲国产精品久久人人爱潘金莲 | cao在线视频| 91.com在线观看| 中文字幕有码在线播放| 校园激情久久| 九九九九精品| 麻豆理论在线观看| 精品日韩欧美一区二区| 欧美极品视频在线观看| 国产成人综合在线播放| 在线观看污视频| 久久久久久久久成人| 美女福利精品视频| 99热精品在线播放| 亚洲免费视频成人| 亚洲区 欧美区| 韩国av一区| 国产乱人伦精品一区二区| 牛牛精品在线| 亚洲国产精品小视频| 国产精品成人免费一区二区视频| 成人h动漫精品| 免费一级特黄特色毛片久久看| 久久精品色综合| 98视频在线噜噜噜国产| 青青草在线播放| 91久久香蕉国产日韩欧美9色| 制服 丝袜 综合 日韩 欧美| 久久一二三四| 一区二区三区四区五区精品| 青青在线精品| 欧美黑人视频一区| 亚洲欧美色视频| 在线精品视频一区二区| 多男操一女视频| 国产福利视频一区二区三区| 男女激情免费视频| 亚洲资源网你懂的| 国产精品视频免费观看www| 国产在线一区二区视频| 日韩精品一区二| 手机看片久久久| 中文字幕中文字幕中文字幕亚洲无线| 亚洲精品在线网址| 亚洲深夜福利| 亚洲国产一区二区在线| 国产精品高清一区二区| 国语自产精品视频在线看一大j8 | 91麻豆精品国产综合久久久| 欧美成人午夜影院| 日韩av成人| 在线成人高清不卡| 97免费在线观看视频| 欧美激情中文不卡| 性生交大片免费看l| 老司机一区二区三区| 咪咪色在线视频| 色婷婷狠狠五月综合天色拍 | a亚洲天堂av| 亚洲黄色小视频在线观看| 午夜电影亚洲| 日本一区二区三区视频在线观看| 91成人app| 国产成人精品免高潮在线观看| 欧美私人网站| 日韩av最新在线观看| 国产又爽又黄免费软件| 精品人伦一区二区三区蜜桃免费 | 亚洲国产综合视频在线观看| 欧美成人国产精品一区二区| 国产.精品.日韩.另类.中文.在线.播放| 免费在线观看的av网站| 午夜欧美精品| 午夜老司机精品| 日本精品影院| 不卡视频一区二区三区| 成人国产综合| 欧美中文在线字幕| 免费av不卡在线观看| 最近2019年手机中文字幕| 凸凹人妻人人澡人人添| 欧美一区在线视频| 黄色一区二区视频| 日韩欧美在线视频| 久久久精品视频免费| 亚洲欧美电影院| 免费黄色国产视频| 久久久噜噜噜久久人人看| 在线精品视频播放| 国产精品一级片在线观看| 天美星空大象mv在线观看视频| av不卡在线| 无码人妻少妇伦在线电影| 亚洲成人免费| 黄频视频在线观看| 日本女优一区| 亚洲精品在线观看免费| 国模精品一区| 欧美亚洲另类在线一区二区三区 | 欧美tk丨vk视频| av av片在线看| 91精选在线观看| 国产精品视频一二区| 欧美日韩高清在线播放| 中文字幕+乱码+中文乱码91| 日韩欧美a级成人黄色| 久久久精品免费看| 精品日本高清在线播放| 国产精品黄色大片| 欧美日韩国产精品一区二区三区四区 | cao在线观看| 亚洲国产裸拍裸体视频在线观看乱了中文| 99re6这里有精品热视频| 一区二区电影| 欧美极品少妇无套实战| 国产一区清纯| 成人在线观看你懂的| 亚洲精品专区| 国产又大又硬又粗| 日韩中文字幕1| 亚欧在线免费观看| 久久9热精品视频| 亚洲精品在线视频播放| 国产成人精品一区二| 国产伦精品一区三区精东| 成人app下载| 91成人在线免费视频| 亚洲国产激情av| 国产精品国产精品88| 夜夜嗨av一区二区三区| 久久夜色精品亚洲| 在线免费视频一区二区| 中文字幕在线观看视频一区| 欧美久久一二区| 性猛交富婆╳xxx乱大交天津| 亚洲大胆人体av| 三区在线观看| 最近2019好看的中文字幕免费| 成人免费看片| 午夜精品久久17c| 日韩精品麻豆| 91久久精品www人人做人人爽| 免费看久久久| 亚洲欧洲国产精品久久| 国产一区二区三区自拍| 国产精品乱码久久久久| 韩日欧美一区二区三区| 日韩av无码一区二区三区不卡| 亚洲国产精品v| 精品无码久久久久| 在线观看视频一区二区| 超碰福利在线观看| 亚洲男人天天操| v天堂福利视频在线观看| 98视频在线噜噜噜国产| 婷婷久久综合九色综合99蜜桃| 国产精品二区在线| 精品久久不卡| 欧美一级片免费播放| 奇米影视一区二区三区| 女性生殖扒开酷刑vk| 国产精品热久久久久夜色精品三区| 国产精品三区在线观看| 色噜噜久久综合| 六月婷婷综合网| 伊人成人开心激情综合网| 美洲精品一卡2卡三卡4卡四卡| 国产精品视频xxx| 国产一区二区三区不卡av| 一区二区视频在线播放| 国产视频亚洲| 美女被爆操网站| 中文字幕一区二区三区四区| 激情五月色婷婷| 日韩美女视频在线| 97在线观看免费观看高清 | 亚洲综合第一| 校园激情久久| 久久人妻少妇嫩草av无码专区 | 中文字幕精品一区日韩| 久久精品免费| 久久免费精品国产| 亚洲男人的天堂av| 中文在线字幕免费观| 国产视频综合在线| 国模私拍视频在线播放| 91九色单男在线观看| 成人情趣视频网站| www黄色av| 91丝袜美腿高跟国产极品老师| 国产这里有精品| 日韩欧美自拍偷拍| 麻豆网站在线看| 国产女精品视频网站免费| 久久不见久久见免费视频7| 欧美日韩成人免费视频| 成人在线一区二区三区| 欧美国产日韩在线观看成人| 欧美剧情电影在线观看完整版免费励志电影 | 久久精品99国产精品日本| 极品人妻videosss人妻| 色综合天天做天天爱| 日本福利午夜视频在线| 91产国在线观看动作片喷水| 全球av集中精品导航福利| 男人添女荫道口图片| 成人午夜av在线| 日本视频www| 亚洲电影第1页| 在线天堂资源www在线污| 久久综合毛片| 久久久夜夜夜| 夜夜春很很躁夜夜躁| 欧美三级电影一区| 人人干在线视频| 成人免费直播live| 亚洲欧洲日韩| 中文字幕视频观看| 午夜视频一区在线观看| 天天舔天天干天天操| 青青久久aⅴ北条麻妃| 国产成人久久| 伊人网在线综合| 亚洲美女在线一区| 丰满熟女一区二区三区| 国内精品视频在线| 不卡av一区二区| 亚洲免费在线播放视频| 亚洲欧美日韩国产综合| 好吊色在线观看| 欧美一级电影在线| 日韩毛片视频| 午夜诱惑痒痒网| 婷婷久久综合九色综合伊人色| 理论视频在线| 91午夜理伦私人影院| 黑人一区二区| 在线观看福利片| 制服.丝袜.亚洲.另类.中文 | 国内精品久久久久久99蜜桃| 亚洲欧美日韩综合网| 亚洲午夜成aⅴ人片| 肉丝一区二区| 国产日韩欧美成人| 亚洲午夜在线| 色欲狠狠躁天天躁无码中文字幕 | 中文字幕第21页| 亚洲免费观看在线视频| 手机av免费在线观看| 国产精品video| 欧美激情日韩| 一道本在线观看| 日韩网站在线看片你懂的| 黄视频网站在线观看| 一区二区高清视频| av亚洲精华国产精华精| 在线观看免费视频a| 欧美精品激情在线|