【发布时间】:2018-08-30 03:58:46
【问题描述】:
我一直在 Windows 上使用 FFMPEG:
- 将 iTunes M4A 文件转换为 MP3(比特率为 128k);和
- 创建上述 MP3 的 30 秒示例 MP3(相同比特率)。
当我在 Windows 7 64 位机器上运行 FFMEG 时,MP3 的大小(包括 1. 和 2.)与以下粗略计算一致:
(Audio length in seconds) X (Bit rate)
例如,一个 4 分钟的音频会产生大约 4 分钟的音频。 3.7MB MP3 文件;一个 30 秒的示例 MP3 大约是。 470KB。
但是,当我在 Windows 10 64 位机器上运行相同的 FFMPEG 二进制文件(从 Windows 7 机器复制)时,所有 MP3(1. 和 2.)都膨胀了大约 5MB。我在两台机器上使用相同的批处理文件来执行带有所需参数的 FFMEG,所以我非常确信差异不在于用户错误。
我的问题是:
- 为什么在 Windows 10 上会有明显的 5MB 开销?更重要的是;
- 我该怎么做才能删除它?
文件过大是个问题,因为示例 MP3 将被放在网站上供人们收听歌曲的 sn-p,而具有多个标签的网页需要很长时间才能完全加载(几分钟)。
这是版本和库信息:
ffmpeg version 3.4.1 Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 7.2.0 (GCC)
configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-bzlib --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-cuda --enable-cuvid --enable-d3d11va --enable-nvenc --enable-dxva2 --enable-avisynth --enable-libmfx
libavutil 55. 78.100 / 55. 78.100
libavcodec 57.107.100 / 57.107.100
libavformat 57. 83.100 / 57. 83.100
libavdevice 57. 10.100 / 57. 10.100
libavfilter 6.107.100 / 6.107.100
libswscale 4. 8.100 / 4. 8.100
libswresample 2. 9.100 / 2. 9.100
libpostproc 54. 7.100 / 54. 7.100
这是我正在使用的命令行:
- ffmpeg -i input.m4a -id3v2_version 3 -b:a 128k -output.mp3
- ffmpeg -i input.m4a -ss 30 -t 30 -af "afade=in:st=30:d=5,afade=out:st=55:d=5" -id3v2_version 3 -b:a 128k -output.mp3
【问题讨论】:
-
共享两台机器的日志,用于同一文件的转换。
-
@Mulvya 良好的通话 - 将 -loglevel 设置为错误,这掩盖了 MP3 中包含 video(即专辑封面的 PNG)这一事实。不知道这是可能的。仍在调查 - 更多。