Материал для монтажа В этой заметке я подготовил несколько скриптов для Nautilus, с помошью которых вы можете подготовить материал, снятый на камеру, для монтажа, в 2 клика:
Для чего нужно вообще преобразовывать файлы с камеры для монтажа? К примеру у меня камера генерирует файлы *.MTS. В максимальном качестве компьютер даже не успевает его даже воспроизвести — делает это с остановками. Но это не так страшно, Blender вобще не может найти нужный кадр: по каким-то причинам воспроизведение не с ключевого кадра не выходит не у одной из програм. Но даже если у Вас камера пишет хорошие файлы, которые хорошо воспроизводятся — Вы можете испытать проблемы со скоростью в монтаже. Дело в том, что большинство кодеков, которые сжимают видеопоток предназначены только для линейного воспроизведения. Обычный кодек создает видеопоток таким образом: есть ключевые кадры и цепь изменений между ними. Наверняка вам попадались «испорченные» видеофайлы, где, например, на ключевом кадре попадались артефакты — пятна или чтото в этом роде, и потом эти пятна «путешествовали» по лицам или рукам героев, а затем в определенный момент картинка «прояснялась». Это и был как раз шаг ключевых кадров. Не имея возможности узнать, как выглядит кадр, видеоплеер продолжал перемещать кусок картинки с неверными данными до следующего ключевого кадра. Т.е чтобы например найти определенный кадр, монтажному столу необходимо отыскать предыдущий ключевой кадр, прочитать все даные об изменениях до текущего кадра и выполнить эти изменения. Не слишком рационально, правда? Сначала я решил кодировать файлы кодеком RAW. Эта вещь вообще кадры не кодирует, сохраняет без сжатия. Если у Вас на диске места полно, скорость чтения превышает немыслимую — это Ваш вариант. Но обычно либо места не очень много (нужно около 500ГБ на час видео) либо скорость чтения не ахти. Так-что лучше выход использовать специальный кодек для монтажа. Специалисты рекомендуют 2 варианта: Aple ProRes и Avid DNxHD. Если с первым не совсем понятно, то второй доступен и его можно получить через ffmpeg и avconv: avconv -i «input_file» -r <FPS> -vcodec dnxhd -b <bitrate> -pix_fmt yuv422p «output_file» Воспользуйтесь табличкой, чтобы выбрать подходящий формат и разрешение:
Project Format
Resolution
Frame Size
Bits
FPS
<bitrate>
1080i / 59.94
DNxHD 220
1920×1080
8
29.97
220M
1080i / 59.94
DNxHD 145
1920×1080
8
29.97
145M
1080i / 50
DNxHD 185
1920×1080
8
25
185M
1080i / 50
DNxHD 120
1920×1080
8
25
120M
1080p / 25
DNxHD 185
1920×1080
8
25
185M
1080p / 25
DNxHD 120
1920×1080
8
25
120M
1080p / 25
DNxHD 36
1920×1080
8
25
36M
1080p / 24
DNxHD 175
1920×1080
8
24
175M
1080p / 24
DNxHD 115
1920×1080
8
24
115M
1080p / 24
DNxHD 36
1920×1080
8
24
36M
1080p / 23.976
DNxHD 175
1920×1080
8
23.976
175M
1080p / 23.976
DNxHD 115
1920×1080
8
23.976
115M
1080p / 23.976
DNxHD 36
1920×1080
8
23.976
36M
1080p / 29.7
DNxHD 45
1920×1080
8
29.97
45M
720p / 59.94
DNxHD 220
1280×720
8
59.94
220M
720p / 59.94
DNxHD 145
1280×720
8
59.94
145M
720p / 50
DNxHD 175
1280×720
8
50
175M
720p / 50
DNxHD 115
1280×720
8
50
115M
720p / 23.976
DNxHD 90
1280×720
8
23.976
90M
720p / 23.976
DNxHD 60
1280×720
8
23.976
60M
FPS для меня критичен, тк камера снимает 50 кадров в сек. Если вам не нужно менять FPS — параметр -r не обязателен.
В приложении мой файл для кодирования файлов. Его нужно поместить в папку. Удалите так-же расширение.txt и отметье файл исполняемым. gnome 2: ~/.gnome2/nautilus-scripts gnome 3: ~/.local/share/nautilus/scripts Он сохраняет 2 варианта битрейта: 36М и 120М. Если вам это не нужно, откройте файл и удалите строку с ненужным битрейтом. Так-же исправьте FPS если необходимо. После того как файл будет на месте просто выделяйте в Nautilus нужный файл и выбирайте в контекстном меню ваш скрипт. Результат работы исходник заменять не будет, а будет сохранен в той-же папке с префиксом DNxHD