Перекодирование видео для проигрывания на ТВ-приёмнике

Как правильно задавать вопросы Правильно сформулированный вопрос и его грамотное оформление способствует высокой вероятности получения достаточно содержательного и по существу ответа. Общая рекомендация по составлению тем: 1. Для начала воспользуйтесь поиском форума. 2. Укажите версию ОС вместе с разрядностью. Пример: LM 19.3 x64, LM Sarah x32 3. DE. Если вопрос касается двух, то через запятую. (xfce, KDE, cinnamon, mate) 4. Какое железо. (достаточно вывод inxi -Fxz в спойлере (как пользоваться спойлером смотрим здесь)) или же дать ссылку на hw-probe 5. Суть. Желательно с выводом консоли, логами. 6. Скрин. Просьба указывать 2, 3 и 4 независимо от того, имеет ли это отношение к вопросу или нет. Так же не забываем об общих правилах Как пример вот
no avatar

Автор темы
Амдир
Сообщения: 35
Зарегистрирован: 11 июн 2018, 20:28
Решено: 1
Благодарил (а): 8 раз
Контактная информация:

Перекодирование видео для проигрывания на ТВ-приёмнике

#1

15 сен 2021, 00:34

Добрый день!

Купил к своему телевизору внешний ТВ-приёмник Telefunken TF-DVBT261 с возможностью проигрывания видеозаписей с USB-накопителя и записи телепередач на USB-накопитель и столкнулся вот с какой проблемой. Файлы с внешнего носителя (флэшка или USB-винчестер) действительно проигрываются, причём набор поддерживаемых форматов очень широкий - можно даже фильмы в высоком разрешении смотреть на старом кинескопном телевизоре обычной чёткости. Запись телепередач на USB-накопитель тоже выполняется, но вот корректно воспроизвести потом свою собственную запись ТВ-приёмник, как оказалось, не может категорически: картинка не помещается на экране телевизора, и это не лечится (со всеми остальными записями достаточно поменять настройки отображения, но только не в этом случае).

Файлы с записанными передачами имеют расширение .ts, то есть это MPEG-2, если я правильно понимаю. Причём запись выполняется, видимо, не совсем корректно: на компьютере при проигрывании в Xplayer и в VLC отсчёт времени отображается правильно, в SMPlayer - неправильно. Xplayer в масштабе 1:1 выводит картинку размером где-то 926х510 пикселей, SMPlayer и VLC - 1048x575 (плюс-минус один-два пикселя, измерял по снимкам экрана в GIMP), а Avidemux растягивает картинку по вертикали, чтобы получился кадр с соотношением сторон 4:3. Тем не менее на компьютере эти записи воспроизводятся корректно, можно перематывать в любую сторону, звук в порядке. Я попытался их перекодировать в "привычный" MPEG-4 с помощью MEncoder в надежде, что ТВ-приёмник с перекодированными файлами справится лучше. Попробовал несколько вариантов команд; самым удачным, похоже, является следующий:

Код: Выделить всё

mmm@sholem:~$ mencoder 0000.ts -vf scale=720:400 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 -oac copy -o /dev/null
mmm@sholem:~$ mencoder 0000.ts -vf scale=720:400 -ovc lavc -lavcopts vcodec=mpeg4:mbd=2:trell:v4mv:vbitrate=2000:autoaspect:vpass=2 -oac copy -o Балатон_уменьшенный.divx.avi
Во всяком случае, после этого картинка воспроизводится корректно и на ТВ-приёмнике, и во всех трёх проигрывателях на компьютере (SMPlayer, VLC, Xplayer), но откуда-то вылезают очень странные проблемы со звуком, хотя в исходной записи звук в порядке. На ТВ-приёмнике и на компьютере в SMPlayer на отметке 13:45 звук просто пропадает (в SMPlayer на этой же отметке останавливается отсчёт времени, хотя видеоряд продолжает воспроизводиться). В Xplayer и VLC проблем вроде не возникает. Насколько мне удалось выяснить, это повторяется на всех записях телепередач, сделанных с помощью ТВ-приёмника. Нет ли какого-нибудь способа это исправить? Может быть, стоит использовать какие-то другие параметры в MEncoder? Или вообще другую программу? Или смириться с тем, что эти файлы можно будет просматривать только на компьютере?

