Как кодировать видео?

В данный момент идет активная разработка энкодера, но он все ещё находится в состоянии «бета»-версии. Работает медленно и не очень эффективно. Релизы новых версий выходят очень часто.

Что требуется?

Выберите один из методов:

  1. Скачайте исходники из официального репозитория и скомпилируйте энкодер x265.exe под свою систему.
  2. Скачайте одну из последних сборок x265.exe с нашего сайта.
  3. Используйте программу кодирования с графической оболочкой (см. конец страницы).

Использование энкодера x265 из командной строки

Энкодер берет на вход файлы в формате YUV или Y4M. Размер картинки (ширина и высота), а также частота кадров (FPS) должны быть заданы. Кодирование запускается с командной строки, по аналогии с x264. Кодировать можно с постоянным битрейтом (флаг —bitrate) или с постоянным качеством (флаг —crf). Пример для постоянного битрейта:

x265.exe input.yuv --input-res 1920x1080 --fps 50 --bitrate 14000 --input-depth 8 -o output.x265

Пример для постоянного качества:

x265.exe input.yuv --input-res 1920x1080 --fps 50 --crf 17 --input-depth 8 -o output.x265

На выходе будет файл в сыром формате x265: output.x265 Разработчики подготовили набор параметров для соотношений время/качество кодирования. Эти параметры задаются с помощью флага —preset. Полный список (от самого быстрого до самого медленного): ultrafast, faster, fast, medium, slow, veryslow, placebo. По умолчанию используется пресет ‘medium’. Пример для установки пресета:

x265.exe input.yuv --input-res 1920x1080 --fps 50 --crf 17 --input-depth 8 --preset veryslow -o output.x265

Для тонкой настройки кодирования существует огромное множество различных флагов, которые можно настраивать под свои потребности. Например, строчка с дополнительными параметрами обеспечивающая более высокое качество, может выглядеть так:

x265.exe input.y4m --q 17 --merange 64 --frames all --ref 4 --max-merge 3 --rect --hash 2 --me 3 --b 6 --b-adapt 1 --rd 2 --rc-lookahead 60 --input-depth 16 --tu-inter-depth=3 --tu-intra-depth=3 --no-tskip --no-tskip-fast --wpp --subme 2 --s 32 --F 6 --o video.hevc

Подробности можно посмотреть в документации здесь (PDF на английском) .

Графические оболочки для легкого кодирования

Baka Encoder

20 комментариев на “Как кодировать видео?

  1. Помогите пожалуйста! Выходит ошибка!!!( Опишите подробно все действия от А до Я и с пояснениями, т.к. я новичёк. буду очень признателен!!!Пишите на емайл.Очень прошу!

    • Скорее всего выводит ошибку, что нет фаликов типа msvcp120.dll или msvcr120.dll. Что бы всё работало надо для начала скачать Microsoft Visual C++ Redistributable Package. Другими словами, делай так:
      1) Смотришь битность системы — если есть на диске C: папка «Program Files (x86)» — значит у тебя 64, а если только одна «Program Files» — значит 32.
      2) Просто скачиваешь здесь http://softreview.ucoz.ru/load/10-1-0-196 версии 2013 (64 или 32-bit в соответствии с тем что выяснилось в пункте 1. ) и устанавливаешь.
      3) Качаешь саму прогу здесь http://x265.ru/ в разделе «Сборки x265 под Windows». Опять таки — выбор 64 или 32 делать надо в соответствии с пунктом 1
      4) Пользоваться, благодарить авторов, и т.д. и т.п.

  2. У меня на XP даже X32 версии 0.7 пишут «x265.exe не является приложением win32»,
    что я делаю не так. Вышеуказанный пакет стоит.

  3. Сборщикам нужно было при компиляции Platform Toolset v120_xp указывать, а не просто v120 . По-умолчнию VS2013 не собирает для XP.

  4. Кодировать в x265 сразу из многих форматов (а не только из «.yuv») можно программами Handbrake или Avidemux. Но в них свои версии x265 встроены.
    Тем, кому нравится работать с командной строкой и кто не боится читать документацию, могу посоветовать установить AviSynth (позволяет писать .avs скрипты для открытия входного файла и его предварительной обработки) и avs4x265.exe позволяющую x265 работать с файлами .avs. И/или можно установить MeGUI в настройках которой нужно включить поддержку x265. После перезапуска она предложит скачать необходимые компоненты. После загрузки компонентов у неё в подкаталоге …\tools\x265\ будут avs4x265.exe и x265.exe (у меня была версия программы 1.8 которую можно заменить на одну из скачанных отсюда версий (2+). Также в MeGUI есть кнопка «One-Click» помогающая обойтись без ручного написания скриптов.
    Пример содержимого файла-скрипта 1.avs с отрезанием черных полей в верхней и нижней части кадра и с приведением размера к 960×540 пикселей:
    DirectShowSource(«C:\1\1.avi»)
    Crop(0,120,-0,-120)
    LanczosResize(960,540)
    Пример содержимого файла 1.bat для быстрого кодирования с пяти тысячного кадра по шести тысячный (при использовании ключа —ssim в конце кодирования можно будет увидеть объективную оценку качества кодирования в метрике SSIM (чем больше — тем лучше качество перекодирования)):
    «C:\1\avs4x265.exe» —x265-binary «C:\1\x265.exe» —preset ultrafast —tune ssim —seek 5000 —frames 1000 —ssim —output «C:\1\1 ultrafast.hevc» «C:\1\1.avs»

Добавить комментарий

Войти (Login): 

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*