Как преобразовать файл MKV в H.264/AVC с разрешением 640x360 с помощью FFMPEG?

Как преобразовать файл MKV в H.264/AVC с разрешением 640x360 с помощью FFMPEG?

У меня есть видео MKV, которое я хочу вставить в свой мобильный телефон (Nokia XM 5800) и на основеэтотЯ могу воспроизводить на нем видео в формате H.264/AVC. Исходя из того, чтоя прочитал, контейнер должен быть MP4 и я могу закодировать его с помощью кодека XVID. Проблема в том, что я не знаю как.

Поскольку я использую Linux (Arch), мне было интересно, смогу ли я добиться этого с помощью FFMPEG. Если да, то, пожалуйста, просветите меня, как это сделать. Я хочу, чтобы видео использовало собственный размер экрана устройства, 640x360, с достаточно хорошим качеством видео и звука.

Если вы можете предложить другие инструменты, которые облегчат задачу, пожалуйста, предложите их.

Я также предпочитаю инструменты командной строки, а не инструменты с графическим интерфейсом.

решение1

Авидемюксимеет полезный графический интерфейс, который позволяет изменять размер и перекодировать. mencoder(частьMPlayer) тоже может это сделать, но это тоже командная строка.

Я думаю, что ffmpegвам нужна примерно такая строка:

ffmpeg -s 640x360 -i in.mkv -vcodec libx264 -o new.mp4
  • -sустанавливает размер выходного файла
  • -iвходной файл
  • -vcodecустанавливает выходной кодек ( ffmpeg -codecsполный список см. здесь)
  • -oзадает имя выходного файла ( ffmpeg -formatsполный список см. здесь)

решение2

Разделение без перекодирования:

ffmpeg -ss [start-time] -t [length-time] -i [in-file-path] \
       -vcodec copy -acodec copy [out-file-path]

Пример:

ffmpeg -ss 00:00:00.00 -t 00:10:00.00 -i "/some/path/to/file.mp4" \
       -vcodec copy -acodec copy "/some/path/to/new file.mp4"

Связанный контент