Спасибо :-)

Аватара пользователя

hellonet
Сообщения: 2878
Зарегистрирован: 11 окт 2016, 12:58
Решено: 11
Откуда: Новосибирск
Благодарил (а): 1089 раз
Поблагодарили: 468 раз
Контактная информация:

Перекодирование видео для проигрывания на ТВ-приёмнике

#2

15 сен 2021, 06:37

Амдир писал(а):
15 сен 2021, 00:34
внешний ТВ-приёмник Telefunken TF-DVBT261
А чего такого нужно с него записывать, чего нет в интернете?

Аватара пользователя

rogoznik
Сообщения: 10038
Зарегистрирован: 27 июн 2017, 13:36
Решено: 129
Откуда: Нижний Тагил
Благодарил (а): 776 раз
Поблагодарили: 1956 раз
Контактная информация:

Перекодирование видео для проигрывания на ТВ-приёмнике

#3

15 сен 2021, 07:21

Амдир писал(а):
15 сен 2021, 00:34
Я попытался их перекодировать в "привычный" MPEG-4 с помощью MEncoder
попробуй для этого ffmpeg
ИзображениеИзображение

no avatar

Автор темы
Амдир
Сообщения: 35
Зарегистрирован: 11 июн 2018, 20:28
Решено: 1
Благодарил (а): 8 раз
Контактная информация:

Перекодирование видео для проигрывания на ТВ-приёмнике

#4

15 сен 2021, 13:16

Так MEncoder как раз и использует ffmpeg, или я что-то путаю?

В прежние годы я с той же "Культуры" довольно много всего записывал, но тогда у меня был аппаратный DVD-рекордер, записи делал на ура и проигрывал тоже без проблем. В прошлом году он помер, новых таких уже не продают, а возможность записывать телепередачи терять не хочется. Хотя Интернет, конечно, спасает во многих случаях.

Аватара пользователя

stasAiver
Сообщения: 137
Зарегистрирован: 21 фев 2019, 17:28
Откуда: Обираловка
Благодарил (а): 259 раз
Поблагодарили: 43 раза
Контактная информация:

Перекодирование видео для проигрывания на ТВ-приёмнике

#5

15 сен 2021, 14:24

В AviDemux при кодировании в "привычный MPEG-4" можно указать пропорции вывода кадра:
avidemux.png
:cool:
Изображение

Аватара пользователя

stasAiver
Сообщения: 137
Зарегистрирован: 21 фев 2019, 17:28
Откуда: Обираловка
Благодарил (а): 259 раз
Поблагодарили: 43 раза
Контактная информация:

Перекодирование видео для проигрывания на ТВ-приёмнике

#6

15 сен 2021, 14:33

Для транскодирования есть ещё ShutterEncoder, но ПМСМ, он больше подходит для работы
Изображение

Аватара пользователя

madesta
Сообщения: 2011
Зарегистрирован: 11 июн 2017, 21:47
Решено: 29
Откуда: BY
Благодарил (а): 79 раз
Поблагодарили: 430 раз
Контактная информация:

Перекодирование видео для проигрывания на ТВ-приёмнике

#7

15 сен 2021, 16:51

Как закодирована проигрываемая запись смотрите в VLC Инструменты - Информация о кодеке". Почему вы решили, что сделав снимок экрана получили правильные данные о пикселях записанного видео?
Когда вы говорите про картинку, которая не умещается на экран телевизора, то возникает вопрос: какой именно телевизор вы имеете в виду, так как из ваших слов можно понять, что он - старый кинескопный обычной чёткости. Но тогда следует понимать, что такие ТВ были предназначены для видео с соотношением сторон 4:3 и максимальным разрешением в 600-650 линий по таблице УЭИТ (давно было, уже не помню сколько точно), что соответствовало действующим в то время стандартам ТВ вещания (студийный вариант). Появляются опасения, что если вы попробуете на таком ТВ воспроизвести файл в 1080p или 2160p, то телевизор может или воспроизводить его с искажениями или просто его не воспринять.
Судя по вашему наиболее удачному варианту, максимальная возможность для такого телевизора - это сигнал не более 720p по горизонтали и 560p по вертикали. Но это чисто моё предположение.
Что касается проблем со звуком, то, по-моему, следовало бы почитать инструкцию на устройство. Там, вроде бы, перечислены поддерживаемые форматы audio. Не исключено, что вы кодируете не с рекомендуемым для устройства аудиокодеком.

