# 求一个能在全屏画面下显示麦克风状态的软件

**URL:** <https://meta.appinn.net/t/topic/92095>\
**Category:** 问题求助\
**Tags:** linux, windows\
**Created:** [2026 年9 月 19 日 11:24 UTC](https://meta.appinn.net/t/topic/92095 "2026-09-19T11:24:17Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

作者： ![AkarinLiu](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/akarinliu/32/64329_2.png) [@AkarinLiu](https://meta.appinn.net/u/AkarinLiu)\
发布日期： [2026 年9 月 19 日 11:24 UTC](https://meta.appinn.net/t/topic/92095/1 "2026-09-19T11:24:17Z")

</div>

我一直在 哔哩哔哩 做直播，想要可以在全屏画面下看到麦克风状态图标，我必须按下 FN 加 F4 查看麦克风的状态。但是我想要在全屏画面下能看到麦克风的状态是不是被静音了。

---

<div class="post-metadata">

作者： ![shugen002](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/shugen002/32/58498_2.png) [@shugen002](https://meta.appinn.net/u/shugen002)\
发布日期： [2026 年9 月 19 日 11:36 UTC](https://meta.appinn.net/t/topic/92095/2 "2026-09-19T11:36:46Z")

</div>

我觉得得先问一个问题，就是你用的是OBS还是直播姬

---

<div class="post-metadata">

作者： ![AkarinLiu](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/akarinliu/32/64329_2.png) [@AkarinLiu](https://meta.appinn.net/u/AkarinLiu)\
发布日期： [2026 年9 月 19 日 11:48 UTC](https://meta.appinn.net/t/topic/92095/3 "2026-09-19T11:48:32Z")

</div>

OBS 作为推流软件，直播姬做转发来自 OBS 的视频流至服务器

---

<div class="post-metadata">

作者： ![wankkoree](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/wankkoree/32/19671_2.png) [@wankkoree](https://meta.appinn.net/u/wankkoree)\
发布日期： [2026 年9 月 19 日 12:10 UTC](https://meta.appinn.net/t/topic/92095/4 "2026-09-19T12:10:29Z")

</div>

F4 作为麦克风的快捷键的话，按搜索结果来看应该是 戴尔/联想 笔记本的特性？并非 Windows 原生功能。

我感觉先搞清楚这个静音原理是啥再讨论比较好。如果是驱动层面的话可能比较麻烦；如果单纯是把系统麦克风静音的话，理论上找 AI 写个小脚本就可以，不过如果是游戏直播的话有被误判成挂的风险。

---

<div class="post-metadata">

作者： ![highwind](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/highwind/32/2255_2.png) [@highwind](https://meta.appinn.net/u/highwind)\
发布日期： [2026 年9 月 19 日 12:37 UTC](https://meta.appinn.net/t/topic/92095/5 "2026-09-19T12:37:07Z")

</div>

装个autohotkey

然后用下面的码一个ahk文件就行，如果需要gui可以问问DeepSeek :grinning_face_with_smiling_eyes:

```auto

; 获取麦克风的静音状态
muteState := SoundGetMute("", "Microphone")

; 判断状态：1 为静音，0 为非静音
if (muteState = 1)
    MsgBox "麦克风当前处于静音状态"
else
    MsgBox "麦克风当前未静音"

```

---

<div class="post-metadata">

作者： ![AkarinLiu](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/akarinliu/32/64329_2.png) [@AkarinLiu](https://meta.appinn.net/u/AkarinLiu)\
发布日期： [2026 年9 月 19 日 12:51 UTC](https://meta.appinn.net/t/topic/92095/6 "2026-09-19T12:51:15Z")

</div>

你提供的代码用不了了

---

<div class="post-metadata">

作者： ![highwind](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/highwind/32/2255_2.png) [@highwind](https://meta.appinn.net/u/highwind)\
发布日期： [2026 年9 月 19 日 13:07 UTC](https://meta.appinn.net/t/topic/92095/7 "2026-09-19T13:07:30Z")

</div>

版本不对吗？

```auto
; AHK v1 版本
SoundGet, microphone_mute, Microphone, Mute
if (microphone_mute = "On") ; 注意 v1 返回的是 "On"/"Off" 字符串
    MsgBox, 麦克风当前处于静音状态
else
    MsgBox, 麦克风当前未静音

```

需要轮询可以试试下面的

```auto
#Persistent
SetTimer, CheckMic, 500

lastState := ""

CheckMic:
    SoundGet, mute, Microphone, , Mute
    if (mute = "On")
        state := "静音"
    else if (mute = "Off")
        state := "未静音"
    else
        state := "无法读取"

    if (state != lastState) {
        lastState := state
        TrayTip, 麦克风状态, 当前：%state%
    }
return

```

---

<div class="post-metadata">

作者： ![AkarinLiu](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/akarinliu/32/64329_2.png) [@AkarinLiu](https://meta.appinn.net/u/AkarinLiu)\
发布日期： [2026 年9 月 19 日 13:37 UTC](https://meta.appinn.net/t/topic/92095/8 "2026-09-19T13:37:55Z")

</div>

我的是 2.0 版本

---

<div class="post-metadata">

作者： ![lanxiuyun](https://meta-edge.appinn.com/letter_avatar_proxy/v4/letter/l/919ad9/32.png) [@lanxiuyun](https://meta.appinn.net/u/lanxiuyun)\
发布日期： [2026 年9 月 19 日 16:16 UTC](https://meta.appinn.net/t/topic/92095/9 "2026-09-19T16:16:42Z")

</div>

> **[GitHub - lanxiuyun/Catrace: Catrace: Every notify is a Plugin](https://github.com/lanxiuyun/Catrace)**
>
> Catrace: Every notify is a Plugin

也许你可能能用这个来做个插件实现一下？  
不知道能不能满足你全屏需求哈… :sweat_smile:  
因为windows上全屏游戏是无法显示子窗口的 :smiling_face_with_tear:

---

<div class="post-metadata">

作者： ![highwind](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/highwind/32/2255_2.png) [@highwind](https://meta.appinn.net/u/highwind)\
发布日期： [2026 年9 月 20 日 00:45 UTC](https://meta.appinn.net/t/topic/92095/10 "2026-09-20T00:45:45Z")

</div>

我的锅，做了下研究，可以再试试如下：  
首先，用这个ahk脚本侦测麦克风的性质（来自AHK官方）

```auto
scGui := Gui(, "Sound Components")
scLV := scGui.Add('ListView', "w600 h400"
    , ["Component", "#", "Device", "Volume", "Mute"])

devMap := Map()

loop
{
    ; For each loop iteration, try to get the corresponding device.
    try
        devName := SoundGetName(, dev := A_Index)
    catch ; No more devices.
        break
    
    ; Qualify names with ":index" where needed.
    devName := Qualify(devName, devMap, dev)
    
    ; Retrieve master volume and mute setting, if possible.
    vol := mute := ""
    try vol := Round(SoundGetVolume( , dev), 2)
    try mute := SoundGetMute( , dev)
    
    ; Display the master settings only if at least one was retrieved.
    if vol != "" || mute != ""
        scLV.Add("", "", dev, devName, vol, mute)
    
    ; For each component, first query its name.
    cmpMap := Map()
    
    loop
    {
        try
            cmpName := SoundGetName(cmp := A_Index, dev)
        catch
            break
        ; Retrieve this component's volume and mute setting, if possible.
        vol := mute := ""
        try vol := Round(SoundGetVolume(cmp, dev), 2)
        try mute := SoundGetMute(cmp, dev)
        ; Display this component even if it does not support volume or mute,
        ; since it likely supports other controls via SoundGetInterface().
        scLV.Add("", Qualify(cmpName, cmpMap, A_Index), dev, devName, vol, mute)
    }
}

loop 5
    scLV.ModifyCol(A_Index, 'AutoHdr Logical')
scGui.Show()

; Qualifies full names with ":index" when needed.
Qualify(name, names, overallIndex)
{
    if name = ''
        return overallIndex
    key := StrLower(name)
    index := names.Has(key) ? ++names[key] : (names[key] := 1)
    return (index > 1 || InStr(name, ':') || IsInteger(name)) ? name ':' index : name
}

```

比如我这里是 component “1” device “8”

 ![图片](https://h2cdn.appinn.me/original/3X/c/8/c8576bd8b27b2972481002e2da86ae6ecea15f46.png)

然后，用下面的GUI脚本就可以了

```auto
; 创建 GUI：置顶、工具窗口属性（不在任务栏显示）
myGui := Gui("+AlwaysOnTop +ToolWindow +E0x20") ; E0x20 使窗口点击穿透（可选）
myGui.BackColor := "202020"
myGui.SetFont("s12 cWhite", "Segoe UI")

; 添加一个文本控件，初始显示未知
statusText := myGui.AddText("w200 h30 Center", "检测中...")

; 在屏幕右下角附近显示，不激活窗口
myGui.Show("x" A_ScreenWidth-420 " y" A_ScreenHeight-200 " NoActivate")

lastState := ""
SetTimer CheckMic, 500

CheckMic() {
    global lastState, statusText
    try {
        muteState := SoundGetMute(1, 8) ; 注意这里填写你的"Component"和"Device#"
        state := (muteState = 1) ? "静音" : "未静音"
        color := (muteState = 1) ? "cRed" : "cLime" ; 静音红，未静音绿
    } catch {
        state := "无法读取"
        color := "cGray"
    }
    if (state != lastState) {
        lastState := state
        statusText.Text := "麦克风: " state
        statusText.SetFont(color) ; 切换文字颜色
    }
}

```

然后你应该能看到：

 ![图片](https://h2cdn.appinn.me/original/3X/9/2/92f2897b256191330cf3645bb7c407660303eef9.png)

至于更通用的，可能需要声卡检测，声纹检测什么的，我觉得应该不必要。。。

---

<div class="post-metadata">

作者： ![tiger](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/tiger/32/23490_2.png) [@tiger](https://meta.appinn.net/u/tiger)\
发布日期： [2026 年9 月 20 日 00:49 UTC](https://meta.appinn.net/t/topic/92095/11 "2026-09-20T00:49:02Z")

</div>

我觉得可以买一个带指示灯的麦克风

---

<div class="post-metadata">

作者： ![AkarinLiu](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/akarinliu/32/64329_2.png) [@AkarinLiu](https://meta.appinn.net/u/AkarinLiu)\
发布日期： [2026 年9 月 20 日 05:40 UTC](https://meta.appinn.net/t/topic/92095/12 "2026-09-20T05:40:45Z")

</div>

算了，我还是自己用 AI 开发吧……

---

<div class="post-metadata">

作者： ![AkarinLiu](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/akarinliu/32/64329_2.png) [@AkarinLiu](https://meta.appinn.net/u/AkarinLiu)\
发布日期： [2026 年9 月 20 日 06:51 UTC](https://meta.appinn.net/t/topic/92095/13 "2026-09-20T06:51:23Z")

</div>

开发出来了，右下角是麦克风状态：

 ![屏幕截图 2026-09-20 144841](https://h2cdn.appinn.me/original/3X/a/f/af103a9a6b1c007e90e174c7bbfc3492aea7e2c2.jpeg)

---

<div class="post-metadata">

作者： ![AkarinLiu](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/akarinliu/32/64329_2.png) [@AkarinLiu](https://meta.appinn.net/u/AkarinLiu)\
发布日期： [2026 年9 月 20 日 07:43 UTC](https://meta.appinn.net/t/topic/92095/14 "2026-09-20T07:43:36Z")

</div>

可以了，代码已上线 GitHub，快去使用吧！

 ![图片](https://h2cdn.appinn.me/original/3X/d/9/d94ad5bb9e891b1e08fe1c4546d730464e6f2685.jpeg)

> **[GitHub - AkarinLiu/mic-overlay](https://github.com/AkarinLiu/mic-overlay)**
>
> 通过在 GitHub 上创建帐户来为 AkarinLiu/mic-overlay 开发做出贡献。
