ubuntu20.04中使用python播放音频
时间: 2025-05-24 15:59:47 浏览: 30
### 在 Ubuntu 20.04 中使用 Python 播放音频
要在 Ubuntu 20.04 上使用 Python 播放音频文件,可以借助多种第三方库来实现这一功能。以下是几种常见的方法及其对应的代码示例。
#### 方法一:使用 `pygame` 库
`pygame` 是一个用于开发游戏的跨平台 Python 库,同时也支持音频播放功能。可以通过以下命令安装该库:
```bash
sudo apt update
sudo apt install python3-pygame
```
下面是一个简单的代码示例,展示如何使用 `pygame` 来播放音频文件:
```python
import pygame
import time
def play_audio(file_path):
pygame.mixer.init() # 初始化混音器模块
print(f"Playing audio file: {file_path}")
pygame.mixer.music.load(file_path) # 加载音频文件
pygame.mixer.music.play() # 开始播放
while pygame.mixer.music.get_busy(): # 循环等待直到音乐结束
time.sleep(1)
if __name__ == "__main__":
audio_file = "example.mp3" # 替换为实际路径
play_audio(audio_file)
```
此方法适用于大多数常见格式的音频文件[^1]。
---
#### 方法二:使用 `simpleaudio` 库
`simpleaudio` 是另一个轻量级的音频播放库,适合快速原型设计和简单应用。可以通过 pip 安装它:
```bash
pip install simpleaudio
```
下面是使用 `simpleaudio` 的示例代码:
```python
import simpleaudio as sa
def play_audio(file_path):
wave_obj = sa.WaveObject.from_wave_file(file_path) # 创建 Wave 对象
play_obj = wave_obj.play() # 播放对象
play_obj.wait_done() # 等待播放完成
if __name__ == "__main__":
audio_file = "example.wav" # 只支持 WAV 格式
play_audio(audio_file)
```
需要注意的是,`simpleaudio` 主要支持 `.wav` 格式的音频文件[^2]。
---
#### 方法三:使用 `vlc` 命令行工具与 `subprocess`
如果希望利用 VLC 这样的强大媒体播放器,则可以通过调用其命令行接口来实现音频播放。首先需要安装 VLC:
```bash
sudo apt update
sudo apt install vlc
```
接着可以用以下方式通过 Python 调用 VLC 播放音频:
```python
import subprocess
def play_audio_vlc(file_path):
command = ['cvlc', '--play-and-exit', file_path] # 使用 cvlc 后台播放
process = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
output, error = process.communicate()
if process.returncode != 0:
print("Error:", error.decode())
if __name__ == "__main__":
audio_file = "example.mp3"
play_audio_vlc(audio_file)
```
这种方法的优点在于兼容性强,几乎能处理任何主流格式的音频文件[^3]。
---
#### 方法四:使用 `playsound` 库
对于初学者来说,`playsound` 提供了一个极其简洁的方式来播放音频文件。可以直接通过 pip 安装:
```bash
pip install playsound==1.2.2 # 推荐指定版本以避免兼容性问题
```
随后编写如下代码即可:
```python
from playsound import playsound
def play_audio(file_path):
try:
playsound(file_path)
except Exception as e:
print("An error occurred:", str(e))
if __name__ == "__main__":
audio_file = "example.mp3"
play_audio(audio_file)
```
尽管简单易用,但 `playsound` 存在一些潜在缺陷,在某些环境中可能表现不稳定[^4]。
---
### 总结
以上介绍了四种不同的方案来实现在 Ubuntu 20.04 下使用 Python 播放音频的功能。每种方法都有各自的优缺点以及适用场景,请根据具体需求选择合适的选项。
阅读全文
相关推荐
















