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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
    amtenion

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

    Цитата:
    Если знаете точный алгоритм построения эскиза для видео заложенный в проводник Windows

    Его поможет определить вот это видео, которое можно пересжать/перепаковать в разные форматы, с разным GOP (длина между ключевых I кадров).
     

    Цитата:
    Не меняя видеопоток - нельзя

    Если это первый кадр, то можно вставить фрагмент с обложкой в начало видео с теми же параметрами, не пережимая все остальное (не забыв про сдвиг звука на ~40 мс). Да и в середину теоретически можно вставить, но тут уже придется пересжать один GOP (обычно не более 10 секунд), т.к. вряд ли угодишь на их границу.
    В XP использовался первый кадр, что было не очень практично, т.к. там обычно чернота.

    Всего записей: 171 | Зарегистр. 09-04-2022 | Отправлено: 19:55 19-05-2022 | Исправлено: amtenion, 19:58 19-05-2022
    los

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

    Цитата:
    Единственный недостаток - это то, что размер видеофайла увеличивается на размер обложки.

    так бывает не всегда, зависит от присутствия свободного места в *.mp4 и его размера.

    Всего записей: 7334 | Зарегистр. 08-09-2001 | Отправлено: 22:43 19-05-2022
    notinthewoods



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Barral
    Не суть важно, скорее для общего развития:

    Цитата:
    ffmpeg -i in.mp4 -i cover.png -map 0 -map 1 -c copy -c:v:1 png -disposition:v:1 attached_pic out.mp4

    ffmpeg жалуется на то, что -c copy нельзя совмещать с любым другим заданием -c

    Цитата:
    Multiple -c, -codec, -acodec, -vcodec, -scodec or -dcodec options specified for stream 2, only the last option '-c:v:1 png' will be used.

    Правильнее будет так:

    Цитата:
    ffmpeg -i in.mp4 -i cover.png -map 0 -map 1 -c:v:0 copy -c:a copy -c:v:1 png -disposition:v:1 attached_pic out.mp4

    Это подтверждает и  
    Stream mapping:
      Stream #0:0 -> #0:0 (copy)
      Stream #0:1 -> #0:1 (copy)
      Stream #1:0 -> #0:2 (png (native) -> png (native))

    Всего записей: 488 | Зарегистр. 31-01-2015 | Отправлено: 02:34 20-05-2022
    Barral



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    V0lt, исчерпывающе, спасибо! Остановлюсь на варианте с обложкой.
     
     
    Добавлено:
    amtenion
    los
    notinthewoods
    Спасибо, приму к сведению и буду пробовать.

    Всего записей: 6168 | Зарегистр. 24-12-2002 | Отправлено: 04:40 20-05-2022
    nick7inc



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Думаю, надо в шапку добавить следующее.
     
    Видео захват с экрана - часть 2. Захват окна программы со звуком.  
    Хочу записать прохождение игры DukeNukem 3D в оконном режиме со звуком.  
     
    Проблема №1. У меня системный блок с Win7x64 подключен к ТВ через HDMI. Команда
    Код:
    @ffmpeg -list_devices true -f dshow -i dummy
    на выходе выдаёт мне: "фиг вам" (ни одного аудио устройства не найдено), т.к. по-видимому HDMI  не считается источником аудио для записи. Решение. Теперь FFMPEG начал показывать аудио устройство с обрезанным названием "CABLE Output (VB-Audio Virtual ".
     
    Команды для FFMPEG:
    Код:
    ffmpeg -f gdigrab -framerate 15 -i desktop -f dshow -i audio="CABLE Output (VB-Audio Virtual " -qp 0 -preset ultrafast -c:v libx264 -acodec ac3 -ab 224k -ac 2 out_v.mkv

    или, если хотите только окно какого-то приложения грабить (в моём случае это программа eduke32.exe с заголовком):
    Код:
    ffmpeg -f gdigrab -framerate 15 -i title="Duke Nukem 3D: Atomic Edition - EDuke32" -f dshow -i audio="CABLE Output (VB-Audio Virtual " -qp 0 -preset ultrafast -c:v libx264 -acodec ac3 -ab 224 -ac 2 out_v.mkv

    Обратите внимание, в параметре audio перед закрывающей кавычкой стоит пробел, это не ошибка, так надо.
     
    P.S. Долго мучился с командами, всё какие-то ошибки про неверный кодек сыпались. Оказалось, что порядок параметров имеет значение: всё, что касается кодирования (кодеки, их параметры) должны быть в конце ("-qp 0" и далее, после последнего "-i" с его параметром), а всё, что касается входных данных - в начале.

    ----------
    Джин, не лезь в бутылку.

    Всего записей: 1138 | Зарегистр. 04-05-2007 | Отправлено: 21:22 22-05-2022 | Исправлено: nick7inc, 12:22 23-05-2022
    amtenion

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

    Цитата:
    Оказалось, что порядок параметров имеет значение: всё, что касается кодирования (кодеки, их параметры) должны быть в конце (-qp 0 и далее), а всё, что касается входных данных - в начале

    Точнее, разделителем является последний -i (указание входного файла).
    То, что ПЕРЕД -i указывает как декодировать источник.
     

    Цитата:
    -acodec ac3_fixed -ab 128k

    Слишком малый битрейт для ac3. Желательно не меньше 224k. И _fixed лучше убрать. Если это для скорости, то обычный ac3 кодирует так же быстро. Но в fixed может быть клиппинг.
     

    Цитата:
    По-идее нужен специальный компонент - стереомикшер, который MS удалили из стандартных устройств начиная с Win Vista

    Канал мониторинга получается, What U Hear. В XP он есть и даже в линуксе. Не знал, что в новых версиях MS от него избавилась.

    Всего записей: 171 | Зарегистр. 09-04-2022 | Отправлено: 02:25 23-05-2022 | Исправлено: amtenion, 02:26 23-05-2022
    Gideon Vi

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

    Цитата:
    Хочу записать прохождение игры

    так, на всякий случай. OBS Studio
    так же, что у amd, что у nvidia свой средства записи в наличии

    Всего записей: 8082 | Зарегистр. 02-02-2004 | Отправлено: 03:37 23-05-2022 | Исправлено: Gideon Vi, 03:38 23-05-2022
    nick7inc



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

    Цитата:
    Слишком малый битрейт для ac3. Желательно не меньше 224k. И _fixed лучше убрать. Если это для скорости, то обычный ac3 кодирует так же быстро. Но в fixed может быть клиппинг.

    Спасибо, поправил. fixed поставил, поскольку в ac3 не хотел кодировать, кодирование шло в  vorbis (часть параметров командной строки игнорировалась ввиду неправильного расположения, писал выше), вот и экспериментировал.
     
     
    Добавлено:
    Gideon Vi
    Ставить  лишний софт не хотелось, про возможности драйверов - спасибо, запомню.

    ----------
    Джин, не лезь в бутылку.

    Всего записей: 1138 | Зарегистр. 04-05-2007 | Отправлено: 11:59 23-05-2022
    LZAA

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
       Скачиваем поток:
     
        ffmpeg -i URL (Manifest mpd) -c copy video.mp4
     
       В случае динамического playlist 'ffmpeg' постоянно обращается по адресу с интервалом 1-1,5 сек. Такой вопрос: есть ли возможность каким-нибудь аргументом задать произвольный интервал?

    Всего записей: 2212 | Зарегистр. 09-01-2010 | Отправлено: 00:07 29-05-2022
    bbcby

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Добрый день. Такой вопрос.
    Нужен на выходе файл .264, 25fps, Progressive и совместимый с форматом Blu-ray.
    Существует ли в FFMPEG аналог флага fake-interlaced, который есть в x264.exe?

    Всего записей: 615 | Зарегистр. 11-06-2003 | Отправлено: 14:39 02-06-2022 | Исправлено: bbcby, 00:43 03-06-2022
    Ethereal999



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Народ, не подскажете, можно ли в сабже экспортнуть фреймы (скриншоты) из видео со временем (позицией) в имени файла? И попутно задать интервал (или на крайняк количество скриншотов), через которые делать скрины, например, через каждые 10 секунд. Чтобы было что-то вроде: video_0-00-00-000.jpg, video_0-00-10-000.jpg. Выдернуть скрины это, насколько я смог понять, не очень сложная задача, а вот с именованием по описанной выше маске я разобраться не смог.

    Всего записей: 698 | Зарегистр. 25-12-2002 | Отправлено: 23:04 05-06-2022
    artenax

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

    Цитата:
    Существует ли в FFMPEG аналог флага fake-interlaced, который есть в x264.exe?

    Опции кодировщика можно передавать из командной строки, например:

    Код:
    -x264-params fake-interlaced=1

    или так:

    Код:
    -x264opts fake-interlaced

    Разделяются они двоеточием, например:

    Код:
    -x264opts colormatrix=bt709:colorprim=bt709:transfer=bt709:fullrange=off:force-cfr:fake-interlaced

    Всего записей: 106 | Зарегистр. 11-06-2022 | Отправлено: 08:56 12-06-2022 | Исправлено: artenax, 08:59 12-06-2022
    bbcby

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    artenax
    Спасибо, в обычном режиме, через CPU, все работает. Но вот через h264_nvenc не получается.
    Программа авторинга Blu-ray не принимает. Выдает:

    Код:
    FrameRateCode is not supported in the BD standard

    Писал так:

    Код:
    -c:v h264_nvenc -x264-params fake-interlaced=1

    Всего записей: 615 | Зарегистр. 11-06-2003 | Отправлено: 13:58 16-06-2022
    Aleksoid1978



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

    Цитата:
    h264_nvenc -x264-params

    Так и при чем тут h264_nvenc и x264 ?
     
    Есть параметр bluray-compat.

    ----------
    AMD Ryzen 5 3600 /GIGABYTE B450 Gaming X /Patriot 32Gb@3200 /Kingston 500Gb M.2 /RTX 4060 /Samsung U28R550UQI /OLED Philips 55OLED707 /Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215

    Всего записей: 9225 | Зарегистр. 11-05-2006 | Отправлено: 15:56 16-06-2022 | Исправлено: Aleksoid1978, 15:59 16-06-2022
    bbcby

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Aleksoid1978параметр bluray-compat есть, но надо впихнуть в bluray 25 fps progressive.
    Через libx264 - все нормально, но есть ли такая возможность через h264_nvenc?

    Всего записей: 615 | Зарегистр. 11-06-2003 | Отправлено: 17:33 16-06-2022
    artenax

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Ну, можно кодировать в псевдоинтерлейсе в MBAFF. Хотя, это не очень эффективно, в плане качества. Флаг -tff по моему. Это же не мешает европейским издателям выпускать подобное.

    Всего записей: 106 | Зарегистр. 11-06-2022 | Отправлено: 21:10 16-06-2022 | Исправлено: artenax, 21:11 16-06-2022
    UriF

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Скатывал всякие видео с разрешением 720p & 1080p, а теперь хочу получить 480p.  Подставляю scale=858:482, меняю cfr, пробую оба кодека (h264 & h265).  Декодер срабатывает, НО краски несколько более блеклые по сравнение с оригиналом.  Копаюсь на интернете, но не могу найти параметры, которы бы отвечали за сохранение цветовой гаммы при декодинге.  Заметна разница в цветах при проигрывании Daum Pot и VLC.  На других плеерах не проверял.

    Всего записей: 816 | Зарегистр. 14-06-2004 | Отправлено: 09:35 03-07-2022 | Исправлено: UriF, 09:37 03-07-2022
    artenax

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    UriF
    При даунскейле HD>SD надо править колориметрию. ffmpeg этого не делает автоматом.

    Код:
    scale=858:482,colormatrix=bt709:bt601

    И кстати, откуда скатывалось? А то может там PC уровни, это уже другое.

    Всего записей: 106 | Зарегистр. 11-06-2022 | Отправлено: 10:03 03-07-2022
    los

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    UriF
    Эти файлы тоже отображаются по разному?
    _https://workupload.com/file/qXa3aa8hhJj
     
    artenax

    Цитата:
    При даунскейле HD>SD надо править колориметрию. ffmpeg этого не делает автоматом.  

    $ ffmpeg -i in.mp4 -s hd480 -c:v libx264 -crf 23 out.mp4
     
    $ mediainfo in.mp4
    BT.709
     
    $ mediainfo out.mp4
    BT.709

     
    или речь о чем-то другом?

    Всего записей: 7334 | Зарегистр. 08-09-2001 | Отправлено: 10:22 03-07-2022
    Gideon Vi

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

    Цитата:
    или речь о чем-то другом?


    Цитата:
    When should you use Colormatrix? (assuming HD >= 720 vertical lines i.e. 720p/1080i/1080p/etc.) :
    -for downscaling HD to SD resolutions, you should use Colormatrix (from 709 to 601)
    -i.e. to convert 720p HD DVD content to regular DVD content, use the 709 to 601 conversion and then a bilinear resize (preferable for downscaling)
    -for upscaling SD to HD resolutions, you should use Colormatrix (from 601 to 709)
    -i.e. to convert DVD content to 720p HD DVD content, use the 601 to 709 conversion and then the upscaling resizer of your choice
     

    но тема еще глубже, на самом деле )

    Всего записей: 8082 | Зарегистр. 02-02-2004 | Отправлено: 11:43 03-07-2022 | Исправлено: Gideon Vi, 11:52 03-07-2022
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 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