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

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

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

guru431

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


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

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

  • Всего записей: 64 | Зарегистр. 28-02-2007 | Отправлено: 17:23 21-11-2012 | Исправлено: nick7inc, 12:06 23-05-2022
    NikosColev



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

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

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

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



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

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



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

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

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

    Всего записей: 2109 | Зарегистр. 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

    Всего записей: 5906 | Зарегистр. 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, чтобы показывал список глав в отдельной панели.
     

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



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

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

    Всего записей: 2335 | Зарегистр. 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кадра с начала видео не выйдет ?

    не в курсе..

    Всего записей: 5906 | Зарегистр. 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 при записи трансляций.

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



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

    Всего записей: 2335 | Зарегистр. 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

    Всего записей: 1165 | Зарегистр. 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?

    Всего записей: 5906 | Зарегистр. 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

    Всего записей: 1165 | Зарегистр. 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

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

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

    Всего записей: 5906 | Зарегистр. 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.
     
    Не пойму как её избегать...
     

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



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

    Всего записей: 2335 | Зарегистр. 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 небольшой выложите?

    Всего записей: 5906 | Зарегистр. 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
     
    ССылка на тестовые файлы.

    Вот они.

    Всего записей: 1165 | Зарегистр. 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

    Всего записей: 5906 | Зарегистр. 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

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


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

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.Board
    © Ru.Board 2000-2020

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru