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

Это стратегия двухпроходного кодирования, и первый проход выполняется нормально каждый раз, второй проход последовательно завершается с ошибкой:

[libx264 @ 0x3925fc0] 2nd pass has more frames than 1st pass (1478)
[libx264 @ 0x3925fc0] continuing anyway, at constant QP=14
[libx264 @ 0x3925fc0] disabling adaptive B-frames
[libx264 @ 0x3925fc0] specified frame type is not compatible with max B-frames
Segmentation fault

Вот команда, которую мы используем для каждого прохода:

Пройдите 1:

ffmpeg -y -i input.mp4 -pass 1 -b 774000 -ab 128000 -s 640x360 -passlogfile ffmpeglog -vcodec libx264 -g 90 -bf 3 -refs 1 -b_strategy 1 -coder 1 -qmin 10 -qmax 51 -sc_threshold 40 -flags +loop -cmp chroma -me_range 16 -me_method dia -subq 2 -i_qfactor 0.71 -qcomp 0.6 -qdiff 4 -direct-pred 3 -trellis 0 -partitions -parti8x8-parti4x4-partp8x8-partb8x8 -r 30 -keyint_min 25 -wpredp 2 -rc_lookahead 50 -acodec libfaac -ar 44100 pass1.mp4

Пройдите 2:

ffmpeg -y -i pass1.mp4 -pass 2 -b 774000 -ab 128000 -s 640x360 -passlogfile ffmpeglog -vcodec libx264 -g 90 -bf 3 -refs 8 -b_strategy 1 -coder 1 -qmin 10 -qmax 51 -sc_threshold 40 -flags +loop -cmp chroma -me_range 16 -me_method umh -subq 9 -i_qfactor 0.71 -qcomp 0.6 -qdiff 4 -direct-pred 3 -trellis 2 -partitions +parti8x8+parti4x4+partp8x8+partp4x4+partb8x8 -r 30 -keyint_min 25 -wpredp 2 -rc_lookahead 60 -acodec libfaac -ar 44100 pass2.mp4

... а вот моя конфигурация ffmpeg:

ffmpeg version 2.1.4 Copyright (c) 2000-2014 the FFmpeg developers
  built on Feb 25 2014 19:23:21 with gcc 4.6.3 (GCC) 20120306 (Red Hat 4.6.3-2)
  configuration: --enable-gpl --enable-libmp3lame --enable-libtheora --enable-libvo-aacenc --enable-libvorbis --enable-libvpx --enable-libx264 --enable-version3 --enable-libfaac --enable-nonfree
  libavutil      52. 48.101 / 52. 48.101
  libavcodec     55. 39.101 / 55. 39.101
  libavformat    55. 19.104 / 55. 19.104
  libavdevice    55.  5.100 / 55.  5.100
  libavfilter     3. 90.100 /  3. 90.100
  libswscale      2.  5.101 /  2.  5.101
  libswresample   0. 17.104 /  0. 17.104
  libpostproc    52.  3.100 / 52.  3.100
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...

Благодарим за любую идею!

1 ответ1

0

Вот решение, которое я придумала, и до сих пор оно работает отлично: я начал все заново с помощью замечательных людей из #ffmepg

ffmpeg -i $inputFile -vcodec libx264 -s $widthx$height -b $videoBitrate -preset medium -crf 23 -acodec libfaac -q:a 100 -movflags +faststart -pix_fmt yuv420p -r $frameRate $outputFile

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