Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Закладки » FFmpeg

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98

Открыть новую тему     Написать ответ в эту тему

guru431

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору


FFmpeg — набор свободных библиотек с открытым исходным кодом, которые позволяют записывать, конвертировать и передавать цифровые аудио- и видеозаписи в различных форматах, а также консольная утилита ffmpeg.exe, представляющая из себя универсальный видеоконвертер.
 

Ссылки на русском:
  • Документация по FFmpeg
  • Статья «19 команд FFmpeg для любых нужд»
  • Статья «20 команд FFmpeg для начинающих»
     
    Примеры использования:
  • Преобразовать в MKV
  • Захвата с экрана, со звуком
  • Кодирование с помощью технологии Nvidia NVENC
  • Поддержка вывода Юникода в консоль Windows
  • Подготовка качественных GIF-файлов из видео при помощи FFmpeg
     
    Поддержка Windows XP
    Последний официальный билд под Windows XP от Zeranoe ffmpeg-20150525-git-8ce564e был в мае 2015. Тема (нужен TOR), посвященная сборкам ffmpeg/ffprobe, работающих под Windows XP.
    Готовые сборки, зеркало версии от 2019, 2020, 2021 года.
    Static builds by Kyle Schwarz (последний для WinXP ffmpeg-3.0-win32-static.7z).
    GUI под WinXP (ffqueue, WinFF, Video converter).
     
    Список различных сборок.
     
    По общим вопросам написания командных файлов есть отдельная тема "Командная строка, батники, сценарии - bat, cmd".

  • Всего записей: 66 | Зарегистр. 28-02-2007 | Отправлено: 17:23 21-11-2012 | Исправлено: V0lt, 16:51 27-01-2024
    vaskamy



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    cd /d "%~dp0"
    ffmpeg -i %1 -c copy -metadata:s:v:0 rotate=90 %1.mp4
    pause

    Вобщем я тут под суетился немного и выяснил что команда выше, работает с ffmpeg-5.1 (July 24, 2022)
    но не работает с новыми видами ffmpeg.
    Можно повернуть так :

    Код:
    cd /d "%~dp0"
    ffmpeg -y -i %1 -vf "transpose=2" -c:a copy %1.mp4
    pause

    но это с перекодом видео и копированием аудио.
    Пробовал через hex разворот делать - разворачивает, но это не настоящий разворот, после прогона через ffmpeg всё слетает и становится как было.
     
    Кто разбирается разъясните народу какие ффмпеги для чего годятся а то в сети их целая куча и не понятно ни чего (есть для ютуби длл ещё куча всяких сборок, чёрти что в общем, какая лучше???) всё очень интересно но ни чего не понятно.

    Всего записей: 968 | Зарегистр. 04-03-2017 | Отправлено: 10:57 23-09-2023
    los

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Вобщем я тут под суетился немного и выяснил что команда выше, работает с ffmpeg-5.1 (July 24, 2022)
    но не работает с новыми видами ffmpeg

    работает, но для новых версий рекомендуется использовать
    ffmpeg -display_rotation 90 -i in.mp4 -codec copy out.mp4

    Всего записей: 7336 | Зарегистр. 08-09-2001 | Отправлено: 12:10 23-09-2023
    V0lt



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    vaskamy

    Цитата:
    Другие команды ffmpeg работают а эта почему то нет.

    Для новых версий надо по другому. Об этом FFmpeg в предупреждениях пишет.
     
    Правильные команды:

    Код:
    ffmpeg -display_rotation 90 -i "movie.mp4" -y -c copy movie90.mp4
    ffmpeg -display_rotation 90 -i "movie.mp4" -y -c copy movie90.mkv

    Всего записей: 10507 | Зарегистр. 05-02-2003 | Отправлено: 13:12 23-09-2023
    351878



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    del

    Всего записей: 999 | Зарегистр. 28-03-2016 | Отправлено: 17:35 23-09-2023 | Исправлено: 351878, 01:50 24-09-2023
    vaskamy



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    дроплет для разных там поворотов

    Таким не умею пользоваться.

    Всего записей: 968 | Зарегистр. 04-03-2017 | Отправлено: 18:57 23-09-2023
    351878



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Таким не умею пользоваться

    пришла пора)

    Всего записей: 999 | Зарегистр. 28-03-2016 | Отправлено: 19:36 23-09-2023
    vaskamy



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    пришла пора)

    Не хочу, у меня всё просто, перетянул любое видео на кнопку в ТС и пошла обработка а ваша шняга не видит видео файл.

    Всего записей: 968 | Зарегистр. 04-03-2017 | Отправлено: 19:51 23-09-2023
    notinthewoods



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    vaskamy

    Цитата:
    шняга не видит видео файл

    Это не шняга, это "дроплет" (drop let! - брось давай!) - просто кинуть видеофайл на батник.
     
    351878
    Спасибо за батник. Только я себе изменил для удобства этот блок:

    Код:
    if !M! EQU 1 ffmpeg -hide_banner -i %%x -vf transpose=clock -crf 22 -preset faster -c:a copy "%%~nx_clock%%~xx"
    if !M! EQU 2 ffmpeg -hide_banner -i %%x -vf transpose=cclock -crf 22 -preset faster -c:a copy "%%~nx_cclock%%~xx"
    if !M! EQU 3 ffmpeg -hide_banner -i %%x -vf hflip -crf 22 -preset faster -c:a copy "%%~nx_hflip%%~xx"
    if !M! EQU 4 ffmpeg -hide_banner -i %%x -vf vflip -crf 22 -preset faster -c:a copy "%%~nx_vflip%%~xx"
    if !M! EQU 5 ffmpeg -hide_banner -display_rotation 90 -i %%x -c: copy "%%~nx_rotate-90%%~xx"
    if !M! EQU 6 ffmpeg -hide_banner -display_rotation 270 -i %%x -c: copy "%%~nx_rotate-270%%~xx"

    Что это дает:
    1. Не перезаписывает существующий файл, создает рядом новый с добавлением поясняющего суффикса в названии.
    2. Не перекодирует понапрасну аудио.
    3. Для первых четырех трансформаций, там, где идет перекодирование с фильтрацией - чуть лучше качество (crf 22 против crf 23 по умолчанию), плюс пресет побыстрей (faster против medium по умолчанию).
    4. В самом конце батника добавил:
    pause
    чтобы была возможность увидеть значения каких-то интересующих параметров (особенно при энкоде) или сообщения о возможных ошибках.

    Всего записей: 495 | Зарегистр. 31-01-2015 | Отправлено: 00:11 24-09-2023
    351878



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    vaskamy
    сам ты шняга

    Всего записей: 999 | Зарегистр. 28-03-2016 | Отправлено: 01:50 24-09-2023
    coleslaw

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    351878, пожалуйста, восстановите ваше сообщение
    ибо теряется нить комментариев, и пост notinthewoods становится непонятным - выхваченным из контекста обсуждения (про поворот видео)
    зы:

    Всего записей: 86 | Зарегистр. 17-10-2018 | Отправлено: 07:25 24-09-2023
    351878



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    есть пользователи, которые читают ру-борд (нежели комментируют), делают закладки (как я) на полезную информацию

    а есть уроды вроде vaskamy, после которых делится чем то западло

    Всего записей: 999 | Зарегистр. 28-03-2016 | Отправлено: 11:17 24-09-2023
    MMasutin

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Делиться надо! Форум для этого. Просто человек не оценил, хотя ему дали что надо - что можнo использовать в том же TC.
    Ha всякий случай, в слове droplet '-let' - уменьшительный суффикс, не глагол, по образцу applet (small application), booklet.

    Всего записей: 73 | Зарегистр. 05-01-2021 | Отправлено: 11:23 24-09-2023
    vaskamy



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    а есть уроды вроде vaskamy, после которых делится чем то западло

    Лучше чем психовать поинтересовались почему не работает у меня, а вы сразу обижаться.
     Создал я батник с вашими параметрами (ничего в нём не менял) закинул батник в папку к ffmpeg.exe  
    перетащил батник на панель ТС, потом перетащил видео на батник, вылезла окно консоли с выбором пунктов, ввёл нужную цифру пункта и нажал ентер - дальше висяк и ничего не происходит и так по всем пунктам - чего я сделал не правильно??? Пробовал также закидывать видео в папку с батником и ffmpegom и запускать батник в ручную - аналогично ничего не работает. Кто что скажет. У меня windows 7 максимальная.
     
    Добавлено:
    Вот сам батник:Ссылка
     
    Добавлено:
    Вот картинка:[img] [/img]

    Всего записей: 968 | Зарегистр. 04-03-2017 | Отправлено: 13:25 24-09-2023
    351878



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    ... поинтересовались почему не работает у меня

    потрясающе. ну просто золотой ...ы колпак. не подумал, насрал, ещё и одолжение сделал.
     
    MMasutin
    Цитата:
    Делиться надо! Форум для этого.
    с себя начни.
     
     
     

    Всего записей: 999 | Зарегистр. 28-03-2016 | Отправлено: 18:26 24-09-2023 | Исправлено: 351878, 18:27 24-09-2023
    vaskamy



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    потрясающе. ну просто золотой ...ы колпак. не подумал, насрал, ещё и одолжение сделал.


    Цитата:
    MMasutin
    Цитата:
    Делиться надо! Форум для этого.
    с себя начни.

    Это конечно не моё дело - ну вы и злюка, с вами каши не свариш.

    Всего записей: 968 | Зарегистр. 04-03-2017 | Отправлено: 18:32 24-09-2023
    notinthewoods



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    vaskamy
    Можно же легко проверить, почему не работает:

    Код:
    ffmpeg -hide_banner -display_rotation 90 -i 01.mp4 -c copy 01.mp4


    Цитата:
    File '01.mp4' already exists. Overwrite? [y/N] y
    Output 01.mp4 same as Input #0 - exiting
    FFmpeg cannot edit existing files in-place.
     
    Файл '01.mp4' уже существует. Перезаписать? [y/N] y
    Выходной файл 01.mp4 такой же, как входной #0 - выход
    FFmpeg не может редактировать существующие файлы на месте.

    Для этого либо меняют название выходного файла в той же папке, либо задают другую папку для выходного файла с тем же названием.
     
    Надеюсь, 351878 не обидится, если я опубликую отредактированный батник - Дроплет для поворота видео (6 видов) (просто бросить видеофайл на батник)
     
    Повторю внесенные изменения в исходник:
    1. Не перезаписывает существующий файл, создает рядом новый с добавлением поясняющего суффикса в названии.
    2. Не перекодирует понапрасну аудио.
    3. Для первых четырех трансформаций, там, где идет перекодирование с фильтрацией - чуть лучше качество (crf 22 против crf 23 по умолчанию), плюс пресет побыстрей (faster против medium по умолчанию).
    4. В самом конце батника добавил:
    pause
    чтобы была возможность увидеть значения каких-то интересующих параметров (особенно при энкоде) или сообщения о возможных ошибках.
     
    А это следующие изменения:
    5. Поменял местами команды ffmpeg для 5 и 6 пункта (они не соответствовали пунктам меню)
    6. Для параметра названия выходного файла пришлось добавить %%~dx%%~px (диск - путь). Это вынужденный шаг, который не требуется в большинстве случаев для обычных названий файлов. Но... Если название файла начинается на '-' (дефис), то без данного изменения получим ошибку:

    Цитата:
    Нераспознанная опция '...
    Ошибка разбиения списка аргументов: Опция не найдена

    так как дефис в командной строке имеет определенное назначение (напр. "ключ")
    Указанное изменение в коде на само название выходного файла никак не повлияет!
    7. Заменил расширение в выходном файле во всех случаях на .mp4
     
    Обоснование 7-го изменения.
    Для п. 5 и 6 в меню батника - это реально необходимо, так как, если входной файл будет напр. в контейнере mkv, webm и т.д., и сохранится с тем же расширением, то плейер запросто может проигнорировать флаг поворота в метаданных.
    Проверял в MPC-HC, VLC, WMP - реакция на mp4 адекватная - флаги работают.
    Напомню, что в п. 5 и 6 все потоки копируются, задается лишь новый соответствующий флаг.
     
    Что касается п. 1 - 4 в меню батника, то здесь как рекомендация. Дело в том, что параметры кодирования заданы из расчета на кодек AVC. Вполне резонно и упаковать это дело в mp4.
    Впрочем, на любителя. В предыдущем варианте (%%~xx для установки того же расширения, что и в входном файле) ffmpeg стал кодировать кодеком VP9, потому как таковой был в исходнике. Качество crf 22 слишком жирно для VP9. Да и скорость кодирования VP9 на порядок меньше, чем у AVC.
    ----------------------
    coleslaw
    Ваш вариант PDF содержит ошибку при копировании кода. Там, где ffmpeg для 5 и 6 команды - произошел разрыв строки. То есть, код команды, который должен быть в одной строке, фактически оказался на 2 строках.
    Именно код, не визуальное отображение документа.
    Короче, если в редакторе PDF применить пункт меню Save as Text... (батник ведь по сути тот же текстовый документ), то извлеченный (очищенный от посторонних записей) текст кода вызовет ошибку выполнения для п.5, 6.

    Всего записей: 495 | Зарегистр. 31-01-2015 | Отправлено: 20:31 24-09-2023
    vaskamy



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    notinthewoods
    Класс, всё заработало - спасибо за помощь и разъяснение, я бы сам не разобрался.

    Всего записей: 968 | Зарегистр. 04-03-2017 | Отправлено: 20:47 24-09-2023
    vaskamy



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Объясните кто знает в чём отличие ffmpeg GyanD от ffmpeg BtbN

    Всего записей: 968 | Зарегистр. 04-03-2017 | Отправлено: 10:52 25-09-2023
    V0lt



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    vaskamy
    Разные люди собирают.
    Можете еще такую команду вбить для каждой из сборок

    Код:
    ffmpeg -buildconf > ffmpeg_buildconf.txt

    ... и сравнивать полученное.
    Только это мало кому интересно, т.к. проще использовать самую полную сборку (какую из 2-х официальных часто непринципиально) и не заморачиваться.

    Всего записей: 10507 | Зарегистр. 05-02-2003 | Отправлено: 11:24 25-09-2023
    vaskamy



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Нашел вот такую команду:

    Код:
    cd /d "D:\ffmpeg\bin\"
    ffmpeg -i "%1" -i "thumbnail.jpg" -map 1 -map 0 -c copy -disposition:0 attached_pic "%1.mp4"
    pause

    Работает она только если видео и обложка находятся в папке вместе с ffmpeg.exe.
    Помогите пожалуйста сделать так чтобы можно было перетаскивать из любой папки и с произвольным именем привъюшки (обложки). Видео и обложка находятся рядом в папке - тяну видео на cmd и вуаля обложка добавилась. Возможно такое или нет?

    Всего записей: 968 | Зарегистр. 04-03-2017 | Отправлено: 11:23 26-09-2023
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98

    Компьютерный форум Ru.Board » Компьютеры » Программы » Закладки » FFmpeg


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru