乱码三千 – 分享实用IT技术

乱码三千 – 码出一个新世界


  • 首页

  • 归档

  • 搜索

python中播放音频的若干种方式

发表于 2022-01-11

前言

最近在做一个音乐自动化的工具, 涉及到背景音乐播放, 这里总结几种播放音频的方法, 如下

第一种 使用pygame模块

  1. 模块安装

    1
    pip install pygame
  2. 播放代码示例

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    import pygame

    def playMusic(fileName):
    # 初始化
    pygame.mixer.init()
    # 加载音频文件
    pygame.mixer.music.load(fileName)
    # 设置音量 范围为0.0到1.0
    pygame.mixer.music.set_volume(0.5)
    # 开始播放
    pygame.mixer.music.play()

优点: 支持wav和mp3格式

缺点: 声音是单声道的, 失真比较严重

第二种 使用pyaudio模块

  1. 模块安装

    1. 由于pyaudio的运行需要依赖portaudio, 因此需要先安装

      Mac平台直接运行以下指令即可

      1
      brew install portaudio

      其他平台可参考pyaudio官方说明文档 点击进入

    2. 安装pyaudio

      1
      pip install pyaudio
  2. 播放代码示例

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    import pyaudio
    import wave

    def playMusic(fileName):

    chunk = 1024
    wf = wave.open(fileName, 'rb')
    p = pyaudio.PyAudio()
    stream = p.open(format=p.get_format_from_width(wf.getsampwidth()),
    channels=wf.getnchannels(),
    rate=wf.getframerate(),
    output=True)
    data = wf.readframes(chunk)
    while len(data) > 0:
    stream.write(data)
    data = wf.readframes(chunk)
    stream.stop_stream()
    stream.close()
    p.terminate()

优点: 支持音频录制, 回放为立体声, 支持Windows, Mac和Linux平台

缺点: 不能播放mp3格式音频, 模块安装相对费劲

第三种 使用simpleaudio

  1. 模块安装

    1
    pip install simpleaudio
  2. 播放代码

    1
    2
    3
    4
    5
    import simpleaudio as sa
    def playMusic3(fileName):
    wave_obj = sa.WaveObject.from_wave_file(fileName)
    play_obj = wave_obj.play()
    play_obj.wait_done()

优点: 声音为立体声 安装简单

缺点: 不能播放mp3格式音频

第四种 综合版

上面几种方式总是不太完美, 有没有一种既支持mp3和wav格式, 又能立体声播放, 同时使用起来又方便的方式, 答案是 没有 哈哈

不过 我们可以借助一个音频格式转换工具然后配合simpleaudio, 就能实现我们的完美需求, 这个工具就是pydub

pydub不仅可以对音频进行格式转换, 还可以对音频进行切片(比如我播放音乐的前10秒 ), 淡入淡出, 以及获取音频总时长

更多用法可以参见github :

GitHub

多格式音频播放实现
  1. 模块安装

    1
    pip install pydub
  2. 格式转换 比如mp3转wav

    1
    2
    3
    4
    5
    from pydub import AudioSegment

    def trans_mp3_to_wav(filepath):
    song = AudioSegment.from_mp3(filepath)
    song.export("now.wav", format="wav")
  3. 配合simpleaudio播放音频

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16

    from pydub import AudioSegment
    import simpleaudio as sa

    def trans_mp3_to_wav(filepath):
    song = AudioSegment.from_mp3(filepath)
    song.export("./now.wav", format="wav")

    def playMusic(fileName):
    wave_obj = sa.WaveObject.from_wave_file(fileName)
    play_obj = wave_obj.play()
    play_obj.wait_done()

    if __name__ == '__main__':
    trans_mp3_to_wav("bgm2.mp3")
    playMusic("now.wav")

注意事项: 由于pydub这个模块, 过分依赖ffmpeg, 因此我们在使用时如果报错:

