FFmpeg для m2t и Sony Bravia - не работает

-f mp4 -c:v libx264 -preset veryslow -tune grain -profile:v high422 -flags +ildct+ilme 

Я готовлю видео для потоковой передачи (DLNA) с моего NAS на старую модель Sony Bravia. Я успешно создал воспроизводимые файлы m2t (1080i) с помощью VideoStudio (AVC, high@L4, Cabac, h264, vbr max 20 Мбит/с, 25 кадров/с, чересстрочная развертка). Чересстрочная развертка важна, потому что кажется, что телевизор не может воспроизводить 1080p с NAS или USB. У меня есть старое семейное видео в формате prores/mov, которое VideoStudio не принимает в качестве входных данных, поэтому я пытаюсь преобразовать его во что-то приемлемое для телевизора с помощью FFmpeg.

  1. Я не нашел способа создавать файлы m2t с помощью FFmpeg.

  2. Предполагается, что телевизор способен обрабатывать MP4, но независимо от того, какие настройки пробовали — а я пробовал десятки, которые все хорошо воспроизводятся на VLC (включая BD-совместимые, профили PSP и другие), телевизор просто говорит «не воспроизводиться»

У кого-нибудь есть идеи для любого из двух маршрутов?

Поискав в Интернете, я узнал, что Sony Bravia известна тем, что она очень разборчива, но я уверен, что кто-то нашел ключ...? (кроме тех, кто на pavtube утверждает, что у них есть коммерческий инструмент, который делает свое дело)

FFprobe рабочего файла m2t:

Stream #0:0[0x1011]: Video: h264 (High) (HDMV / 0x564D4448), yuv420p(top first), 1920x1080 [SAR 1:1 DAR 16:9], 25 fps, 50 tbr, 90k tbn, 50 tbc 
Stream #0:1[0x1100]: Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, stereo, fltp, 384 kb/s

Свойства рабочего m2t от MediaTab:

===================== General =====================
Id                          : 0 (0x0)
Complete name               : D:\ThisWorks.m2t
Format                      : BDAV
Format info                 : Blu-ray Video
File size                   : 2.21 GB
Duration (ms)               : 21mn 10s
Overall bit rate mode       : Variable
Overall bit rate            : 14.9 Mbps
Maximum Overall bit rate    : 25.5 Mbps

===================== Video =====================
Id                          : 4113 (0x1011)
Menu ID                     : 1 (0x1)
Format                      : AVC
Format info                 : Advanced Video Codec
Formatprofile               : High@L4
Formatsettings, CABAC       : Yes
Formatsettings, ReFrames    : 2 frames
Formatsettings, GOP         : N=1
Codec Id                    : 27
Duration (ms)               : 21mn 10s
Bit rate mode               : Variable
Bit rate                    : 13.9 Mbps
Maximum bit rate            : 20.0 Mbps
Width                       : 1 920 pixels
Height                      : 1 080 pixels
Display aspect ratio        : 16:9
Frame rate                  : 25.000 fps
Color space                 : YUV
Chroma subsampling          : 4:2:0
Bit depth                   : 8 bits
Scan type                   : Interlaced
Scan type, store method     : Separated fields
Scan order                  : Top Field First
Bits/(Pixel*Frame)          : 0.269
Stream size                 : 2.06 GB (93%)

===================== Audio =====================
Id                          : 4352 (0x1100)
Menu ID                     : 1 (0x1)
Format                      : AC-3
Format info                 : Audio Coding 3
Mode extension              : CM (complete main)
Formatsettings, Endianness  : Big
Codec Id                    : 129
Duration (ms)               : 21mn 10s
Bit rate mode               : Constant
Bit rate                    : 384 Kbps
Channel(s)                  : 2 channels
Channel positions           : Front: L R
Sampling rate               : 48.0 KHz
Frame rate                  : 31.250 fps (1536 spf)
Compression mode            : Lossy
Stream size                 : 58.2 MB (3%)
Поделитесь логом ffmpeg -i file.m2tодного из рабочих файлов VideoStudio.
Спасибо! Будет ли это то, что вы ищете? Поток #0:0[0x1011]: Видео: h264 (высокий) (HDMV / 0x564D4448), yuv420p (сначала сверху), 1920x1080 [SAR 1:1 DAR 16:9], 25 кадров в секунду , 50 tbr, 90k tbn, 50 tbc Поток #0:1[0x1100]: Аудио: ac3 (AC-3 / 0x332D4341), 48000 Гц, стерео, ftp, 384 кбит/с
Дополнительная информация о рабочем файле m2t добавлена ​​в исходный пост по предложению Гьяна. Спасибо.

