29

Кто-нибудь знает о текущем, активном решении для кодирования видео x264 на многих компьютерах (через сеть), чтобы увеличить кодирование FPS?

Брауни указывает на кроссплатформенность и открытый исходный код, но, как вы все знаете, я обычно использую Windows.


Программы, о которых я слышал, и почему я не верю, что они подходят:

  • x264farm: не активно развивается. Хороший интерфейс, но не поддерживает двухпроходное кодирование и не работает с более новыми сборками x264.
  • ЭЛДЕР: Опять же, не активно разрабатывался, но моя проблема заключалась в том, что он не работал с новыми сборками x264, и его было очень сложно настроить (читай: случайно перестал работать).

Хотя мне абсолютно не нужна программа, которая активно разрабатывается, мне бы хотелось, чтобы она поддерживала двухпроходное кодирование и работала с новыми (er) сборками x264.


Дополнительная информация: Пока что я предложил (и награжден!) две отдельные награды по этому вопросу с тех пор, как я впервые опубликовал его более двух лет назад, и я до сих пор не нашел решения этой проблемы. По сути, я ищу простую программу, позволяющую мне кодировать видео x264 с использованием вычислительной мощности нескольких компьютеров, подключенных по локальной сети. Кроме того, было бы неплохо, если бы он работал с новыми сборками (er) x264 и поддерживал двухпроходное кодирование.

Если в какой-то момент кто-то получит обновленный ответ или новое решение этой проблемы, пожалуйста, опубликуйте его, и он будет рассмотрен.


Обновление 2016:

После большого опыта работы с компьютерным / машинным зрением я понял, что накладные расходы, связанные с большим объемом общих данных / памяти, и потенциальное узкое место, которое они представляют, могут перевесить потенциальные выгоды.

Хотя я все еще хотел бы найти что-то, что позволило бы мне использовать незанятые вычислительные мощности нескольких устройств, на данный момент современные кодеры на основе GPGPU являются гораздо лучшим подходом, если вам требуется улучшенное кодирование в реальном времени. Это то, что предоставляют большинство облачных платформ видеокодирования (что является еще одной альтернативой, если вы используете SaaS или облачные вычисления), хотя и в более широком масштабе.

9 ответов9

6

Вы можете визуализировать отдельные фрагменты видео и использовать VirtualDub для сшивания всего вместе с его режимом копирования (где он не кодирует). Это не настоящая распределенная кодировка или что-то еще, но самые простые решения иногда работают лучше всего.

4

Это бета, но функционально. Это не так просто, но это работает. Это на базе Windows и бесплатно.

СТАРЕЙШИЙ от некоторых парней Doom9

3

Вы также можете попробовать использовать это, это программное обеспечение для параллельного / распределенного кодирования для Windows, которое хорошо работает и хорошо масштабируется.

Попробуйте поискать в Google для параллельного кодера xcode.

Эти ссылки должны предоставить больше информации.

http://superscalar.pbworks.com/

2

Для Mac OS X 10.5 (я не уверен в совместимости для 10.6) раньше был VisualHub, который позволял бы вам настраивать ферму сетки в вашей локальной сети. Теперь он снят с производства, и ReduxEncoder появился как замена, но я не могу найти варианты для этого.

2

Для пользователей Final Cut Studio (только Mac)компонент x264 QuickTime работает замечательно, когда используется с кластером, созданным с использованием QMaster. Загрузите ваш фильм в Compressor, и все готово. В тестах я обнаружил приличное увеличение скорости, особенно при работе с общей точкой хранения.

2

Я большой поклонник Sony Vegas для редактирования видео в Windows ... и есть функция Network Render. :) вкусняшка

Sony Vegas Workflow

РЕДАКТИРОВАТЬ: Не слишком уверен, если это жизнеспособное решение, но вместо того, чтобы пытаться найти приложение для кодирования видео, которое поддерживает сетевой рендеринг, я попытался найти программное обеспечение, которое позволяет любому приложению использовать преимущества распределенных вычислений. И я нашел это - IAIDataShareServer.

Выглядит довольно мощно, и пример опубликованных результатов действительно великолепен. Если вы собираетесь попробовать, дайте нам знать, как это работает?

EDIT2: IAIDataShareServer, кажется, просто инструктирует машины для выполнения отдельных задач. В этой связи я попытался найти другие решения для распределенных вычислений и перечислил несколько многообещающих.

  1. JPPF
  2. Xoreax
  3. DCEZ (это выглядит хорошо)
