[FFmpeg-user] FFmpeg is adding black borders to overlay PNG.

MikoĊ‚aj Henklewski m.henklewski at merixstudio.com
Wed Mar 24 02:37:52 EET 2021


Hi,

I have a few PNG files that I want to add to video, but on final video some
of them have black borders (they do not have it originally). Question is
why ffmpeg is adding it?
my ffmpeg command is:

ffmpeg -i 3d9678e2e58c4d08a24363468d0cfd3e.mp4 -i caption-1616544596077.png
-i caption-1616544596080.png -i caption-1616544597262.png -i
caption-1616544598027.png -filter_complex
"[1:v]format=rgba,colorchannelmixer=aa=1[1_alpha];
[1_alpha]setpts=1.0*PTS[1_alpha_speed];
[1_alpha_speed]rotate=6.178465552059927:c=none:ow=rotw(6.178465552059927):oh=roth(6.178465552059927)[1_alpha_speed_rot];
[1_alpha_speed_rot]scale=iw/2:ih/2[1_alpha_speed_rot_scale];
[0:v][1_alpha_speed_rot_scale]overlay=x=288:y=50:enable='between(t,0,3.2)':format=rgb[1_out];
[2:v]format=rgba,colorchannelmixer=aa=1[2_alpha];
[2_alpha]setpts=1.0*PTS[2_alpha_speed];
[2_alpha_speed]rotate=0.0:c=none:ow=rotw(0.0):oh=roth(0.0)[2_alpha_speed_rot];
[2_alpha_speed_rot]scale=iw/2:ih/2[2_alpha_speed_rot_scale];
[1_out][2_alpha_speed_rot_scale]overlay=x=589:y=71:enable='between(t,0,3.2)':format=rgb[2_out];
[3:v]format=rgba,colorchannelmixer=aa=1[3_alpha];
[3_alpha]setpts=1.0*PTS[3_alpha_speed];
[3_alpha_speed]rotate=6.178465552059927:c=none:ow=rotw(6.178465552059927):oh=roth(6.178465552059927)[3_alpha_speed_rot];
[3_alpha_speed_rot]scale=iw/2:ih/2[3_alpha_speed_rot_scale];
[2_out][3_alpha_speed_rot_scale]overlay=x=409:y=104:enable='between(t,0,3.2)':format=rgb[3_out];
[4:v]format=rgba,colorchannelmixer=aa=1[4_alpha];
[4_alpha]setpts=1.0*PTS[4_alpha_speed];
[4_alpha_speed]rotate=0.0:c=none:ow=rotw(0.0):oh=roth(0.0)[4_alpha_speed_rot];
[4_alpha_speed_rot]scale=iw/2:ih/2[4_alpha_speed_rot_scale];
[3_out][4_alpha_speed_rot_scale]overlay=x=593:y=337:enable='between(t,0,3.2)':format=rgb"
-preset ultrafast -crf 23 d4d85756d7b54735b95720f9280bf6e2.mp4

log from ffmpeg:

ffmpeg version 4.3.2 Copyright (c) 2000-2021 the FFmpeg developers
  built with Apple clang version 12.0.0 (clang-1200.0.32.29)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/4.3.2_1 --enable-shared
--enable-pthreads --enable-version3 --enable-avresample --cc=clang
--host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl
--enable-libaom --enable-libbluray --enable-libdav1d --enable-libmp3lame
--enable-libopus --enable-librav1e --enable-librubberband
--enable-libsnappy --enable-libsrt --enable-libtesseract --enable-libtheora
--enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp
--enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid
--enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r
--enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb
--enable-libopenjpeg --enable-librtmp --enable-libspeex --enable-libsoxr
--enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack
--enable-videotoolbox
  libavutil      56. 51.100 / 56. 51.100
  libavcodec     58. 91.100 / 58. 91.100
  libavformat    58. 45.100 / 58. 45.100
  libavdevice    58. 10.100 / 58. 10.100
  libavfilter     7. 85.100 /  7. 85.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  7.100 /  5.  7.100
  libswresample   3.  7.100 /  3.  7.100
  libpostproc    55.  7.100 / 55.  7.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
'3d9678e2e58c4d08a24363468d0cfd3e.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.77.100
  Duration: 00:00:03.72, start: 0.000000, bitrate: 2333 kb/s
    Stream #0:0(und): Video: h264 (Constrained Baseline) (avc1 /