Ответы (2)

Пытаться

ffmpeg -i in -vf format=yuv420p,setsar=1 -g 25 -c:v libx264 -tune grain -profile:v high -refs 2 -x264opts bluray-compat=1:fake-interlaced=1:nalhrd=vbr:aud=1 -maxrate 20M -bufsize 20M -c:a ac3 -ac 2 out.ts

FFmpeg не может воспроизводиться Scan type, store method : Separated fields, но это может не иметь значения.

Изначально пришлось добавить дефис к x264opts nalhrd для проверки настройки :). К сожалению, это не сработало. Сгенерированный файл по-прежнему «не воспроизводится». Заметил, что вывод был прогрессивным, поэтому убрал "фейк". К сожалению, до сих пор не играбельно. Сгенерированный вывод имеет tbr 25, где у рабочего 50 - не знаю, проблема ли в этом.
` заказ: Рабочий m2t, предложение Гьяна ... и без 'fake-' Поток #0:0[0x1011]: Видео: h264 (высокий) (HDMV / 0x564D4448), yuv420p (сначала сверху), 1920x1080 [SAR 1:1 DAR 16:9], 25 кадр/с, 50 ​​tbr, 90k tbn, 50 tbc Поток #0:0[0x100 ]: Видео: h264 (High) ([27][0][0][0] / 0x001B), yuv420p( прогрессивный), 1920x1080 [SAR 1:1 DAR 16:9], 25 кадров в секунду, 25 tbr, 90k tbn, 50 tbc Поток #0:0[0x100]: Видео: h264 (Высокий) ([27][0][0] ][0]/0x001B), yuv420p(сначала сверху), 1920x1080 [SAR 1:1 DAR 16:9], 25 кадров в секунду, 25 tbr, 90k tbn, 50 tbc`
Вывод должен быть прогрессивным, но помечен как чересстрочный, поэтомуfake
Спасибо, но независимо от того, есть ли вывод fake-interlecedили interlacedBravia отказывается его воспроизводить :( Есть ли шанс, что вывод покажет tbr, равный 50?
Добавлять-r 50 -vsync vfr
Спасибо, но при этом tbr остался прежним, а fps вырос до 50, а tbc до 100.
Поделитесь небольшим примером вашего ввода.
Конечно - есть ли способ сделать это?

Эврика!

После многих поздних ночей и долгих поисков мне удалось создать настройку ffmpeg, которая создает чересстрочное 1080i, которое моя старая (2009 г.) Sony Bravia может передавать с моего NAS. Это командная строка:

ffmpeg -y -i in.mov -c:v libx264 -pix_fmt yuv420p -level 4.0 -refs 1 ^
-x264opts b-pyramid=0:bluray-compat=1:interlaced=1:nal-hrd=vbr:aud=1 -maxrate 20M -bufsize 30M ^
-c:a ac3 -b:a 384k -f mpegts out.m2ts

Я думаю, что одним из важнейших элементов была установка правильного уровня. Телевизор может обрабатывать -refs 1 и 2.

Я не могу сказать, что понимаю всю глубину всех настроек и опций, и любые предложения по улучшению приветствуются!

M2ts, сгенерированный ffmpeg, имеет tbr 25:

Stream #0:0[0x100]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p(top first), 1920x1080 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc
Stream #0:1[0x101](eng): Audio: ac3 ([129][0][0][0] / 0x0081), 48000 Hz, stereo, fltp, 384 kb/s

... в то время как исходный «рабочий файл m2t» имел tbr 50. Не знаю, что это значит, и, по крайней мере, похоже, это не имеет значения

В качестве входного сигнала используется dnxhd 1080i от Davinci Resolve (к сожалению, у DR очень мало возможностей для чересстрочного вывода).