Linux实现m4a格式转换为wav格式

  1. 需要在linux上安装ffmpeg
    参考博客 Linux上安装ffmpeg
  2. 修改环境变量【这一点很重要,自己因为没有添加环境变量,捣鼓了很长时间】
    将ffmpeg的绝对路径添加到 PATH 环境变量中,以让系统能找到ffmpeg的安装路径。
python 复制代码
# /home//project/ffmpeg-6.1-amd64-static 替换成ffmpeg和ffprobe所在的文件夹
export PATH="/home//project/ffmpeg-6.1-amd64-static:${PATH}"
  1. python代码将m4a类型的音频文件转换为wav类型
python 复制代码
# "AudioSegment库能够将"m4a"【苹果音乐的格式】类型的音频文件转换为wav类型"
from pydub import AudioSegment
import librosa
w4a_audio = AudioSegment.from_file(path, format="m4a")
w4a_audio.export("audio_countdown.wav", format="wav")
  1. librosa库对wav类型的文件进行处理、可视化
python 复制代码
y, sr = librosa.load("audio_countdown.wav")
import matplotlib.pyplot as plt
print(f'y: {y[:10]}')
print(f'shape y: {y.shape}')
print(f'sr: {sr}')
import pandas as pd
pd.Series(y).plot(figsize=(10, 5),
                  lw=1,
                  title='Raw Audio Example')
plt.show()
python 复制代码
import numpy as np
import matplotlib.pyplot as plt
D = librosa.stft(y)
S_db = librosa.amplitude_to_db(np.abs(D), ref=np.max)
S_db.shape
fig, ax = plt.subplots(figsize=(10, 5))
img = librosa.display.specshow(S_db,
                              x_axis='time',
                              y_axis='log',
                              ax=ax)
ax.set_title('Spectogram Example', fontsize=20)
fig.colorbar(img, ax=ax, format=f'%0.2f')
plt.show()
相关推荐
Linux-lucky9 小时前
45-Linux学习之旅之防火墙与WEB加固
linux·前端·网络·学习·ubuntu
禁默10 小时前
启元 Q1 二次开发实践:Ubuntu 部署与仿真验证,从 PrimeConsole 到 ROS 2 Humble + RViz
linux·运维·ubuntu
skywalk816310 小时前
把 去也网站 从 Ubuntu 搬到 FreeBSD:一次 Service Jail + nginx 的部署实录
linux·运维·nginx·ubuntu·freebsd
爱莉希雅&&&12 小时前
GitLab 完整学习笔记
linux·运维·服务器
风笙97812 小时前
[文件系统]文件系统挂载与卸载详解
linux
GeW13 小时前
新质生产力路线图解读:数据库性能优化与Linux调优专场
linux·数据库
陈希12314 小时前
Linux 服务器性能排查手册(2026):CPU、内存、磁盘IO、网络四大瓶颈定位
linux·服务器·网络
测试界的小码农17 小时前
【Linux 命令实战(03):文件创建、复制、移动与删除,掌握 touch、mkdir、cp、mv、rm】
linux·服务器·php
byte轻骑兵18 小时前
实战 1:修改 BlueZ 源码,添加自定义开机日志
linux·aiot·bluez·电脑蓝牙·嵌入式蓝牙
叼烟扛炮18 小时前
Linux 学习笔记(五十):网络层——IP 协议、子网划分与 NAT 魔法
linux·笔记·学习