Архив метки: Remake

How to encode Vegas-compatible H.264 file using FFmpeg

Recently (as part of my work on integrating Remake into the workflow of some studio) I have faced a challenge of producing H.264 file, which is compatible with Sony Vegas.

Sony Vegas is pretty picky at H.264 (AVC) files and it refuses to accept files produced using ffmpeg with default settings. After a few days of investigation I’ve managed to find a set of rules for producing a valid Vegas-compatible files, so I decided to summarize them in this blog post. I hope my readers will forgive this little proprietary note in my blog.

So, here are the things to know:

  1. Don’t use AVI container. Use MP4 instead.
  2. Vegas will read H.264/MP4 files only if you have QuickTime installed. 32-bit QuickTime is fine to make 64-bit Vegas work as well.
  3. Video file MUST be encoded at yuv420p colorspace (see this link for details).
  4. Use AAC codec for audio. With other codec file might not open in Vegas at all.
  5. Also, Vegas might ignore an audio track if its rate is 44100. Set it to 48000.
  6. For obvious reasons it’s advised to use ffmpeg’s «-fastdecode» option.

To summarize it all, here’s the ffmpeg commandline to produce an mp4 file for Vegas:

ffmpeg -y -i file.avi -c:v libx264 -c:a aac -strict experimental -tune fastdecode -pix_fmt yuv420p -b:a 192k -ar 48000 output.mp4

And if you want something really close to a lossless encoding, then you can add «-crf 1» option:

ffmpeg -y -i file.avi -c:v libx264 -c:a aac -strict experimental -tune fastdecode -pix_fmt yuv420p -crf 1 -b:a 192k -ar 48000 output.mp4

All above tested on the clean Vegas 11/12 installation, without any modifications or library hacks (which you can find a lot on the web).

From my experience, Vegas 12 decoding was extremely faster than for Vegas 11. It was able to flawlessly read 1920×2160 files, while for vegas 11 I was forced to use low-res proxies to avoid the lags.


Никаких «белых пятен»!

На прошлой неделе мы взяли важный рубеж – расправились со всеми «белыми пятнами» в демо-ролике. Всё, теперь каждый фон на своём месте.

Конечно, некоторые фоны нужно ещё обрисовывать и сейчас их таких семь. Уверен, Николай закончит их уже к концу недели – это наша следующая цель.

Среди прочих наших свершений, мы закончили работу над сценой 07. Это очень сложная сцена, потому что там есть 3D-камера. В этом случае нельзя просто обрисовывать фоны, т.к. камера постоянно вращается в 3D-пространстве и перспектива фона всё время меняется. Поэтому мы взяли готовый прорисованный фон и развернули его в UV-текстуру прямо поверх 3D-моделей зданий. Я очень тревожился за результат. Хотелось, чтобы эта сцена ничем не отличалась от всех остальных, двумерных. Кроме того, я не был уверен, что одной прорисованный текстуры хватит, и мы готовились рисовать ещё парочку – для различных ракурсов камеры. Но в итоге оказалось, что можно обойтись и одной, и, после аккуратного сведения, получилось на мой вкус очень даже неплохо. Я страшно доволен ^_^.

Развёртка прорисованного фона в текстуры

Я вот упомянул Blender и не могу не рассказать, что перейдя на Blender с «Freestyle», мы столкнулись со странным багом: один файл всегда рендерился вверх тормашками. Я этому большого значения не придал, т.к. перевернуть изображение всегда можно при композе. Но затем оказалось, что на некоторых системах (на главном сервере для рендеринга, к примеру) файл рендерился правильно, изображение не переворачивалось! Проведя небольшое расследование, мы выяснили, что проблема была в несовместимости версий библиотеки OpenEXR. Сейчас сборки мы исправили, качнуть вы их можете со страницы софта, всё как обычно.

Раз заговорили про софт, хочу ещё сказать про Remake (нашу очаровательную систему автоматического рендеринга). Если вдруг кто-то тоже случайно ей пользуется, то обращаем внимание, что за последние месяцы мы внесли несколько важных правок
и поэтому настоятелно рекомендуем пользоваться версией из development-ветки. Новую версию мы выпустим скорее всего вместе с демо-роликом «Моревны».

А дальше… Дальше я продолжу работать над сведением, цветокоррекцией, чтобы все цвета гармонично смотрелись, и добавлю эффекты освещения. Плюс, остаются шлифовка анимации, фиксы мелких проблемок и добавление спецэффектов. Ещё один приоритет недели – дополнительная работа по 3D-моделям техники. Такой вот план. Увидимся через неделю!