ChinaFFmpeg

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 10880|回复: 0

[Windows] 获取音频设备名称(全名)

[复制链接]
发表于 2019-8-8 14:29:07 | 显示全部楼层 |阅读模式
在python上通过    subproces.Popen(cmd)输入命令行指令    控制ffmpeg录音频,这需要指定录音频使用的设备名称,
cmd指令 ‘ffmpeg -list_devices true -f dshow -i dummy 设备列表如下:

[dshow @ 0000023bbfb88e00] DirectShow video devices (some may be both video and audio devices)
[dshow @ 0000023bbfb88e00]  "USB2.0 VGA UVC WebCam"
[dshow @ 0000023bbfb88e00]     Alternative name "@device_pnp_\\?\usb#vid_13d3&pid_5a07&mi_00#6&2f27e633&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global"
[dshow @ 0000023bbfb88e00]  "screen-capture-recorder"
[dshow @ 0000023bbfb88e00]     Alternative name "@device_sw_{860BB310-5D01-11D0-BD3B-00A0C911CE86}\{4EA69364-2C8A-4AE6-A561-56E4B5044439}"
[dshow @ 0000023bbfb88e00] DirectShow audio devices
[dshow @ 0000023bbfb88e00]  "Microphone (Conexant SmartAudio HD)"
[dshow @ 0000023bbfb88e00]     Alternative name "@device_cm_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\wave_{AFE404CD-A721-49BE-8AC5-669DA725185F}"
[dshow @ 0000023bbfb88e00]  "virtual-audio-capturer"
[dshow @ 0000023bbfb88e00]     Alternative name "@device_sw_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\{8E146464-DB61-4309-AFA1-3578E927E935}"


"Microphone (Conexant SmartAudio HD)" 用于获取麦克风输入;
"virtual-audio-capturer" 用于获取声卡输入。

由于使用的是ffmpeg,所以“virtual-audio-capturer”是固定的,但是每个人的麦克风设备名称就完全不一样了,比如我的是"Microphone (Conexant SmartAudio HD)" ,那我怎么获取别人的默认麦克风设备名称为一个变量,输入到cmd命令里呢?
我已经试过pyaudio的     get_default_input_device_info     以及sounddevice的    query_devices方法,输出的音频设备名称都只显示32位,后面的字母通通被吃掉了:”Microphone (Conexant SmartAudio(少了后面的‘HD’)”,真是气的不行,查了一下发现directshow显示的都被省略成32位字符串。
那ffmpeg也是用的directshow ,怎么没问题呢?于是我又想通过        subprocess.Popen(cmd, stdout=subprocess.PIPE)    加   subprocess.Popen.stdout.readlines    来捕捉cmd返回的值,从而在里面筛选出我想要的名称。可是 readlines输出的是一个空集,到这我彻底卡壳,

往下没有处理的思路了,求大神们救我命!!!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|Archiver|ChinaFFmpeg

GMT+8, 2024-4-26 06:43 , Processed in 0.054279 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表