no avatar

Автор темы
Амдир
Сообщения: 35
Зарегистрирован: 11 июн 2018, 20:28
Решено: 1
Благодарил (а): 8 раз
Контактная информация:

Перекодирование видео для проигрывания на ТВ-приёмнике

#8

19 сен 2021, 22:52

Попробовал немного поэкспериментировать. При пересохранении из .ts в .mp4 через AviDemux без перекодирования решается только одна проблема из двух: при воспроизведении полученного файла в SMPlayer корректно отображается отсчёт времени. Главная проблема остаётся: при воспроизведении полученного при перекодировании файла на ТВ-приёмнике картинка по-прежнему не помещается на экране телевизора. И кстати, если перекодированный файл открыть в AviDemux, то картинка всё равно растягивается по вертикали.

С ShutterEncoder экспериментирую, но собственно перекодирование, как ни странно, пока не работает. Пытался на пробу перекодировать запись с ТВ-приёмника в XviD или в H.264 - программа просто не реагирует на нажатие кнопки Start function; не могу понять, в чём дело. Получилось пересохранить файл из .ts в .avi без перекодирования - avi-файл воспроизводится, но с очень сильной рассинхронизацией звука и видео, смотреть невозможно.

Телевизор - Philips 15PT1727, он действительно старый кинескопный, обычной чёткости. Но в ТВ-приёмнике, видимо, есть функция масштабирования HD-видео для таких телевизоров. Я прокручивал в нём настоящие фильмы в HD-качестве (1280х720), загруженные из Интернета, - проигрываются идеально. Поэтому я и удивился, что этот ТВ-приёмник не может нормально проигрывать свои собственные записи.

