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

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

  在Linux环境下,默认情况是没有安装lame,所以首先需要安装lame(个人保存下载文件:http://pan.baidu.com/s/1qWp71G4#path=%252Fsharesoft%252Flinux%252Flame)。

  Linux lame 安装及使用:
  1. 解压lame压缩文件:tar -vzxf lame-3.98.4.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
时间: 2024-08-26 11:06:05

golang实现wav文件转换为mp3文件的相关文章

python之模块py_compile用法(将py文件转换为pyc文件)

# -*- coding: cp936 -*- #python 27 #xiaodeng #python之模块py_compile用法(将py文件转换为pyc文件) #二进制文件,是由py文件经过编译后,生成的文件. ''' import py_compile #不带转义r py_compile.compile('D:\test.py') Traceback (most recent call last): File "<pyshell#1>", line 1, in &l

swftools工具将pdf文件转换为swf文件

开发客户网站时遇到了一个需求,客户要求后台上传pdf文件,前台能以翻书的形式直接访问. 首先想到的是使用js解决,用户访问前端页面时,php将文件路径发送给js,让js呈现出来翻书的效果.在网上百度了一圈也没有找到现成的插件. 于是由某人提供的flash完成,这时就需要将客户在后台上传的pdf文件转换为swf文件才能通过某人提供的flash呈现出来,而且需要pdf的每一页生成一个swf文件,才能出现翻书的效果.这时又由某人提供说,swftools可以完成这个需求,于是迅速百度. swftools

bin文件转换为hex文件C语言实现

对于嵌入式而言,hex文件可能大家再熟悉不过了,对,我们大学时学习的51单片机编写的代码在keil上编译后就生成了hex文件.那bin文件又是什么意思呢,它又和hex文件的区别在哪?这也不是本文的重点,下面简单的描述下: 最通俗的来讲,hex是带地址的,用下载器下载时,不需要设置偏移地址,它是文件流格式的,都是标准的ASCII码.而bin文件是不带地址的,全部是二进制数据流,打住一下,其实就是我们所谓的机器代码.有兴趣的同学,可以尝试着用反汇编,得到的就是汇编代码了.我所用的开发板S3C2440

将图片文件转换为.py文件

最近用wxpython写了一个脚本,其中要给窗体设置图标文件,需要单独的一个ico文件,这样就比较影响美观,另外打包的时候还要将图标文件一起打包很繁琐.这时候看到wxpython文件有一个工具img2py.py. 这个工具可以将图标文件转为.py文件,文件里面保存的是图标文件的二进制信息. 使用方法如下: python C:\Python27\Lib\site-packages\wx-3.0-msw\wx\tools\img2py.py  -n=targetname   -i        ic

xcode 中运用lame进行caf文件到mp3文件的转换

需首先引用lamp.h,libmp3lame.a - (void)audio_PCMtoMP3:(NSString *) cafFilePath ToMp3File:(NSString *) mp3FilePath { NSFileManager* fileManager=[NSFileManager defaultManager]; if([fileManager removeItemAtPath:mp3FilePath error:nil]) { NSLog(@"删除"); } @

2. PyQt5 .ui文件转换为.py文件

Author: Notus([email protected]) Create: 2019-02-09 Update: 2019-02-09 PyQt5 .ui文件转换为.py文件 环境 操作系统: macOS Mojave, version 10.14.1 Python Version: 3.6.4 PyQt5 Version: 5.11.3 Qt Creator Version: 4.8.1 窗体显示效果如下 对应的.ui文件(firstMainWin.ui)内容为 <?xml versio

3. PyQt5-通过Python脚本把当前目录下的所有.ui文件转换为.py文件

Author: Notus([email protected]) Create: 2019-02-10 Update: 2019-02-10 PyQt5-通过Python脚本把当前目录下的所有.ui文件转换为.py文件 环境 操作系统: Windows 10 专业版 64-bit (10.0, Build 16299) (16299.rs3_release.170928-1534) Python Version: 3.7.1 PyQt5 Version: 5.11.3 Qt Designer V

PHP 将amr音频文件转换为mp3格式

说下整体思路 1.服务器安装ffmpeg 2.使用ffmpeg -i 指令来转换amr为mp3格式(这个到时候写在PHP代码中,使用exec函数执行即可) 3.在网页端使用HTML5的audio标签来播放mp3文件 下面是操作细节: 一.服务器安装ffmpeg以cenos为例 此处参考:http://my.oschina.NET/ethan09/blog/372435 需要特别注意的是,在下面的方法中,amrnb和amrwb的安装到make环节会请求3gp的一个网址,一般是请求不到的,可以用cr

php如何将base64数据流文件转换为图片文件?

2017-03-07 在开发中,自己遇到一个前端在上传图片的时候,使用的base64数据流文件显示的图片. 也就是说 <img src="data:image/jpg;base64," /> ***image/后面的jpg是我们的图片文件格式,(base64,)后面的很大一长串就是具体的文件信息. data:image/jpg;base64则是指的文件头.我们可以把src里面的全部内容放在浏览器的地址栏进 行访问,是可以正常显示图片文件的. 我将src的值获取到后台之后,在