Я использую FFMPEG для перекодирования видео, функция которого запускается автоматически. Я пытаюсь масштабировать видео в нескольких разрешениях с сохранением пропорций (подгонка). Если исходное разрешение видео меньше разрешения, указанного в команде, пропустите перекодирование и прекратите создание выходного файла для этого разрешения.
например:
У меня есть видео с разрешением 1920x1080
выход:
- 3840х2160 (переход/стоп)
- 2560х1440 (переход/стоп)
- 1920x1080 (перейдите к выходу-1080p.mp4)
- 1280x720 (перейти к выходу-720p.mp4)
Я перепробовал много команд, но ни одна из них не работает. Могу ли я узнать, есть ли команда, способная достичь этого?
Ниже приведена последняя рабочая команда, которую я имею для FFMPEG. Извините, я очень новичок в FFMPEG, я понимаю нынешнее командование все еще далеко от того, к чему я собираюсь подойти.
ffmpeg -i sample.mp4 -c:a copy -vf scale='min(2160,iw):-2' -movflags +faststart out2160.mp4 -vf scale='min(1440,iw):-2' -movflags +faststart out1440.mp4 -vf scale='min(1080,iw):-2' -movflags +faststart out1080.mp4 -vf scale='min(720,iw):-2' -movflags +faststart out720.mp4 -vf thumbnail -vf scale='min(500,iw):-2' -vframes 1 thumb500.png -vf scale='min(270,iw):-2' -vframes 1 thumb270.png
Если образец.mp4 является 1920x1080p или даже меньшее разрешение, эта команда будет выводить эти файлы:
- out2160.МР4
- out1440.МР4
- out1080.МР4
- out720.МР4
- thumb500.png
- thumb270.png
поскольку я запускаю ffmpeg автоматически, я хочу, чтобы команда могла сравнить разрешение, которое было установлено. Если исходное разрешение видео меньше, то просто пропустите его, нет смысла создавать или масштабировать файл, который больше исходного разрешения. Только выходной же или меньшее разрешение, сохраняя пропорции (подгонка). Было бы здорово, если бы вы могли направлять меня на этом, спасибо еще раз.