понедельник, 30 апреля 2012 г.

TRP to MPG: перекодирование записей в формате Mpeg-2

Что нам понадобиться


a) Программы для работы с контейнерами:

TSDoctor [скачать]
DVR Studio Pro [скачать]
tsMuxeR [скачать]
TMPGEnc MPEG Editor [скачать]

b) Программы для обработки звука:

Adobe Audition
WAV to AC3 Encoder [скачать] (если отредактированный звук нужно сохранить в AC3)
OJOsoft Audio Converter [скачать] (если отредактированный звук нужно сохранить в MP2)

Порядок действий


1) Конвертируем TRP в TS.
Вопреки расхожему в интернете мнению, TS - это не тоже самое, что TRP. Поэтому просто переименовать TRP в TS - это не решение. Существует много транспортных контейнеров таких как TS, M2TS, TRP, REC и т. д., все они имеют отличия, хотя цель их использования одна - исправления ошибок транспортных средств, будь то плохой сигнал со спутника или царапины на Blu-ray диске. Поэтому в транспортные контейнеры добавлено много дополнительных meta-данных, значительно увеличивающих их объем по сравнению с другими контейнерами типа AVI или MKV.
По идее, перевести TRP в TS (т. е. сделать remux) - задача не сложная, но почему то я кроме программ H.264TS Cutter и TS Doctor больше нигде такой функции не нашел (для Mpeg-2 в контейнере TRP, вроде, еще программа Mpeg-VCR подходит, не проверял). В нашем случае этого достаточно, поскольку для TRP, содержащего видео в H.264, подходит H.264TS Cutter, а для TRP, содержащего видео в Mpeg-2, подходит TS Doctor. Наоборот сделать, причем, не сработает.
Примечание. Если не нужно редактировать звук, а обрезка видео производится только вначале и в конце записи, можно сразу сохранять TS в MPG и наслаждаться просмотром.
2) Извлечь звуковой поток из TS и положить его в MPA.
3) Перекодировать TS в MPG.
4) Редактируем звук (если нужно): заглушаем ненужные фрагменты (с рекламой и т. п.), увеличиваем амплитуду, конвертируем звук в монотонный. В результате сохраняем без сжатия (PCM) в контейнере WAV.

5) Кодируем звук в AC3 или MP2.

6) Собираем MPG-файл с отредактированной звуковой дорожкой.
7) Вырезаем ненужные фрагменты. Сохраняем конечный MPG-файл.
 

Инструкция


1) 
a) Запускаем TSDoctor. Выбираем File->Open. Выбираем наш TRP-файл.

 
b) Обрезаем наше видео по краям (в начале и в конце): нажимаем кнопку Prepare cutting, указываем время, с которого начать видео ("Begin at") и которым закончить ("End at"). Нажимаем OK. Если во время этого дела вдруг появилось сообщение "DirectX error: Failed to render file", не надо обращать на него внимания.


c) Указываем место для сохранения файла TS. 
Примечание: если надо отредактировать видео, вырезая части не только с начала и с конца, то в этом случае не стоит усердствовать с обрезанием видео в программе TSDoctor, нужно лишь отрезать пару секунд в начале записи (т. к. именно в начале иногда бывают ошибки, которые в дальнейшем приводят к таким неприятным вещам как отставание звука), о таких ошибках TSDoctor, если что, сообщает после создания TS-файла ("Process successfully completed! But errors occured, please check log!" - вот такие сообщения частенько возникают из-за ошибок, возникших обычно на самой первой секунде изображения (на какой секунде произошла ошибка также указывается после подтверждения сообщения), так что эти первые секунды лучше просто отрезать, и, соответственно, начинать запись на ресивере нужно тоже не впритык, а заранее). 

2) Запускаем TSMuxer GUI. Нажимаем кнопку Add, выбираем наш TS-файл. В списке "Tracks" оставляем галочку только на звуковой дорожке (там где кодек "MPEG Audio"). Параметр "Output" выбираем "Demux". Выбираем путь для сохранения файла, нажимаем кнопку "Start muxing". В итоге имеем MPA-файл.


