我正在尝试检查python(ubuntu)中是否有其他程序正在使用我电脑的摄像头/麦克风。 我想到了访问摄像头/麦克风时使用的系统调用。 我知道正在使用syscalls“access”和“open”,但可能有特定的参数。 如果我知道正在使用哪些系统调用,我又如何知道 程序正在使用这些特定的系统调用
我有一个示例代码,其中我正在检查file.exe是否添加了任何新文件:
if "open(\"" + file_path + "\", O_WRONLY|O_CREAT|O_TRUNC|O_CLOEXEC, 0666) = 3" in system_calls_list:
programs_which_added_new_files.append(file_path)
首先,我创建了一个添加新文件的文件,然后将该文件的所有系统调用写入一个列表(system\u calls\u list)。然后我检查它是否有一个带有特定参数的特定syscall(open)。如果没有,我可以知道我正在检查的文件添加了新文件,然后将其路径附加到另一个列表(添加了新文件的程序)。同样的概念也适用于相机/麦克风
感谢您的帮助:)
问题是Linux有多个音频框架
最老的OSS在
/dev
下使用多个设备名,您应该打开这些设备名(请参见list here)。你不太可能在最近的Ubuntu上安装这个您可能正在使用的是ALSA和PulseAudio。在本例中,程序可能通过UNIX套接字(例如
/run/user/1000/pulse/native
)连接到PulseAudio,但这是PulseAudio的一个实现细节(特别是它也可以通过IP工作)。您应该使用PulseAudio API来发现,例如,如果您运行pactl list source-outputs
,您应该看到一个客户机和它们所连接的记录设备的列表相关问题 更多 >
编程相关推荐