Ubuntu Linux下怎样同时对麦克风及系统声音进行录音

Ubuntu Linux下怎样同时对麦克风及系统声音进行录音,第1张

1、确认麦克风插孔是否连接正确,一般带麦克风的耳机都有两组接线插头,一组为绿色插头(即耳机音频信号),另一组为红色插头(即麦克风信号输入);首先确认红色插头应当连接到电脑面板对应的红色插孔中(通常情况下会有耳机和麦克风图标标识);2、先检查您的麦克风和主机的连接是否正确。解决方法:接到机箱后面的红色或粉红色接口上.3、看看您的麦克风是否被静音了.双击屏幕右下角小喇叭打开音频控制面板如果没有显示Microphone(麦克风)请点击左上方的选项--属性打开音量属性勾选麦克风后点确定.然后将音量控制里的Microphone(麦克风)下面静音前面的对号去掉即可。---设置内放后麦没声音的朋友也要照这个设置。4、看看您的麦克风是否能够正常地工作。解决方法:麦克风测试麦克风的方法:点击系统开始菜单---程序-----附件----娱乐-----录音机,打开录音机后,对着您的麦克讲话,同时点击红色的录音按钮,看能否录进去声音(声波的绿条有没有上下闪动),如果录进去了,说明您的麦克风是完好的,如果录不进去,可能您的声卡设置不正确或麦克风连接不对或是麦克风的开关没有打开.如果您的设置,麦克风,麦克风和主机的连接都没问题,很可能是您的声卡驱动有问题。解决方法:请把声卡驱动盘放入您的光驱动,按声卡说明书进行驱动。5、确认声卡驱动程序是否正常,点击开始菜单选择运行在运行中输入devmgmt.msc(不含引号),点击确定打开设备管理器在设备管理器的任意位置查看是否出现带有感叹号或问号的项目,再声音、视频和游戏控制器前面的+号,查看下方是否有带感叹号或问号的项目如果有,说明声卡驱动不正常或未安装百度搜索驱动精灵下载安装驱动精灵后,在基本状态中点击驱动升级升级完声卡驱动之后重新启动计算机,在尝试语音通话;6、鼠标右键点击任务栏右下角的音量图标选择打开音量控制点击左上角的选项选择属性d出属性对话框显示下列音量控制下方的所有项目前都打上勾,点击确定在音量控制窗口中查看是否有项目处于静音状态,去掉所有项目下方的静音前面的勾,再将所有项目的音量调整为最大,然后尝试与对方语言聊天;7、点击桌面左下角开始--控制面板--声音和音频设备--音频栏--录音选用Mic in at front panel(Pink),保证仅使用默认设备前面没有打勾,点击应用--语声栏--录音选用Mic in at front panel(Pink),点击确定。点击桌面右下角小喇叭--选项--属性--在混音器中选Mic in at front panel(Pink)--下面的所有选项勾选上,点击确定,并把所有的音量条拉到中间。如果你可以做完这一步,应该可以了。第⑥步:右击桌面我的电脑--属性--硬件--设置管理器--声音视频和游戏控制器--这个项下面如果有Realtek AC97 Audio(如果你没有你不用做第⑥步):点击桌面左下角开始--控制面板--声音和音频设备--音频栏--声音播放和录音选用Realtek AC97 Audio,保证仅使用默认设备前面没有打勾,点击应用--语声栏--声音播放和录音选用Realtek AC97 Audio点击确定。点击桌面右下角小喇叭--选项--属性--在混音器中选Realtek AC97 Audio,点击播放--下面的所有选项都要勾选上,点击确定,并把所有的音量条拉到中间。这时会自动退出,你会看到一条长长的窗口,还有很多还未显示,拉动下面的滚动条你就会看到,保证所有的静音都没有选上,并把所有的音量条拉到中间。选项--属性--在混音器中选Realtek AC97 Audio,点击录音--下面的所有选项都要勾选上,点击确定,并把所有的音量条拉到中间。试试吧8、、如果上述步骤都无法解决麦克风不能说话说话的问题,请点击开始菜单选择所有程序鼠标指向附件再指向娱乐选择录音机打开录音机窗口之后,点击圆形录音按钮,开始录音对着麦克风说话,看波形是否发生变化等到录音完毕,点击播放按钮,听听是否有声音,如果没有声音说明麦克风已经损坏的可能性很大。

需求:USB Headset插上去后,声音要从本地CODEC切换到USB Headset输出/输入。

上网搜了有关USB Audio Hotplug的东西,比较适用的资源如下:1、Hotplugging USB audio devices (Howto)

题目看起来很吻合我们的问题,事实上并没有多少参考价值。其中脚本

/etc/hotplug/usb/extigy或许可以捕捉到USB Audio设备的热插拔事件,应该可以进一步验证和利用,留意这点。

2、Example to map USB Ports to ALSA card numbers and

add each sound card to a combined, single interface device

这是利用udev来获取USB热插拔事件,虽然Android没有udev,但例子程序对热插拔事件字符串的处理值得参考。

3、USB mic on Linux

其实我们工作的第一步:验证USB Headset是否可以回放录音。

3.1、插上USB Headset,可以看到alsa的确加载了USB Audio,如下:

~ # cat /proc/asound/cards

0 [WMTSOC ]: HWDAC - WMT_SOC

WMT_SOC (HWDAC)

1 [default]: USB-Audio - C-Media USB Headphone Set

3.2、参考了这个链接,写了如下的配置文件/etc/asond.conf:

pcm.!default {type asymplayback.pcm {type plugslave.pcm hw:1,0}capture.pcm {type plugslave.pcm hw:1,0}}

重启后,声音就从Headset出来了。

hw:1,0对应card1即USB-Audio - C-Media USB Headphone Set4、Linux下USB设备热插拔

到此,需要考虑在Android平台切换USB Audio的实现问题了。有几个途径:1/

hotplug/usb;2/ udev;3/ netlink。这里就是netlink的实现方式,链接里有个证实可用的例子程序,目前可能需要做热插拔事件字符串的处理。

难点:Android音频设备的切换底层入口是alsa_default.cpp,目前看来需要在asound.conf定义好local CODEC和USB Audio的plug;还需要修改

alsa_default.cpp,最主要Android要知道USBAudio插上时打开

USB Audio的plug,

USB Audio拔下时打开local CODEC的plug。这样一想,修改的幅度还是蛮大的。而且未能确定如果在播放的过程中,切换音频设备是否有影响?如果alsa允许只是配置好asound.conf达到同样的目的,那就好办了,可惜目前找不到这方面的资料,应该没有这个便利了。

进展:2011/9/19:按照以上难点分析,大致完成了整个Android框架层的代码和ALSA配置文件,基本实现了USB Audio热插拔时的音频设备切换。但有个很大的问题:在播放时切换音频设备会导致AudioFlinger服务crash(之前做2G通话时也遇到这个问题,用其他办法规避了)。看来在切换音频设备时,应该停止播放;等切换完成后,再恢复播放。

1、需要使用WOmic。电脑和手机都需要安装。在手机上打开WOmic,点击右上角的设置。

2、打开WOmic的设置界面后,找到连接方式功能,需要修改这个选项。

3、点击后可以看到三个选项可供选择。在这里,选择连接方式为wifi。

4、选择后返回首页,点击右上角的开始选项。

5、这时候会显示已经激活,后面会显示手机的IP地址,记住这个IP。

6、电脑设置并连接,手机会显示已连接。这时候,手机就可以当麦克风使用了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7416372.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-05
下一篇 2023-04-05

发表评论

登录后才能评论

评论列表(0条)

保存