2015-02-24 2 views
0

Я пытаюсь выполнить кодирование видео в реальном времени с помощью HEVC с помощью ffmpeg. Я могу достичь требуемой производительности при запуске кодировщика x265 отдельно без поддержки ffmpeg. Таким образом, моя система может выполнять кодирование со скоростью 30 кадров в секунду. Тем не менее, мое требование заключается в создании MPEG-TS поток с содержанием закодированной и, следовательно, видео кодируется с FFmpeg следующим образом:Скорость кодирования на основе x265 и ffmpeg на основе HEVC

FFmpeg -s: v 1280x720 -i input.yuv -c: v libx265 -x265-PARAMS CRF = 20: keyint = 25: 25 кадров в секунду =: предустановка = сверхбыстрых -f MPEGTS out.ts

как ни странно, производительность кодирования снижается резко, и я только в состоянии достигнуть производительность кодирования составляет всего 10 кадров в секунду.

Является ли это проблемой процесса мультиплексирования внутри ffmpeg ?. Может кто-то, пожалуйста, помогите мне решить эту проблему.

Спасибо.

+0

Я нахожусь с использованием ffmpeg по умолчанию, x265-код ​​занимает намного больше времени, чем x264. Если я могу достичь 40 кадров в секунду на x264, он уменьшит до 10 кадров в секунду с помощью x265. x265 вычислительно более интенсивен, чем x264, для достижения меньшего файла с аналогичным качеством. – Sun

ответ

0

Это может быть причиной фактора q в FFmpeg. Вам нужно сравнить значение q для FFmpeg и x265 bin. Это мое предположение.

Смежные вопросы