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

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

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

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 года. Static builds by Kyle Schwarz (последний для WinXP ffmpeg-3.0-win32-static.7z).

  • Всего записей: 64 | Зарегистр. 28-02-2007 | Отправлено: 17:23 21-11-2012 | Исправлено: Kero1, 22:28 15-06-2021
    Stone_01



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    При кодировании многоканального потока ffmpeg выдает такое предупреждение:
     
    guessed channel layout for input stream #0.0 : 5.1
     
    Подскажите пожалуйста  ключ чтобы сообщить ffmpeg что на входе идет поток шестикальный.

    Всего записей: 351 | Зарегистр. 22-12-2017 | Отправлено: 01:51 09-04-2018 | Исправлено: Stone_01, 01:52 09-04-2018
    V0lt



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

    Всего записей: 9323 | Зарегистр. 05-02-2003 | Отправлено: 18:31 09-04-2018
    Stone_01



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

    Цитата:
    5 + 1 = 6

    И что это было, это такой юмор? Очень смешно.
    У меня на входе идет 5.1 wav файл(шестиканальный) я его кодирую в ac3 дорогу.
     
    Как мне убрать данное предупреждение, что нужно прописать?
     
     

    Всего записей: 351 | Зарегистр. 22-12-2017 | Отправлено: 22:57 09-04-2018
    YSF



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Stone_01, предупреждение не является ошибкой, ты переводить его хоть пытался?, ничего прописывать не надо, для этой дороги в ac3 укажи каналы -ac 6 или -ac 2, 6 в 2 перекодировать лучше, например, так:
     
    -c:a ac3 -ac 2 -ar 48000 -ab 640k -dialnorm -24 -dsur_mode 0 -dmix_mode 2

    Всего записей: 2132 | Зарегистр. 06-05-2006 | Отправлено: 00:36 10-04-2018
    Stone_01



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    YSF
    Спасибо,что отклинкунлись.
    Да конечно переводил данную фразу и согласно переводу получается,что ffmpeg предполагает что ему подают на вход поток с  5.1 каналами. На сколько я понял по умолчанию ffmpeg заточен на входящие каналы в моно и стерео. А при подаче многоканальных файлов, например шестиканального как в моем случе, ffmpeg сам автоматически пытается его определить.
    Я догадался что желтое предупреждение, это не критичная ошибка .
     
    Данные ключи у меня прописаны: -c:a ac3 -ac 6 -ar 48000 -ab 640k output.ac3
     
    Я хочу понять для себя как полностью убрать данное предупреждение, что нужно прописать дополнительно?
    Подскажите пожалуйста.

    Всего записей: 351 | Зарегистр. 22-12-2017 | Отправлено: 00:47 10-04-2018 | Исправлено: Stone_01, 00:52 10-04-2018
    lvqcl

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

    Цитата:
    и согласно переводу получается,что ffmpeg предполагает что ему подают на вход поток с  5.1 каналами.

    А что, это не так?
     

    Цитата:
    Я хочу понять для себя как полностью убрать данное предупреждение

      -channel_layout 5.1 -i input.wav ......

    Всего записей: 797 | Зарегистр. 03-02-2007 | Отправлено: 01:20 10-04-2018
    Stone_01



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

    Цитата:
    А что, это не так?  

    Все так, ffmpeg правильно определил количество каналов автоматически, по умолчанию.
    Но я хотел все таки убрать данное предупреждение.
     
    Благодарю вас. Все получилось!!!
     
    ==================================
     
    Добавлено:
    В лицензионных кодировщиках формата AC3 есть опция  "90 Degree phase shift".
    Читал в документации FFMPEG что в 2018 году ее также добавили и теперь можно ее задействовать, через фильтры "afir".
     
    Подскажите пожалуйста как правильно прописать включение данной опции?

    Всего записей: 351 | Зарегистр. 22-12-2017 | Отправлено: 01:28 10-04-2018 | Исправлено: Stone_01, 01:43 10-04-2018
    YSF



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Stone_01
     
    по фильтрам для примера - нормализация громкости: -af "volume=2:0.2"
    по остальным не ленись и почитай здесь: FFmpeg Filters Documentation
    конкретно по aphaser здесь: https://ffmpeg.org/ffmpeg-filters.html#aphaser (даже стесняюсь спросить зачем оно тебе)
     
    FFmpeg Bug Tracker and Wiki - есть поиск
    FFmpeg - Русскоязычная документация по Ubuntu - есть поиск
    FFmpeg — Rosalab Wiki - на могучем с поиском

    Всего записей: 2132 | Зарегистр. 06-05-2006 | Отправлено: 12:04 10-04-2018 | Исправлено: YSF, 12:10 10-04-2018
    Stone_01



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    YSF
    Спасибо за ссылки, ссылки на ffmpeg и русскоязычный сайт ubuntu  мне давно были известны, но я не смог найти ответ в них на свой вопрос.
    Поэтому и спрашиваю здесь.В третьей ссылке "rosalab" посмотрел, тоже не нашел информации по данному вопросу.
     
    Посмотрел aphaser, ты считаешь что через этот эффект надо задуйствовать данную опцию?
     
    Посмотри пожалуйста раздел "8.6 hilbert" в документации ffmpeg, в нем как раз и идет речь о данной опции.
    Как ее задействовать?
     
     

    Всего записей: 351 | Зарегистр. 22-12-2017 | Отправлено: 13:56 10-04-2018 | Исправлено: Stone_01, 14:35 10-04-2018
    YSF



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Stone_01, синтаксис команды -lavfi afir (применяются параметры по умолчанию), пример в документации "7.12.1 Examples"
    ещё почитать можно здесь

    Всего записей: 2132 | Зарегистр. 06-05-2006 | Отправлено: 16:02 10-04-2018
    Stone_01



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    YSF
    Не совсем понимаю, что просиходит если дописать "-lavfi afir "
    Какие параметры применяются?
    В примере 7.12.1 Examples, идет речь о реверберации. Не совсем то что нужно.
    А как написать задействовании фильтра afir, это понятно согласно данному примеру. Но этого не достаточно.
     
     
    Как еще вариант.Я знаю что данная функция "90 degrees phase shift" также есть в утилите SOX.
    Можешь подсказать как прописать обращение к библиотекам SOX в коде ffmpeg?
     
     
     
    Добавлено:
    ==========================================
    На сайте git.videolan.org, пишут следующее
     
    +The resulting stream can be used with @ref{afir} filter for phase-shifting
    +the signal by 90 degrees.
    Ссылка
    Информация от 04 января 2018 года.

    Всего записей: 351 | Зарегистр. 22-12-2017 | Отправлено: 17:21 10-04-2018 | Исправлено: Stone_01, 17:22 10-04-2018
    mithridat1



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Релиз FFmpeg 4.0
     
    Официально прекращена поддержка сборки для Windows XP. В качестве минимальной версии Windows обозначен выпуск Windows Vista.

    Всего записей: 4394 | Зарегистр. 05-01-2006 | Отправлено: 10:17 23-04-2018 | Исправлено: mithridat1, 10:20 23-04-2018
    vlad_001

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Здравствуйте!
    Нужно ffmpeg-ом наложить на видео логотип картинку на весь экран на 1минуте 06 секунде на 4 секунды, имеется:
    1)  video.mp4 1280x720
    2) logotip.jpeg 1280x720

    Всего записей: 155 | Зарегистр. 10-04-2013 | Отправлено: 09:31 24-04-2018 | Исправлено: vlad_001, 09:32 24-04-2018
    mithridat1



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    vlad_001
    Я конечно понимаю, что сейчас массово банят в Гугле. Но почему вы никогда не пытаетесь думать своей головой и пользоваться поиском ?
    https://superuser.com/questions/683643/how-to-add-my-logo-for-the-first-30-seconds-in-a-video-with-ffmpeg

    Всего записей: 4394 | Зарегистр. 05-01-2006 | Отправлено: 09:42 24-04-2018 | Исправлено: mithridat1, 09:45 24-04-2018
    vlad_001

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mithridat1
    это я знаю, мне надо появление логотипа на 00:01:06 и соответственно, его исчезновение на 00:01:10, как это указать в этом батнике:
     

    Цитата:
    ffmpeg -i video.mp4 -i logotip.jpeg -filter_complex "[0:v][1:v] overlay=1:1:enable='between(t,60,64)'" output.mp4

     
    пробовал вписать:
     

    Цитата:
    ffmpeg -i video.mp4 -i logotip.jpeg -filter_complex "[0:v][1:v] overlay=1:1:enable='between(t,00:01:06,00:01:10)'" output.mp4

     
    вываливается с ошибками ((( может батник другой нужен?

    Всего записей: 155 | Зарегистр. 10-04-2013 | Отправлено: 11:34 24-04-2018 | Исправлено: vlad_001, 11:55 24-04-2018
    V0lt



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    vlad_001
    Это все для чего? Чтобы рекламу вклеивать в видео?

    Всего записей: 9323 | Зарегистр. 05-02-2003 | Отправлено: 22:15 24-04-2018
    vlad_001

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    V0lt
    это был посыл к монтажкам?
    Если вам так интересно, то, нужно заделать один ляп, на большом тираже видео именно на этом временном промежутке...
     
     
    Добавлено:
    в общем, нашел такое решение, где я эти секунды выигрываю плавным появлением логотипа на 12 кадре с 1 минуты...

    Цитата:
    ffmpeg -i video.mp4 -loop 1 -i logotip.jpeg -filter_complex "[1:v] fade=st=60:n=12:alpha=1, fade=out:st=64:n=12:alpha=1 [logo]; [0:v][logo] overlay=1:1" -y output.mp4  

     но, рендер продолжается бесконечно, копируя последний кадр исходного видео и присоединяя его к выходному видео...

    Всего записей: 155 | Зарегистр. 10-04-2013 | Отправлено: 10:10 25-04-2018 | Исправлено: vlad_001, 12:01 25-04-2018
    vlad_001

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    вот ещё такой вопрос, Делаю пакетное сведение файлов:
     (в одной папке находятся 30 файлов .mp3 и один файл input.mp4):

    Цитата:
    FOR %%f IN (*.mp3) DO ffmpeg.exe -i "%%f" -i "input.mp4" -acodec copy -vcodec copy "%%~nf.mp4"
    del (*.mp3)

     
    что сделать, чтобы ffmpeg после пакетной обработки удалил все аудио файлы, и остались только выходные .mp4 файлы, что нужно дописать в батник... после del ...

    Всего записей: 155 | Зарегистр. 10-04-2013 | Отправлено: 11:10 27-04-2018 | Исправлено: vlad_001, 12:03 27-04-2018
    thejustsoul



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

    Код:
    FOR %%f IN (*.mp3) DO (
        ffmpeg.exe -i "%%f" -i "input.mp4" -acodec copy -vcodec copy "%%~nf.mp4" && del "%%f"
        )

    Если работа ffmpeg внутри цикле будет успешной (код выхода 0), текущий файл удалится. Если ошибка (не 0) будет, то останется.
     
    upd: обновил сообщение, причина.

    Всего записей: 1782 | Зарегистр. 30-03-2014 | Отправлено: 12:03 27-04-2018 | Исправлено: thejustsoul, 03:48 29-04-2018
    Alex_Piggy

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

    Цитата:
    Как вариант:

    Код:
    FOR %%f IN (*.mp3) DO (
        ffmpeg.exe -i "%%f" -i "input.mp4" -acodec copy -vcodec copy "%%~nf.mp4"
            if %errorlevel% equ 0 ( del "%%f" )
        )

    Если работа ffmpeg внутри цикле будет успешной (код выхода 0), текущий файл удалится. Если ошибка (не 0) будет, то останется.

    Прошу прощения, но так работать не будет. %errorlevel% в цикле не раскрываются.
    Или "setlocal enabledalayedexpansion" в начале батника и "!errorlevel!" в цикле
    Или вместо "%errorlevel% equ 0" поставить "not errorlevel 1"
    Или просто с "&&"  
    FOR %%f IN (*.mp3) DO (ffmpeg.exe -i "%%f" -i "input.mp4" -acodec copy -vcodec copy "%%~nf.mp4" && del "%%~i")
    PS. Кстати, если надо удалить все mp3 файлы независимо от результата - просто уберите скобки вокруг *.mp3 - чтобы было "del *.mp3". Кто посоветовал поставить эти скобки?

    Всего записей: 1845 | Зарегистр. 07-08-2002 | Отправлено: 12:36 27-04-2018 | Исправлено: Alex_Piggy, 12:37 27-04-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

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