3) Запускаем DVR Studio Pro. Добавляем наш TS-файл. 
Прежде чем перекодировать, нужно уменьшить номинальный битрейт. Ресивер автоматом выставляет значение 15 MBit/s, хотя реально битрейт редко когда перешагивает и за 6 MBit/s. Такое превышение плохо сказывается на воспроизведении "железными" плеерами, да и вообще ни к чему. Я бы рекомендовал остановиться на значении 8 MBit/s. Заходим в меню View->Settings, на вкладке Coversion должна стоять галочка на пункте "Patch bitrate (recommended)", ставим значение "8 MBit/s". 
На вкладке Directories and Paths (всё там же - View->Settings) первый параметр ("Output path...") определяет куда будут сохраняться конечные файлы, выберите нужную папку.
Выбираем "Functions->Create MPEG File". Получаем MPG-файл (промежуточный).
Примечание 1. Если не нужно редактировать звук, а обрезка видео производится только вначале и в конце записи, то на этом всё заканчивается. Полученный MPG-файл можно уже смотреть.
Примечание 2. DVR-StudioPro , которая использовалась при написания этой статьи внезапно перестала работать (т.е. вообще отказалась запускаться). Пришлось в дальнейшем использовать версию 1.56, там есть нужные функции. Скриншоты приводятся для версии 1.56. 


4) Запускаем Adobe Audition. У меня в списке на открытие файлов MPA-файл почему-то не отобразился. При этом через выделение файла, а затем "Открыть с помощью..." файл открылся без проблем.

a) Увеличиваем амплитуду. Выбираем Effects->Amplitude->Amplify. Выбираем нужное количество децибел. Чтобы узнать сколько децибел добавить, лучше всего выбрать фрагмент с самой большой амплитудой и поэкспериментировать добавления децибел к нему, верхний предел в основном окне программы (на графике) обозначен линией, после этого всё отменить и добавить децибелы уже ко всей записи.



b) Заглушка ненужных фрагментов. Имейте ввиду, речь НЕ ОБ УДАЛЕНИИ фрагментов! Удалим мы их потом, когда вместе с видеопотоком будем редактированием заниматься. Выделяем то, что надо заглушить, выбираем Effects->Mute.


НЕ КОНВЕРТИРУЙТЕ ЗВУК В МОНО, В MPG ЕГО НЕ ЗАПИХНЕТЕ ПОТОМ!

Сохраняем результат в WAV-файл. Формат: PCM (несжатый), если будем кодировать в AC3 и Microsoft ADPCM, если будем кодировать в MP2 (простой PCM программа OJOsoft Audio Converter не понимает).

5) 
5.1) Если кодируем звук в AC3
Запускаем WAV to AC3 Encoder. Нажимаем кнопку "Add files", выбираем наш WAV-файл.Справа вверху ставим галочку на "VBR", качество (Quality) оставляем на 240. Нажимаем кнопку "Encode".


5.2) Если кодируем звук в MP2.
Запускаем OJOsoft Audio Converter. Нажимаем верхнюю кнопку "Browse", выбираем наш WAV-файл. Указываем куда сохранить резултат ("Output file name"). MP2 Profile ставим в Custom. Нажимаем кнопку "Advanced". Ставим параметры 44100 Hz, Stereo, 128 KBit/s. Нажимаем кнопку "Convert". Имеем MP2-файл.

6) Запускаем TMPGEnc MPEG Editor. Нажимаем кнопку MPEG-Tools. Нам нужна первая вкладка (Multiplexer). Указываем параметры:
Format: MPEG-2 Program (VBR)
Video input: выбираем наш MPG-файл, полученный в п.3
Audio input: выбираем наш MP2-файл или AC3-файл
Output file: выбираем путь для сохранения MPG-файла

Нажимаем кнопку Start.


7) В главном окне TMPGEnc MPEG Editor нажимаем вверху "Source". Добавляем (Add file) наш MPG-файл из п.6.



В появившемся окне "Clip editions" нажимаем кнопку "Cut-edit". Удаляем ненужные фрагменты. Для выделения удаляемых фрагментов используем кнопки Sets the start frame и Sets the end frame. Удаляем фрагмент кнопкой Cuts the current selection. Нажимаем OK
Нажимаем вверху кнопку Format. Параметр Rate Control Mode должен быть установлен на "VBR (Transcode)".
Нажимаем кнопку Output. Выбираем путь для сохранения конечного MPG-файла и жмем кнопку "Start output".
Программа TMPGEnc MPEG Editor удобно редактирует видео, перекодируя лишь маленькие фрагменты, для которых вырезали ключевые кадры. В результате этого становится возможно быстро и без вреда для качества вырезать фрагменты, начиная с абсолютно любого кадра.
В итоге имеем MPG-файл с MPEG-2 неперекодированным видеопотоком, (т. е. как со спутника, без лишних потерь) и звуком AC3.

Если в дальнейшем появится желание перевести полученный результат в формат DivX посредством VirtualDub/VirtualDubMod, лучше не открывать MPG-файл через скрипт AVISynth (как это делается, рассказано, например, в п.6 инструкции из этой статьи), а лучше использовать специальную программу VirtualDub-MPEG2, она сделана на основе VirtualDub и позволяет пользоваться теми же инструментами (за исключением добавления нескольких звуковых дорожек, которые можно присоединить и потом).

Комментариев нет:

Отправить комментарий