Транспортный поток

(TS, TP, MPEG-TS, или M2TS) является протоколом для передачи аудио и видеоданных, описанным в MPEG2 Часть 1. Цель разработки этого стандарта — мультиплексирование аудио и видеоданных и синхронизация их выхода. Транспортный поток открывает возможности для исправления ошибок транспортных средств, таких как DVB и ATSC.
TS — формат медиаконтейнера который инкапсулирует пакеты элементарных потоков и других данных.

http://ru.wikipedia.org/wiki/MPEG-TS

Для пережатия этого транспортного потока в видеоконтейнер (например, в avi) проще всего воспользоваться кроссплатформенной утилитой ffmpeg.


ffmpeg


В линуксе она устанавливается одноимённым пакетом из репозиториев. В последних версиях убунты ffmpeg вытесняется утилитой avconv, сходной по синтаксису и такой же по функциональности. Не забываем также поставить набор дополнительных кодеков, имеющих ограничения на использование (патентные, конечно) в некоторых странах.


apt-get install ffmpeg avconv ubuntu-restricted-extras


В виндузе надо перейти по ссылке и скачать последнюю сборку утилиты (рекомендую Static версию, она без дополнительных библиотек).


Команда для конвертации:


ffmpeg -i "имя файла.mts" -vcodec libxvid -qscale 1 -acodec libmp3lame -ac 2 -ab 320k "имя файла (xvid).avi"


«имя файла.mts» содержит пробелы, поэтому оно, имя, заключено в кавычки. Расширение MTS приведено в качестве примера и может быть любым. Видео будет пережато с использованием кодека XviD в максимальном качестве. Аудио — кодеком mp3, в стерео с потоком 320 килобит.


Посмотреть список доступных кодеков, библиотек и сокращений можно по команде


ffmpeg -formats


Другие опции ffmpeg можно посмотреть в справочном руководстве (в линухах — man ffmpeg)




Пример команды с расширенными параметрами:


ffmpeg -i "имя файла.mts" -vcodec libxvid -s 848x480 -maxrate 4800k -b 4000k -qmin 3 -qmax 5 -bufsize 4096 -acodec libmp3lame -ac 2 -ab 160k -y "имя файла (xvid).avi"


Пример скрипта (.bat-файла для Windows), который будет конвертировать все файлы с расширением .mts в текущем каталоге:


for %%a in ("*.mts") do ffmpeg.exe -i "%%a" -vcodec libxvid -qscale 1 -acodec libmp3lame -ac 2 -ab 320k "%%~na (xvid).avi"

pause


avconv


Как уже было сказано, в убунте avconv вытесняет ffmpeg, и последний не рекомендуется к использованию. Синтаксис во многом сходен, но есть альтернативный вариант написания правил, который лично мне кажется логичнее и нравится больше. Пример одной и той же команды:


avconv -i "имя файла.mts" -vcodec mpeg4 -s 640x360 -r 25 -q 2 -acodec copy "имя файла.avi"

avconv -i "имя файла.mts" -c:v mpeg4 -s 640x360 -r 25 -q 2 -c:a copy "имя файла.avi"


Посмотреть список доступных кодеков:


avconv -codecs


По аналогии можно посмотреть список доступных форматов (-formats), фильтров (-filters), протоколов (-protocols) и т.д. (man avconv).




Если нужно преобразовывать множество .mts-файлов в один и тот же выходной формат, пишем скрипт


#!/bin/bash

avconv -i ${1} -c:v mpeg4 -s 640x360 -r 25 -q 2 -c:a copy ${1}.avi


Называем его, например, mts2avi-640x360, делаем исполняемым и помещаем в каталог /usr/local/sbin/.

После этого станет возможен запуск из любого места:


mts2avi-640x360 имя-файла.mts


В результате работы скрипта рядом с имя-файла.mts появится отконвертированный имя-файла.mts.avi.





взято тут
http://www.it-simple.ru/?p=10756

Profile

uzverss: (Default)
uzverss

December 2024

S M T W T F S
12345 67
891011121314
15161718192021
22232425262728
293031    

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 22nd, 2025 11:49 pm
Powered by Dreamwidth Studios