问题描述
从视频文件中提取音轨并将其另存为 MP3 文件的最简单方法是什么?
最佳方法
avidemux 可以做到这一点。
它位于 Ubuntu 软件中心内,或者您可以从命令行安装它:
sudo apt-get install avidemux
次佳方法
非常简单的 CLI 解决方案:
ffmpeg -i VIDEOFILE -acodec libmp3lame -metadata TITLE="Name of Song" OUTPUTFILE.mp3
如果您没有安装 ffmpeg:
sudo apt-get install ffmpeg
第三种方法
您可以在 VLC 中执行此操作。
启动 VLC 后:
-
选择 “Media” –> “Convert/Save”
-
点击”Add…”并选择你想要的文件
-
单击“转换/保存”(底部)
-
提供“目标文件:”
-
选择 “Profile”(即“音频 – MP3”、“音频 – Vorbis (OGG)”等)
-
点击 “Start”
-
放松并享受您的鞋子
您可以从 Synaptic 或软件中心安装 VLC。
第四种方法
使用 avconv
(从命令行,不需要安装 ffmpeg,因为 avconv 是它到 ubuntu 的端口)
-
使用
avconv -i "input file name"
来发现文件(视频和音频映射)。在下面显示的示例中,我想要剥离的音频为 0:0 “index”。 (如果你仔细阅读了avconv -i ...
命令的输出,你会得到这个。 -
然后发出命令
avconv -i "input file name" -map 0:0 -c:a copy -metadata TITLE="title name" -metadata AUTHOR="author name" "output file name"
使用几种输出文件格式对其进行测试并查看。
第五种方法
最好的方法是使用只处理容器的工具。对于 MP4,我会推荐 gpac package 中的 MP4Box
工具。对于像 Matroska 这样的其他容器,有像 MKVToolNix 这样的项目和工具。
检索有关文件的信息(注意:您也可以使用 mediainfo
执行此操作):
$ MP4Box -info 29c3-5400-en-hacking_cisco_phones_h264.mp4
* Movie Info *
Timescale 1000 - Duration 00:54:30.144
Fragmented File no - 2 track(s)
File Brand isom - version 512
Created: UNKNOWN DATE
File has no MPEG4 IOD/OD
iTunes Info:
Name: Hacking Cisco Phones
Artist: Ang Cui, Michael Costello
Album: Chaos Communication Congress 2012 (29C3)
Comment: http://events.ccc.de/congress/2012/Fahrplan/events/5400.en.html
Genre: lecture
Encoder Software: Lavf54.29.104
Track # 1 Info - TrackID 1 - TimeScale 25 - Duration 00:54:30.080
Media Info: Language "Undetermined" - Type "vide:avc1" - 81752 samples
Visual Track layout: x=0 y=0 width=1024 height=576
MPEG-4 Config: Visual Stream - ObjectTypeIndication 0x21
AVC/H264 Video - Visual Size 720 x 576
AVC Info: 1 SPS - 1 PPS - Profile Main @ Level 3
NAL Unit length bits: 32
Pixel Aspect Ratio 64:45 - Indicated track size 1024 x 576
Self-synchronized
Track # 2 Info - TrackID 2 - TimeScale 48000 - Duration 00:54:30.143
Media Info: Language "English" - Type "soun:mp4a" - 153285 samples
MPEG-4 Config: Audio Stream - ObjectTypeIndication 0x40
MPEG-4 Audio MPEG-4 Audio AAC LC - 2 Channel(s) - SampleRate 48000
Synchronized on stream 1
Alternate Group ID 1
将单个轨道提取为原始格式:
$ MP4Box -raw 1 29c3-5400-en-hacking_cisco_phones_h264.mp4
Extracting MPEG-4 AVC-H264 stream to h264
$ MP4Box -raw 2 29c3-5400-en-hacking_cisco_phones_h264.mp4
Extracting MPEG-4 AAC
显示原始文件和结果:
$ ls -1 29c3-5400-en-hacking_cisco_phones_h264*
29c3-5400-en-hacking_cisco_phones_h264.mp4
29c3-5400-en-hacking_cisco_phones_h264_track1.h264
29c3-5400-en-hacking_cisco_phones_h264_track2.aac
第六种方法
您要从哪种视频格式转换?我使用 audacity 从 mp4 和 flv 视频中提取音频(还没有尝试过其他格式,但我认为它会工作得一样)。当您打开文件时,视频部分将被忽略,而您只能处理音频(如规范化或截断静音),然后将其导出为包括 mp3 在内的任何格式。
第七种方法
这可以通过 avidemux ( sudo apt-get install avidemux
安装它) 轻松完成。
使用 avidemux 打开视频文件,然后在组合框中为音频选择一个编解码器,然后转到 “Audio” 菜单,您将找到 “Save…” 选项。