Параметры исходной записи очень странные (в VLC интерфейс действительно удобнее, чем в SMPlayer, - спасибо за наводку). Написано, что разрешение видео 720х576, но это соответствует соотношению сторон 5:4, а запись явно широкоэкранная (возможно, поэтому AviDemux и пытается растягивать картинку по вертикали). Когда я на компьютере прокручиваю другие записи с разрешением 720х576, или широкоэкранные шириной 720 пикселей, или записи высокой чёткости с разрешением 1280х720, размеры окна проигрывателя соответствуют разрешению фильма (разрешение монитора 1280х1024, то есть записи HDReady помещаются на экране целиком и ещё место остаётся). А когда я записи с ТВ-приёмника прокручиваю на компьютере, то получается, что высота картинки 576 пикселей, а ширина чуть больше тысячи, то есть это и не PAL, и не HDReady, а что-то среднее. Но в свойствах файла это не отображается, там записано 720х576 пикселей. Кроме того, там указан кодек H.264, но при этом видеозапись продолжительностью 1 час 10 минут на диске занимает целых 1,5 Гбайт. Мне казалось, что H.264 сжимает гораздо сильнее; у меня полуторачасовые записи HDReady, загруженные с "Рутрекера", занимают всего по 2,5 Гбайт. Впечатление такое, что ТВ-приёмник, записывая передачу, указывает в файле значения параметров, не соответствующие его реальному содержанию, и это потом как раз и сбивает и его самого, и перекодировщики в компьютере. Но не могу понять, как это можно проверить и как обойти ;-(

Аватара пользователя

slant
Сообщения: 4503
Зарегистрирован: 21 июн 2017, 18:09
Решено: 98
Благодарил (а): 51 раз
Поблагодарили: 1992 раза
Контактная информация:

Перекодирование видео для проигрывания на ТВ-приёмнике

#9

20 сен 2021, 11:05

Амдир, К сожалению, в формате форума я не смогу ни объяснить ни научить из-за чего это происходит ни подсказать как обойти в качестве универсального решения. Тут требуются знания и опыт по серьезной работе с видео, и разбор конкретного случая. Единственное что могу предложить: запишите образец видео на этом тюнере длинной около минуты, и выложите где-то так, чтобы я мог его скачать (только не на яндексе - гугл или мега подойдет). Файл нужно заливать предварительно положив в архив, дабы хостинг не решил что это видео, и не пытался сам его перекодировать (что в нашем случае - портить). Посмотрю на практике, тогда возможно смогу написать вам чем и как его пережимать. Именно для вашего случая.

Аватара пользователя

madesta
Сообщения: 2011
Зарегистрирован: 11 июн 2017, 21:47
Решено: 29
Откуда: BY
Благодарил (а): 79 раз
Поблагодарили: 430 раз
Контактная информация:

Перекодирование видео для проигрывания на ТВ-приёмнике

#10

20 сен 2021, 22:23

Амдир писал(а):
19 сен 2021, 22:52
Philips 15PT1727
А имеется ли разница в размерах картинки при воспроизведении одного и то же файла через разъёмы AV и через антенный вход?

no avatar

Автор темы
Амдир
Сообщения: 35
Зарегистрирован: 11 июн 2018, 20:28
Решено: 1
Благодарил (а): 8 раз
Контактная информация:

Перекодирование видео для проигрывания на ТВ-приёмнике

#11

21 сен 2021, 00:35

slant писал(а):
20 сен 2021, 11:05
Амдир, К сожалению, в формате форума я не смогу ни объяснить ни научить из-за чего это происходит ни подсказать как обойти в качестве универсального решения. Тут требуются знания и опыт по серьезной работе с видео, и разбор конкретного случая. Единственное что могу предложить: запишите образец видео на этом тюнере длинной около минуты, и выложите где-то так, чтобы я мог его скачать (только не на яндексе - гугл или мега подойдет).
Выложил запись на Google: https://drive.google.com/file/d/1zWWuHM ... sp=sharing. Буду очень признателен, если что-нибудь получится.
madesta писал(а):
20 сен 2021, 22:23

А имеется ли разница в размерах картинки при воспроизведении одного и то же файла через разъёмы AV и через антенный вход?
Насколько я понимаю, вывод содержимого файла на телевизор через антенный вход там не поддерживается, только через видеоразъёмы. Можно саму антенну подключить не напрямую, а через ТВ-приёмник, но тогда по ней на телевизор только эфирные каналы выводятся.

Аватара пользователя

slant
Сообщения: 4503
Зарегистрирован: 21 июн 2017, 18:09
Решено: 98
Благодарил (а): 51 раз
Поблагодарили: 1992 раза
Контактная информация:

Перекодирование видео для проигрывания на ТВ-приёмнике

#12

21 сен 2021, 14:28

Амдир, Посмотрел я образец - судя по всему тюнер пишет немножко с дефектом по формату, отсюда и косяки. А пишет он сразу в h264 а не в mpeg2. Давайте пробовать варианты:

1.ffmpeg -i 0000.ts -map 0 -vcodec copy -acodec aac -f matroska output.mkv
Если пойдет - лучше всего. Такая конвертация будет наиболее быстрой т.к. не перекодируется видео - только исправляется формат потока, и пишем в другой контейнер. Звук же нужно перекодировать от греха подальше, т.к. звук тюнер пишет как раз в простой mpeg, что для такого видео несколько странно, и кстати может быть источником приколов с его пропаданием в плеерах.

2. Полное перекодирование потоков: ffmpeg -i 0000.ts -map 0 -vcodec libx264 -acodec aac -f matroska output2.mkv
Это дольше, но попутным плюсом будет уменьшение размера выходного файла где-то на четверть (может быть треть) от исходника.

Если плеер не захочет есть .MKV (предпочтительный по формату контейнера для таких кодеков), пробуем загнать это в контейнер mp4 (аналогично предыдущим по смыслу, только контейнер другой):
ffmpeg -i 0000.ts -map 0 -vcodec copy -acodec aac -f mp4 output.mp4
ffmpeg -i 0000.ts -map 0 -vcodec libx264 -acodec aac -f mp4 output2.mp4

3. Можно попутно еще убрать интерлейс полей "гребенку" - хорошо скажется на воспроизводимости видео, особенно на компьютере, но уменьшит скорость перекодирования еще больше. Однако и размер файла получится еще немного меньше:
ffmpeg -i 0000.ts -map 0 -vf yadif -vcodec libx264 -acodec aac -f matroska output3.mkv
Иногда проблемы со звуком решаются именно после такого перекодирования - если в оригинале пострадала информация нужная для синхронизации потоков. Попробуйте, если все-же вылезут проблемы в первых двух случаях.

4. Если после перекодирования, на тюнере такие файлы начнут воспроизводится вообще без звука, пробуем другие звуковые кодеки. Нужно заменить ключ -acodec aac. Варианты которые могут подойти:
-acodec ac3
-acodec libvorbis
-acodec alac

Аватара пользователя

slant
Сообщения: 4503
Зарегистрирован: 21 июн 2017, 18:09
Решено: 98
Благодарил (а): 51 раз
Поблагодарили: 1992 раза
Контактная информация:

Перекодирование видео для проигрывания на ТВ-приёмнике

#13

21 сен 2021, 14:40

Да, и говорю сразу: формат кадра исходного образца который вы предоставили: 720x576, 4:3, типичный эфирного вещания SD. Никакого современного 16:10 там нету, менять аспект при перекодировании не нужно.
Если у вас часть каналов транслируют в SD, а часть в HD - возможно нужен будет еще образец записанный с канала, где трансляция идет в HD.

Аватара пользователя

stasAiver
Сообщения: 137
Зарегистрирован: 21 фев 2019, 17:28
Откуда: Обираловка
Благодарил (а): 259 раз
Поблагодарили: 43 раза
Контактная информация:

Перекодирование видео для проигрывания на ТВ-приёмнике

#14

21 сен 2021, 22:03

Можно ещё квадратные пиксели ему подсунуть, может ему анаморф не нравится. В предоставленном ролике разрешение 16:9 достигается перекодированием 1024:576. Для формата 4:3 будет 768:576. В AviDemuxe ресайзить одно удоводьствие:
Видео можно и Mpeg2 для скорости
11.png
Собственно ресайз
avmuxa2.png
И выход Свободный, а НЕ DVD
33.png
Изображение

no avatar

Автор темы
Амдир
Сообщения: 35
Зарегистрирован: 11 июн 2018, 20:28
Решено: 1
Благодарил (а): 8 раз
Контактная информация:

Перекодирование видео для проигрывания на ТВ-приёмнике

#15

28 сен 2021, 22:48

Прошу прощения, что так долго не отвечаю, - хотелось не только перекодировать какую-нибудь реальную запись, но и просмотреть её всю целиком, чтобы убедиться, действительно ли всё в порядке.

Вроде получилось! Я в итоге использовал "гибридный" рецепт: открыл исходную запись в AviDemux и пересохранил её из .ts в "Матрёшку" с перекодированием видеопотока в "Mpeg 4 AVC (x264)" и звуковой дорожки в AAC(FDK) и с изменением размера кадра (фильтр swsResize, PAR на входе - PAL 720:576 DAR 16:9 PAR 64:45, PAR на выходе - квадратные пиксели). Единственное - swsResize по умолчанию предложил размеры на выходе 720:404, я их и принял, не стал изменять. С такими параметрами получается идеальная картинка на ТВ-тюнере, никаких проблем с синхронизацией звука и видео, и размер файла уменьшается даже не на треть, а раза в три-четыре. Я как раз всё понять не мог, почему у этих записей (в исходном виде) в H.264 такой сумасшедший битрейт, запись на 40 минут занимает чуть ли не 1,5 Гбайт на диске; после перекодирования та же запись уменьшается где-то до 400 Мбайт.

Из остальных вариантов, предложенных выше: сохранение в MP4 не понадобилось, "Матрёшку" тюнер поддерживает; простое перекодирование без ресайза не помогает - картинка по-прежнему не влезает в экран телевизора; при сохранении в MPEG2 получается файл примерно такого же размера, что и исходный, а тюнер его "переваривает" довольно плохо, чуть что - вылетает обратно в список файлов.

Спасибо огромное ещё раз за подсказки, сам я бы до этого не додумался. Для меня работа с видео - это тот ещё тёмный лес, увы... ;-(

Ответить

Вернуться в «Мультимедиа»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя