FFmpeg : 수평 비디오 회전 및 패딩 실행되지 않거나 “No such filter”라는

전화로 찍은 세로 비디오 (9:16 비율)가 있는데 측면에 검은 색 패딩이 있거나 이상적으로 흐리게 패딩이있는 Lanscape One (16 : 9)으로 변환하고 싶습니다. 중대한).

SE에 대한 많은 질문과 다른 웹 사이트의 자습서가 있지만이 작업을 수행 할 수 없었습니다. 이들은 전혀 실행되지 않거나 “No such filter”라는 오류를 표시 한 다음 명령 입력을 나열합니다 (예 :

ffmpeg -i MC_orig.mp4 -filter_complex '[0:v]scale=ih*16/9:-1,boxblur=luma_radius=min(h\,w)/20:luma_power=1:chroma_radius=min(cw\,ch)/20:chroma_power=1[bg];[bg][0:v]overlay=(W-w)/2:(H-h)/2,crop=h=iw*9/16' outputfile.mp4

오류를 준다

[AVFilterGraph @ 000001bc89ea28c0] No such filter: '[0:v]scale=ih*16/9:-1,boxblur=luma_radius=min(h\,w)/20:luma_power=1:chroma_radius=min(cw\,ch)/20:chroma_power=1[bg];[bg][0:v]overlay=(W-w)/2:(H-h)/2,crop=h=iw*9/16'
Error initializing complex filters.
Invalid argument

내가 찾은 모든 자습서 / SE 질문은 위의 것과 유사한 입력을 제안하며 기본적으로 동일한 오류가 발생합니다.

내가 사용하는 FFmpeg 버전의 세부 정보를 포함한 전체 콘솔 출력 (Windows 10, 명령 프롬프트 또는 Cmder 사용)은 다음과 같습니다.

D:\Users\Sam\Videos\FFMPEG\bin>ffmpeg -i MC_orig.mp4 -filter_complex '[0:v]scale=ih*16/9:-1,boxblur=luma_radius=min(h\,w)/20:luma_power=1:chroma_radius=min(cw\,ch)/20:chroma_power=1[bg];[bg][0:v]overlay=(W-w)/2:(H-h)/2,crop=h=iw*9/16' outputfile.mp4
ffmpeg version N-91930-g0caa33c60b Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 8.2.1 (GCC) 20180813
configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth
libavutil 56. 19.101 / 56. 19.101
libavcodec 58. 30.100 / 58. 30.100
libavformat 58. 18.100 / 58. 18.100
libavdevice 58. 4.103 / 58. 4.103
libavfilter 7. 29.100 / 7. 29.100
libswscale 5. 2.100 / 5. 2.100
libswresample 3. 2.100 / 3. 2.100
libpostproc 55. 2.100 / 55. 2.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'MC_orig.mp4':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: isommp42
creation_time : 2018-09-09T18:07:24.000000Z
com.android.version: 7.0
Duration: 00:07:12.03, start: 0.000000, bitrate: 12081 kb/s
Stream #0:0(eng): Video: mpeg4 (Simple Profile) (mp4v / 0x7634706D), yuv420p(tv, bt709), 1280x720 [SAR 1:1 DAR 16:9], 11950 kb/s, 24.94 fps, 24.92 tbr, 90k tbn, 300 tbc (default)
Metadata:
rotate : 90
creation_time : 2018-09-09T18:07:24.000000Z
handler_name : VideoHandle
Side data:
displaymatrix: rotation of -90.00 degrees
Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 127 kb/s (default)
Metadata:
creation_time : 2018-09-09T18:07:24.000000Z
handler_name : SoundHandle
[AVFilterGraph @ 000001bc89ea28c0] No such filter: '[0:v]scale=ih*16/9:-1,boxblur=luma_radius=min(h\,w)/20:luma_power=1:chroma_radius=min(cw\,ch)/20:chroma_power=1[bg];[bg][0:v]overlay=(W-w)/2:(H-h)/2,crop=h=iw*9/16'
Error initializing complex filters.
Invalid argument



답변

Windows에서는 인수를 큰 따옴표로 묶어야하므로

-filter_complex "[0:v]scale=ih*16/9:-1...crop=h=iw*9/16"

내부의 인수는 다음과 같이 작은 따옴표로 묶을 수 있습니다.

-vf "drawtext=text='Hello World':fontcolor=white"


답변