FileNotFoundError: [Errno 2] No such file or directory: 'ffprobe'

那么需要先安装ffmpeg

各大平台安装ffmpeg方式:

  1. Mac平台

    1
    brew install ffmpeg
  2. Windows平台

    1. 从Windows binaries provided here下载并提取libav;
    2. 添加libav /bin 文件夹到你的环境变量(PATH)
  3. Linux平台

    1
    apt-get install ffmpeg

总结

除了以上几种之外还有一些其他的音频播放模块, 不过大多数都有各自的局限性, 结合自身需求进行选用即可

本文为作者原创转载时请注明出处 谢谢

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

如何免费下载苹果商店收费软件

发表于 2022-01-07

前言

用惯了盗版软件, 突然要付费购买软件, 还真有些不太习惯, 最近看上了某款软件, 不过App Store售价惊人, 在网上找了一番, 没有找到相应的破解版本

于是我打开了拼夕夕和某宝, 直接搜关键字苹果软件, 找到一大堆

image-20220107110945194

原本售价几十几百的应用, 只需要几块钱

这样一来, 心里立马就舒服多了, 几百块钱不舍得花, 几块钱嘛, 还是愿意出的, 这跟免费没啥区别, 哈哈

以后但凡遇到付费的产品, 可以先去网上店铺看看有没有倒卖的, 嘿嘿

后话

当然有条件的话还是尽量购买正版, 享受正版服务, 至少软件更新啥的可以有保证, 同时也免去了各种繁琐的操作

本文为作者原创转载时请注明出处 谢谢

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

用python写一个自动化喊麦 恭喜您发财

发表于 2022-01-05

前言

春节将近, 好运连连, 这里先祝大家在新的一年里, 身体健康, 万事如意, 财源滚滚~

春节这样一个喜庆的节日, 肯定是要嗨起来呀, 搞氛围最好的手段就是音乐, 不同的音乐, 不同的情绪

喊麦, 是一个非常接地气而且能快速调动人们情绪的一种音乐形式, 那么, AV Body 让我们开始躁起来吧, 哈哈哈

环境准备

  • Python
  • 喊麦诗词
  • 喊麦BGM
喊麦词
喊麦BGM

喊麦步骤

第一步 播放背景音乐
  1. 首先确保pip为最新

    1
    pip3 install --upgrade pip
第二步 播放人声

既然是自动化, 那么这里的人声用文字转语音代替, 这里我们需要使用到

  1. 工具安装

    1
    2
    3
    4
    5
    python3 -m pip install pyttsx3

    或者

    pip3 install pyttsx3
  2. 朗读文本

    1
     

本文为作者原创转载时请注明出处 谢谢

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

一款跨平台的SSH工具

发表于 2022-01-04

前言

有时候电脑不在身边, 想快速进入远程服务器解决问题, 此时我们可以借助手机进行SSH服务器连接

只需要下载一个App即可, 该应用名为Termius

image-20220104115045524

点击进入官网

软件特色

  • 免费
  • 跨平台: 支持Mac Windows Linux IOS和Android 五大平台

软件下载

image-20220104114433602

  • Mac:

  • Windows: Termius

  • Linux: Termius

  • IOS: Termius

  • Android: Termius

国内下载通道

Android版官方下载渠道是谷歌商店的, 国内用户无法下载, 我这边已经将APK上传至国内网盘, 有需要的可以直接下载:

点击下载(访问密码:312306)

本文为作者原创转载时请注明出处 谢谢

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

解决国内访问GitHub缓慢的解决方法汇总

发表于 2022-01-04

前言

在没有大爬梯的前提下, 国内访问GitHub可能会比较慢, 时长转圈圈, 如果想加快网页的访问, 有以下几种方法可以改善:

  • 使用Steam++ 工具进行加速 (推荐)
  • 使用UU加速器 (已失效)
  • 使用dev-sidecar工具加速
  • 修改Hosts文件
  • 使用大爬梯

