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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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 115 116 117 118 119 120 121 122 123

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

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. Тема, посвященная сборкам ffmpeg/ffprobe, работающих под Windows XP.
    Сборки:
    От Gianluigi Tiesi
    От Reino Wijnsma
    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 | Исправлено: tmrx, 09:08 02-04-2025
    MMasutin

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    FiLinX, -i zvyk.mp3 и -c:a libmp3lame? Лишнее кодирование! copy! Основы FFmpeg! Полезны и основы BASH или Windows Batch. Примерно так [?]можно.
    echo перед FFmpeg покажет конечные команды. Для исполнения удалить echo перед FFmpeg.
    Полученный m4a (c aac возможны погрешности по времени) как внешнюю дорогу проверить в проигрывателе в местах соединения. Если надо, подогнать aac в уже упомянутом mp3DirectCut [?] или всё там делать. Последние версии уже имеют DLL для AAC.
    Менять видео сложнее!

    Всего записей: 115 | Зарегистр. 05-01-2021 | Отправлено: 21:42 22-03-2023 | Исправлено: MMasutin, 22:12 22-03-2023
    351878



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    подскажите кто нибудь. имею:
    ffmpeg.exe -i "вошло" -c:v libvpx-vp9 -crf 30 -b:v 0 -a:c libvorbis "вышло"
    на входе аудио 5.1 на выходе получаю 2.0
    как сделать чтоб кол-во каналов сохранялось, не зависимо от их кол-ва на входе?

    Всего записей: 1283 | Зарегистр. 28-03-2016 | Отправлено: 12:58 30-03-2023 | Исправлено: 351878, 13:00 30-03-2023
    los

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

    Цитата:
    на входе аудио 5.1 на выходе получаю 2.0  

    Как вы это определили?
     
    P.S.
    В команде '-a:c' замените на '-c:a'

    Всего записей: 7881 | Зарегистр. 08-09-2001 | Отправлено: 13:52 30-03-2023
    351878



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

    Цитата:
    Как вы это определили?  

    а что тут определять? как написал так и есть (mediainfo)/

    Цитата:
    В команде '-a:c' замените на '-c:a'
     
    ура, получилось)
     
    а можно пояснить -a:c замените на -c:a ? пытался покурить, не нашёл.
    (я вообще то думал что это всё как то через -map надо делать)

    Всего записей: 1283 | Зарегистр. 28-03-2016 | Отправлено: 14:17 30-03-2023 | Исправлено: 351878, 14:24 30-03-2023
    notinthewoods



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    351878
    -c:v = codec для video
    -c:a = codec для audio
    -a:c выглядит как бы странно
    ************
    В свою очередь, у меня возник такой вопрос. Вот здесь: https://trac.ffmpeg.org/wiki/Encode/VP9 написано:

    Цитата:
    Постоянное качество.
    ...
    Чтобы запустить этот режим, необходимо использовать комбинацию -crf и -b:v 0. Обратите внимание, что -b:v ДОЛЖНО быть равно 0. Установка большего значения или полное его отсутствие приведет к запуску режима ограниченного качества.

    Я пробовал кодировать несколько видео с -crf 30 -b:v 0 и те же самые видео только с -crf 30 (без -b:v 0). Разницы не увидел - байт в байт. Не устарело ли это -> -b:v 0 ? Какой смысл в этом ограничении? Ведь CRF будет кодировать именно с указанным качеством и само определит, сколько битрейта ему нужно.

    Всего записей: 514 | Зарегистр. 31-01-2015 | Отправлено: 15:53 30-03-2023
    351878



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


    Цитата:
    Не устарело ли это -> -b:v 0
    нда, интересненько
     
    -c:a эт мы все знаем)
    -a:c я просто не нашёл нигде, может конечно искал плохо?)
     

    Всего записей: 1283 | Зарегистр. 28-03-2016 | Отправлено: 21:25 30-03-2023
    los

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

    Цитата:
    -a:c я просто не нашёл нигде, может конечно искал плохо?)  

    потому что такого ключа нет.

    Всего записей: 7881 | Зарегистр. 08-09-2001 | Отправлено: 16:08 31-03-2023
    351878



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

    Всего записей: 1283 | Зарегистр. 28-03-2016 | Отправлено: 21:32 31-03-2023 | Исправлено: 351878, 00:26 01-04-2023
    los

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

    Цитата:
    эт чё скрытыч какой то?)

    его просто нет
    $ ffmpeg -i in.mp4 -c:v libvpx-vp9 -crf 30 -b:v 0 -a:c libvorbis out.mkv
    Unrecognized option 'a:c'.
    Error splitting the argument list: Option not found

    Всего записей: 7881 | Зарегистр. 08-09-2001 | Отправлено: 22:46 31-03-2023
    351878



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

    Всего записей: 1283 | Зарегистр. 28-03-2016 | Отправлено: 00:03 01-04-2023 | Исправлено: 351878, 00:26 01-04-2023
    Baltazar500



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Valery_Sh,
    Цитата:
    C пресетами для libx264 тема вечная. Если надо быстро, то можно и дефолтный пресет medium.Если железо и время не жмёт, лучше бы пресеты slow/slower
    А если железо слабенькое, но времени достаточно ? Или вы это и подразумевали ?
     
    V0lt,
    Цитата:
    Проверьте по результату не поменялись ли цвета.
    Есть много видео, в которых не прописаны параметры цвета. И плеерам приходится выдумывать эти параметры основываясь только на разрешении.
    А ffmpeg разве не может их корректно перенести при пережатии ? Совета neorion достаточно или нужны ещё какие-то манипуляции ? Определять на глаз ?
     
    neorion

    Цитата:
    При ресайзе HD>SD по идее нужно корректировать цвета. ffmpeg этого не делает автоматически, в отличии от pro софта.
     

    Код:
    -vf colormatrix=bt709:bt601,scale=960:540
    Спасибо
     
    p.s. Всем отписавшимся - спасибо за помощь
     
    p.p.s. Тут по ffmpeg появилось ещё несколько вопросов, так что озвучу их здесь же.
     
    1. Каким макаром при ремуксе mkv-ки затащить в ремукс cover- арты из оригинала. Сколько не делал пассов с метаданными - пикчи в mkv-ку не переносятся.
     
    2. Можно ли заставить ffmpeg конвертировать ass в srt со срезкой html-тегов ? Т.е. до простого текста ? Можно ли его заставить работать с субтитрами в cp1251, а не только в utf-8 ? Мб.есть более адекватное решение для конвертации субтитров из консоли, нежели fgmpeg ?

    Всего записей: 2440 | Зарегистр. 19-09-2011 | Отправлено: 05:00 01-04-2023 | Исправлено: Baltazar500, 05:10 01-04-2023
    V0lt



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

    Цитата:
    А ffmpeg разве не может их корректно перенести при пережатии ? Совета neorion достаточно или нужны ещё какие-то манипуляции ?

    Берете свое видео, берете свою версию FFmpeg (лучше 6.0+). Перекодируете и сравниваете исходник и результат в MediaInfo. Это будет самый точный ответ на ваш вопрос.

    Цитата:
    Определять на глаз ?

    Сравнение исходника и результата на глаз - это обязательное требование для качественного "пережатия".

    Цитата:
    Можно ли его заставить работать с субтитрами в cp1251, а не только в utf-8 ?

    Забудьте про cp1251 и прочее. Если хотите беспроблемной работы с текстом, то пользуйтесь UTF-8.
     
     
    Добавлено:
    Преобразовать в UTF-8 можно обычным Блокнотом или любым современным аналогом.
     
    Пример скрипта для массового преобразования из Win-1251 в UTF-8:
    ConvertWin1251toUTF8.ps1
    Код:
    $fld = 'd:\test\subtitles\'
    $flt = '*.srt'
    $encin = [text.encoding]::getencoding("windows-1251")
    $encout = [text.encoding]::getencoding("utf-8")
     
    filter recode-file {
        $content = [io.file]::readalltext($_.fullname, $encin)
        [io.file]::writealltext($_.fullname, $content, $encout)
    }
     
    dir $fld -filt $flt -file -rec|recode-file

    Всего записей: 11038 | Зарегистр. 05-02-2003 | Отправлено: 08:16 01-04-2023 | Исправлено: V0lt, 11:05 01-04-2023
    Ghost Inets1

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

    Всего записей: 2154 | Зарегистр. 30-03-2016 | Отправлено: 09:50 01-04-2023
    los

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

    Цитата:
    Можно ли его заставить работать с субтитрами в cp1251, а не только в utf-8 ?

    используйте '-sub_charenc CP1251'
    _http://trac.ffmpeg.org/wiki/ManagingOtherLanguagesThanEnglish
     

    Цитата:
    Мб.есть более адекватное решение для конвертации субтитров из консоли, нежели fgmpeg ?

    какая ОС? Субтитры отдельным файлом?

    Всего записей: 7881 | Зарегистр. 08-09-2001 | Отправлено: 11:10 01-04-2023
    Baltazar500



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

    Цитата:
    Берете свое видео, берете свою версию FFmpeg (лучше 6.0+).
    А где конкретно  6.0+ взять ? По линку в шапке  максиму 5.2-2131
    Цитата:
    Перекодируете и сравниваете исходник и результат в MediaInfo. Это будет самый точный ответ на ваш вопрос.
    Смотреть на предмет радикальных различий или что-то специфическое/конкретное ?
    Цитата:
    Сравнение исходника и результата на глаз - это обязательное требование для качественного "пережатия".  
    ОК.
    Цитата:
    Забудьте про cp1251 и прочее. Если хотите беспроблемной работы с текстом, то пользуйтесь UTF-8.
    Я то пользуюсь. А вот те кто релизит контент - зачастую нет.
    Цитата:
    Пример скрипта для массового преобразования из Win-1251 в UTF-8:  
    Есть нюанс. Что будет с сабами в UTF-8 с BOM, которые намешаны с сабами в CP1251 ? У меня iconv накидывает те самые 3 "BOM" байта в виде текста "п»ї", перегоняя из UTF-8 в UTF-8, делая сабы невалидными для ffmpeg при дальнейшей пакетной обработке. PowerShell'a у меня в наличии нет, так что глянуть скрипт в деле не могу.
    los,
    Цитата:
    используйте '-sub_charenc CP1251'  
    В том то и дело, что уже пробовал. Ловлю такое на ass - сабах с cp1251
    Код:
     
    ffmpeg -hide_banner -i "D:\test\subs\test.ASS" -sub_charenc CP1251 "D:\test\subs\test.srt"
    Input #0, ass, from 'D:\test\subs\test.ASS':
      Duration: N/A, bitrate: N/A
      Stream #0:0: Subtitle: ass
    Codec AVOption sub_charenc (set input text subtitles character encoding) specified for output file #0 (D:\test\subs\test.srt) is not an encoding option.
     

    Цитата:
    какая ОС? Субтитры отдельным файлом?
    Win7 (SP1, если играет роль) x64, субтитры отдельными файлами

    Всего записей: 2440 | Зарегистр. 19-09-2011 | Отправлено: 14:09 01-04-2023
    V0lt



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

    Цитата:
    А где конкретно  6.0+ взять ? По линку в шапке  максиму 5.2-2131

    Шапка темы > Страница загрузки > Windows builds from gyan.dev > release-builds > latest release version: 6.0 2023-03-04
    https://www.gyan.dev/ffmpeg/builds/#release-builds

    Цитата:
    Смотреть на предмет радикальных различий или что-то специфическое/конкретное ?

    Параметры видеопотока, естественно. Еще сколько раз спросите, вместо того чтобы просто сделать, что вам предложили?

    Цитата:
    Есть нюанс. Что будет с сабами в UTF-8 с BOM, которые намешаны с сабами в CP1251 ?

    Скритп, который Я привел в пример - это одно из возможных решений. Если вам не подходит, то пользуйтесь другими решениями, тем же Блокнотом.

    Всего записей: 11038 | Зарегистр. 05-02-2003 | Отправлено: 15:00 01-04-2023
    los

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

    Цитата:
     Ловлю такое на ass - сабах с cp1251

    команда неправильная, должно быть:
     
    ffmpeg -sub_charenc CP1251 -i in.ass out.srt
     

    Цитата:
    У меня iconv накидывает те самые 3 "BOM" байта в виде текста "п»ї", перегоняя из UTF-8 в UTF-8

    Какой-то странный iconv, можете выложить исходный и полученный файлы? И напишите команду для iconv которую использовали.
     

    Цитата:
    Есть нюанс. Что будет с сабами в UTF-8 с BOM, которые намешаны с сабами в CP1251 ?

    Для этого используются программы для определения кодировки - uchardet и подобные.

    Всего записей: 7881 | Зарегистр. 08-09-2001 | Отправлено: 15:15 01-04-2023
    V0lt



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

    Цитата:

    Цитата:
    используйте '-sub_charenc CP1251'
    В том то и дело, что уже пробовал. Ловлю такое на ass - сабах с cp1251

    У меня норм.

    Код:
    ffmpeg -sub_charenc CP1251 -i "win-1251.ass" "utf-8.srt"

    Всего записей: 11038 | Зарегистр. 05-02-2003 | Отправлено: 15:20 01-04-2023
    los

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

    Цитата:
    У меня норм.  

    Так у вас синтаксис команды верный в отличие от Baltazar500.

    Всего записей: 7881 | Зарегистр. 08-09-2001 | Отправлено: 15:29 01-04-2023
    V0lt



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

    Код:
    ffmpeg -i "subtitles.ass" -c:s text "subtitles.srt"

    Удаляться все тэги.
    Я не знаю, как удалить только тэги <font> и оставить другие (например, <i>).

    Всего записей: 11038 | Зарегистр. 05-02-2003 | Отправлено: 16:43 01-04-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 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123

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


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

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

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru