-Ник

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

У меня есть довольно большая последовательность изображений, состоящая из пронумерованных кадров (вывод Maya, для чего он стоит). Изображения в настоящее время в формате Targa (.tga), но я мог бы преобразовать их в PNG или другой произвольный формат, если это имеет значение. Важно то, что у них есть альфа-канал.

Что я хочу сделать, так это программно превратить их в видеоклип. Формат на самом деле не имеет значения, но он должен быть без потерь и иметь альфа-канал. Несжатое видео в контейнере Quicktime, вероятно, будет идеальным.

Моей первоначальной мыслью было ffmpeg, но, потратив на это большую часть дня, кажется, что он вообще не поддерживает альфа-каналы. Либо я что-то упускаю, либо базовый libavcodec просто не делает этого.

Итак, что здесь правильно? Было бы неплохо использовать инструмент командной строки, такой как ffmpeg, но подойдет любое решение, которое работает в Windows и может быть вызвано из скрипта.

Примечание. Наличие альфа-канала в вашем видео не является чем-то необычным, и это действительно полезно, если вы хотите объединить его поверх другого видеоклипа или неподвижного изображения. Насколько мне известно, несжатое видео, кодек Quicktime Animation и кодек Sorenson Video 3 поддерживают прозрачность, и я слышал, что и H.264 тоже. Все, о чем мы на самом деле говорим, это 32-битная глубина цвета, и это довольно широко поддерживается; Это могут обрабатывать как файлы QuickTime .mov, так и файлы Windowss .avi, а также, возможно, и многое другое.

Quicktime Pro более чем рад превратить последовательность изображений в 32-битный файл .mov. Нажмите «Экспортировать», измените глубину цвета на «Millions of Colors +», выберите кодек Animation, настройте качество до 100, и вы получите сжатое видео без потерь с альфа-каналом, и оно будет воспроизводиться практически в любом месте, начиная с кодека был частью Quicktime с версии 1.0. Проблема в том, что Quicktime Pro не имеет какого-либо интерфейса командной строки (по крайней мере, в Windows). ffmpeg поддерживает кодирование с использованием кодека Quicktime Animation (который он называет qtrle), но поддерживает только битовую глубину 24 бита.

Проблема не в том, чтобы найти видео формат, который поддерживает альфа-канал. Quicktime Animation была бы идеальной, но даже несжатое видео должно работать. Проблема в том, чтобы найти инструмент, который его поддерживает.

Ответы на вопрос(5)

Ваш ответ на вопрос