Команды FFmpeg: различия между версиями

Материал из ALT Linux Wiki
Строка 8: Строка 8:
==Возможности==
==Возможности==
===Конвертирование видео===
===Конвертирование видео===
avconv -i '/run/media/petr/TRANSCEND/Видео/Мультфильмы/Малыш и Карлсон/2 Карлсон вернулся.avi' /home/petr/karlson.mp4
Где -i входной файл, а следующий путь выходной. Окончание выходного файла (avi, mp4, wmv)
Для aac нужно указать параметр -strict experimental.
Если вы кроме mp4 выберите другой формат, у вас из качественного видео получится зернистое. Почему, не знаю. Поэтому я использую mp4.


===Конвертирование аудио===
===Конвертирование аудио===

Версия от 13:43, 7 февраля 2020

Avconv - библиотека для преобразования, воспроизведения, потоковой передачи и обработки аудио и видео.

Какой Avconv? Что с FFmpeg?

Если вы помните ранее везде использовался проект FFmpeg. Но что случилось, что теперь используют Avconv? Между разработчиками произошел конфликт и проект раскололся. Об этом рассказывает один из разработчиков в своем блоге. (архив) Но ничего страшного, для нас, обычных пользователей это все тот же FFmpeg, но с другим названием.

Для чего эта статья?

Когда я начал пользоваться Linux я искал различные GUI-утилиты для выполнения различных задач (установка программ, обновление системы, конвертация видео и пр.). Но, со временем мне показалось удобнее и практичнее выполнять их через консоль. Практически все конвертеры для Linux - оболочки для Avconv/FFmpeg. Но GUI либо ограничивает их возможность, либо (как в случае с WinFF) реализован в Альтах некорректно (профили работают криво и конвертация не идет). В данной статье я хотел бы рассмотреть использование Avconv в ALT Linux.

Возможности

Конвертирование видео

avconv -i '/run/media/petr/TRANSCEND/Видео/Мультфильмы/Малыш и Карлсон/2 Карлсон вернулся.avi' /home/petr/karlson.mp4

Где -i входной файл, а следующий путь выходной. Окончание выходного файла (avi, mp4, wmv)

Для aac нужно указать параметр -strict experimental.

Если вы кроме mp4 выберите другой формат, у вас из качественного видео получится зернистое. Почему, не знаю. Поэтому я использую mp4.

Конвертирование аудио

avconv -i '/run/media/petr/Transcend/Документы/Музыка/Песни/Вадим Козин/Ленинград мой.mp3' /home/petr/leningrad.ogg

Где -i входной файл, а следующий путь выходной. Окончание выходного файла (mp3, wav, ogg, wma, aac, flac)

Для aac нужно указать параметр -strict experimental.

avconv -i '/run/media/petr/Transcend/Документы/Музыка/Песни/Вадим Козин/Ленинград мой.mp3' -strict experimental /home/petr/leningrad.aac

Изменение разрешения видео

Извлечение аудиодорожки

Например, я хочу нарезать звуков из Карлсона типа "Так это вы таскали мои плюшки?!" или "Фу, как не культурно!". Я беру мультик, avi, и применяю следующую команду:

avconv -i '/run/media/petr/TRANSCEND/Видео/Мультфильмы/Малыш и Карлсон/2 Карлсон вернулся.avi' /home/petr/karlson.mp3

Получаю mp3-файл, аудиодорожку из мультфильма, открываю Audacity и вырезаю нужные моменты.

Хотя, если хотите, можно сделать это сразу. С помощью ключей -ss (начало) и -t (продолжительность) можно вырезать конкретную фразу.

avconv -ss 0:07:27 -t 0:00:07 -i '/run/media/petr/TRANSCEND/Видео/Мультфильмы/Малыш и Карлсон/2 Карлсон вернулся.avi' /home/petr/karlson.mp3

Так мы получим фразу "Убедительно просим увести ваших детей от наших голубых экранов."

Создание GIF из видео

1.Создайте каталог для временных картинок

~mkdir /frames

2. Сконвертируйте видео на маленькое разрешение и вырежьте приблизительный кусок (-ss - начало видео, -t - продолжительность.)

avconv -ss 0:04:00 -t 0:00:16 -i "/run/media/petr/TRANSCEND/Видео/Ч_б мультфильмы/Советские 1920-е/Одна из многих (1927).mp4" -strict experimental -vf scale=320:240 /home/petr/ffout.mp4

3.Переведите видео в изображения

avconv -i "/home/petr/ffout.mp4" -vf fps=10 /home/petr/frames/ffout%03d.png

Данная команда сконверитрует видео в изображения.
3.Перейдите в папку и если надо, удалите лишние кадры.
4.Создайте gif:

convert -loop 0 frames/ffout0*.png chaplin.gif

У меня получилась такая GIF-ка.

==