改变 mp3 节奏时未找到 MFT

改变 mp3 节奏时未找到 MFT


你好!
我想用 ffmpeg 均衡、改变节奏并分割 mp3 文件。我已成功分割它(在发现在 Windows 中我必须转义文件格式中的 de % 后),但我陷入了节奏问题。我尝试了以下命令:

ffmpeg -i out02.mp3 -af  "atempo=0.90" output.mp3

但我收到了错误:

ffmpeg version 4.3 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 9.3.1 (GCC) 20200621
  configuration: --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gn
utls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enabl
e-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencor
e-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnap
py --enable-libsoxr --enable-libsrt --enable-libtheora --enable-libtwolame --ena
ble-libvpx --enable-libwavpack --enable-libwebp --enable-libxml2 --enable-libzim
g --enable-lzma --enable-zlib --enable-gmp --enable-libvmaf --enable-libvorbis -
-enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libaom --en
able-libgsm --disable-w32threads --enable-libmfx --enable-ffnvcodec --enable-cud
a-llvm --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dx
va2 --enable-libopenmpt --enable-amf
  libavutil      56. 51.100 / 56. 51.100
  libavcodec     58. 91.100 / 58. 91.100
  libavformat    58. 45.100 / 58. 45.100
  libavdevice    58. 10.100 / 58. 10.100
  libavfilter     7. 85.100 /  7. 85.100
  libswscale      5.  7.100 /  5.  7.100
  libswresample   3.  7.100 /  3.  7.100
Input #0, mp3, from 'out02.mp3':
  Metadata:
    album           : Cuentos y Relatos
    artist          : JMT
    genre           : Podcast
    title           : La Noche de Margaret Rose
    track           : 296
    date            : 2020
    encoder         : Lavf58.45.100
  Duration: 00:05:00.02, start: 0.011995, bitrate: 64 kb/s
    Stream #0:0: Audio: mp3, 44100 Hz, stereo, fltp, 64 kb/s
    Metadata:
      encoder         : Lavc57.75
File 'output.mp3' already exists. Overwrite? [y/N] y
Stream mapping:
  Stream #0:0 -> #0:0 (mp3 (mp3float) -> mp3 (mp3_mf))
Press [q] to stop, [?] for help
[mp3_mf @ 00828d40] could not find any MFT for the given media type
[mp3_mf @ 00828d40] could not create MFT
Error initializing output stream 0:0 -- Error while opening encoder for output s
tream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
Conversion failed!

我不是声音专家。为什么我会遇到这个问题?你能给我一些建议来解决这个问题吗?
谢谢。

答案1

ffmpeg优先考虑的是 MediaFoundation MP3 编码器 (mp3_mf),而不是更常见的编码器 libmp3lame。不知道为什么——我个人会优先考虑 libmp3lame,这样如果可用于 MP3 编码,它就会成为默认编码器。

mp3_mf 可能比 libmp3lame 更受限制,但我没有调查您的具体错误。

告诉它改用 libmp3lame:

ffmpeg -i out02.mp3 -af "atempo=0.90" -c:a libmp3lame output.mp3

这个问题可能已经在 git master 分支或 4.3.1 中修复了,所以你也可以尝试下载新版本。但我不使用Windows,所以没有检查。

相关内容