golang实现wav文件转换为mp3文件

  本文并非golang内置的库进行wav转mp3,而是通过golang调用Linux的lame命令进行转换。

  在Linux环境下,默认情况是没有安装lame,所以首先需要安装lame(个人保存下载文件:http://www.linuxfromscratch.org/blfs/view/stable/multimedia/lame.html)。

  Linux lame 安装及使用:
  1. 解压lame压缩文件:tar -vzxf lame-3.**.*.tar.gz
  2. 转到解压后的文件目录,依次执行:“./configure --enable-shared”,“make”,“make install”
  3. lame使用方法:lame xxx.wav xxx.mp3 (这样就能把xxx.wav文件转换为xxx.mp3文件)

  接下来将通过golang调用Linux的lame命令来实现wav转mp3。

 1 package main
 2 
 3 import (
 4     "log"
 5     "os"
 6     "os/exec"
 7 )
 8 
 9 func main() {
10     wav_file := "/root/input.wav"  // 需要转换的wav文件
11     mp3_file := "/root/output.mp3" // 转换后mp3文件存放路径
12     cmd := exec.Command("lame", wav_file, mp3_file)
13     err := cmd.Run()
14     if err != nil {
15         log.Fatal("Convert wav to mp3 error. ", err)
16         return
17     }
18     // wav转mp3成功后,如有必要则可删除wav原文件
19     os.Remove(wav_file)
20 }
21 
22 // 成功的将 wav 文件转换了 mp3 文件
23 // 原 wav 文件大小:97.70KB
24 // 转换后 mp3 文件大小:9.79KB
// 反过来将mp3转为wav的linux命令:mpg123 -w 123.wav 123.mp3

 

转载于:https://www.cnblogs.com/hezhixiong/p/4635603.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值