LINUX.ORG.RU

Почему видео записанное с использованием libx264 нельзя загрузить на популярные платформы?

 ,


0

1

Возможно я чтото упускаю и не знаю…

На двух версиях проверил ffmpeg version 4.3 и ffmpeg version 4.3.1 (последняя доступная в пакетах)

Проблема:

Ни Твитер ни Инстаграм не принимают видео записанное в mp4 с libx264, с любыми параметрами. Возможно у них чтото изменилось о чем я не в курсе…

Если сменить кодировщик с libx264 на другой (h264_nvenc я перезаписал все и загрузил нормально) то все работает, и видео загружается.

Смотрел багтрекер ffmpeg там нет багов связанных с этим… странно не может быть что такое только у меня.

Я как-то тоже пытался приложить видео, закодированные libx264, там цвета были искажены. Перекодировал при помощи h264_nvenc, стало нормально.

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

И ещё, насколько я помню, в свойствах файла информация о кодеке немного отличалась, но не помню как именно.

ZenitharChampion ★★★★★
()
Последнее исправление: ZenitharChampion (всего исправлений: 3)
Ответ на: комментарий от anonymous

И выхлоп mediainfo для файла который принимают и который не принимают

MrClon ★★★★★
()

В twitter, например, нельзя загружать не-16:9. Возможно, пытаетесь загрузить квадратное видео?

Также аудиокодек должен быть AAC, mp3 не принимает. Используйте энкодер fdk_aac, т.к. встроенный «aac» в ffmpeg просто ужасен по качеству.

ValdikSS ★★★★★
()
Ответ на: комментарий от anonymous

два видео в архиве (4мб архив) https://disk.yandex.ru/d/E2BVpgDwZhBwKg

записано с одними и темиже параметрами но разными кодеками, видео libx264 не принимается соцсетями

svv20624
() автор топика
Ответ на: комментарий от ValdikSS

Возможно, пытаетесь загрузить квадратное видео?

Одно и тоже видео одни и теже параметры только кодек разный, одно принимается другое нет…

Банально перекодировать видео которое принимается этой командой ffmpeg -i h264_nvenc.mp4 test.mp4 и оно перестанет приниматься.

svv20624
() автор топика
Ответ на: комментарий от svv20624

Чего это не работает если работает?

$ mediainfo libx264.mp4 | grep subsampling
Chroma subsampling                       : 4:4:4

$ ffmpeg-new -i libx264.mp4 -pix_fmt yuv420p -c:v libx264 libx264-2.mp4

$ mediainfo libx264-2.mp4 | grep subsampling
Chroma subsampling                       : 4:2:0

Для веба наверное стоит добавить ещё -movflags +faststart чтобы метадата была в начале файла, нужно для перемотки без полного скачивания

MrClon ★★★★★
()
Ответ на: комментарий от MrClon

спасибо разобрался

у меня при использовании -pix_fmt yuv420p всегда был шум вместо картинки, у меня была неточность в команде ffmpeg и использовался один формат для ввода и вывода

svv20624
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.