昨天要上传一首歌到点电网,结果搞不定转换,因为点电网只支持mp3 格式的上传,而我平时听的都是m4a 的。
来解释下我为什么不需要在Ubuntu 下将无损格式转换为其他。我听歌都是这么听,首先,我听到一首歌很好听,搜索到演唱者、专辑名称,搜索这张专辑的无损下载。如果有无损,下载无损;没有无损,找320kbps 的mp3 ;没有的话找192kbps 的mp3; 要是连这种音质都无法满足,那这歌太偏了,或者是刚刚出来还没有人抓轨,要么去买CD 要么等一段时间。如果下载的不是无损,直接放手机里;如果是无损,虚拟机win 系统用Foobar2000 打开,用NeroAAC 编码器转换到双通道512kbps aac 文件(m4a 扩展名),放到手机里。
我为什么要开虚拟机,原因也在这里,在Ubuntu 下我不知道怎么使用NeroAAC Encoder ==。 抱歉我找不到任何使用的提示。而使用faac 码率最高只有320kbps 。虽然据说faac 的算法能更好地还原低音,但我也没听出来区别,倒是码率低的硬伤无法弥补。
我尝试了一个小时,搜索到的方法没有一个能解决我的问题。要么就是mencoder ,要么就是ffmpeg 。我遇到了下面的情况。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
ffmpeg -i 魔法の人.m4a -acodec mp3 魔法の人.mp3
# 输出结果
# ffmpeg version 0.8.3-4:0.8.3-0ubuntu0.12.04.1, Copyright (c) 2000-2012 the Libav developers
built on Jun 12 2012 16:52:09 with gcc 4.6.3
# *** THIS PROGRAM IS DEPRECATED ***
# This program is only provided for compatibility and will be removed in a future release. Please use avconv instead.
# Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '魔法の人.m4a':
# Metadata:
# major_brand : mp42
# minor_version : 0
# compatible_brands: M4A mp42isom
# creation_time : 2012-08-30 05:27:37
# track : 2/12
# genre : JPop
# album : やさしい花の咲く場所
# artist : 奥華子
# comment : YEAR: 2006
# title : 魔法の人
# encoder : Nero AAC codec / 1.5.4.0
# date : 2006
# Duration: 00:04:39.12, start: 0.000000, bitrate: 477 kb/s
# Chapter #0.0: start 0.059501, end 279.127075
# Metadata:
# title : 魔法の人
# Stream #0.0(und): Audio: aac, 44100 Hz, stereo, s16, 476 kb/s
# Metadata:
# creation_time : 2012-08-30 05:27:37
# Unknown encoder 'mp3'
|
不管怎么更换acodec 参数,结果都是一样的,ffmpeg 根本找不到对应的mp3 编码器。使用mencoder 就会出现下面这种情况。
1
2
3
4
5
6
7
8
9
10
|
mencoder -o 魔法の人.mp3 -ovc frameno -oac mp3lame -lameopts cbr:br=320 -of rawaudio 魔法の人.m4a
# MEncoder svn r34540 (Ubuntu), built with gcc-4.6 (C) 2000-2012 MPlayer Team
# success: format: 0 data: 0x0 - 0xfe563c
# libavformat version 53.21.0 (external)
# Mismatching header version 53.19.0
# libavformat file format detected.
# [lavf] stream 0: audio (aac), -aid 0, -alang und
# Video stream is mandatory!
#
# Exiting...
|
而实际上只要使用 mplayer
将源文件 dump 成 wav 格式,再使用 lame
编码成 mp3 就可以了,简单有效。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
mplayer 魔法の人.m4a -ao pcm
# MPlayer svn r34540 (Ubuntu), built with gcc-4.6 (C) 2000-2012 MPlayer Team
# mplayer: could not connect to socket
# mplayer: No such file or directory
# Failed to open LIRC support. You will not be able to use your remote control.
#
# Playing 魔法の人.m4a.
# libavformat version 53.21.0 (external)
# Mismatching header version 53.19.0
# libavformat file format detected.
# [lavf] stream 0: audio (aac), -aid 0, -alang und
# Clip info:
# major_brand: mp42
# minor_version: 0
# compatible_brands: M4A mp42isom
# creation_time: 2012-08-30 05:27:37
# track: 2/12
# genre: JPop
# album: やさしい花の咲く場所
# artist: 奥華子
# comment: YEAR: 2006
# title: 魔法の人
# encoder: Nero AAC codec / 1.5.4.0
# date: 2006
# Load subtitles in ./
# ==========================================================================
# Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
# libavcodec version 53.35.0 (external)
# Mismatching header version 53.32.2
# AUDIO: 44100 Hz, 2 ch, s16le, 476.2 kbit/33.74% (ratio: 59526->176400)
# Selected audio codec: [ffaac] afm: ffmpeg (FFmpeg AAC (MPEG-2/MPEG-4 Audio))
# ==========================================================================
# [AO PCM] File: audiodump.wav (WAVE)
# PCM: Samplerate: 44100Hz Channels: Stereo Format s16le
# [AO PCM] Info: Faster dumping is achieved with -benchmark -vc null -vo null -ao pcm:fast
# [AO PCM] Info: To write WAVE files use -ao pcm:waveheader (default).
# AO: [pcm] 44100Hz 2ch s16le (2 bytes per sample)
# Video: no video
# Starting playback...
# A: 279.1 (04:39.1) of 279.1 (04:39.1) 0.2%
#
#
# Exiting... (End of file)
#
lame audiodump.wav -o 魔法の人.mp3 -b 320
# LAME 3.99.3 64bits (http://lame.sf.net)
# Using polyphase lowpass filter, transition band: 20094 Hz - 20627 Hz
# Encoding audiodump.wav to 魔法の人.mp3
# Encoding as 44.1 kHz j-stereo MPEG-1 Layer III (4.4x) 320 kbps qval=3
# Frame | CPU time/estim | REAL time/estim | play/CPU | ETA
# 10687/10687 (100%)| 0:10/ 0:10| 0:10/ 0:10| 27.695x| 0:00
# --------------------------------------------------------------------------------------------------------------# ----------------------------------------
# kbps LR MS % long switch short %
# 320.0 47.3 52.7 97.2 1.6 1.3
# Writing LAME Tag...done
# ReplayGain: -7.7dB
|