c - FFMPEG 库 MP3 编码器

标签 c ffmpeg mp3 encoder

ffmpeg 库是否带有 MP3 编码器?

这个:

AVCodec *pCodec = avcodec_find_encoder(AV_CODEC_ID_MP3);

始终返回 null。我还尝试了 AV_CODEC_ID_MP3ADU 和 AV_CODEC_ID_MP3ON4,它们也返回 null。我发现的唯一编码编解码器是 AV_CODEC_ID_MP2。

感谢任何帮助

最佳答案

libmp3lame 是 ffmpeg 的 mp3 编码器。它需要在构建的配置阶段启用。 --enable-libmp3lame 应该启用它。您还应该安装libmp3lame-dev。我按照本指南安装 ffmpeg:https://ffmpeg.org/trac/ffmpeg/wiki/UbuntuCompilationGuide

要快速检查您是否已经拥有它:

$ ffmpeg -codecs | grep mp3
ffmpeg version 0.11.1 Copyright (c) 2000-2012 the FFmpeg developers
  built on Jan 25 2013 15:16:27 with llvm_gcc 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/0.11.1 --enable-shared --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --cc=/usr/bin/llvm-gcc --host-cflags='-Os -w -pipe -march=core2 -msse4 -mmacosx-version-min=10.7' --host-ldflags=-L/usr/local/lib --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libxvid
  libavutil      51. 54.100 / 51. 54.100
  libavcodec     54. 23.100 / 54. 23.100
  libavformat    54.  6.100 / 54.  6.100
  libavdevice    54.  0.100 / 54.  0.100
  libavfilter     2. 77.100 /  2. 77.100
  libswscale      2.  1.100 /  2.  1.100
  libswresample   0. 15.100 /  0. 15.100
  libpostproc    52.  0.100 / 52.  0.100
  EA    libmp3lame      libmp3lame MP3 (MPEG audio layer 3)
 D A D  mp3             MP3 (MPEG audio layer 3)
 D A D  mp3adu          ADU (Application Data Unit) MP3 (MPEG audio layer 3)
 D A D  mp3adufloat     ADU (Application Data Unit) MP3 (MPEG audio layer 3)
 D A D  mp3float        MP3 (MPEG audio layer 3)
 D A D  mp3on4          MP3onMP4
 D A D  mp3on4float     MP3onMP4

您可以看到 E(编码器)可用于 libmp3lame。

关于c - FFMPEG 库 MP3 编码器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15375733/

相关文章:

perl - 无法重新组合 MP3 数据的分块下载

c - 初始化结构数组的全局数组

c - 尝试用 C 打印一系列斐波那契数列

php - ffmpeg 在 php 或 python 中获取元数据

FFMPEG - x265 (libx265) 的一些推荐参数是什么?

android - 在不播放的情况下在 Android 上解码编码音频数据(MP3 等)

c - 如何检查用户输入的数据类型是否正确

c - 一小时后 PING 超时

ruby - Transloadit:如何替换给定视频的音轨?

Python 将 wav 转换为 mp3