linux下mp3批量转wav与spx

当前目录所有mp3转wav,需要安装mpg123
for mp3file in `ls *.mp3`; do mpg123 -w $mp3file.wav $mp3file; done;
如果要转成16KHZ的
for mp3file in `ls *.mp3`; do mpg123 -r 16000 -w $mp3file.wav $mp3file; done;
重命名
rename .mp3.wav .wav *.mp3.wav

wav批量转spx,需要安装speexenc
for wavfile in `ls *.wav`; do speexenc $wavfile $wavfile.spx; done;
重命名
rename .wav.spx .spx *.wav.spx

MPG123 简介

MPG123 是一个快速、开源的命令行 MPEG Audio Player(MP1/MP2/MP3 播放器),支持实时解码和播放 MP3 音频文件。它最初由 Michael Hipp 开发,现在由开源社区维护。


主要特点

  1. 跨平台支持

    • 可在 Linux、Windows、macOS、BSD、Solaris 等系统上运行。
    • 适用于嵌入式设备(如树莓派)和服务器环境。
  2. 高性能解码

    • 采用优化的 MPEG-1/2/2.5 Layer I/II/III(MP1/MP2/MP3)解码器。
    • 支持多种采样率(8kHz–48kHz)和比特率(8kbps–320kbps)。
  3. 多种输出模式

    • ALSA(Linux)、OSS(Unix)、Core Audio(macOS)、DirectSound/WASAPI(Windows)。
    • PulseAudioJACKsndioOpenALSDL 等音频后端支持。
    • 可输出到文件(如 WAV、RAW PCM),适用于音频转换。
  4. 命令行工具 & API

    • mpg123:命令行播放器(支持播放列表、网络流媒体)。
    • libmpg123:C/C++ API,可集成到其他程序(如音乐播放器、游戏)。
  5. 网络流媒体支持

    • 可播放 HTTP、ICY(Shoutcast/Icecast)流媒体。
    • 支持 ID3v1/ID3v2 标签解析。
  6. 低延迟 & 低 CPU 占用

    • 适用于嵌入式设备或低功耗系统(如树莓派)。
  7. 开源 & 自由软件

    • 基于 GPL/LGPL 许可证发布。

基本用法

1. 播放本地 MP3

mpg123 audio.mp3

2. 播放多个文件

mpg123 song1.mp3 song2.mp3

3. 播放网络流

mpg123 http://example.com/stream.mp3

4. 输出到 WAV(格式转换)

mpg123 -w output.wav input.mp3

5. 批量播放目录下的 MP3

mpg123 \~/Music/*.mp3

6. 静音模式(仅解码不播放)

mpg123 -s input.mp3 > /dev/null

7. 调整音量

mpg123 -g 50 audio.mp3  # -g = gain (0-100)


常见应用场景

  1. 终端音乐播放器(结合 ncmpcppcmus)。
  2. 脚本自动化处理音频(如批量转码)。
  3. 嵌入式设备音频播放(如树莓派音乐盒)。
  4. 网络电台播放器(支持 Shoutcast/Icecast)。
  5. 游戏或应用程序的 MP3 解码库(通过 libmpg123)。

对比其他 MP3 播放器

PlayerCLI/GUIStreamingAPILow CPUCross-Platform
mpg123CLI
VLCGUI/CLI
FFmpegCLI
MPlayerCLI/GUI

总结

MPG123 是一个轻量级、高效的 MP3 解码器和播放器,适用于终端用户、开发者和嵌入式系统。它的核心优势在于:

  • 速度快、低 CPU 占用
  • 支持流媒体和 API(libmpg123)
  • 跨平台兼容性好

如果你需要一个命令行 MP3 播放器或解码库,MPG123 是一个极佳的选择

作者:帅得不敢出门   程序员群:31843264

1、Java实现wav音频文件换为pcm音频文件(AudioUtils.java) 2、Java实现播放pcm音频文件(PCMPlay.java) WAVwav是一种无损的音频文件格式,WAV符合 PIFF(Resource Interchange File Format)规范。所有的WAV都有一个文件头,这个文件头音频流的编码参数。WAV对音频流的编码没有硬性规定,除了PCM之外,还有几乎所有支持ACM规范的编码都可以为WAV的音频流进行编码。 PCM:PCM(Pulse Code Modulation----脉码调制录音)。所谓PCM录音就是将声音等模拟信号变成符号化的脉冲列,再予以记录。PCM信号是由[1]、[0]等符号构成的数字信号,而未经过任何编码和压缩处理。模拟信号比,它不易受传送系统的杂波及失真的影响。动态范围宽,可得到音质相当好的影响效果。 简单来说:wav是一种无损的音频文件格式,pcm是没有压缩的编码方式。 WAV和PCM的关系 WAV可以使用多种音频编码来压缩其音频流,不过我们常见的都是音频流被PCM编码处理的WAV,但这不表示WAV只能使用PCM编码,MP3编码同样也可以运用在WAV中,和AVI一样,只要安装好了相应的Decode,就可以欣赏这些WAV了。在Windows平台下,基于PCM编码的WAV是被支持得最好的音频格式,所有音频软件都能完美支持,由于本身可以达到较高的音质的要求,因此,WAV也是音乐编辑创作的首选格式,适合保存音乐素材。因此,基于PCM编码的WAV被作为了一种中介的格式,常常使用在其他编码的相互换之中,例如MP3换成WMA。 简单来说:pcm是无损wav文件中音频数据的一种编码方式,但wav还可以用其它方式编码。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

帅得不敢出门

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值