У меня есть файл, который заканчивается на .ts, который согласно wikipedia является файлом MPEG2. Я никогда не сталкивался с таким файлом, поэтому я хочу, чтобы он хотел, чтобы файл был более распространенным форматом / контейнером для использования на нескольких устройствах.
Я обычно рекомендую оставлять файлы в исходном состоянии, так как любое преобразование имеет шанс ввести убытки. Формат видео .ts представляет собой формат контейнера для MPEG, известный как «Транспортный поток», который чаще всего используется системами цифрового вещания (цифровой кабель, спутник и т. Д.). Многие приложения не знакомы с тем, как их декодировать, поскольку он имеет совершенно другой формат мультиплексирования, чем более обычный MPEG-контейнер, известный как «Программный поток», который используется на DVD-дисках, и то, что производится многими картами кодера. Разница между TS и PS заключается только в том, как построена структура пакета; данные A / V внутри него одинаковы.
Чтобы улучшить взаимодействие, я рекомендую преобразовать контейнер из TS в PS. Практически все части программного обеспечения, которые могут декодировать TS, могут декодировать PS, поэтому почти всегда лучше иметь PS-файл. Один из самых простых инструментов для ремуксирования, который я нашел использовать, - avidemux. Просто выберите «копировать» для видео и аудиопотоков и выберите формат контейнера «PS» для MPEG:
Затем просто сохраните результат. Это также можно сделать, используя ffmpeg. Вам просто нужно выбрать кодек копирования для каждого типа потока:
ffmpeg -i input.ts -vcodec copy -acodec copy output.mpg
От взгляда на этот поток форумов я могу превратить его в файл matroska, который я уже использую.
ffmpeg -i input.ts -vcodec copy -sameq -acodec copy -f matroska output.ts
Я смог кодировать это несмотря на нить форумов кажется, указывает, что мне нужно было скомпилировать ffmpeg из источника. Недостатком этого является то, что он не кодирует файл, поэтому файл имеет размер файла MPEG2. Больше ответов с рекомендациями по кодированию .ts-> MPEG4 помогло бы мне.
Я обычно использую HandBrake для преобразования всех видов видеофайлов в iPhone-совместимый формат. Возможно, вы можете использовать его для преобразования файлов .ts в MP4. Проверьте этот PPA HandBrake, чтобы установить его.
Фактически файлы .ts создаются DVB-S / DVB-S2-тюнерами, способными записывать потоки транспондеров и могут содержать mpg2 AC3 AAC h264 mp3, а также другие данные, т.е. телетекст или EPG. .ts файлы содержат в большинстве случаев только AV-данные, но не ограничиваются этим. VLC может напрямую воспроизводить файлы ts и давать вам некоторую информацию о некоторых из потоков в нем. Im лично использует сат-тюнер, который записывает HD-каналы в .ts-файлы (h264-видео и в большинстве случаев несколько аудио-потоков AAC mp3 mpg2). Таким образом, в основном файлы .ts могут содержать много разных вещей. Его просто контейнерный формат, созданный для отправки цифровых трансляций по беспорядочным носителям. VLC также может конвертировать betwen форматы (hevent сделал это сам)
Обработка файлов TransportStream, созданных рекордерами DVB-S, зависит от содержимого видео и аудиопотока. Для материала с качеством SD, вероятно, вы можете использовать цепочку инструментов, состоящую из ProjectX и mplex, для преобразования потока в стандартный контейнер MPEG. Если видеопоток HD, попробуйте MKVMerge преобразовать его в файл MKV. Оба способа подробно описаны в этом блоге.
Программа ffmpeg устарела в пользу avconv.
Вы можете передать те же аргументы в avconv для преобразования из транспортного потока в программный поток mpeg или matroska. [!d1 ]
MPEG:
avconv -i input.ts -acodec copy -vcodec copy output.mpg
Matroska:
avconv -i input.ts -acodec copy -vcodec copy output.mkv