Я использую h264 для оптимизации MP4 в Интернете. У меня есть видео, в котором есть предположительно поврежденные кадры в первые 1-2 секунды. (Рамка приведена ниже)
О перекодировании с использованием:
ffmpeg -i orig.mp4 -c:v libx264 -crf 25 -vf scale="-2:min(ih\,720)" -b:v 600K -g 90 -c:a libfdk_aac output.mp4
В выходном MP4 эти кадры выпадают, и у меня есть выход, который начинается примерно на 1-2 секунды с задержкой по сравнению с исходным видео, что приводит к общей меньшей продолжительности времени в выходном видео.
Более того, большинство медиаплееров также пропускают эти кадры при воспроизведении (например, Quicktime Player и т. Д.). Но медиаплеер VLC смог воспроизвести это видео, не пропуская эти кадры.
Есть ли способ не пропускать кадры с помощью ffmpeg? И если возможно, можно ли эти кадры идентифицировать и исправить на видео?
Примечание. Я пробовал кодировать то же видео с помощью транскодера AWS Elastic, который фактически исправил эти кадры (кадр указан ниже):
Примечание. Исходное видео можно найти здесь - https://drive.google.com/file/d/0B9VkhR9Zu60ybXFDeno3RGpQTUE/view?usp=sharing Видео, транскодированное с помощью транскодера AWS Elsatic, можно найти здесь - https://drive.google.com/file/d/0B9VkhR9Zu60yWUVHQk5Vk5.просмотреть?usp=sharing
РЕДАКТИРОВАТЬ1: Как было предложено @Mulvya в комментариях, видео с TS-транскодированием можно найти здесь - (https://drive.google.com/file/d/0B9VkhR9Zu60yU0t6T0dMME9ZMmc/view?usp=sharing)
ffmpeg -i orig.mp4 -c copy orig.ts
и перекодируйте это. - person Gyan   schedule 13.07.2017-0.05
самое большее.0
или положительный тоже хорошо. - person Gyan   schedule 13.07.2017