• Как понизить латентность h.264 видео в FFMPEG не прибегая к zerolatency?

    XaLBa
    @XaLBa
    StrangeAttractor: Если вопрос в том, чтобы быстро декодировать, то это другая история. В первую очередь, стоит попробовать закодировать с -tune fastdecode (тоже алиас для набора опций x264). Отключение B-кадров, возможно тоже поможет. Остальные настройки от -tune zerolatency не влияют на скорость декодирования.

    Если с fastdecode всё равно тормозит, то возможно битрейт слишком высокий, и стоит попробовать его понизить. Также можно уменьшать разрешение, у ffmpeg есть опции, в каком разрешении кодировать.

    По поводу MPEG2 и MPEG4, увы, помочь не смогу. Но, вообще, думаю, что и конфигурацию x264 можно упростить настолько, что сложность декодирования будет сравнимой.
  • Как добиться минимальной потери качества при загрузке видео на youtube?

    XaLBa
    @XaLBa
    @Newbilius Гугл использует для стриминга несколько форматов, как минимум H.264, VP8 и VP9. Плюс ещё несколько разрешений. Плюс ещё есть дополнительные требования к видео, вроде ограничений на мгновенный битрейт и интервал между I-кадрами.

    То есть, кмк, им реально проще не париться и всегда перекодировать видео. Так что лучше всего заливать исходник в лучшем возможном качестве и смотреть, что получится. Кмк, H.264 у них вот уже несколько лет примерно такого качества, как у вас на картинке.

    И если видео есть заметный шум, дрожание или мерцание, то после их подавления при том же битрейте (и других настройках кодирования) видео будет выглядеть лучше.
  • Как понизить латентность h.264 видео в FFMPEG не прибегая к zerolatency?

    XaLBa
    @XaLBa
    Да, то, что вам нужно — это уменьшить интервал между I-кадрами. Как уже написал, в ffmpeg это должно делаться с помощью параметра -g <число кадров>.

    Но вообще, странно, что происходят такие сбои. Возможно, проблема в плеере, у него может быть устаревшая версия декодера, которая не поддерживает какие-то фичи формата. Или файл может быть битый.

    Обычно повышенная частота I-кадров нужна для специальных случаев при передаче по сети. Например, IPTV или спутниковое вещание: телевизор не сможет показать картинку, пока не встретит в потоке I-кадр. При этом увеличение частоты I-кадров ухудшает степень сжатия. Поэтому при подборе настроек приходится искать баланс между качеством видео и временем, в среднем необходимым для «включения» картинки.