[FFmpeg-user] similar multiple drawtext commands performs differently in OS X and windows

Kieran O Leary kieran.o.leary at gmail.com
Thu Nov 12 23:14:07 CET 2015


I want a text watermark in the centre of my image, and a burnt in time
code in the bottom of the image. The following command in an OS X
terminal performs as intended, and here's a screenshot:
http://imgur.com/BYERFAE

ffmpeg -i INPUT -vf
"drawtext=fontfile=/Library/Fonts/AppleGothic.ttf:fontcolor=white:timecode=01\\\:00\\\:00\\\:00:rate=25/1:boxcolor=0x000000AA:box=1:fontsize=48:x=360-text_w/2:y=480,drawtext=fontfile=/Library/Fonts/AppleGothic.ttf:fontcolor=white:text='test
text':fontsize=41:x=360-text_w/2:y=274:alpha=0.3" OUTPUT

while the following windows command results in the watermark and
timecode appearing in the centre, transparently. It looks like it's
ignoring some of the options in the first drawtext command and only
applying the settings from the final drawtext command: (screenshot:
http://imgur.com/wvnwKAx


ffmpeg -i INPUT -vf
"drawtext=fontfile='C\:\\Windows\\Fonts\\arial.ttf:fontcolor=white:timecode=01\:00\:00\:00:rate=25/1:boxcolor=0x000000AA:box=1:fontsize=48:x=360-text_w/2:y=480,drawtext=fontfile='C\:\\Windows\\Fonts\\arial.ttf:fontcolor=white:text='test
text':fontsize=41:x=360-text_w/2:y=274:alpha=0.3"
OUTPUT

Full output from OS X, and the windows output will follow:
Kierans-iMac:~ kieranoleary$ ffmpeg -i
/Users/kieranoleary/Desktop/assasasasasasasas01.mov -vf
"drawtext=fontfile=/Library/Fonts/AppleGothic.ttf:fontcolor=white:timecode=01\\\:00\\\:00\\\:00:rate=25/1:boxcolor=0x000000AA:box=1:fontsize=48:x=360-text_w/2:y=480,drawtext=fontfile=/Library/Fonts/AppleGothic.ttf:fontcolor=white:text='test
text':fontsize=41:x=360-text_w/2:y=274:alpha=0.3"
/Users/kieranoleary/Desktop/121.mov
ffmpeg version 2.8.1 Copyright (c) 2000-2015 the FFmpeg developers
  built with Apple LLVM version 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/2.8.1_1
--enable-shared --enable-pthreads --enable-gpl --enable-version3
--enable-hardcoded-tables --enable-avresample --cc=clang
--host-cflags= --host-ldflags= --enable-opencl --enable-libx264
--enable-libmp3lame --enable-libvo-aacenc --enable-libxvid
--enable-libfreetype --enable-libfaac --enable-libass --enable-ffplay
--enable-libopenjpeg --disable-decoder=jpeg2000
--extra-cflags='-I/usr/local/Cellar/openjpeg/1.5.2_1/include/openjpeg-1.5
' --enable-nonfree --enable-vda
  libavutil      54. 31.100 / 54. 31.100
  libavcodec     56. 60.100 / 56. 60.100
  libavformat    56. 40.101 / 56. 40.101
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 40.101 /  5. 40.101
  libavresample   2.  1.  0 /  2.  1.  0
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  2.101 /  1.  2.101
  libpostproc    53.  3.100 / 53.  3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
'/Users/kieranoleary/Desktop/assasasasasasasas01.mov':
  Metadata:
    creation_time   : 2015-09-10 22:56:18
    timecode        : 01:00:00:00
  Duration: 00:00:14.84, start: 0.000000, bitrate: 178507 kb/s
    Stream #0:0(eng): Audio: pcm_s16be (twos / 0x736F7774), 44100 Hz,
stereo, s16, 1411 kb/s (default)
    Metadata:
      creation_time   : 2015-09-10 22:56:18
      handler_name    : Apple Alias Data Handler
    Stream #0:1(eng): Video: rawvideo (2vuy / 0x79757632), uyvy422,
768x576, 176947 kb/s, 25 fps, 25 tbr, 25k tbn, 25k tbc (default)
    Metadata:
      creation_time   : 2015-09-10 22:56:18
      handler_name    : Apple Alias Data Handler
      encoder         : Uncompressed 8-bit 4:2:2
    Stream #0:2(eng): Data: none (tmcd / 0x64636D74), 0 kb/s (default)
    Metadata:
      creation_time   : 2015-09-10 22:56:30
      handler_name    : Apple Alias Data Handler
      timecode        : 01:00:00:00
File '/Users/kieranoleary/Desktop/121.mov' already exists. Overwrite ? [y/N] y
No pixel format specified, yuv422p for H.264 encoding chosen.
Use -pix_fmt yuv420p for compatibility with outdated media players.
[libx264 @ 0x7fc84101ca00] using cpu capabilities: MMX2 SSE2Fast SSSE3
SSE4.2 AVX
[libx264 @ 0x7fc84101ca00] profile High 4:2:2, level 3.1, 4:2:2 8-bit
[libx264 @ 0x7fc84101ca00] 264 - core 148 r2601 a0cd7d3 - H.264/MPEG-4
AVC codec - Copyleft 2003-2015 - http://www.videolan.org/x264.html -
options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7
psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1
8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2
threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1
interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2
b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250
keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf
mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40
aq=1:1.00
Output #0, mov, to '/Users/kieranoleary/Desktop/121.mov':
  Metadata:
    timecode        : 01:00:00:00
    encoder         : Lavf56.40.101
    Stream #0:0(eng): Video: h264 (libx264) (avc1 / 0x31637661),
yuv422p, 768x576, q=-1--1, 25 fps, 12800 tbn, 25 tbc (default)
    Metadata:
      creation_time   : 2015-09-10 22:56:18
      handler_name    : Apple Alias Data Handler
      encoder         : Lavc56.60.100 libx264
    Stream #0:1(eng): Audio: aac (libfaac) (mp4a / 0x6134706D), 44100
Hz, stereo, s16, 128 kb/s (default)
    Metadata:
      creation_time   : 2015-09-10 22:56:18
      handler_name    : Apple Alias Data Handler
      encoder         : Lavc56.60.100 libfaac
Stream mapping:
  Stream #0:1 -> #0:0 (rawvideo (native) -> h264 (libx264))
  Stream #0:0 -> #0:1 (pcm_s16be (native) -> aac (libfaac))
Press [q] to stop, [?] for help
frame=   71 fps=0.0 q=28.0 size=     293kB time=00:00:02.90 bitrate=
826.9kbits/frame=  119 fps=117 q=28.0 size=     854kB time=00:00:04.89
bitrate=1428.3kbits/frame=  167 fps=109 q=28.0 size=    1386kB
time=00:00:06.89 bitrate=1646.5kbits/frame=  212 fps=104 q=28.0 size=
  1949kB time=00:00:08.42 bitrate=1894.4kbits/frame=  259 fps=101
q=28.0 size=    2481kB time=00:00:10.40 bitrate=1954.0kbits/frame=
307 fps=100 q=28.0 size=    3104kB time=00:00:12.39
bitrate=2050.6kbits/frame=  355 fps= 99 q=28.0 size=    3640kB
time=00:00:14.39 bitrate=2071.0kbits/frame=  371 fps= 87 q=-1.0 Lsize=
   4408kB time=00:00:14.86 bitrate=2430.2kbits/s
video:4174kB audio:221kB subtitle:0kB other streams:0kB global
headers:0kB muxing overhead: 0.321615%
[libx264 @ 0x7fc84101ca00] frame I:2     Avg QP:23.18  size: 65711
[libx264 @ 0x7fc84101ca00] frame P:185   Avg QP:25.01  size: 18446
[libx264 @ 0x7fc84101ca00] frame B:184   Avg QP:29.74  size:  3962
[libx264 @ 0x7fc84101ca00] consecutive B-frames:  0.8% 99.2%  0.0%  0.0%
[libx264 @ 0x7fc84101ca00] mb I  I16..4:  5.8% 67.6% 26.6%
[libx264 @ 0x7fc84101ca00] mb P  I16..4:  0.4%  2.2%  0.8%  P16..4:
42.8% 25.3% 17.9%  0.0%  0.0%    skip:10.6%
[libx264 @ 0x7fc84101ca00] mb B  I16..4:  0.0%  0.8%  0.3%  B16..8:
38.6%  6.0%  2.1%  direct: 3.3%  skip:48.8%  L0:42.1% L1:48.3% BI:
9.6%
[libx264 @ 0x7fc84101ca00] 8x8 transform intra:66.8% inter:61.7%
[libx264 @ 0x7fc84101ca00] coded y,uvDC,uvAC intra: 83.7% 50.6% 15.0%
inter: 30.3% 28.7% 0.3%
[libx264 @ 0x7fc84101ca00] i16 v,h,dc,p: 42% 44%  5% 10%
[libx264 @ 0x7fc84101ca00] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 13%  9% 17%
9%  7%  7%  6% 22%  9%
[libx264 @ 0x7fc84101ca00] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 17% 19% 14%
10%  6%  7%  5% 16%  7%
[libx264 @ 0x7fc84101ca00] i8c dc,h,v,p: 68% 12% 16%  5%
[libx264 @ 0x7fc84101ca00] Weighted P-Frames: Y:2.2% UV:2.2%
[libx264 @ 0x7fc84101ca00] ref P L0: 57.7% 17.3% 15.7%  8.6%  0.7%
[libx264 @ 0x7fc84101ca00] ref B L0: 84.8% 15.2%
[libx264 @ 0x7fc84101ca00] kb/s:2303.49


and the windows:
Windows PowerShell
Copyright (C) 2009 Microsoft Corporation. All rights reserved.

PS C:\Users\kieranjol>
C:\Users\kieranjol\Downloads\ffmpeg-latest-win64-static\ffmpeg-20151111-git-edd0c1d-win64-static\
bin\ffmpeg.exe -i "C:\Users\kieranjol\Desktop\untitled folder 3\New
folder\tes  tsrc2.mov" -vf "drawtext=fontfile='C\:\\
Windows\\Fonts\\arial.ttf:fontcolor=white:timecode=01\:00\:00\:00:rate=25/1:boxcolor=0x000000AA:box=1:fontsize=48:x=360-
text_w/2:y=480,drawtext=fontfile='C\:\\Windows\\Fonts\\arial.ttf:fontcolor=white:text='test
text':fontsize=41:x=360-text
_w/2:y=274:alpha=0.3" "C:\Users\kieranjol\Desktop\untitled folder
3\New folder\tesfffff.mov"
ffmpeg version N-76637-gedd0c1d Copyright (c) 2000-2015 the FFmpeg developers
  built with gcc 5.2.0 (GCC)
  configuration: --enable-gpl --enable-version3 --disable-w32threads
--enable-avisynth --enable-bzlib --enable-fontconfi
g --enable-frei0r --enable-gnutls --enable-iconv --enable-libass
--enable-libbluray --enable-libbs2b --enable-libcaca --
enable-libdcadec --enable-libfreetype --enable-libgme --enable-libgsm
--enable-libilbc --enable-libmodplug --enable-libm
p3lame --enable-libopencore-amrnb --enable-libopencore-amrwb
--enable-libopenjpeg --enable-libopus --enable-librtmp --en
able-libschroedinger --enable-libsoxr --enable-libspeex
--enable-libtheora --enable-libtwolame --enable-libvidstab --ena
ble-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis
--enable-libvpx --enable-libwavpack --enable-libwebp --enabl
e-libx264 --enable-libx265 --enable-libxavs --enable-libxvid
--enable-libzimg --enable-lzma --enable-decklink --enable-z
lib
  libavutil      55.  5.100 / 55.  5.100
  libavcodec     57. 15.100 / 57. 15.100
  libavformat    57. 14.100 / 57. 14.100
  libavdevice    57.  0.100 / 57.  0.100
  libavfilter     6. 15.100 /  6. 15.100
  libswscale      4.  0.100 /  4.  0.100
  libswresample   2.  0.101 /  2.  0.101
  libpostproc    54.  0.100 / 54.  0.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
'C:\Users\kieranjol\Desktop\untitled folder 3\New folder\tes
tsrc2.mov':
  Metadata:
    major_brand     : qt
    minor_version   : 512
    compatible_brands: qt
    encoder         : Lavf56.40.101
  Duration: 00:01:00.00, start: 0.000000, bitrate: 759 kb/s
    Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p,
720x576 [SAR 16:15 DAR 4:3], 757 kb/s, 25 fps, 25
 tbr, 12800 tbn, 50 tbc (default)
    Metadata:
      handler_name    : DataHandler
      encoder         : Lavc56.60.100 libx264
File 'C:\Users\kieranjol\Desktop\untitled folder 3\New
folder\tesfffff.mov' already exists. Overwrite ? [y/N] y
[libx264 @ 00000000003395a0] using SAR=16/15
[libx264 @ 00000000003395a0] using cpu capabilities: MMX2 SSE2Fast
SSSE3 SSE4.2 AVX
[libx264 @ 00000000003395a0] profile High, level 3.0
[libx264 @ 00000000003395a0] 264 - core 148 r2638 7599210 -
H.264/MPEG-4 AVC codec - Copyleft 2003-2015 - http://www.vid
eolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0
analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed
_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11
fast_pskip=1 chroma_qp_offset=-2 threads=6 lookah
ead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0
bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_
adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250
keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahe
ad=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4
ip_ratio=1.40 aq=1:1.00
Output #0, mov, to 'C:\Users\kieranjol\Desktop\untitled folder 3\New
folder\tesfffff.mov':
  Metadata:
    major_brand     : qt
    minor_version   : 512
    compatible_brands: qt
    encoder         : Lavf57.14.100
    Stream #0:0(eng): Video: h264 (libx264) (avc1 / 0x31637661),
yuv420p, 720x576 [SAR 16:15 DAR 4:3], q=-1--1, 25 fps,
12800 tbn, 25 tbc (default)
    Metadata:
      handler_name    : DataHandler
      encoder         : Lavc57.15.100 libx264
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
Press [q] to stop, [?] for help
frame= 1500 fps=218 q=-1.0 Lsize=    5672kB time=00:00:59.92 bitrate=
775.4kbits/s
video:5653kB audio:0kB subtitle:0kB other streams:0kB global
headers:0kB muxing overhead: 0.326389%
[libx264 @ 00000000003395a0] frame I:6     Avg QP:17.50  size: 16926
[libx264 @ 00000000003395a0] frame P:718   Avg QP:23.63  size:  4832
[libx264 @ 00000000003395a0] frame B:776   Avg QP:28.12  size:  2858
[libx264 @ 00000000003395a0] consecutive B-frames:  2.6% 81.6% 11.0%  4.8%
[libx264 @ 00000000003395a0] mb I  I16..4: 29.5% 56.6% 13.9%
[libx264 @ 00000000003395a0] mb P  I16..4:  1.8%  5.5%  0.8%  P16..4:
13.7%  4.8%  2.7%  0.0%  0.0%    skip:70.8%
[libx264 @ 00000000003395a0] mb B  I16..4:  0.4%  1.0%  0.2%  B16..8:
15.5%  2.8%  0.8%  direct: 1.7%  skip:77.6%  L0:53
.4% L1:43.4% BI: 3.2%
[libx264 @ 00000000003395a0] 8x8 transform intra:66.4% inter:65.3%
[libx264 @ 00000000003395a0] coded y,uvDC,uvAC intra: 29.0% 55.4%
48.9% inter: 3.4% 13.2% 8.6%
[libx264 @ 00000000003395a0] i16 v,h,dc,p: 67% 23%  3%  7%
[libx264 @ 00000000003395a0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 15%  9%
60%  2%  3%  3%  3%  3%  3%
[libx264 @ 00000000003395a0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 33% 18%
21%  6%  5%  5%  4%  5%  4%
[libx264 @ 00000000003395a0] i8c dc,h,v,p: 40% 22% 33%  5%
[libx264 @ 00000000003395a0] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 00000000003395a0] ref P L0: 62.9%  7.9% 17.7% 11.5%
[libx264 @ 00000000003395a0] ref B L0: 83.7% 15.4%  0.9%
[libx264 @ 00000000003395a0] ref B L1: 98.1%  1.9%
[libx264 @ 00000000003395a0] kb/s:771.79


More information about the ffmpeg-user mailing list