使用Steam++ 工具进行加速

Steam++是一个包含 多种Steam 工具功能的工具箱, 主要有网站加速, 令牌管理, 库存管理, 内置插件等功能, 支持Windows, Mac,UWP ,IOS和Android四大平台, 工具免费开源, 推荐大家使用

官网介绍如下:

image-20220104095648951

点击进入官网

软件下载

  • 官网下载: Steam++
  • GitHub下载: Steam++

应用主界面如下:

image-20220104100033733

选择GitHub进行一键加速即可开启快速访问

使用dev-sidecar工具加速

工具特性

  • DNS优选
  • 请求拦截
  • GitHub加速
  • Stack Overflow加速
  • npm加速

支持windows、Mac、Linux(Ubuntu)平台

工具下载

  • Gitee通道下载: Gitee Release
  • Github通道下载: Github Release

应用界面

img

官方使用文档

点击进入

使用UU加速器

网易出品的一款游戏加速器, 国服游戏可以免费加速, 以前可以对Github进行加速, 现在好像不行了

修改Hosts的方式

具体配置可参见之前的文章《解决国内访问github过慢的问题》

使用大爬梯

推荐使用v2free免费大爬梯, 详情可参见《关于机场订阅链接转换》

本文为作者原创转载时请注明出处 谢谢

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

一款跨平台的Gif录制工具

发表于 2021-12-28

前言

写博客不时会有gif录制需求, 今天给大家推荐一款好用的gif录制工具, 名为LICEcap

软件优点

  • 免费开源
  • 体积小 安装包不到1MB
  • 跨平台 支持windows和Mac

软件下载

  • 官网下载: LICEcap
  • Github: LICEcap

image-20211228162505986

软件界面

image-20211228162900705

录制效果如下:

111

Gif压缩

如果录制的gif文件过大不方便传输, 可以考虑进行压缩

  • 本地压缩工具: imageOptim (目前只有Mac版)
  • 在线压缩工具: soogif

其他录屏工具

  • QQ录屏: 录屏后可以导出为gif, mp4,mov三种格式, 非常方便 不过不能调整郑律, 导出的gif文件体积稍大

  • 操作系统自带录屏工具: Mac平台可以使用Quicker Time或者截屏工具 Windows10平台可以使用Xbox Game Bar , 如果仅仅是操作步骤截图录制可以使用psr.exe

    需要注意的是:

    • Xbox Game Bar不支持录制Windows桌面、文件资源管理器,每次只支持录制单独的应用窗口

      可能会用到的几个快捷方式:

      1
      2
      3
      4
      Win+G 打开Xbox Game Bar
      Win+Alt+G 录制
      Win+Alt+R 开始/停止录制
      Win+Alt+M 麦克风打开/关闭
    • Mac平台截屏录屏快捷键

      1
      2
      Shift+Command+5 调出截屏录屏工具栏
      Shift+Command+4 然后空格键 直接截取窗口全屏

      Quicker Time不仅可以录屏还可单独录制音频和摄像头录制

      无论使用截屏工具还是Quiker Time视频格式皆为mov

补充

最近在Mac平台上使用LICEcap, 再经过imageOptim压缩后 发现出现画面掉帧的问题 这绝对是不能容忍的, 于是乎 我又找到两款性价比比较高的gif录制工具

  • GIF Brewery 3
  • Gifski

这两款工具 可以直接在App Store中下载免费使用

本文为作者原创转载时请注明出处 谢谢

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

Android Studio 使用TinyPng插件一键压缩图片

发表于 2021-12-28

前言

Apk体积太大? 基本上是图片资源惹的祸, 此时我们需要对图片进行压缩, 而且是无损压缩

那么这里就得提到一个Studio插件, 那就是TinyPNG Image Optimizer

