我一直在努力为启用了librtmp的
Android编译FFMPEG.我已经在这里使用
Guardian Project成功构建了FFMPEG,但它没有librtmp支持.我在这个问题上找到的唯一答案就是之前的Stack Overflow问题(
HERE),但它不想为我工作.
目前,我在官方rtmpdump android构建中的交叉编译的librtmp.so.0文件位于android-ffmpeg文件夹中的rtmpdump / librtmp文件夹中.我的configure_ffmpeg.sh文件的摘录如下:
./configure \
$DEBUG_FLAG \
--arch=arm \
--cpu=cortex-a8 \
--target-os=linux \
--enable-runtime-cpudetect \
--prefix=$prefix \
--enable-pic \
--disable-shared \
--enable-static \
--cross-prefix=$NDK_TOOLCHAIN_BASE/bin/$NDK_ABI-linux-androideabi- \
--sysroot="$NDK_SYSROOT" \
--extra-cflags="-I../x264 -mfloat-abi=softfp -mfpu=neon" \
--extra-ldflags="-L../x264" \
--extra-cflags="-I/home/dan/android-ffmpeg/rtmpdump" \
--extra-ldflags="-L/home/dan/android-ffmpeg/rtmpdump -lrtmp"
\
--enable-version3 \
--enable-gpl \
\
--disable-doc \
--enable-yasm \
\
--enable-decoders \
--enable-encoders \
--enable-muxers \
--enable-demuxers \
--enable-parsers \
--enable-protocols \
--enable-filters \
--enable-avresample \
--enable-libfreetype \
\
--disable-indevs \
--enable-indev=lavfi \
--disable-outdevs \
\
--enable-hwaccels \
\
--enable-ffmpeg \
--disable-ffplay \
--disable-ffprobe \
--enable-ffserver \
--enable-network \
\
--enable-libx264 \
--enable-zlib \
--enable-librtmp \
当我尝试编译它时,它最终显示错误,我的FFMPEG config.log文件告诉我它找不到-lrtmp.我很肯定我将它指向正确的目录……有没有人有任何想法?
问候
担
最佳答案 担,
这有点旧,可能没什么帮助,因为它不是一个完整的答案,但我几个月来一直在努力.我的努力记录在ffmpeg论坛之一(这里:http://ffmpeg.zeranoe.com/forum/viewtopic.php?f=29&t=1383),我也没有任何成功.
最后,在构建librtmp并告诉构建脚本在哪里找到它(并在ffmpeg conf文件中禁用librtmp的pkg-config)之后,我总是有一个错误列表,如
libavformat/librtmp.o: in function rtmp_read:libavformat/librtmp.c:153: error: undefined reference to 'RTMP_Read'
>所有列出它声称未定义的不同RTMP功能.但是头文件与其余所需文件一起出现.
我只是想把它放在这里帮助你或其他人继续尝试使用librtmp为Android构建ffmpeg.
布拉德福德