广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python控制windows系统音量实现实例
  • 967
分享到

Python控制windows系统音量实现实例

Python控制系统音量Python控制Windows音量 2023-01-28 06:01:49 967人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

使用python可以对windows系统的音量进行读取或者设置。 平台:visual studio code 语言:Python 需要的python模块: 1、pyQt5 2、cty

使用python可以对windows系统的音量进行读取或者设置。

平台:visual studio code

语言:Python

需要的python模块:

1、pyQt5

2、ctypes:

ctypes 是 Python 的外部函数库。它提供了与 C 兼容的数据类型,并允许调用 DLL 或共享库中的函数。可使用该模块以纯

Python 形式对这些库进行封装。

这里是引用

3、comtypes:

comtypes是一个基于ctypes-ffi外部函数库的纯Python COM包

这里是引用

4、pycaw

Python核心音频Windowsapi

UI界面:

代码:

1、初始化音量接口

def init_vol(self):
        """初始化音量对应"""   
          # 音量对应关系
        # 0% --- -65.25
        # 55% --- -8.92
        # 100% --- 0.0
        self.volume_match={0: -65.25, 1: -56.99, 2: -51.67, 3: -47.74, 4: -44.62, 5: -42.03, 6: -39.81, 7: -37.89, 8: -36.17, 9: -34.63, 10: -33.24,
            11: -31.96, 12: -30.78, 13: -29.68, 14: -28.66, 15: -27.7, 16: -26.8, 17: -25.95, 18: -25.15, 19: -24.38, 20: -23.65,
            21: -22.96, 22: -22.3, 23: -21.66, 24: -21.05, 25: -20.46, 26: -19.9, 27: -19.35, 28: -18.82, 29: -18.32, 30: -17.82,
            31: -17.35, 32: -16.88, 33: -16.44, 34: -16.0, 35: -15.58, 36: -15.16, 37: -14.76, 38: -14.37, 39: -13.99, 40: -13.62,
            41: -13.26, 42: -12.9, 43: -12.56, 44: -12.22, 45: -11.89, 46: -11.56, 47: -11.24, 48: -10.93, 49: -10.63, 50: -10.33,
            51: -10.04, 52: -9.75, 53: -9.47, 54: -9.19, 55: -8.92, 56: -8.65, 57: -8.39, 58: -8.13, 59: -7.88, 60: -7.63,
            61: -7.38, 62: -7.14, 63: -6.9, 64: -6.67, 65: -6.44, 66: -6.21, 67: -5.99, 68: -5.76, 69: -5.55, 70: -5.33,
            71: -5.12, 72: -4.91, 73: -4.71, 74: -4.5, 75: -4.3, 76: -4.11, 77: -3.91, 78: -3.72, 79: -3.53, 80: -3.34,
            81: -3.15, 82: -2.97, 83: -2.79, 84: -2.61, 85: -2.43, 86: -2.26, 87: -2.09, 88: -1.91, 89: -1.75, 90: -1.58,
            91: -1.41, 92: -1.25, 93: -1.09, 94: -0.93, 95: -0.77, 96: -0.61, 97: -0.46, 98: -0.3, 99: -0.15, 100: 0.0}
        #音量值反对应
        self.volume_match_2={-65.25:0, -56.99:1, -51.67:2, -47.74:3, -44.62:4, -42.03:5, -39.81:6,-37.89:7, -36.17:8, -34.63:9, -33.24:10,
            -31.96:11, -30.78:12, -29.68:13, -28.66:14, -27.7:15, -26.8:16, -25.95:17, -25.15:18,  -24.38:19, -23.65:20,
            -22.96:21, -22.3:22, -21.66:23, -21.05:24, -20.46:25, -19.9:26, -19.35:27,  -18.82:28,  -18.32:29,  -17.82:30,
            -17.35:31, -16.88:32, -16.44:33, -16.0:34, -15.58:35,-15.16:36, -14.76:37, -14.37:38,  -13.99:39, -13.62:40,
            -13.26:41, -12.9:42, -12.56:43, -12.22:44,-11.89:45, -11.56:46, -11.24:47, -10.93:48,  -10.63:49, -10.33:50,
            -10.04:51, -9.75:52, -9.47:53, -9.19:54, -8.92:55, -8.65:56, -8.39:57, -8.13:58,  -7.88:59,  -7.63:60,
            -7.38:61, -7.14:62, -6.9:63, -6.67:64, -6.44:65, -6.21:66, -5.99:67,  -5.76:68,  -5.55:69, -5.33:70,
            -5.12:71,-4.91:72, -4.71:73, -4.5:74, -4.3:75, -4.11:76,  -3.91:77, -3.72:78,  -3.53:79,  -3.34:80,
            -3.15:81, -2.97:82, -2.79:83, -2.61:84, -2.43:85, -2.26:86, -2.09:87,  -1.91:88, -1.75:89, -1.58:90,
           -1.41:91, -1.25:92, -1.09:93, -0.93:94, -0.77:95, -0.61:96, -0.46:97, -0.3:98,  -0.15:99,  0.0:100}
        self.devices11=AudioUtilities.GetSpeakers()
        self.interface=self.devices11.Activate(IAudioEndpointVolume._iid_,CLSCTX_ALL,None)
        self.volum11=cast(self.interface,POINTER(IAudioEndpointVolume))
        self.mute=self.volum11.GetMute() 

