20 декабря 2000 года французский математик Фабрис Беллар (Fabrice Bellard), основавший в своё время проект QEMU, опубликовал первую версию пакета FFmpeg, включающего набор приложений и библиотек для операций над различными мультимедиа-форматами. С 2004 года и до настоящего времени ключевую роль в сопровождении проекта играет Майкл Нидермайер (Michael Niedermayer)...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=54292
С Днём варенья, стратегически важное для отрасли ПО!!
Главное не забывать, что взять специализированные кодировщики будет лучше примерно всегда. Для декодирования в принципе подходит чаще чем нет, с остальным не очень хорошо. В том числе не очень хорошо с фильтрами и преобразованиями, но в то же время хорошо что есть вариант собрать с теми же zimg и vapoursynth. Наверное, основное преимущество всё же в универсальности, а так для звука тот же sox местами получше будет.
Не нашёл как собрать с hqdn3d, в интернете есть только вендосборки на варезниках. Это одно из последних разочарований для меня.
Правильно что не нашли, потому-что это Avisynth, а не ffmpeg. Ищите дальше.
В интернете написано только то, что это фильтр у ffmpeg и mplayer, про avisynth там ничего не было. Мне нужен нормальный денойзер.
> В интернете написано только то, что это фильтр у ffmpeg и mplayer,
> про avisynth там ничего не было. Мне нужен нормальный денойзер.Интересно зачем нужен денойзер кому-то. Для каких целей?
А так вот пожалуйста
https://github.com/vapoursynth/vapoursynthВот например денойзер:
https://github.com/Khanattila/KNLMeansCL
Шумное видео, если не забить его битрейтом, будет артефачить (битрейт уйдёт не туда куда должен). Я провожу небольшое исследование на тему исправления запоротых файлов.
> как собрать с hqdn3d--enable-gpl
А то что ffmpeg это солянка из специализированных кодировщиков не?
Нет, ffmpeg это багованые фильтры и кривые обёртки над библиотеками кодировщиков. С форматами (муксерами/демуксерами) постоянно какие-то проблемы, с двд и блюрей тоже. Это из того что я встречал.
А, ещё с тегами отдельная песня. Поддержка тегов (любых) у ffmpeg совершенно донная (но зато универсальная, да).
Возьми и исправь, вместо того, чтобы ныть. А не нравится - не пользуйся.Сотни людей вложили в ffmpeg свой труд (включая меня) и миллионы этим трудом пользуются.
Сотни людей бездарно потратили своё время на кус ок глючного багованого крапа, а в итоге всё равно остался глючный багованный крап. Это не нытьё, это констатация факта, никаких од проект не заслуживает. Миллионы людей генерируют низкосортный контент, да. Им не интересно даже качество результата, они низкопробные дилетанты и не более. Исправить? Ну, с libav был шанс, я участвовал в каких-то исправлениях тогда (код не писал) и были люди заинтересованные в исправлениях. Исправить сегодня? Навряд ли.
ffmpeg - это тулза для работы с медиапотоками. Энкодеры-декодеры тут постольку-поскольку. Главная же функция - извлечение потоков из контейнеров, всяческие преобразования этих потоков, и упаковка обратно в контейнер.Очень удобно натравить ффмпег на каталог с роликами в рандомном разрешении, с кучей аудиодорожек-субтитров, а на выходе получить однотипные ролики в фиксированном разрешении, только с нужной аудиодорожкой и врендеренными субтитрами из сторонних файлов, скачанных отдельно. Ффмпег позволяет скриптами автоматизировать все до уровня 'nice -20 recodeall.sh ~/media/source ~/media/target'.
У меня отчим глухой, и не очень шарящий в компах, и единственный способ для него посмотреть кино/сериал - это воткнуть сабы прямо в картинку. Без ффмпега было бы тяжко. С ффмпегом - качнуть, напустить скрипт, залить результат на флешку.
Вот именно этого она делать и не умеет, поддержка кодировщиков (внешних) на более менее приличном уровне (зависит от версии и сколько исправлений уже впихнули, и всё равно есть куча возможностей словить сегфолт или баги в зависимости от входного файла и параметров, и от самого кодировщика) и это хотя бы видно, но со всем остальным довольно плохо. Ещё всё очень, ислючительно плохо со встроенными кодировщиками и это вроде как стабильно, но тут больше вопросы к качеству и уровню поддержки относительно апстрима она отстаёт на многие годы.
Без ффмега ты точно также собираешь файл однострочником и всё прекрасно работает. Разве что хардсаб (боже какая дичь) я не знаю чем ещё можно сделать, наверное есть и другой софт. И не надо считать человека идиотом, можно положить файл субтитров рядом (или даже в подкаталог с субтитрами) и по-умолчанию включить в плеере субтитры (mpv с этим замечательно справляется). Заодно можно будет исправить шрифты и их размер как удобно в любое время.>врендеренными субтитрами
Опять хардсаб? Меня сейчас стошнит. Ладно. Хочешь файлы коверкать, так смиксуй сабы в файл, раз софт не настроить (приставка там кривая или где), зачем хардсабить то? Если под это фиксированным разрешением подразумевается транскод с черными поласами, то за такое положено сидение в бочке от отходами жизнедеятельности, в воспитательных целях. Конечно, софт настроить так сложно, намного сложнее, чем портить файлы.
У ffmpeg далеко не все енкодеры свои.
Например, для AVC/HEVC он использует сторонние проекты x264/x265
Ну да, конечно. Я потратил немало времени, чтобы добиться нормальных результатов от ffmpeg. И, как оказалось, он на многое просто неспособен. Из-за чего пришлось подпирать его сотнями и сотнями костылей. Теги он не может (экспортировать так точно, с импортом какие-то моменты), импортировать/экспортировать метаданные он тоже не может (теряет половину и выставляет от балды), муксеры/демуксеры (mp4,mp4a,mpv,vob из того в чём я убедился, ts и m2ts емнип тоже) кривые и багованные. Любые фильтры будут глючить, деинтерлейсеры бесполезные… Минусы за правду получать не стыдно.Вот перечень проектов (далеко не полный), которые ЗНАЧИТЕЛЬНО лучше ffmpeg справляются со своими задачами: mjpegtools, sox, gpac, mkvtoolnix, libbluray и dvd_info (это только то, что я костылял последнее время). Т.е. буквально любой узкоспециализированный проект даёт лучшие результаты. Вместо развития этих проектов, ресурсы изводят на кривого монстра ффмпег. Вся суть опенсорса.
А вот хамить в комментариях некрасиво, кто вас вообще выпустил из вконтакта. Минусите дальше.
FFmpeg - один из мощнейших представителей опенсорса, долгой жизни и перехода на Rust!
А как же сишные дыры?
Это двоемыслие. Это так не работает.
Расслабься, запасись попкорном и наблюдай
Потому и написал: перехода на Rust
>перехода на RustНет, там разработчики с традиционной ориентацией.
Ой вей, это ненадолго)
Их вон уже пять лет назад (как время-то летит!) от руля отпихнули.
Так что у нетрадиционных есть все шансы. Кодить-то уметь не нужно, так что даже у Фактала должно получиться.
Давай мы тебя и тут забаним?
Кто-нить соскучится и напишет маленький fracktal.sh, чтоб без клоуна не сидеть.
Пытался через youtube-dl достать ссылки и скормить их ffmpeg с ключами -ss и -t дабы скачать только кусок видео. На выходе первые секунды фрагмента в квадратах и артефактах. Кто знает как от этого избавиться? В документации пишут что вроде он должен был сам до ключевого кадра мотать и оттуда уже брать фрагмент.
Ставьте -ss перед -i в командной строке
Так и делаю.
-ss 0:10:50 -i "https://..." -t 10 -c copy out.mp4
Выразет всё правильно, весь файл целиком не качает. Но вот артефакты в первые пару секунд видео всё портят.
> Выразет всё правильно, весь файл целиком не качает. Но вот артефакты в
> первые пару секунд видео всё портят.Попробуйте тогда сегменты:
Почитайте про то как видео кодеки устроены, про ключевые кадры, для начала =) Ваша проблема в ДНК а не в ffpmeg
Пример:
ffmpeg -ss 01:00:40 -i `youtube-dl -g https://www.twitch.tv/videos/838418844` -t 00:23:15 -c copy example.mp4С оригинала начинает с 1 часа, 40 минут. Длительность 23 минуты 15 секунд
Апострофы на кавычку надо заменить (которая "йо")
Ровно так и делаю. На выходе артефакты
нужно резать по B-фреймам, чтобы можно было без перекодирования, попробуйте скачать раньше и отрезать, например, в avidemux, наверное и ffmpeg умеет
нужно резать по I-frame, а не по B
-noaccurate_seek
Предпочитаю ффмпег, гстример бяка.
Наш человек!
Жаль, что для него нет хорошего гуи и жаль, что это не avisynth, который мог бы быть во всех дистрах.
> гуйОткуда вы лезете, гуевые.
> avisynthЭто еще что? vapoursynth же есть
Ага, такое удовольствие для каждого файла вручную писать сверхдлинную команду, пытаясь вспомнить при этом, какой параметр за что отвечает.
Вот прям гораздо лучше, чем перетащить сразу все нужные файлы в интерфейс программы, выбрать нужный пресет кодирования, нажать кнопку запуска и отойти пить чай, пока прога занимается всеми делами.
А что оно делает?
Это тупо, пресеты никуда не годятся. В зависимости от типа и качества контента параметры в любом случае придётся твикать. Иногда можно и поднять качество кодирования и уменьшить артефакты почти бесплатно. Программа не заменит человека.
Зачем? Скрипты уже не работают?
Пресеты ffmpeg поддерживает и без гуя. Пакетная обработка делается коротким однострочником.
>для него нет хорошего гуиWinFF is a GUI for the command line video converter, FFMPEG.
>>для него нет хорошего гуи
> WinFF is a GUI for the command line video converter, FFMPEG.смешно
Так напиши братиш, этож опенсорс, здесь все можно!
Опенсорса нигде нет, как корпорации скажут так и будеш писать.
Чем вам https://handbrake.fr/ не угодил?
Он ничего не умеет
Долгой жизни и успешного развития проекту.
Один из СПО-проектов, вызывающих настоящее восхищение.
А мне исполнилось 100500 лет, и дальше что?
О! Ответь на несколько животрппещущх вопросов! Для начала, зачем были нужны https://en.wikipedia.org/wiki/Perforated_baton ?
Это еще мой дед строгал, зачем так и не рассказал.