3

У меня возникла небольшая проблема при попытке использовать FFmpeg. Я в основном использовал его для извлечения клипов из видео и тому подобное. Однако я пытался вставить некоторые субтитры (hardsubs) в видео.

Документация FFMpeg сказала мне, что я должен использовать видеофильм "задницы", и я попробовал это, как показано, но безрезультатно. Там нет изменений. На видео нет субтитров; они даже не отображаются в виде потока в файле. Я мог бы также не включить фильтр.

Это линия, которую я использую, которая не работает. К файлу не прикреплен аудиопоток.

ffmpeg -i input.webm -vf ass=subs.ass -b:v 1200K out.webm

Я знаю, что субтитры должны работать. Когда я вручную загружаю их из своего видеопроигрывателя или даже объединяю их вместе в файл, они отображаются нормально. Но по какой-то причине ffmpeg отказывается записывать субтитры в само видео.

Тем не менее, я получаю небольшую ошибку, которая обычно не появляется, и я понятия не имею, о чем идет речь.

Ошибка Fontconfig: невозможно загрузить файл конфигурации по умолчанию

[Parsed_ass_0 @ 00000000042c33c0] Не найден пригодный для использования файл конфигурации fontconfig, использующий запасной вариант.

Ошибка Fontconfig: невозможно загрузить файл конфигурации по умолчанию

[Parsed_ass_0 @ 00000000042c33c0] Добавлен файл субтитров: 'subs.ass' (3 стиля, 68 событий)

Любая помощь по этому поводу будет принята с благодарностью. (Если это поможет, я использую версию ffmpeg для Windows)

Изменить: Вот ссылка MediaFire файла, задницу. (Вы заметите, что сами субтитры менее серьезны.)

ffmpeg version N-65366-g1c59419 Copyright (c) 2000-2014 the FFmpeg developers
  built on Aug  6 2014 22:09:19 with gcc 4.8.3 (GCC)
  configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-av
isynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enab
le-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --
enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-lib
modplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrw
b --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinge
r --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --en
able-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis
 --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-
libx265 --enable-libxavs --enable-libxvid --enable-decklink --enable-zlib
  libavutil      52. 98.100 / 52. 98.100
  libavcodec     55. 73.100 / 55. 73.100
  libavformat    55. 51.101 / 55. 51.101
  libavdevice    55. 13.102 / 55. 13.102
  libavfilter     4. 11.102 /  4. 11.102
  libswscale      2.  6.100 /  2.  6.100
  libswresample   0. 19.100 /  0. 19.100
  libpostproc    52.  3.100 / 52.  3.100
Input #0, matroska,webm, from 'input.webm':
  Metadata:
    encoder         : Lavf55.41.100
  Duration: 00:00:04.10, start: 0.000000, bitrate: 2465 kb/s
    Stream #0:0: Video: vp8, yuv420p, 620x924, SAR 1:1 DAR 155:231, 29.97 fps, 29.97 tbr, 1k tbn, 1k tbc (default)
File 'out.webm' already exists. Overwrite ? [y/N] y
Fontconfig error: Cannot load default config file
[Parsed_ass_0 @ 00000000043933a0] No usable fontconfig configuration file found, using fallback.
Fontconfig error: Cannot load default config file
[Parsed_ass_0 @ 00000000043933a0] Added subtitle file: 'subs.ass' (3 styles, 68 events)
[libvpx @ 00000000043ccf00] v1.3.0
Output #0, webm, to 'out.webm':
  Metadata:
    encoder         : Lavf55.51.101
    Stream #0:0: Video: vp8 (libvpx), yuv420p, 620x924 [SAR 1:1 DAR 155:231], q=-1--1, 1200 kb/s, 29.97 fps, 1k tbn, 29.97 tbc (default)
    Metadata:
      encoder         : Lavc55.73.100 libvpx
Stream mapping:
  Stream #0:0 -> #0:0 (vp8 (native) -> vp8 (libvpx))
