Android ffmpeg缺失混合滤波器
我正在使用ffmpeg库进行android项目。我按照以下说明:为android构建ffmpeg库。一切都好 现在,我正在测试与该库的视频过滤器相对应的过滤器,例如:drawtext、scale、pad。。。大多数都很好,但我对“混合”过滤器有问题 我尝试使用以下命令:ffmpeg-I input1.mp4-I input2.mp4-filter\u complex blend=all\u expr='if(eq(mod(X,2),mod(Y,2)),A,B)'-Y out.mp4并收到错误:没有这样的混合过滤器 您知道如何配置以启用此筛选器吗 以下是输出结果:Android ffmpeg缺失混合滤波器,android,filter,ffmpeg,Android,Filter,Ffmpeg,我正在使用ffmpeg库进行android项目。我按照以下说明:为android构建ffmpeg库。一切都好 现在,我正在测试与该库的视频过滤器相对应的过滤器,例如:drawtext、scale、pad。。。大多数都很好,但我对“混合”过滤器有问题 我尝试使用以下命令:ffmpeg-I input1.mp4-I input2.mp4-filter\u complex blend=all\u expr='if(eq(mod(X,2),mod(Y,2)),A,B)'-Y out.mp4并收到错误:没
ffmpeg version 0.11.1 Copyright (c) 2000-2012 the FFmpeg developers
built on Feb 27 2014 05:23:20 with gcc 4.6 20120106 (prerelease)
configuration: --arch=arm --cpu=cortex-a8 --target-os=linux --enable-runtime-cpudetect --prefix=/data/data/info.guardianproject.ffmpeg/app_opt --enable-pic --disable-shared --enable-static --cross-prefix=/home/admin/workspace/android-ndk-r9c/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/arm-linux-androideabi- --sysroot=/home/admin/workspace/android-ndk-r9c/platforms/android-3/arch-arm --extra-cflags='-I../x264 -mfloat-abi=softfp -mfpu=neon' --extra-ldflags=-L../x264 --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 --disable-ffserver --disable-network --enable-libx264 --enable-zlib --enable-muxer=md5
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
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/storage/emulated/0/videokit/in.mp4':
Metadata:
major_brand : isom
minor_version : 0
compatible_brands: isom3gp4
creation_time : 2014-03-04 08:53:01
Duration: 00:00:15.10, start: 0.000000, bitrate: 7055 kb/s
Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720, 6935 kb/s, SAR 65536:65536 DAR 16:9, 17.18 fps, 34.42 tbr, 90k tbn, 180k tbc
Metadata:
creation_time : 2014-03-04 08:53:01
handler_name : VideoHandle
Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 16000 Hz, stereo, s16, 128 kb/s
Metadata:
creation_time : 2014-03-04 08:53:01
handler_name : SoundHandle
Input #1, mov,mp4,m4a,3gp,3g2,mj2, from '/storage/emulated/0/videokit/7.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2mp41
creation_time : 1970-01-01 00:00:00
encoder : Lavf53.12.0
comment : Courtesy of National Geographic. Used by Permission.
Duration: 00:00:04.20, start: 0.000000, bitrate: 1601 kb/s
Stream #1:0(und): Video: mpeg4 (Simple Profile) (mp4v / 0x7634706D), yuv420p, 320x240 [SAR 1:1 DAR 4:3], 1472 kb/s, 10 fps, 10 tbr, 10 tbn, 10 tbc
Metadata:
creation_time : 1970-01-01 00:00:00
handler_name : VideoHandler
Stream #1:1(und): Audio: aac (mp4a / 0x6134706D), 48000 Hz, stereo, s16, 128 kb/s
Metadata:
creation_time : 1970-01-01 00:00:00
handler_name : SoundHandler
No such filter: 'blend'
Error configuring filters.
谢谢你,你只需要在blend=all_expr='if(eq(mod(X,2),mod(Y,2)),A,B)'之间加上双引号,最后的命令必须是这样的:ffmpeg-i input1.mp4-i input2.mp4-filter_complex“blend=all_expr='if(eq(mod(X,2),mod(Y,2)),A,B)'-Y out.mp4你需要注意ffmpeg语法。您可以查看链接了解更多信息。我更新了控制台输出。请看一看,谢谢
ffmpeg版本0.11.1
这是古老的。使用较新的版本。建议用户使用git master提供的ffmpeg
。谢谢。我会更新并再次检查。谢谢你的建议。我成功构建了这个问题的解决方案似乎是更新到一个更新的版本,如果是这样的话,这个答案可能是错误的。