电脑的音量虽然显示是一个整数,但实际的音量值是一个浮点数,就是上面代码里所列出的,从0到100的对应值。利用pycaw获取音频接口,然后激活,并将获取的输出转为C语言下的指针。

2、获取音量

  vm=self.volum11.GetMasterVolumeLevel()
        #print(vm)
        vm2=round(vm,2)
        #print(vm2)
        vm3=self.volume_match_2[vm2]
        #print(vm3)
        #v1=self.volum11.GetVolumeRange()
        #print(v1)
        #return vm3
        self.lbl1.setText(str(vm3))

获取音量,使用GetMasterVolumeLevel函数即可,这个函数获取的是一个浮点数,将浮点数作一下四舍五入的处理,小数点保留两位(与音量值数组对应),然后去数组里匹配,将对应的音量(整数)输出显示即可。

3、设置系统音量:

   v11=int(v1)
        self.sys_volume_value=self.volume_match[v11]
        #print(self.sys_volume_value)
        self.volum11.SetMasterVolumeLevel(self.sys_volume_value,None)

设置音量与获取音量正好是相反的过程,在UI界面上设置一个音量值(整数),将其代入第二个数组,来匹配真实音量值(浮点),然后将对应的音量值利用函数SetMasterVolumeLevel输入给电脑音频接口即可。

4、演示视频链接:

Python获取windows音量小工具

到此这篇关于Python控制windows系统音量实现实例的文章就介绍到这了,更多相关Python控制系统音量内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python控制windows系统音量实现实例

