输出流#0:1的编码器(编解码器无)未找到。

4

你好,我在Redhat5上构建了ffmpeg可执行文件。我想使用命令multiple来混合两个音频: "ffmpeg -i INPUT1 -i INPUT2 -i INPUT3 -filter_complex amix=inputs=3:duration=first:dropout_transition=3 OUTPUT.mp3"。

我成功启用了libflamemp3库,没有出现任何错误。

[root@localhost ~]# ffmpeg -i /root/media/Katlalli.mp3 -i /root/media/Katlalli.mp3 -filter_complex amix=inputs=2:duration=first:dropout_transition=2 /root/media/OUTPutnew123.mp3
ffmpeg version 2.1 Copyright (c) 2000-2013 the FFmpeg developers
  built on Nov 14 2013 03:17:10 with gcc 4.1.2 (GCC) 20080704 (Red Hat 4.1.2-46)
  configuration: --enable-libmp3lame
  libavutil      52. 48.100 / 52. 48.100
  libavcodec     55. 39.100 / 55. 39.100
  libavformat    55. 19.104 / 55. 19.104
  libavdevice    55.  5.100 / 55.  5.100
  libavfilter     3. 90.100 /  3. 90.100
  libswscale      2.  5.101 /  2.  5.101
  libswresample   0. 17.104 /  0. 17.104
[mp3 @ 0x193ef240] Estimating duration from bitrate, this may be inaccurate
Input #0, mp3, from '/root/media/Katlalli.mp3':
  Metadata:
    artist          : Yograj Bhat
    title           : Katlalli Karadige
    track           : 3
    album           : Paramathma
    album_artist    : Puneet Rajkumar
    genre           : Kannada
    composer        : V.Harikrishna
    date            : 2011
  Duration: 00:04:41.46, start: 0.000000, bitrate: 191 kb/s
    Stream #0:0: Audio: mp3, 44100 Hz, stereo, s16p, 192 kb/s
    Stream #0:1: Video: mjpeg, yuvj420p(pc), 200x200 [SAR 96:96 DAR 1:1], 90k tbr, 90k tbn, 90k tbc
    Metadata:
      title           : thumbnail
      comment         : Cover (front)
[mp3 @ 0x194090a0] Estimating duration from bitrate, this may be inaccurate
Input #1, mp3, from '/root/media/Katlalli.mp3':
  Metadata:
    artist          : Yograj Bhat
    title           : Katlalli Karadige
    track           : 3
    album           : Paramathma
    album_artist    : Puneet Rajkumar
    genre           : Kannada
    composer        : V.Harikrishna
    date            : 2011
  Duration: 00:04:41.46, start: 0.000000, bitrate: 191 kb/s
    Stream #1:0: Audio: mp3, 44100 Hz, stereo, s16p, 192 kb/s
    Stream #1:1: Video: mjpeg, yuvj420p(pc), 200x200 [SAR 96:96 DAR 1:1], 90k tbr, 90k tbn, 90k tbc
    Metadata:
      title           : thumbnail
      comment         : Cover (front)
File '/root/media/OUTPutnew123.mp3' already exists. Overwrite ? [y/N] y
Output #0, mp3, to '/root/media/OUTPutnew123.mp3':
  Metadata:
    artist          : Yograj Bhat
    title           : Katlalli Karadige
    track           : 3
    album           : Paramathma
    album_artist    : Puneet Rajkumar
    genre           : Kannada
    composer        : V.Harikrishna
    date            : 2011
    Stream #0:0: Audio: mp3, 44100 Hz, stereo, fltp (default)
    Stream #0:1: Video: none, q=2-31, 128 kb/s, 90k tbn
    Metadata:
      title           : thumbnail
      comment         : Cover (front)
Stream mapping:
  Stream #0:0 (mp3) -> amix:input0
  Stream #1:0 (mp3) -> amix:input1
  amix -> Stream #0:0 (libmp3lame)
  Stream #0:1 -> #0:1 (mjpeg -> ?)
Encoder (codec none) not found for output stream #0:1

但是当我尝试合并两个mp3音频时,"ffmpeg -i INPUT1 -i INPUT2 -i INPUT3 -filter_complex amix=inputs=3:duration=first:dropout_transition=3 OUTPUT.mp3"。我遇到了以下错误:
"输出流#0:1的编码器(编解码器无)未找到"
请帮助我如何在Redhat5上链接或安装"libmp3flame"。

请提供完整的ffmpeg控制台输出;否则我们只能猜测。 - llogan
嗨,LordNeckbeard,感谢您的快速回复。我编辑了我的问题,请仔细阅读并给我一些建议。 - Gururak
1个回答

2

zlib

我认为ffmpeg正在尝试解码PNG输入视频流(专辑封面),并将输出视频流编码为PNG输出,但我假设您构建的ffmpeg没有zlib支持,这是PNG编码和解码所需的。

如果可用,zlib会自动检测,因此您需要在编译ffmpeg之前安装zlib头文件(Red Hat 'n friends的zlib-devel软件包)。

省略视频

或者,您可以保留您的构建,并使用-vn输出选项告诉ffmpeg忽略任何视频。

使用mjpeg

如果您想保留您的构建并保留专辑封面,则添加-codec:v mjpeg作为输出选项。请参见stream selection以查看ffmpeg将选择哪个输入。

使用-codec:v copy

您还可以使用-codec:v copy对视频进行流复制。这可能比使用-codec:v mjpeg重新编码更可取。请参见流选择以查看ffmpeg将选择哪个输入。如果添加-map 0 -map 1,则两个视频流都将被包含。

另请参阅


我不会发送任何视频输入。我只想混合两个音频。 - Gururak
我没有发送任何视频输入。我正在发送两个mp3音频进行混合。使用相同的ffmpeg可执行文件,我能够修剪视频和音频,但我无法混合音频。许多人建议启用“libmp3lame”,我也启用了“libmp3lame”,但没有结果。是否有任何链接可以获取ffmpeg可执行文件,以便我可以直接在我的Android项目中使用该可执行文件来混合两个音频。 - Gururak
是的,LordNeckBeard,在使用“-vn”后非常好用。我可以将同一个可执行文件用于我的Android项目来添加两个音频文件吗? - Gururak
我在这个问题上非常需要你的帮助。我想在Android中使用ffmpeg可执行文件混合而不是连接两个mp3音频文件。我正在使用与之前相同的命令,如“ffmpeg -i INPUT1 -i INPUT2 -i INPUT3 -filter_complex amix=inputs=3:duration=first:dropout_transition=3 OUTPUT.mp3”,但它不起作用。但它适用于其他任务,如修剪视频和音频,但不适用于混合音频,请帮帮我。我已经尝试了一个星期,但没有任何结果。请建议一些命令或如何为带有libmp3lame的Android创建ffmpeg可执行文件。 - Gururak
@Gururak 为什么人们将问题描述为“不起作用”,而不是显示实际的错误消息? - llogan
显示剩余5条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接