使用步骤

  1. 首先我们需要在Studio上安装TinyPNG Image Optimizer插件

    image-20211228153316868

  2. 然后去TinyPNG官网申请一个Api, 以便我们能使用他们的压缩服务

    点击进入TinyPNG开发者官网

    image-20211228154806608

    这里需要填写一个邮箱, 如果你担心邮件骚扰, 可以去申请一个临时邮箱:

    点击进入临时邮箱申请页面

    image-20211228155000212

    用于临时验证什么的非常方便 强烈推荐大家使用

  3. 将获取到的Api填入Studio插件配置中

    image-20211228154334794

  4. 选中需要压缩的图片右键选择Optimize Image Size, 当然你也可以选中drawable文件夹, 进行批量压缩

    image-20211228153858116

    ​

    ​ 插件界面如下:

    image-20211228153715780

以上 就是TinyPNG插件的使用

本文为作者原创转载时请注明出处 谢谢

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

Mac平台下图片无损压缩工具

发表于 2021-12-28

前言

平常写博客经常会使用一些贴图, 有些录制的gif图片体积过大, 用户访问碰到网络不佳时难免体验不爽, 于是对于大图的压缩尤为关键

一方面提升图片的加载速度, 另一方面减少存储空间的占用

我们在对图片进行压缩时, 需要尽可能能地保证还原度, 也就是压缩痕迹不能太明显, 若能无损压缩最佳

这样的软件有不少, 比如:

  • TinyPNG
  • MozJPEG
  • Guetzli

TinyPNG是一款在线图片压缩工具, 支持webp, png,jpg格式的压缩, 如果你是安卓开发者, 还可以直接使用 TinyPNG插件一键对Android工程内部图片批量压缩, 非常方便, 关于Android插件的使用可参考《Android Studio 使用TinyPng插件一键压缩图片》

MozJPEG目前只支持Windows

Guetzli是谷歌出品的一款开源图片压缩工具

本文给大家介绍Mac平台上的一款压缩工具, 名为ImageOptim

软件优点

  • 免费
  • 开源
  • 体积小

软件下载

  • 官网下载: ImageOptim
  • Github: ImageOptim

软件界面

image-20211228160643992

在软件设置窗, 我们可以选择使用不同的压缩引擎, 还可以设置压缩质量等等:

image-20211228161120200

不过该软件暂时不支持透明图片的压缩, 如果你想压缩透明png图片, 可以使用另一款软件pngmini

点击进入官网

image-20211228161444700

本文为作者原创转载时请注明出处 谢谢

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

各大平台大爬梯软件汇总

发表于 2021-12-25

前言

话不多说, 直接往下看

各大平台大爬梯汇总

Windows平台

  • Clash
  • V2rayN
  • V2rayA
  • Qv2ray
  • Mellow
  • shadowsocks-windows

Mac平台

  • ShadowsocksX-NG
  • Clash
  • V2rayU
  • V2rayA
  • Qv2ray
  • Mellow
  • V2RayX

Linux平台

  • Clash
  • Qv2ray
  • V2rayA
  • Mellow

Freebsd平台

  • Clash
  • V2rayA

Android 平台

  • V2rayNG
  • shadowsocks-android
  • ClashForAndroid

路由器

  • Fancyss

下载指南

在Github中如果你不知道该下载那个文件, 可以参考以下说明:

