簡體   English   中英

FFMPEG'Fontconfig錯誤:無法加載默認配置文件'錯誤Windows

[英]FFMPEG 'Fontconfig error: Cannot load default config file' error Windows

我正在嘗試使用FFMPEG制作短片,其中一個詞在視頻持續時間內(0.5s)停留在屏幕上。 我的FFMPEG代碼如下所示:

ffmpeg -f lavfi -i color=c=white:s=320x240:d=0.5 -vf "drawtext=fontfile= 'c\\:\\Windows\\fonts\\calibri.ttf':fontsize=18: fontcolor=black:x=(w-text_w)/2:y=(h-text_h)/2:text='word'" output.mp4

但是,我不斷收到以下錯誤(有關完整輸出,請參見下文):

Fontconfig error: Cannot load default config file 
[Parsed_drawtext_0 @ 000001c2918cef00] Using "C:/Windows/fonts/mingliub.ttc"

我認為這與字體文件的路徑有關。 我還嘗試將字體文件復制到FFMPEG映射並將字體路徑映射到FFMPEG目錄:

ffmpeg -f lavfi -i color=c=white:s=320x240:d=0.5 -vf
"drawtext=fontfile=‘C:\FFMPEG\bin\calibri.ttf':fontsize=18: 
fontcolor=black:x=(w-text_w)/2:y=(h-text_h)/2:text='word'" output.mp4'

這也不起作用。 我確實得到了輸出video.mp4視頻,但是字體錯誤。 這是我得到的完整輸出。 上面的兩個代碼示例都相同:

 c:\FFMPEG\bin>ffmpeg -f lavfi -i color=c=white:s=320x240:d=0.5 -vf "drawtext=fontfile= ‘c\\:\\\Windows\\\fonts\\\calibri.ttf':fontsize=18:  fontcolor=black:x=(w-text_w)/2:y=(h-text_h)/2:text='word'" output.mp4
ffmpeg version N-93234-g2e67f751b5 Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 8.2.1 (GCC) 20190212
  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. 26.100 / 56. 26.100
  libavcodec     58. 47.102 / 58. 47.102
  libavformat    58. 26.101 / 58. 26.101
  libavdevice    58.  6.101 / 58.  6.101
  libavfilter     7. 48.100 /  7. 48.100
  libswscale      5.  4.100 /  5.  4.100
  libswresample   3.  4.100 /  3.  4.100
  libpostproc    55.  4.100 / 55.  4.100
Input #0, lavfi, from 'color=c=white:s=320x240:d=0.5':
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 320x240 [SAR 1:1 DAR 4:3], 25 tbr, 25 tbn, 25 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (libx264))
Press [q] to stop, [?] for help
Fontconfig error: Cannot load default config file
[Parsed_drawtext_0 @ 00000291ad7def00] Using "C:/Windows/fonts/mingliub.ttc"
[libx264 @ 00000291af0ef180] using SAR=1/1
[libx264 @ 00000291af0ef180] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 00000291af0ef180] profile High, level 1.3, 4:2:0, 8-bit
[libx264 @ 00000291af0ef180] 264 - core 157 r2935 545de2f - H.264/MPEG-4 AVC codec - Copyleft 2003-2018 - 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, mp4, to 'output.mp4':
  Metadata:
    encoder         : Lavf58.26.101
    Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv420p, 320x240 [SAR 1:1 DAR 4:3], q=-1--1, 25 fps, 12800 tbn, 25 tbc
    Metadata:
      encoder         : Lavc58.47.102 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
[Parsed_color_0 @ 00000291af0aa840] EOF timestamp not reliable
frame=   13 fps=0.0 q=-1.0 Lsize=       2kB time=00:00:00.40 bitrate=  43.9kbits/s speed=4.27x
video:1kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 84.991570%
[libx264 @ 00000291af0ef180] frame I:1     Avg QP: 9.22  size:   306
[libx264 @ 00000291af0ef180] frame P:3     Avg QP:11.33  size:    20
[libx264 @ 00000291af0ef180] frame B:9     Avg QP:12.67  size:    14
[libx264 @ 00000291af0ef180] consecutive B-frames:  7.7%  0.0%  0.0% 92.3%
[libx264 @ 00000291af0ef180] mb I  I16..4: 98.7%  0.0%  1.3%
[libx264 @ 00000291af0ef180] mb P  I16..4:  0.0%  0.0%  0.0%  P16..4:  0.0%  0.0%  0.0%  0.0%  0.0%    skip:100.0%
[libx264 @ 00000291af0ef180] mb B  I16..4:  0.0%  0.0%  0.0%  B16..8:  0.0%  0.0%  0.0%  direct: 0.0%  skip:100.0%
[libx264 @ 00000291af0ef180] 8x8 transform intra:0.0%
[libx264 @ 00000291af0ef180] coded y,uvDC,uvAC intra: 1.0% 0.0% 0.0% inter: 0.0% 0.0% 0.0%
[libx264 @ 00000291af0ef180] i16 v,h,dc,p: 92%  1%  7%  0%
[libx264 @ 00000291af0ef180] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 39%  3% 42%  2%  5%  5%  2%  2%  2%
[libx264 @ 00000291af0ef180] i8c dc,h,v,p: 100%  0%  0%  0%
[libx264 @ 00000291af0ef180] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 00000291af0ef180] kb/s:7.65

解決了! 顯然問題是字體的路徑不能包含分號(即“ C:/”。有效的代碼是:

ffmpeg -f lavfi -i color=c=white:s=320x240:d=0.5 -vf “drawtext=fontfile= /Windows/fonts/calibri.ttf:fontsize=18: fontcolor=black:x=(w-text_w)/2:y=(h-text_h)/2:text=word” output.mp4

2019 Windows版本似乎已更改語法或其他內容; 這是今天對我有用的東西:

-vf "drawtext=fontfile=C\\:/Windows/fonts/consola.ttf:fontsize=72:fontcolor='white':timecode='00\:00\:00\:00':rate=25:text='TCR\:':boxcolor=0x000000AA:box=1:x=860-text_w/2:y=960"

就我而言,我是從PWD而不是C:運行FFmpeg的,因此我必須使用轉義冒號和路徑的正斜杠指定字體路徑C:\\。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM