После почти года разработки доступен мультимедиа-пакет FFmpeg 8.0, включающий набор приложений и коллекцию библиотек для операций над различными мультимедиа-форматами (запись, преобразование и декодирование звуковых и видеоформатов). Пакет написан на языке Си и распространяется под лицензиями LGPL и GPL...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=63762
Вещь хорошая, но апи ужасен. Кто использовал ее как сишную либу -- тот поймет.
А у кого по вашему мнению лучше из комбайнов? Не уж то у какого-нибудь GStreamer?
А по твоему у GStreamer сложный API? Очень простой и к тому же не меняется, в отличии от ffmpeg, у которого меняется координально.
> А по твоему у GStreamer сложный API? Очень простой и к тому
> же не меняется, в отличии от ffmpeg, у которого меняется координально.У gstreamer и апи - отстойное, и качество либ - похабное, и само оно глючнее сабжа в разы просто. А по фичам и форматам - и рядом не стоял. Может, вроде, сабжевые либы прицепить если очень надо - но вот это уже совсем суперкомбо, 10 из 10 просто.
Вот и получается что особо конкурентов у сабжа и нету. Плохое апи? По сравнению с _чем_? У него аналогов - нет. Сравнить - не с чем.
> координальноПравильно координатно.
Хотелось бы конкретики, а то читать чужой код - это всегда "весело".
Ну посмотри ffplay. Там под 4k строк, как-то многовато для готовой библиотеки.
> Ну посмотри ffplay. Там под 4k строк, как-то многовато для готовой библиотеки.Для плеера умеющего чертову кучу всего что ffmpeg умеет, включая 100500 фильтров постпроцессинга, жор 100500 форматов, ускоренный худо-бедно видеовывод и проч?
Ну вы напишите что-то сравнимое чтобы столько же форматов жрало и столько же постпроцессинга умело - на хоть чем там - и мы посмотрим сколько у вас строк будет. Да, ffplay можно посмотреть даже interlaced нечто. И даже - недо-deinterlaced нечто, где зазубрены от интерлейса недоубирали из-за неправильного деинтерлейсинга. Но - даже это можно сделать смотрябельно фильтрами ffmpeg.
А вон там оно - без UI - одним кликом на ярлычка - утаскивает m3u8 и с воооооон той камеры картинку стримит на экран, если в сетевой кам посмотреть захотелось. А надоело - закрыл окно и нет камеры. Смотрелка N "любимых" камер хомяков дешево и сердито, настройкой ялрычка буквально. Вы это все смогете с меньшим LoC? Пруф? :)
>Для плеера умеющего чертову кучу всего что ffmpeg умеетВот пусть ffmpeg и умеет. Зачем в пользовательской программе все эти манипуляции с фреймами и их синхронизацией?
Зачем существуют адепты всё подвести под одну гребёнку?
> Вот пусть ffmpeg и умеет. Зачем в пользовательской программе все эти манипуляции
> с фреймами и их синхронизацией?Ffplay это по сути шоукейс возможностей ffmpeg и его либ - в виде плеера.
Каким образом кол-во строк связано с качеством кода/api?
Очевидно, что api слишком сложное, раз простой плеер на нём весит как две системы инициализации.
> Очевидно, что api слишком сложноеНет, не очевидно. Вот сидели сотни инженеров и думали: а какбы нам сделать API посложнее? Вы это так себе представляете?
> опенсорс
> ffmpeg
> сотни инженеров
> думалиТочно не базарные кодеры побормотали и как получится накидали софтину лишь бы аботало для решения их собственных локальных проблем?
> Точно не базарные кодеры побормотали и как получится накидали софтину лишь бы аботало для решения их собственных локальных проблем?Да, да, базарные кодеры, локальные проблемы... Вот у опеннетных умников-экспертов посоветовались бы - точно было бы идеальное API.
> Очевидно, что api слишком сложное, раз простой плеер на нём весит как
> две системы инициализации.Покажи плеер умеющий не меньше и чтоб LoC меньше был? А так минимальные примеры апей - куда более скромные.
Просто делая либы для мультимедии было б странно не написать плеер шоукейсящий их в деле. В принципе можно и ffmpeg "играть" мувики, но это довольно неудобно ибо он заточен на процессинг в стиле пайплайн. И дисплей туда - примотать можно но печатать в командлайне сильно больше.
https://ffmpeg.org/doxygen/trunk/ffplay_8c-source.html
Вот это? Я вижу синхронизацию самого SDL и остальных частей FFMPEG. Подобная возня со склеиванием библиотек это норма, разве нет?
MainConcept использует и их всё устраивает)
а патч с v4l2-request они просто проигнорировали.
О каком патче речь? Единственный за полгода, который нашел - это https://ffmpeg.org//pipermail/ffmpeg-devel/2025-February/339...
И то это патч просто для ворнинга. О чем он гутарит, я хз тоже.
> при помощи AI-моделиДа какая это ещё AI-модель? Она самостоятельно мыслит? Это нейросеть.
Ох уж эти АИ пуристы.Почему-то когда ботов в Warcraft III называли искусственным интеллектом двадцать лет назад, никого это не смущало. А теперь вдруг активизировались.
но возможно просто нынешние АИ пуристы тогда ещё не родились.
Warcraft это игрушка и интеллект в ней игрушечный, это все понимали. Сейчас же откровенно подменяют понятия и обыватели находятся в заблуждении.
Это не пуристы, это душные зануды. Все мы прекрасно знаем, что сильного ИИ у нас нет и пока не предвидится, но им обязательно надо донести до всех Истину.
"Истину" пока доносят только те, кому "ИИ открыл правду" в чате. А снизить количество шизоносцев - нужно постоянно и везде напоминать что это не интеллект, а тупое перемножение матриц. Ну и карательная психиатрия, куда ж без нее
Что характерно, в чате ответы куда более осмысленные, чем ваш комментарий.
Ты тоже нейросеть, просто тебя как бы постоянно держат запущенной, а не время от времени.
В упаковщик медиконтейнеров MP4 добавлена поддержка форматов AV1 и APV.Это и раньше работало, разве нет?
Та оно там постоянно допиливается и улучшается. То железоускорение для этих кодеков добавят, то vaapi AV1 support, то vdpau AV1 support, куча всего. Постоянно. Там в каждом релизе все это фигурирует.
Всегда можно самому посмотреть чейнджлог:
http://git.videolan.org/?p=ffmpeg.git;a=blob;f=Changelog;hb=...
> CENC AV1 support in MP4 muxerА, так вот оно что. Они CENC добавили.
В муксере? Не уверен, муксеры самое кривое и стрёмное, что есть в ffmpeg, особенно проприетарные форматы, вроде mp4. Никогда нормальный файл не сделает, где-нибудь накосячит. Но поэтому сабжем никто и не пользуется, а gpac всё стандартизированное поддерживает.
> В муксере? Не уверен, муксеры самое кривое и стрёмное, что есть в
> ffmpeg, особенно проприетарные форматы, вроде mp4. Никогда нормальный файл не сделает,
> где-нибудь накосячит. Но поэтому сабжем никто и не пользуется, а gpac
> всё стандартизированное поддерживает.Сам по себе формат файла MP4 - так то стандарт. На самом деле это называется ISO BMFF, конечно. Но типично идет с расширением MP4. Самое прикольное - когда fourcc кодека там потом оказывается - AV01, что не имеет к MPEG никакого отношения, ибо это AV1 @ MP4 контейнер :)
Некоторые онлайн качалки уже начали выгружать такое, например с ютуба. Часть старого софта с такого комбо предсказуемо делит на ноль. Потому что вроде MP4, но вот кодек у него совсем не мпеговский. Что как бы лол.
Но ведь вроде AV1 много лет как в стандарте. И VP9 (правда, встречался и до).
Это не мешает ему вести здесь многолетнюю войну против всех, кто против гугла =)
> Это не мешает ему вести здесь многолетнюю войну против всех, кто против гугла =)Если посмотреть список участников AOM - там участников немного поболее чем только гугл уже. Из интересного? Все жирные хардварные корпорации, например.
> Но ведь вроде AV1 много лет как в стандарте.Вообще-то ISO принял расширения стандарта с AV1 кодеком в их контейнере лишь сравнительно недавно, считанные годы. Видимо продолбать лавры стандартизаторов боязно - а там так то webm и по эту душу зайти - могет, тоже generic container. Для всего. Технически webm - более жестко регламентированный subset контейнера matroska. Т.е. любой webm - матрешка, но не любая матрешка - webm. C ISO BMFF - примерно так же. Ибо .mp4 с AV01 кодеком унутрях... ну такой себе MPEG4, весьма забавный, да, в основном там от него - название! :)
> И VP9 (правда, встречался и до).
Что-то не помню - ISO когда-то стандартизировал VP9 в ISO BMFF файлах? Потому что AV01 они таки - официально стандартизировали. И теперь возможны вот такие ".mp4" - с AV1 внутрях. Я уже даже встречал такие.
> Задействованы расширения графического API Vulkan для аппаратного
> ускорения кодирования видео H.264 (на базе OpenHarmony).Это быстрее или чем-то лучше, чем h264_vaapi или нет?
Насколько я понимаю оно не лучше или хуже, а просто другое. Это поддержка ускорения в HarmonyOS, в котором вроде как нет vaapi.
FFmpeg - самый классический пример быстро написанного плохого кода на C. Надо смотреть нет ли там JIT или прибитых к адресам не PIC ассемблерных оптимизаций на AVX-512. Есть ли возможность сборки без JIT и с PIC при помощи стандартного configure -- no-jit --pic.ИИ в данном месте как раз очень полезен!
* Распознает речь и создаст субтитры.
* Распознает лица, темы, ... и посоздает теги, добавит в каталоги, проиндексирует. Все ваши видосики упорядочит.
> Распознает речь и создаст субтитры.если речь не телевизионного ведущего о событиях в мире - субтитры будут конечно смешнявые, но пользы от них ровно никакой.
> Распознает лица, темы, ... и посоздает теги, добавит в каталоги, проиндексирует. Все ваши
> видосики упорядочит.но поскольку будет галлюцинировать - то что ты ищешь, ты никогда уже не найдешь.
(а когда случайно наткнешься - будешь изумлен, что же оно там разглядело)
Вспоминая известный случай с губами американского сенатора... и не то чтоб явная ошибка, тут ИИ был скорее прав, но вот поди ж ты догадайся, почему на это детям смотреть нельзя.
> если речь не телевизионного ведущего о событиях в мире - субтитры будут конечно смешнявые, но пользы от них ровно никакой.Яндекс прекрасно распознаёт и даже переводит речь, если, конечно, у говорящего не каша во рту.
> Яндекс прекрасно распознаёт и даже переводит речь, если, конечно, у говорящего не
> каша во рту.Да булшит это все. И даже гугло, даже на инглише, на произвольно взятом мувике такое выдает что просто трэш и угар.
ну не совсем на произвольно (в смысле бывают экземпляры которые на самом деле смотрят фейкньюс какую-нибудь и думают что это и есть произвольно взятый мувик), но на том для чего могло бы быть полезно - таки трэш и угар.
«Даже гугло» распознаёт отстойно, и это не секрет. Но вот яндекс — умеет, значит, это реально.
> FFmpeg - самый классический пример быстро написанного плохого кода на C. Надо
> смотреть нет ли там JIT или прибитых к адресам не PIC
> ассемблерных оптимизаций на AVX-512. Есть ли возможность сборки без JIT и
> с PIC при помощи стандартного configure -- no-jit --pic.Смотри наздоровье все что хочешь - но конкурентов у ffmpeg все равно примерно ноль. Так что не нравится - не юзай. Но заменить его все равно - нечем. Вот хоть там как.
Швейцарский нож с 120 лезвиями для видео на этой планете был сделан только 1 модели. Увы и ах.
да ладно? вроде, венда как-то без ffmpeg'ов обходится.
так классно обходится, что надо из Store скачать еще кучу кодаков. Например: "Расширение для видео AV1", "Расширение кодировщика видео AVC", "Расширение для видео MPEG-2" и т.к. далее, а за "Расширения для видео HEVC" еще и "0.99$" просят.
ну мне вот нафиг не нужен av1, поэтому и качать его незачем. А банальный mp4 и без качания чего бы то ни было откроется.Поэтому аппаратное ускорение видео в мразиле ТАМ было с 2010го, а до фанатиков бесплатного ass in free bear доползло через десять лет да и то неточно.
Ну и с расширением для hevc рецепт давно известен - https://www.microsoft.com/ru-ru/p/hevc-video-extensions-from... только неправильно ты дядя федор этот бутерброд ешь - валить отсюда нахрен надо туда где "0.99" это вот ровно ни о чем.
> ну мне вот нафиг не нужен av1Да, где-то я подобное слышал... про что, что оплата по NFC в iphone не нужна - так говорил сам Джобс, а потом Кук, но в итоге вон оно как получилось...
> Ну и с расширением для hevc рецепт давно известен
Открыл твою ссылку, там "это приложение не будет работать на вашем устройстве" и "для работы с видео на устройстве с Windows 10" (а у меня 11, вот незадача).
> валить отсюда нахрен надо туда где "0.99" это вот ровно ни о чем.
так оно и тут (где?) ни о чем, но другое дело, что за все годы покупка так ни разу не понадобилась...
> но в итоге вон оно как получилось...в смысле - как была ненужным ненужно так и осталась?
Я до сих пор не могу взять толк с вас, ушлепков с "оплатой мабильником" - какого хрена вместо приложить карту и пойти нахрен через секунду вы пол-часа растопыриваете свое дpo4ило, вводите пароль потому что отпечаток-ой-протух (камера над кассой очень рада), копаетесь в приложениях и потом "ой нипалучилась!"Вот чтобы что? Чтоб лишний раз понтануться 9" экранчиком (или сколько щас модно - уже наверное 11?)
> Открыл твою ссылку, там "это приложение не будет работать на вашем устройстве"
Попробуй не с айпхона открывать. И да, у меня нет 11. Это вот точно не образец как надо делать.
> так оно и тут (где?) ни о чем, но другое дело, что за все годы покупка так ни разу не
> понадобилась...ну если чужое видео не открывать а своего не иметь, то, канешн, не понадобится.
А мне тут принесли "на, подержи" - ну я посмотрел, там съемки с дрона нормального, да и с лобковой камеры ничего, не худший вариант, и решил что оно заслуживает лучшего чем обычные мои scale=1024 - поэтому теперь вот есть и такое. (С ипхона - открывается, проверял, но зачем - непонятно, в микроскоп чтоль смотреть?)
> ну мне вот нафиг не нужен av1, поэтому и качать его незачем.
> А банальный mp4 и без качания чего бы то ни было
> откроется.Наивный чукотский юноша. С неких пор пошла заразительная манера - например у онлайн качалок ютуба - выгружать MP4 файло с ... кодеком AV01 унутрях :D
И узнал я об этом после того как наткнулся на "немного странноватые MP4" в диком виде, накачаные хз откуда и чем, у хом всяких. Вот такое "mp4" им кто-то где-то выгружает уже. А самое забавное - это еще и по стандарту. ISO не так давно этот финт ушами стандартизировал, поэтому теперь "MP4" который AV1 - вполне узаконенное комбо. Видимо боязно было еще и битву контейнеров продуть матрешке совсем.
Скачай пакет с расширением hevc с какого-нибудь сайта и установи вручную. Обновляться будет без проблем автоматом уже, даже, если не куплено
> да ладно? вроде, венда как-то без ffmpeg'ов обходится.Винда в изкоробочном состоянии - не играет почти нихрена из того что встречается в диком виде. Поэтому лучшее что с ней можно сделать - vlc в нее поставить и забыть о трахе с кодеками и чем там еще на следующие 10 лет. А возможно это все - благодаря ffmpeg'овским либам :)
И да, я пробовал всякие супер-пупер кодек паки и что там еще. Вот это было да, жесть и глюкодром.
>> да ладно? вроде, венда как-то без ffmpeg'ов обходится.
> Винда в изкоробочном состоянии - не играет почти нихрена из того что
> встречается в диком виде. Поэтому лучшее что с ней можно сделатьне лазь по помойкам.
Мне вот почему-то такое не встречается.> - vlc в нее поставить и забыть о трахе с кодеками
и наслаждаться дергающимися кадрами при попытке потрогать слайдер?
Уровень местного эксперта как есть.> и чем там еще на следующие 10 лет. А возможно это
> все - благодаря ffmpeg'овским либам :)полагаю эти рывки не только из-за ffmpeg'овских либ, конечно, сам vlc тоже совершенно помойный код.
> И да, я пробовал всякие супер-пупер кодек паки и что там еще.
Уровень местного эксперта как есть.
"всякие кодек-паки" умерли во времена winXP (то есть они уже ей были в общем-то нахрен не нужны). А до того их ставили чтоб за divx нормальный не платить.
Libav https://www.opennet.dev/openforum/vsluhforumID3/75395.html была.А эти кодеки и оптимизации все равно приходится выкидывать при сборке если оно не может дать минимум: без JIT и с PIC.
Что там с обратной совместимостью, опять поломали?
> Что там с обратной совместимостью, опять поломали?В этом месте Аноним начинает догадываться о пользе стабильных дистро линуха и их полисей.
Нет, относительно 7-й почти без изменений.
Как–то пробовал выбрать лучшую програму–перекодировщик и к моему большому сожалению оказалось что чуть ли не везде этот FFmpeg. Даже в Light alloy. Где самобытность? Где интересные решения?
> Light alloyЭто плеер.
> Где самобытность?
В DivX 6.
> лучшую програму–перекодировщик
Возьми родной консольный интерфейс к выбранному кодеку (x264.exe, SvtAV1EncApp.exe, ...).
>> Где самобытность?
> В DivX 6.Только он современным кодекам не конкурент.
>> лучшую програму–перекодировщик
> Возьми родной консольный интерфейс к выбранному кодеку (x264.exe, SvtAV1EncApp.exe,Но в отличие от сабжа - оно не сожрет <любое что отдаленно напоминает видео> как входной файл. Что ОЧЕНЬ неудобно.
Альтернативу найди. Ой а её нет. Так в чём проблема? Хочется своего - напиши сам.
В своё время Mediacoder был славной штукой с норм интерфейсом. Хз как сейчас и что там внутри, но, хотя бы пользоваться было удобно
Adobe Media Encoder
> В упаковщик медиконтейнеров MP4 добавлена поддержка формата APV, а также AV1 с шифрованием CENC.Зачем av1 пихать в mp4?
Mkv не показывает отдельно битрейт для видео и аудио, только общий, когда смотришь через mediainfo
Гугл с мозиллой ещё положительно влияют на популярность MP4 - продвигают урезание MKV до WebM... который формально AV1 ещё не поддерживает, кстати.
жаль ffserver удалили
mediamtx лучше