Desktop(桌面端)

  • Windows
    • 如果你使用 Intel、AMD 的 x64 芯片的 Mac(较为普遍),则下载文件名中带有 win_x64 的文件
    • 如果你使用 ARM64 芯片的 PC(极为稀有),例如 Surface Pro X,则下载文件名中带有 win_x64 的文件可通过 Win11 x86 模拟运行
  • macOS
    • 如果你使用 Intel、AMD 的 x64 芯片的 Mac(较为普遍),则下载文件名中带有 macos_x64 的文件
    • 如果你使用 ARM64 芯片的 Mac(较为稀有),例如 M1,则下载文件名中带有 macos_x64 的文件可通过 Rosetta 2 运行
  • Linux
    • 如果你使用 Intel、AMD 的 x64 芯片的 PC(较为普遍)则下载文件名中带有 linux_x64 的文件
    • 如果你使用 ARM64 芯片的 PC(较为稀有)例如 Raspberry Pi Model 3+,则下载文件名中带有 linux_arm64 的文件
  • Shared
    • 如果你已安装了ASP.NET Core Runtime 6.0.0则下载文件名中带有fde的文件,可减少磁盘占用空间
      • 在 Windows 上安装 .NET
        • 在 Windows 上不需要 Hosting Bundle 和 IIS support
        • 下载安装程序并手动安装(aspnetcore-runtime-6.0.0-win-x64.exe)
        • 使用 PowerShell 自动化安装
      • 在 Linux 上安装 .NET
        • 推荐 通过 Snap 安装 .NET Runtime
        • sudo snap install dotnet-runtime-60 --classic

Mobile(移动端)

  • Android
    • 如果你使用 ARM64 芯片的设备(较为普遍)则下载文件名中带有 android_arm64_v8a 的文件
    • 如果你使用 ARM32 芯片的设备(较为稀有)通常为 14 年下半年之前生产的设备,则下载文件名中带有 android_armeabi_v7a 的文件
    • 如果你使用 Intel、AMD 的 x86 芯片的设备(较为稀有)则下载文件名中带有 android_x86 的文件

国内下载通道

如果上面的软件无法下载或者访问缓慢, 可以进入国内下载通道

点击进入(访问密码:312306)

本文为作者原创转载时请注明出处 谢谢

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

Quantumult For IOS使用教程

发表于 2021-12-25

应用概述

Quantumult 是在iOS平台上的客户端软件,支持Shadowsocks、ShadowsocksR 以及 VMess 协议。

目前 Quantumult已经被Apple根据政府要求从中国大陆区的 App Store移除,之前在中国大陆商店购买此软件的用户将不能获得更新或重新下载。

这是一个付费软件,你需要购买才能使用。

应用下载

以下是各平台该应用的下载地址。

  • Apple iOS:App Store
  • …

配置方案

此文中讲述在 Quantumult 中配置 SSR、V2ray、分流规则订阅。

如您需要更细化的配置,如使用策略组等,请 点此查阅 相关的使用方案,否则请往下继续。

获取订阅

1
https://v1.ddnsgo.xyz/link/gdfdsgdsg?list=Quantumult

接下来以上面这个订阅链接为例个大家介绍

配置 Quantumult

打开Quantumult,点击底部导航栏的「设置」进入设置页面。

1

进入「订阅」子页面并点击右上角的加号,从弹出菜单中选择第一个「服务器」。

2

在「名称」中输入本站名称并保存,随后在「链接」中粘贴上方 订阅链接 并保存。

3

随后点击右上角保存,此时会自动更新获取服务器。

分流规则

同样在「订阅」页面,点击右上角加号,从弹出菜单中选择第二个「分流」。

在名称中输入「Hackl0us Rules」,链接中输入 此链接网址 【电脑:右键点链接->复制链接地址;手机长按链接,然后复制链接地址;或点击打开链接后从浏览器地址栏复制链接地址】。

4

随后左划「Hackl0us Rules」分流规则并点击替换。

5

开始使用

回到 Quantumult 主页,点击底部导航栏的 圆 logo 图标,选择您需要的节点,随后打开右上角开关即可。

如提示添加 VPN 配置,请点击 Allow 并验证您的 密码、Touch ID、Face ID 。

本文转载自:https://w1.v2dns.xyz/doc/#/iOS/Quantumult_sub

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

1…181920…51

乱码三千

android程序员一枚,擅长java,kotlin,python,金融投资,欢迎交流~

505 日志
145 标签
RSS
© 2026 乱码三千
本站总访问量次
由 Hexo 强力驱动
|
主题 — NexT.Muse v5.1.4
0%