Press [q] to stop, [?] for help
frame=    7 fps=0.0 q=0.0 size=      72kB time=00:00:00.23 bitrate=2512.2kbits/s
frame=   13 fps= 10 q=0.0 size=      95kB time=00:00:00.43 bitrate=1799.3kbits/s
frame=   19 fps=9.7 q=0.0 size=     128kB time=00:00:00.63 bitrate=1656.4kbits/s
frame=   25 fps=9.9 q=0.0 size=     144kB time=00:00:00.83 bitrate=1415.2kbits/s
frame=   30 fps=9.9 q=0.0 size=     165kB time=00:00:01.00 bitrate=1351.3kbits/s
frame=   37 fps= 10 q=0.0 size=     193kB time=00:00:01.23 bitrate=1281.2kbits/s
frame=   42 fps= 10 q=0.0 size=     208kB time=00:00:01.40 bitrate=1216.8kbits/s
frame=   48 fps= 10 q=0.0 size=     237kB time=00:00:01.60 bitrate=1213.7kbits/s
frame=   52 fps= 10 q=0.0 size=     253kB time=00:00:01.73 bitrate=1196.9kbits/s
frame=   57 fps= 10 q=0.0 size=     281kB time=00:00:01.90 bitrate=1211.0kbits/s
frame=   60 fps=9.7 q=0.0 size=     301kB time=00:00:02.00 bitrate=1232.0kbits/s
frame=   66 fps=9.9 q=0.0 size=     326kB time=00:00:02.20 bitrate=1211.3kbits/s
frame=   70 fps=9.7 q=0.0 size=     347kB time=00:00:02.33 bitrate=1218.0kbits/s
frame=   73 fps=9.3 q=0.0 size=     386kB time=00:00:02.43 bitrate=1297.3kbits/s
frame=   78 fps=9.3 q=0.0 size=     406kB time=00:00:02.60 bitrate=1276.3kbits/s
frame=   81 fps=9.0 q=0.0 size=     418kB time=00:00:02.70 bitrate=1266.3kbits/s
frame=   85 fps=8.9 q=0.0 size=     441kB time=00:00:02.83 bitrate=1274.6kbits/s
frame=   90 fps=9.0 q=0.0 size=     456kB time=00:00:03.00 bitrate=1243.3kbits/s
frame=   94 fps=8.9 q=0.0 size=     476kB time=00:00:03.13 bitrate=1244.1kbits/s
frame=   99 fps=8.9 q=0.0 size=     502kB time=00:00:03.30 bitrate=1246.1kbits/s
frame=  102 fps=8.8 q=0.0 size=     510kB time=00:00:03.40 bitrate=1228.5kbits/s
frame=  107 fps=8.8 q=0.0 size=     533kB time=00:00:03.57 bitrate=1224.1kbits/s
frame=  113 fps=8.9 q=0.0 size=     559kB time=00:00:03.77 bitrate=1215.0kbits/s
frame=  118 fps=8.8 q=0.0 size=     578kB time=00:00:03.93 bitrate=1202.5kbits/s
frame=  123 fps=8.9 q=0.0 size=     603kB time=00:00:04.10 bitrate=1204.6kbits/s
frame=  123 fps=8.8 q=0.0 Lsize=     604kB time=00:00:04.10 bitrate=1204.7kbits/s
video:602kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.224451%

1 ответ1

2

У меня тоже была эта пробема. Я думаю, это потому, что статическая сборка для Windows не включает файлы fontconfig.

Я скопировал файл fonts.conf по умолчанию из этого обсуждения на Zeranoe FFmpeg в мою папку с именем "conf", которую я поместил в свою папку ffmpeg, и я установил переменные среды следующим образом:

FC_CONFIG_DIR=C:\Program Files\ffmpeg\conf
FONTCONFIG_FILE=C:\Program Files\ffmpeg\conf\fonts.conf
FONTCONFIG_PATH=C:\Program Files\ffmpeg\conf

(Способ успешного изменения переменных навсегда для меня заключался в том, чтобы напечатать "environment" в поле поиска в меню Windows и выбрать "редактировать переменные среды для вашей учетной записи", или вы можете получить их через панель управления).

Вот содержимое файла fonts.conf, который я использую (я думаю, что самый важный бит - это раздел <dir> в начале. Более подробная информация о fontconfig на http://fontconfig.org ).

<?xml version="1.0"?>
<fontconfig>

<dir>C:\WINDOWS\Fonts</dir>

<match target="pattern">
<test qual="any" name="family"><string>mono</string></test>
<edit name="family" mode="assign"><string>monospace</string></edit>
</match>

<match target="pattern">
<test qual="all" name="family" compare="not_eq"><string>sans-serif</string></test>
<test qual="all" name="family" compare="not_eq"><string>serif</string></test>
<test qual="all" name="family" compare="not_eq"><string>monospace</string></test>
<edit name="family" mode="append_last"><string>sans-serif</string></edit>
</match>

<alias>
<family>Times</family>
<prefer><family>Times New Roman</family></prefer>
<default><family>serif</family></default>
</alias>
<alias>
<family>Helvetica</family>
<prefer><family>Arial</family></prefer>
<default><family>sans</family></default>
</alias>
<alias>
<family>Courier</family>
<prefer><family>Courier New</family></prefer>
<default><family>monospace</family></default>
</alias>
<alias>
<family>serif</family>
<prefer><family>Times New Roman</family></prefer>
</alias>
<alias>
<family>sans</family>
<prefer><family>Arial</family></prefer>
</alias>
<alias>
<family>monospace</family>
<prefer><family>Andale Mono</family></prefer>
</alias>
<match target="pattern">
<test name="family" compare="eq">
<string>Courier New</string>
</test>
<edit name="family" mode="prepend">
<string>monospace</string>
</edit>
</match>
<match target="pattern">
<test name="family" compare="eq">
<string>Courier</string>
</test>
<edit name="family" mode="prepend">
<string>monospace</string>
</edit>
</match>

</fontconfig>

Также я обнаружил, что фильтру не нравятся обратные слеши в стиле Windows в пути. поэтому, когда я набрал vf ass="..\subtitles\subs.ass он выдавал ошибку открытия фильтров , пока я не заменил обратные слэши на прямые косые черты.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .