主页 > 知识库 > linux命令实现音频格式转换和拼接的方法

linux命令实现音频格式转换和拼接的方法

热门标签:硅谷的囚徒呼叫中心 百度竞价点击价格的计算公式 网站建设 智能手机 美图手机 阿里云 检查注册表项 使用U盘装系统

安装FFmpeg flac

eric@ray:~$ sudo apt install FFmpeg flac

安装lame faac

eric@ray:~$ sudo apt install lame faac

将一个后缀为.ape格式的视频转换成m4a(mp4)格式

1、首先用ffmpeg命令或者flac 命令将它转换成mav格式,再用lame将wav转换成mp4格式

eric@ray:~/Music$ ffmpeg -i Gracie-Theme.ape Gracie-Theme.wav

##或者

eric@ray:~/Music$ flac -d Gracie-Theme.flac Gracie-Theme.wav

2、再使用lame命令 压缩成MP3

##使用lame命令:使用VBR动态码率压缩,0表示质量最高,9表示质量最低,默认为4

eric@ray:~/Music$ lame -v Gracie-Theme.wav

##或者使用faac编码得到m4a(mp4)、mp3格式文件:100表示质量最高 100% 

eric@ray:~/Music$ faac -w -q 100 Gracie-Theme.wav -o Gracie-Theme.mp4

3、也可以使用ffmpeg压缩得到m4a格式:

#这里使用的是ffmpeg内置的aac编码起,设置码率为固定的320k

eric@ray:~/Music$ ffmpeg -i Gracie-Theme.wav -strict experimental -c:a aac -b:a 320k Gracie-Theme.m4a

#还可以使用ffmpeg将解压和压缩为一条命令:-map_metadata 表示保留歌曲元数据,即名称、演唱者等

eric@ray:~/Music$ ffmpeg -i Gracie-Theme.flac -ab 320k -map_metadata 0 Gracie-Theme.m4a

4、批量脚本

#!/bin/bash

for FILE in *.ape;
do
ffmpeg -i "$FILE" temp.wav;
lame -b 320 temp.wav "${FILE%.*}.mp3";
rm temp.wav
done

对于一个ape/flac文件包含多首歌曲

这种情况,通常会有一个cue文件,这个文件中包含这个ape/flac文件的专辑名称、演唱者名称、还有每首歌曲的名称、时间范围。可以先用上面的方法将整个文件转化为Mp3格式之后,再用mp3splt工具进行分割。

将cue文件分割为mp3:

eric@ray:~/Music$mp3splt -c song.cue -o @n.@t song.mp3

常用参数:

@a:歌手名称

@b:专辑名称

@t:歌曲标题

@n:音轨序号

音频合并

#音频合并(两个音频重叠)

eric@ray:~/Music$ffmpeg -i first.mp3 -i second.mp3 -filter_complex amix=inputs=2:duration=first:dropout_transition=2 -f mp3 third.mp3

#两个音频拼接

eric@ray:~/Music$ffmpeg -i d1.mp3 -i d2.mp3 -filter_complex '[0:0] [1:0] concat=n=2:v=0:a=1 [a]' -map [a] j5.mp3

#三个音频拼接

eric@ray:~/Music$ffmpeg -i 片头.wav -i 内容.WAV -i 片尾.wav -filter_complex '[0:0] [1:0] [2:0] concat=n=3:v=0:a=1 [a]' -map [a] 合成.wav

参考资料

FFmpeg and AAC Encoding Guide https://trac.ffmpeg.org/wiki/Encode/AAC

以上这篇linux命令实现音频格式转换和拼接的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

标签:黄山 湖北 湘潭 山南 怀化 贺州 通辽 烟台

巨人网络通讯声明:本文标题《linux命令实现音频格式转换和拼接的方法》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266