0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 2331 kb/s, 25 fps, 25
tbr, 12800 tbn, 50 tbc (default)
    Metadata:
      handler_name    : VideoHandler
Input #1, png_pipe, from 'caption-1616544596077.png':
  Duration: N/A, bitrate: N/A
    Stream #1:0: Video: png, rgba(pc), 1382x884, 25 tbr, 25 tbn, 25 tbc
Input #2, png_pipe, from 'caption-1616544596080.png':
  Duration: N/A, bitrate: N/A
    Stream #2:0: Video: png, rgba(pc), 612x612, 25 tbr, 25 tbn, 25 tbc
Input #3, png_pipe, from 'caption-1616544597262.png':
  Duration: N/A, bitrate: N/A
    Stream #3:0: Video: png, rgba(pc), 720x266, 25 tbr, 25 tbn, 25 tbc
Input #4, png_pipe, from 'caption-1616544598027.png':
  Duration: N/A, bitrate: N/A
    Stream #4:0: Video: png, rgba(pc), 304x170, 25 tbr, 25 tbn, 25 tbc
File 'd4d85756d7b54735b95720f9280bf6e2.mp4' already exists. Overwrite?
[y/N] y
Stream mapping:
  Stream #0:0 (h264) -> overlay:main
  Stream #1:0 (png) -> format
  Stream #2:0 (png) -> format
  Stream #3:0 (png) -> format
  Stream #4:0 (png) -> format
  overlay -> Stream #0:0 (libx264)
Press [q] to stop, [?] for help
[libx264 @ 0x7fb2c7015a00] using SAR=1/1
[libx264 @ 0x7fb2c7015a00] using cpu capabilities: MMX2 SSE2Fast SSSE3
SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x7fb2c7015a00] profile High 4:4:4 Predictive, level 3.1, 4:4:4,
8-bit
[libx264 @ 0x7fb2c7015a00] 264 - core 161 r3048 b86ae3c - H.264/MPEG-4 AVC
codec - Copyleft 2003-2021 - http://www.videolan.org/x264.html - options:
cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=1
psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=0
cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=6 threads=18
lookahead_threads=3 sliced_threads=0 nr=0 decimate=1 interlaced=0
bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=250
keyint_min=25 scenecut=0 intra_refresh=0 rc=crf mbtree=0 crf=23.0
qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=0
Output #0, mp4, to 'd4d85756d7b54735b95720f9280bf6e2.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.45.100
    Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv444p,
1280x720 [SAR 1:1 DAR 16:9], q=-1--1, 25 fps, 12800 tbn, 25 tbc (default)
    Metadata:
      encoder         : Lavc58.91.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
frame=   17 fps=0.0 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A
speed=   frame=   93 fps=0.0 q=-1.0 Lsize=     972kB time=00:00:03.68
bitrate=2164.1kbits/s speed=4.01x
video:971kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB
muxing overhead: 0.121794%
[libx264 @ 0x7fb2c7015a00] frame I:1     Avg QP:20.00  size: 90127
[libx264 @ 0x7fb2c7015a00] frame P:92    Avg QP:18.23  size:  9821
[libx264 @ 0x7fb2c7015a00] mb I  I16..4: 100.0%  0.0%  0.0%
[libx264 @ 0x7fb2c7015a00] mb P  I16..4:  1.7%  0.0%  0.0%  P16..4: 19.9%
 0.0%  0.0%  0.0%  0.0%    skip:78.4%
[libx264 @ 0x7fb2c7015a00] coded y,u,v intra: 33.9% 3.1% 5.2% inter: 8.6%
0.9% 0.8%
[libx264 @ 0x7fb2c7015a00] i16 v,h,dc,p: 29% 34% 19% 18%
[libx264 @ 0x7fb2c7015a00] kb/s:2136.99
I also attach input files, and output files for you to be sure, those input
files are fine. (
https://drive.google.com/drive/folders/1MeOR7uXRGo4k6hppie65jfbNwh5Tzf_Z?usp=sharing
)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Screenshot 2021-03-24 at 01.35.18.png
Type: image/png
Size: 291290 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-user/attachments/20210324/b798e1f7/attachment.png>


More information about the ffmpeg-user mailing list