laravel-ffmpeg
laravel-ffmpeg copied to clipboard
How to use ffmpeg for removing watermark in existing video?
How to use FFmpeg for removing watermarks in the existing video? Is this possible with this library? Any help.
Try the delogo filter with a custom filter:
https://ffmpeg.org/ffmpeg-filters.html#toc-delogo
Hi, I tried by below code but failed.
FFMpeg::open('public/tiktok/7118695488282447131.mp4')
->export()
->inFormat(new \FFMpeg\Format\Video\X264)
->addFilter(['delogo=x=475:y=965:w=100:h=77'])
->toDisk('public')
->save('7118695488282447131_delogo.mp4');
Exception
ProtoneMedia\LaravelFFMpeg\Exporters\EncodingException
ffmpeg failed to execute command C:\ffmpeg\ffmpeg.EXE -y -i "C:/wamp64/www/tiktok/storage/app/public/tiktok/7118695488282447131.mp4" delogo=x=475:y=965:w=100:h=77 -threads 12 -vcodec libx264 -acodec aac -b:v 1000k -refs 6 -coder 1 -sc_threshold 40 -flags +loop -me_range 16 -subq 7 -i_qfactor 0.71 -qcomp 0.6 -qdiff 4 -trellis 1 -b:a 128k -vf "[in]scale=640:480 [out]" -pass 1 -passlogfile "public/titktok\ffmpeg-passes62f0948d98454\pass-62f0948d9866b" "C:/wamp64/www/tiktok/storage/app/public/7118695488282447131_delogo.mp4": Error Output: Error in GnuTLS initialization: Failed to acquire random data. ffmpeg version 4.2.1 Copyright (c) 2000-2019 the FFmpeg developers built with gcc 9.1.1 (GCC) 20190807 configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --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 --enable-libopenmpt libavutil 56. 31.100 / 56. 31.100 libavcodec 58. 54.100 / 58. 54.100 libavformat 58. 29.100 / 58. 29.100 libavdevice 58. 8.100 / 58. 8.100 libavfilter 7. 57.100 / 7. 57.100 libswscale 5. 5.100 / 5. 5.100 libswresample 3. 5.100 / 3. 5.100 libpostproc 55. 5.100 / 55. 5.100 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'C:/wamp64/www/tiktok/storage/app/public/tiktok/7118695488282447131.mp4': Metadata: major_brand : isom minor_version : 512 compatible_brands: isomiso2avc1mp41 encoder : Lavf58.45.100 Duration: 00:00:20.18, start: 0.000000, bitrate: 1899 kb/s Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 576x1024 [SAR 1:1 DAR 9:16], 1871 kb/s, 60 fps, 60 tbr, 15360 tbn, 120 tbc (default) Metadata: handler_name : VideoHandler Stream #0:1(und): Audio: aac (HE-AACv2) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 32 kb/s (default) Metadata: handler_name : SoundHandler [NULL @ 000001a71170ef80] Unable to find a suitable output format for 'delogo=x=475:y=965:w=100:h=77' delogo=x=475:y=965:w=100:h=77: Invalid argument
How I can resolve it? Thanks.
add your filter like this. tested and works fine.
->addfilter('-vf', 'delogo=x=375:y=749:w=85:h=85')