linux下重新编译ffmpeg来支持封装h264到mp4文件

This commit is contained in:
Unknown 2019-01-27 18:05:55 +08:00
parent 9506957da4
commit 3b6041d893
7 changed files with 8 additions and 2 deletions

View file

@ -72,7 +72,9 @@ bool Recorder::open(AVCodec *inputCodec)
int ret = avio_open(&m_formatCtx->pb, m_fileName.toUtf8().toStdString().c_str(),
AVIO_FLAG_WRITE);
if (ret < 0) {
qCritical(QString("Failed to open output file: %1").arg(m_fileName).toUtf8().toStdString().c_str());
char errorbuf[255] = { 0 };
av_strerror(ret, errorbuf, 254);
qCritical(QString("Failed to open output file: %1 %2").arg(errorbuf).arg(m_fileName).toUtf8().toStdString().c_str());
// ostream will be cleaned up during context cleaning
avformat_free_context(m_formatCtx);
m_formatCtx = Q_NULLPTR;
@ -121,7 +123,7 @@ const AVOutputFormat *Recorder::findMp4Muxer()
#if LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(58, 9, 100)
outFormat = av_muxer_iterate(&opaque);
#else
outFormat = av_oformat_next(oformat);
outFormat = av_oformat_next(outFormat);
#endif
// until null or with name "mp4"
} while (outFormat && strcmp(outFormat->name, "mp4"));

4
backup/myconfig.sh Executable file
View file

@ -0,0 +1,4 @@
./configure --disable-everything --disable-x86asm --prefix=../ffmpeg_build \
--enable-shared --enable-static \
--enable-decoder=h264 --enable-parser=h264 --enable-demuxer=h264 \
--enable-muxer=mp4 --enable-protocol=file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.