对于我想要制作另一个程序的问题的某些背景知识 对于在后台中运行的个人Windows桌面,当通过耳机检测到某种级别的声音时,它会自动将用户注销。
它是一台Windows 10 PC。我在普通C中有相当多的经验,但我缺乏创建这样的程序的知识。 该程序必须在登录时自动启动,并在后台运行以避免检测。
我真的很难过,我已经环顾四周并问我的Comp Sci朋友,他们也不知道。
[我试图制作这个节目的原因是我有一个弟弟在网上与他的朋友(Skype,Discord,Hangouts等)在我的电脑上玩游戏,他变得非常响亮经常大喊大叫,还有激烈的笑声。 这对于我的家庭来说已成为家庭中的一个大问题,因为他可以从多个楼层和房间听到,特别是在晚上。告诉他要保持安静,限制他的特权不再适用,因为他不相信他太大声了。]
答案 0 :(得分:1)
看起来ffmpeg volumedetect
可以解决实际检测声级的问题。例如,尝试我的MBP(您必须更改Windows机器的输入设备):
$>ffmpeg -hide_banner -f avfoundation -i "none:0" -af "volumedetect" -t 2 -f null /dev/null
Input #0, avfoundation, from 'none:0':
Duration: N/A, start: 316943.850567, bitrate: 2822 kb/s
Stream #0:0: Audio: pcm_f32le, 44100 Hz, stereo, flt, 2822 kb/s
Output #0, null, to '/dev/null':
Metadata:
encoder : Lavf57.62.100
Stream #0:0: Audio: pcm_s16le, 44100 Hz, stereo, s16, 1411 kb/s
Metadata:
encoder : Lavc57.75.100 pcm_s16le
Stream mapping:
Stream #0:0 -> #0:0 (pcm_f32le (native) -> pcm_s16le (native))
Press [q] to stop, [?] for help
size=N/A time=00:00:02.00 bitrate=N/A speed=0.996x
video:0kB audio:345kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
[Parsed_volumedetect_0 @ 0x7f8ba8726860] n_samples: 178176
[Parsed_volumedetect_0 @ 0x7f8ba8726860] mean_volume: -60.3 dB
[Parsed_volumedetect_0 @ 0x7f8ba8726860] max_volume: -29.9 dB
[Parsed_volumedetect_0 @ 0x7f8ba8726860] histogram_29db: 4
[Parsed_volumedetect_0 @ 0x7f8ba8726860] histogram_30db: 0
[Parsed_volumedetect_0 @ 0x7f8ba8726860] histogram_31db: 6
[Parsed_volumedetect_0 @ 0x7f8ba8726860] histogram_32db: 10
[Parsed_volumedetect_0 @ 0x7f8ba8726860] histogram_33db: 18
[Parsed_volumedetect_0 @ 0x7f8ba8726860] histogram_34db: 10
[Parsed_volumedetect_0 @ 0x7f8ba8726860] histogram_35db: 12
[Parsed_volumedetect_0 @ 0x7f8ba8726860] histogram_36db: 36
[Parsed_volumedetect_0 @ 0x7f8ba8726860] histogram_37db: 42
[Parsed_volumedetect_0 @ 0x7f8ba8726860] histogram_38db: 48
这会在麦克风输入源上运行ffmpeg 2秒钟,并生成音频音量(分贝)的直方图,以及平均音量和最大音量级别(这就是您想要的)。
您可以使用ffmpeg作为库并将其嵌入到您选择的应用程序中。
答案 1 :(得分:-2)
虽然由于音量不会自动触发,但您可以使用网络上的其他设备远程关闭他所在的计算机。 Windows 10的步骤可能略有不同,但您应该能够弄明白。请注意,如果您仍希望通过音量触发它,下面的指南仍然有用,因为它显示了如何执行关机部分。
http://www.online-tech-tips.com/computer-tips/remote-shutdown-command/
简单地说,步骤如下(阅读指南,因为它更具体,带图片):
<强> 1。在目标计算机上启用远程关机
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
LocalAccountTokenFilterPolicy
,其值为1
<强> 2。创建将关闭/重新启动计算机的批处理文件
shutdown /m \\computername /r /f
/r
- 重新启动计算机 /f
- 强制程序立即关闭 如果您尝试这些步骤并仍然获得拒绝访问权限#34;,您可以尝试this solution:
net use \\<computer>
shutdown -r -m \\<computer name>