ubuntu python播放MP3,wav音频和录音

目录

    • 一.利用pygame(略显麻烦,有时候播放不太正常)
      • 1.安装依赖库
      • 2.代码
    • 二.利用mpg123(简洁方便,但仅争对mp3)
      • 1.安装依赖库
      • 2.代码
    • 三.利用sox(简单方便,支持的文件格式多)
      • 1.安装依赖库
      • 2.代码
    • 四.语音识别(录音)
      • (1)查看录音设备
      • (2)定时录音命令
      • (3)不定时录音命令
      • (4)python脚本控制

一.利用pygame(略显麻烦,有时候播放不太正常)

1.安装依赖库

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pygame==2.5.2

2.代码

import pygame

def play_audio(audio_file):
  pygame.mixer.init() # 初始化
  pygame.mixer.music.load(audio_file) # 加载文件
  pygame.mixer.music.play() # 播放
  while pygame.mixer.music.get_busy(): # 等待播放完毕
      pygame.time.Clock().tick(10)

if __name__ == '__main__':
  audio_file = 'path/to/your/audio/file.mp3' # mp3的路径
  play_audio(audio_file)

二.利用mpg123(简洁方便,但仅争对mp3)

1.安装依赖库

sudo apt-get install mpg123  # 安装环境

2.代码

import os
os.system('mpg123 /home/pi/Desktop/music/爱你.mp3') # 这里MP3文件路径
# 注意:只有播放完音频才往后执行。

三.利用sox(简单方便,支持的文件格式多)

1.安装依赖库

sudo apt-get install sox  # 安装环境

2.代码

import os
os.system('play /home/pi/Desktop/music/爱你.mp3') # 这里MP3文件路径
# 注意:只有播放完音频才往后执行。

四.语音识别(录音)

(1)查看录音设备

arecord -l

ubuntu python播放MP3,wav音频和录音_第1张图片

(2)定时录音命令

arecord -D "plughw:2,0" -f S16_LE -r 16000 -d 5 question1.wav
# 参数介绍
-D "plughw:2,0"   2,0 表示card2  device 0
-f S16_LE 指定录音格式
-r 16000 指定了采样率,单位时Hz
-d 指定录音的时长,单位时秒
question1.wav 文件名称及格式

(3)不定时录音命令

arecord -D "plughw:2,0" -f S16_LE -r 16000  question1.wav
# 按ctrl + C来结束录音。

(4)python脚本控制

import os
import threading


def print_time(t):
    t= t+1
    os.system('clear') # 清除上一条命令
    print("times:", t,"s, (Ctrl + C to Stop!)")
    timer = threading.Timer(1, lambda: print_time(t))
    timer.start()


timer = threading.Timer(1, lambda: print_time(0))
timer.setDaemon(True) # 设置随主程序的关闭而关闭
timer.start()

os.system('arecord -D "plughw:2,0" -f S16_LE -r 16000  question1.wav')
print("录音结束!")

你可能感兴趣的:(ROS,python,ubuntu,音视频)