StrangeAttractor: Если вопрос в том, чтобы быстро декодировать, то это другая история. В первую очередь, стоит попробовать закодировать с -tune fastdecode (тоже алиас для набора опций x264). Отключение B-кадров, возможно тоже поможет. Остальные настройки от -tune zerolatency не влияют на скорость декодирования.
Если с fastdecode всё равно тормозит, то возможно битрейт слишком высокий, и стоит попробовать его понизить. Также можно уменьшать разрешение, у ffmpeg есть опции, в каком разрешении кодировать.
По поводу MPEG2 и MPEG4, увы, помочь не смогу. Но, вообще, думаю, что и конфигурацию x264 можно упростить настолько, что сложность декодирования будет сравнимой.
@Newbilius Гугл использует для стриминга несколько форматов, как минимум H.264, VP8 и VP9. Плюс ещё несколько разрешений. Плюс ещё есть дополнительные требования к видео, вроде ограничений на мгновенный битрейт и интервал между I-кадрами.
То есть, кмк, им реально проще не париться и всегда перекодировать видео. Так что лучше всего заливать исходник в лучшем возможном качестве и смотреть, что получится. Кмк, H.264 у них вот уже несколько лет примерно такого качества, как у вас на картинке.
И если видео есть заметный шум, дрожание или мерцание, то после их подавления при том же битрейте (и других настройках кодирования) видео будет выглядеть лучше.
Да, то, что вам нужно — это уменьшить интервал между I-кадрами. Как уже написал, в ffmpeg это должно делаться с помощью параметра -g <число кадров>.
Но вообще, странно, что происходят такие сбои. Возможно, проблема в плеере, у него может быть устаревшая версия декодера, которая не поддерживает какие-то фичи формата. Или файл может быть битый.
Обычно повышенная частота I-кадров нужна для специальных случаев при передаче по сети. Например, IPTV или спутниковое вещание: телевизор не сможет показать картинку, пока не встретит в потоке I-кадр. При этом увеличение частоты I-кадров ухудшает степень сжатия. Поэтому при подборе настроек приходится искать баланс между качеством видео и временем, в среднем необходимым для «включения» картинки.
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
Если с fastdecode всё равно тормозит, то возможно битрейт слишком высокий, и стоит попробовать его понизить. Также можно уменьшать разрешение, у ffmpeg есть опции, в каком разрешении кодировать.
По поводу MPEG2 и MPEG4, увы, помочь не смогу. Но, вообще, думаю, что и конфигурацию x264 можно упростить настолько, что сложность декодирования будет сравнимой.