关于监听微信或QQ的语音来电和录音的问题
我这两天做了一个winform程序,主要是解决拉跨的windows录音问题,大家都知道windows录音机很难用,只能录mic的声音,如果要同时录声卡的声音,需要各种设置,我做的这个录音程序可以同时录两组声音:mic和声卡,停止录音后自动合并两条声轨,形成完整的录音文件,用于卡拉OK、通话录音是极好的。
用了Naudio和FFmpeg,整体实现有不少坑,但问题都不大。
贴一段核心代码,供后来的朋友避坑。

第一个坑:Naudio可以录mic和声卡,但不能同时录音,于是我就new了两个对象,一个录mic一个录声卡,结果也会得到两个音轨文件。
WaveIn() 这个是录Mic的,WasapiLoopbackCapture()这个是录声卡的。
第二个坑:Naudio合并两个音轨文件时要求这两个文件码率必须一致,否则无法合并;
第三个坑:回头重新设置录制音轨的码率,这时候一个巨坑来了,Mic的音轨可以设置码率,例如——
waveIn.WaveFormat = new WaveFormat(25600, 16, 1); //设置采样频率
但是到了录制声卡的时候 WasapiLoopbackCapture(),却不支持设置码率,官方的说法是:录制声卡声音走的是windows默认的设置,这个设置是只读的,不能更改。 这时候你虽然录了两个音轨,但一个文件很小,另一个很大,也无法合并。
于是只能祭出FFmpeg这个杀器,合并音轨之前,先用FF把这两个音轨码率调整一致,就叫对齐吧。 然后合并就没问题了。
成品软件实现的界面:

软件启动界面

软件录音界面

录音结束合并音轨

录音成品文件

发布后的软件包
软件测试了几天也没啥问题了,我想通过什么方法来监听 微信或QQ的来电,一旦来电响铃,软件自动弹出 “是否录音?”的提示,我是一点思路都没有,哪位大神给指个方向呢?
相关推荐
全媒体呼叫中心全套解决方案 全媒体联络中心全套解决方案.pptx
智慧方案
Android 仿QQ微信语音
Android 仿QQ微信语音
Android 仿微信QQ语音
Android 仿微信QQ语音
flutter_plugin_record:flutter 仿微信录制语音功能 支持android和ios
[TOC] 使用Flutter实现 仿微信录音的插件 插件支持android 和IOS 插件提供的功能 录制 录制语音, 播放录音, 录制声音大小的监听 提供录制时长的监听 提供类似微信的录制组件 提供播放音频结束的监听 提供根据传递的路径进行语音录制 提供录制wav,mp3格式 具体可参考example 播放 提供播放指定路径的音频文件 提供播放指定Url地址的wav,MP3格式文件 提供播放完成的回调监听 提供暂停和继续播放的功能 提供停止播放的功能 1,引入 在pubspec.yaml 文件上引入如下配置 引入方式1(引入最新的版本) flutter_plugin_record: git: url: https://github.com/yxwandroid/flutter_plugin_record.git 引入方式2 (引入指定某次commit) flutt
Android 仿照qq微信、米聊语音按住说话图片变化效果源码.zip
Android 仿照qq微信、米聊语音按住说话图片变化效果源码.zip