本文链接: https://www.lsjlt.com/news/178177.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python控制windows系统音量实现实例
    使用python可以对windows系统的音量进行读取或者设置。 平台:visual studio code 语言:python 需要的python模块: 1、pyqt5 2、cty...
    99+
    2023-01-28
    Python控制系统音量 Python控制Windows音量
  • Python+pyaudio实现音频控制示例详解
    简介 PyAudio是一个跨平台的音频处理工具包,使用该工具包可以在Python程序中播放和录制音频,也可以产生wav文件等 安装 pip install PyAudio 注意:使用...
    99+
    2022-11-11
  • Linux系统中流量控制的具体应用实例
    这篇文章主要介绍“Linux系统中流量控制的具体应用实例”,在日常操作中,相信很多人在Linux系统中流量控制的具体应用实例问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Linux系统中流量控制的具体应用实例...
    99+
    2023-06-16
  • Windows怎么实现远程连接控制Ubuntu系统
    本篇内容介绍了“Windows怎么实现远程连接控制Ubuntu系统”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!有时需要在实际的电脑上安装U...
    99+
    2023-06-16
  • Python实战之手势识别控制电脑音量
    目录一、环境配置二、代码介绍三、使用方式今天给大家带来一个OpenCV的实战小项目——手势识别控制电脑音量 先上个效果图: 通过大拇指和食指间的开合距离来...
    99+
    2023-05-18
    Python手势识别控制电脑音量 Python手势识别 Python控制音量
  • Windows系统中Python实现每
    之前说要每周写的。。然后最近忙着毕业就一直没动。>.<感觉月更都困难了。 问题描述 在每天比如10点到11点之间定时自动登陆网站,签到 实现思路 使用fiddler抓包工具先登陆一遍,把请求的地址,header等信息都拿到。...
    99+
    2023-01-31
    系统 Windows Python
  • python实现的web监控系统
    完整项目地址: https://github.com/zsjtoby/DevOpsCloud 欢迎使用极云监控系统 极云监控系统实现了跳板机应有的功能。基于ssh协议来管理,客户端无需安装agent。 支持常见系统:...
    99+
    2022-06-02
    python 监控系统 python web监控
  • 玩转Win8系统语音控制功能实现真正的无鼠标语音操作
    在Windows系统电脑操作中用户都习惯了使用鼠标来执行各种命令,在最新的win8系统中加入新潮功能,即语音控制功能,能够让用户真正实现无鼠标的语音操作,是不是觉得很新奇呢?一起来看一下高手是如何来玩转win8系统下的语...
    99+
    2023-06-05
    Win8 语音控制 语音 控制 功能 系统
  • python实现车辆跟随滑模控制的实例
    上一篇文章介绍了Python使用OPENCV的目标跟踪算法实现自动视频标注效果,感兴趣的朋友点击查看,使用滑模变结构控制策略来解决汽车跟踪问题,今天通过本文介绍下python实现车辆...
    99+
    2022-11-10
  • Python名片管理系统+猜拳小游戏案例实现彩(色控制台版)
    目录名片管理系统一、思路二、用到的知识点三、效果四、代码猜拳小游戏一、思路二、用到的知识点三、效果四、代码名片管理系统 一、思路 1、定义名片操作选项2、把增加的名片信息存储到字典中...
    99+
    2022-11-11
  • java控制台实现学生管理系统
    本文实例为大家分享了java控制台实现学生管理系统的具体代码,供大家参考,具体内容如下 编写一个学生成绩管理程序。学生的属性包括学号、姓名、年龄等。每个学生要学习若干课程,每门课程有...
    99+
    2022-11-13
  • Java实现简单控制台版ATM系统
    本文实例为大家分享了Java实现简单控制台版ATM系统的具体代码,供大家参考,具体内容如下 ATM系统项目 ATM系统要实现的功能 1.查询:账号必须存在,密码(三次机会,不对就锁卡...
    99+
    2022-11-13
  • 电脑远程控制系统怎么实现
    电脑远程控制系统可以通过以下步骤实现:1.选择远程控制软件:选择一款适合自己需求的远程控制软件,如TeamViewer、AnyDes...
    99+
    2023-06-11
    电脑远程控制系统
  • Python中的变量、运算符与流程控制实例分析
    本篇内容主要讲解“Python中的变量、运算符与流程控制实例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python中的变量、运算符与流程控制实例分析”吧!一、执行Python程序的两种方...
    99+
    2023-06-30
  • Python利用PsUtil实现实时监控系统状态
    目录1.安装psutil模块2.获取系统信息3.获取CPU信息4.获取内存信息5.获取磁盘信息6.获取网络信息7.获取传感器信息8.使用psutil进行进程管理9.使用psutil进...
    99+
    2023-05-18
    Python PsUtil监控系统状态 Python PsUtil监控 Python PsUtil
  • Java基于控制台界面实现ATM系统
    本文实例为大家分享了Java实现ATM系统的具体代码,供大家参考,具体内容如下 这应该算最基础的Javase项目了,但其中逻辑还是得想想的。 功能还算完善,只是对输入数据的校验没做全...
    99+
    2022-11-13
  • FreeRTOS实时操作系统的内核控制示例解析
    目录前言1.强制上下文切换宏2.进入临界区宏3.退出临界区宏4.禁止可屏蔽中断宏5.使能可屏蔽中断宏6.启动调度器6.1函数描述7.停止调度器7.1函数描述8.挂起调度器8.1函数描...
    99+
    2022-11-13
  • p5.js实现声音控制警察抓小偷游戏示例解析
    目录一、游戏介绍1. 玩法指南2.运行效果二、用到的JS库三、游戏开发思路四、核心功能点1. 绘制棋盘2. 小偷的移动逻辑3. 警察的移动逻辑4. 胜利逻辑五、待实现的创意玩法六、代...
    99+
    2023-05-15
    p5.js 警察抓小偷游戏 p5.js 声音控制
  • Python实现操纵控制windows注册表的方法分析
    本文实例讲述了python实现操纵控制windows注册表的方法。分享给大家供大家参考,具体如下: 使用_winreg模块的话 基本概念: KEY 键 Value 值 函数和作用: CloseKey() - ...
    99+
    2022-06-04
    Python 操纵 控制 windows 注册表
  • Java如何实现简单控制台版ATM系统
    本篇内容主要讲解“Java如何实现简单控制台版ATM系统”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java如何实现简单控制台版ATM系统”吧!ATM系统项目ATM系统要实现的功能查询:账号必...
    99+
    2023-06-30
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作