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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114

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

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).
     
    Сборки для Windows 7
     
    Запуск офф. сборок 7.0.1 на Windows 7  
     
    Список различных сборок.
     
    Архив старых версий ffmpeg
     
    По общим вопросам написания командных файлов есть отдельная тема "Командная строка, батники, сценарии - bat, cmd".

  • Всего записей: 67 | Зарегистр. 28-02-2007 | Отправлено: 17:23 21-11-2012 | Исправлено: ED_Sln, 08:32 02-10-2024
    NikosColev



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    А можно одной командой FFmpeg попросить вырезать фрагмент, с 00:20:10 по 00:25:10 например, и собрать без вырезанного?  

    Всего записей: 1283 | Зарегистр. 31-07-2002 | Отправлено: 13:35 13-12-2018
    los

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    NikosColev,
    Вроде бы да, нужно использовать ключ -filter_complex, с деталями не разбирался, но вы можете почитать про этот ключ и поэкспериментировать

    Всего записей: 7730 | Зарегистр. 08-09-2001 | Отправлено: 14:34 13-12-2018
    Kero1



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    а возможно без перекодировки изменить синхронизацию звука и видео, например добавить n милисекунд к началу звука ?

    Всего записей: 2554 | Зарегистр. 23-08-2011 | Отправлено: 19:55 13-12-2018
    Valery_Sh



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

    Цитата:
    Идея с главами меня сильно озадачила. Это отмирающий формат или развивающийся, где, для чего используется?

     
    С какого перепугу "отмирающий"? Если вы конкретно не умеете их готовить, то это вовсе не значит, что они никому не нужны.
     
    Нормальный плеер скачет по главам простым нажатием PageUp/PageDown и показывает список тоже элементарно.

    Всего записей: 2171 | Зарегистр. 30-06-2008 | Отправлено: 20:37 13-12-2018
    los

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Kero1,
    для *.mp4 задержка на 0.56 - у меня работает.
    ffmpeg -i test.mp4 -itsoffset 0.56 -i test.mp4 -map 0:v -map 1:a -c copy out.mp4

    Всего записей: 7730 | Зарегистр. 08-09-2001 | Отправлено: 20:43 13-12-2018
    NikosColev



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите на что ругается FFmpeg:
     
    При выполнении команды:
    ffmpeg -t 01:15 -i I:\00\ABC.mov -c copy I:\00\A.mov
     
    [mov @ 000001d72c1944e0] Non-monotonous DTS in output stream 0:0; previous: -6841, current: -6841; changing to -6840. This may result in incorrect timestamps in the output file.
     
    При выполнении команды:
    ffmpeg -i concat:"I:\00\A.mov|I:\00\B.mov" -c copy I:\00\D.mov
     
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0000018ef8a16de0] Found duplicated MOOV Atom. Skipped it
     
    ССылка на тестовые файлы.
     
    Valery_Sh
    Цитата:
    Нормальный плеер ... показывает список тоже элементарно.
    Какой-то один? - я не нашел плеера под Windows, чтобы показывал список глав в отдельной панели.
     

    Всего записей: 1283 | Зарегистр. 31-07-2002 | Отправлено: 21:38 13-12-2018
    Kero1



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

    Цитата:
    0.56
    это 56 мс ?
    это только для звука ? обрезать например 2кадра с начала видео не выйдет ?

    Всего записей: 2554 | Зарегистр. 23-08-2011 | Отправлено: 21:39 13-12-2018
    los

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    NikosColev,
    глючит он с файлами *.mp4, *.mov etc.
    создайте текстовый файл list.txt с содержанием
    file test.mov
    file test2.mov
    file test3.mov
     
    ffmpeg -f concat -i list.txt -c copy out.mov
    Kero1,

    Цитата:
    это 56 мс ?  

    56 сотых секунды.

    Цитата:
    это только для звука ?

    это - да, но можно делать и задержку видео.

    Цитата:
    обрезать например 2кадра с начала видео не выйдет ?

    не в курсе..

    Всего записей: 7730 | Зарегистр. 08-09-2001 | Отправлено: 22:06 13-12-2018
    NikosColev



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

    Цитата:
    При выполнении команды:
    ffmpeg -t 01:15 -i I:\00\ABC.mov -c copy I:\00\A.mov
     
    [mov @ 000001d72c1944e0] Non-monotonous DTS in output stream 0:0; previous: -6841, current: -6841; changing to -6840. This may result in incorrect timestamps in the output file.  

    Она, что на .ts, что на .mov создаваемых FFmpeg при записи трансляций.

    Всего записей: 1283 | Зарегистр. 31-07-2002 | Отправлено: 22:12 13-12-2018
    Kero1



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    los
    нифига не даёт
    вероятно Ссылка
    хоть  потоки файла в медиаинфо обознчены как ID 1 - Video и ID 2 - Audio, или ID 0 - Video и ID 1 - Audio

    Всего записей: 2554 | Зарегистр. 23-08-2011 | Отправлено: 22:16 13-12-2018 | Исправлено: Kero1, 22:17 13-12-2018
    NikosColev



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

    Цитата:
    ffmpeg -f concat -i list.txt -c copy out.mov

    list.txt:
    file    D:\A.mov
    file    D:\C.mov
    Что с кавычками, что без, почему-то ругается:
    [concat @ 0000022177ff6ec0] Unsafe file name 'D:A.mov'
    D:\new\list.txt: Operation not permitted

    Всего записей: 1283 | Зарегистр. 31-07-2002 | Отправлено: 22:34 13-12-2018
    los

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

    Цитата:
    нифига не даёт

    держите задержка в 2 секунды
    pw sktM59GXnAy3dw5
    _https://anonfile.com/u0U378ndbc/delay_rar
    NikosColev,
    а сделать так не пробовали?
    file A.mov
    file C.mov
    и поместить list.txt в папку с файлами *.mov и там же запустить ffmpeg?

    Всего записей: 7730 | Зарегистр. 08-09-2001 | Отправлено: 22:55 13-12-2018 | Исправлено: los, 22:56 13-12-2018
    NikosColev



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

    Цитата:
    а сделать так не пробовали?
    file A.mov
    file C.mov
    и поместить list.txt в папку с файлами *.mov и там же запустить ffmpeg?

    Всё равно ругается:

    Код:
    "I:\00\ffmpeg.exe" -f concat -i "I:\00\list.txt" -c copy I:\00\D.mov
    file    A.mov
    file    C.mov  
    [concat @ 0000016e91dc6f20] Impossible to open 'A.mov'
    I:\00\list.txt: No such file or directory
     
    file    "I:\00\A.mov"
    file    "I:\00\C.mov"
    [concat @ 0000019f8bf96f20] Unsafe file name '"I:00A.mov"'
    I:\00\list.txt: Operation not permitted
     
    file    I:\00\A.mov
    file    I:\00\C.mov
    [concat @ 0000020624fb6f20] Unsafe file name 'I:00A.mov'
    I:\00\list.txt: Operation not permitted

     
    Файлы в директории есть: https://yadi.sk/i/moufXBuW1SLDCA

    Всего записей: 1283 | Зарегистр. 31-07-2002 | Отправлено: 23:24 13-12-2018 | Исправлено: NikosColev, 23:27 13-12-2018
    Alex_Piggy

    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Доброе время
    NikosColev, los
    1)list.txt:  
    В *nix "\" - экранирующий символ. Поэтому его надо удваивать или (здесь) можно заменить на "/".
    file C:/Downloads/films/test.ts  
    file C:/Downloads/films/test.ts  
    или
    file C:\\Downloads\\films\\test.ts  
    file C:\\Downloads\\films\\test.ts  
    2) Доступ через корневые каталоги (полные пути) по умолчанию закрыт. Во избежание. Поэтому
    ffmpeg -safe 0 -f concat -i list.txt -c copy out.mov
    UPD: Да, еще что: в list.txt кавычки не нужны. Перед пробелами ставится экран:  
    file C:\\Downloads\\films\\1\ 2\ 3.ts  
     
    Kero1
    Проверил версии ffmpeg r89061 и r91974. Работает. В исходном файле резко меняется кадр 36 -  00:01.501. После выполнения команды - кадр 49 - 00:02.043
    ffmpeg.exe  -i test.ts -itsoffset 0.566 -i test.ts  -map 0:v -map 1:a -c copy out.ts -report

    Всего записей: 1906 | Зарегистр. 07-08-2002 | Отправлено: 23:26 13-12-2018 | Исправлено: Alex_Piggy, 23:30 13-12-2018
    los

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alex_Piggy,
    Спасибо за пояснение - я от windows весьма далек

    Всего записей: 7730 | Зарегистр. 08-09-2001 | Отправлено: 23:34 13-12-2018
    NikosColev



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alex_Piggy
    Доброй ночи.
     
    Спасибо, теперь конкатенирует. Но, с той же ошибкой, что и при резке:
    [mov @ 000001fdc3214f80] Non-monotonous DTS in output stream 0:0; previous: 6924210, current: 6924155; changing to 6924211. This may result in incorrect timestamps in the output file.
     
    Проблема в том, что так FFmpeg ругается на записанные им файлы в любом контейнере: .ts/mp4/mov.
     
    Не пойму как её избегать...
     

    Всего записей: 1283 | Зарегистр. 31-07-2002 | Отправлено: 23:39 13-12-2018
    Kero1



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    los
    Alex_Piggy
    спс
     
    выяснилось что в тестовом .avi co звуком wav ничего не меняется но поменял на матрёшку и получилось, всё же баг в фф.

    Всего записей: 2554 | Зарегистр. 23-08-2011 | Отправлено: 00:05 14-12-2018
    los

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

    Цитата:
    NikosColev
    ,
    можете выложить, что показывает mediainfo(полный отчет) для этих файлов?

    Цитата:
    При выполнении команды:  
    ffmpeg -t 01:15 -i I:\00\ABC.mov -c copy I:\00\A.mov

    если файл A.mov небольшой выложите?

    Всего записей: 7730 | Зарегистр. 08-09-2001 | Отправлено: 09:29 14-12-2018
    NikosColev



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    los
    Так я сразу выложил:

    Цитата:
    Подскажите на что ругается FFmpeg:
     
    При выполнении команды:
    ffmpeg -t 01:15 -i I:\00\ABC.mov -c copy I:\00\A.mov
     
    [mov @ 000001d72c1944e0] Non-monotonous DTS in output stream 0:0; previous: -6841, current: -6841; changing to -6840. This may result in incorrect timestamps in the output file.
     
    При выполнении команды:
    ffmpeg -i concat:"I:\00\A.mov|I:\00\B.mov" -c copy I:\00\D.mov
     
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0000018ef8a16de0] Found duplicated MOOV Atom. Skipped it
     
    ССылка на тестовые файлы.

    Вот они.

    Всего записей: 1283 | Зарегистр. 31-07-2002 | Отправлено: 10:43 14-12-2018 | Исправлено: NikosColev, 10:43 14-12-2018
    los

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    NikosColev,
    можете произвести операции с этими файлами под macOS с ffmpeg который я выкладывал?
    выполнил concat для A.mov и D.mov - ошибок не заметил, сейчас скачаю остальные, но вдруг проблема в вашем ffmpeg.exe.
     
    Добавлено:
    ffmpeg -t 00:01:00 -i A.mov -c copy output.mov
    нет ошибок
     
    md5 6c7e3dedd5935306374e6d5bd7a9dd77  A.mov

    Всего записей: 7730 | Зарегистр. 08-09-2001 | Отправлено: 11:21 14-12-2018
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 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 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114

    Компьютерный форум 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