2017-04-08 12 views
2

ffmpegのエラーを生成する条件式に問題があります。条件式がffmpegで動作しないのですか?

ffmpeg -i lyt1s.mp4 -i lyt1r.mp4 -filter_complex \ 
    'blend=all_expr=if(eq(mod(X,2),mod(Y,2)),A,B)' lytx.mp 

次の出力が生成されます:私は何かにall_expr引数を交換する場合

ffmpeg version 3.2.4 Copyright (c) 2000-2017 the FFmpeg developers 
built with llvm-gcc 4.2.1 (LLVM build 2336.11.00) 
configuration: --prefix=/Volumes/Ramdisk/sw --enable-gpl --enable-pthreads   --enable-version3 --enable-libspeex --enable-libvpx --disable-decoder=libvpx --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-avfilter --enable-libopencore_amrwb --enable-libopencore_amrnb --enable-filters --enable-libgsm --enable-libvidstab --enable-libx265 --disable-doc --arch=x86_64 --enable-runtime-cpudetect`` 
    libavutil  55. 34.101/55. 34.101 
    libavcodec  57. 64.101/57. 64.101 
    libavformat 57. 56.101/57. 56.101 
    libavdevice 57. 1.100/57. 1.100 
    libavfilter  6. 65.100/6. 65.100 
    libswscale  4. 2.100/4. 2.100 
    libswresample 2. 3.100/2. 3.100 
    libpostproc 54. 1.100/54. 1.100 
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'lyt1s.mp4': 
    Metadata: 
    major_brand  : isom 
    minor_version : 512 
    compatible_brands: isomiso2avc1mp41 
    encoder   : Lavf57.56.101 
    Duration: 00:00:40.04, start: 0.000000, bitrate: 4337 kb/s 
    Stream #0:0(und): Video: h264 (High) (avc1/0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 4202 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default) 
    Metadata: 
     handler_name : VideoHandler 
    Stream #0:1(und): Audio: aac (LC) (mp4a/0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default) 
    Metadata: 
     handler_name : SoundHandler 
Input #1, mov,mp4,m4a,3gp,3g2,mj2, from 'lyt1r.mp4': 
    Metadata: 
    major_brand  : isom 
    minor_version : 512 
    compatible_brands: isomiso2avc1mp41 
    encoder   : Lavf57.56.101 
    Duration: 00:00:40.04, start: 0.000000, bitrate: 2410 kb/s 
    Stream #1:0(und): Video: h264 (High) (avc1/0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 2275 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default) 
    Metadata: 
     handler_name : VideoHandler 
    Stream #1:1(und): Audio: aac (LC) (mp4a/0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default) 
    Metadata: 
    handler_name : SoundHandler 
[AVFilterGraph @ 0x7fc7f1d0a6a0] No such filter: '2)' 
Error initializing complex filters. 
Invalid argument 

条件が含まれていません。ここffmpeg documentation for the blend filterから取られている問題の例です。式(A * 0.5 + B * 0.5など)を使用すると、ブレンドフィルタはエラーなしで、想定されているとおりの処理を行います。

ここで何が起こっているのか教えていただけますか?

答えて

2

これは、フィルタ式内の特殊文字をエスケープする問題です。 filter_complexの周りの一重引用符で判断すると、あなたは* nixにいるようです。

はそれだった

'blend=all_expr=if(eq(mod(X\,2)\,mod(Y\,2))\,A\,B)' 
+0

をお試しください!ありがとう! –

関連する問題