laravel-ffmpeg icon indicating copy to clipboard operation
laravel-ffmpeg copied to clipboard

How to use ffmpeg for removing watermark in existing video?

Open royallife88 opened this issue 3 years ago • 3 comments

How to use FFmpeg for removing watermarks in the existing video? Is this possible with this library? Any help.

royallife88 avatar Aug 03 '22 01:08 royallife88

Try the delogo filter with a custom filter:

https://ffmpeg.org/ffmpeg-filters.html#toc-delogo

pascalbaljet avatar Aug 03 '22 05:08 pascalbaljet

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.

royallife88 avatar Aug 08 '22 04:08 royallife88

add your filter like this. tested and works fine. ->addfilter('-vf', 'delogo=x=375:y=749:w=85:h=85')

ibrainventures avatar Aug 09 '22 16:08 ibrainventures