1

Вы можете взглянуть на Media Encoding Cluster :

Media Encoding Cluster - это первое решение для кодирования с открытым исходным кодом, написанное на C/C++ для распределенного кодирования медиа (видео и аудио).

Media Encoding Cluster - это расширяемый видеокодер, который использует легкую одноранговую сетку для использования вычислительной мощности обычных ПК с целью распределения кодирования видео с высокой степенью сжатия, например MPEG4 и H.264.

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

Другой подход предложен для Nvidia по Badaboom ($ 39,99 с судом), также рассмотрен здесь :

Badaboom от Elemental использует интерфейс CvA от Nvidia, чтобы выполнять большую часть работы по копированию DVD с использованием графического процессора вместо старого процессора.

Аналогичным образом, существует также Avivo Video Converter для ATI Radeon, описанный в википедии, хотя для его работы может потребоваться некоторое усилие.

1

простой факт заключается в том, что ни один из разработчиков в мире до сих пор не удосужился написать и отправить распределенные исправления клиент / сервер общего кодирования TCP:IP / UDP для текущего x264, на сегодняшний день это 1745 см. x264.nl/

общая модель клиент / сервер хорошо понятна, как и чистая кодовая база x264, и запрос разъяснения любого кода x264 - это простой вопрос присоединения к IRC-каналу x264 dev и запроса, в течение нескольких минут у вас обычно будет ключ x264 Dev или два ответят на ваш запрос о том, как работает этот раздел кода, и даже получат практическое представление о том, как вы могли бы переписать свой развивающийся код, чтобы лучше соответствовать x264 (и x262 - новому кодеру Mpeg2, основанному на фреймворке мирового класса x264, над которым работает правильно сейчас) модель.

Так что если вы разработчик, то лучшее, что вы можете сделать для будущего качества и профессии 32/64-битное распределенное кодирование видео x264, на самом деле написать эти необходимые базовые клиент-серверные патчи, чтобы сделать один экземпляр x264 или отдельный веб / графический интерфейс Интерфейс приложения с этим новым кодом API клиент / сервер x264, который вы пишете, для активного поиска, а также назначения и передачи на лету отдельных разделов кодирования одного видео для любого нового соответствующего управляемого кода клиента x264, который вы также пишете.

Ваши новые клиенты / сервер действительно распределенные базовые патчи кодирования даже не должны быть лучшими, просто базовый, но работающий и полностью работающий код C, который тестируется и используется doom10.org/index.php?действие = непрочитанных

Так как разработчики x264, похоже, любят делать одно, то есть брать существующий медленный код на C и писать его оптимизированные версии, раздел за разделом, но вам нужно сначала представить (приветствовать исправления) фактический бета-код сначала против последний филиал OC

это стоит того, чтобы на него взглянуть, и на самом деле сегодня он пытается кодировать эти серверы x264 для многих патчей для клиентов x264, поскольку x264 только что получил 10-битную возможность кодирования глубины (что означает высокое качество High, High 10, High 4:2:2 H. 264 профилей с интенсивными вычислениями теперь доступны всем бесплатно с x264).

очень скоро будет оптимизирован для ускорения сборки http://mailman.videolan.org/pipermail/x264-devel/2010-October/007858.html

но даже одна 8-ядерная машина будет изо всех сил пытаться обеспечить высочайшее качество продукции в разумные сроки с разрешением 1080P, а вскоре и 2K и 4K со сверхвысоким значением Def и т. д., действительно простая в настройке и использовании распределенная опция стандартного кодирования x264/H.264 - только патч или два прочь

если ваш разработчик, ПОЖАЛУЙСТА, не ждите, сделайте это сегодня.

1

Хотя это может показаться излишним, Rhozet Carbon Server может собрать несколько экземпляров Carbon Coder для работы, которую вы описали.

Сайт для Rhozet Carbon Server

Несколько узлов Carbon Coder могут быть сконфигурированы как ферма транскодирования, управляемая одним или несколькими серверами Carbon. Carbon Server позволяет автоматизировать обработку задач большого объема транскодирования, отработки отказа узлов Carbon Coder, управляемых сервером, а также управлять распределением заданий, назначением приоритетов, балансировкой нагрузки, передачей по FTP, мониторингом состояния и уведомлением о заданиях.

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