zoukankan      html  css  js  c++  java
  • 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
  • 相关阅读:
    Iconfont在Vue中的使用
    yarn安装依赖报错
    动漫
    伤痛的魅力。绷带男子特辑
    记STM32F103C8T6+STLINK下载器在Keil中的设置
    JQuery浮动对象插件
    树莓派RTL8723BU_LINUX驱动安装
    python虚拟环境相关设置备忘
    解决树莓派控制台命令行乱码
    python模块wifi使用小记
  • 原文地址:https://www.cnblogs.com/hezhixiong/p/4635603.html
Copyright © 2011-2022 走看看